Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to define an Emacs command that uses `replace-string` for a specific string

Tags:

regex

emacs

In Emacs, I am processing a text document, converting from unicode plaintext to LaTeX.

There are a few sets of regular expressions that I want to run, for example

M-x replace-string ± RET \pm RET
M-x replace-string µ RET  \textmu 

How do I save these regular expressions so that I can run them repeatedly?

Thanks

like image 345
stevejb Avatar asked Apr 30 '11 17:04

stevejb


1 Answers

I generally like writing custom commands, here's the one for your first replacement:

(defun replace-plus-minus ()
  (interactive)
  (replace-string "±" "\\pm" nil (point-min) (point-max)))

But, you can also use keyboard macros. Check out the wiki and docs.

Basically, you'd do:

C-x ( M-x replace-string ± RET \pm RET C-x )

Then you can name it, and save it to your .emacs:

M-x name-last-kbd-macro
M-x insert-kbd-macro
like image 116
Trey Jackson Avatar answered Nov 09 '22 12:11

Trey Jackson