Я пишу (и переписываю) множество математических формул в LaTeX с помощью Emacs. Я часто сталкиваюсь с ситуациями, когда я хочу изменить пару соответствующих скобок, чтобы улучшить читаемость. Мой Emacs достаточно любезен, чтобы показать мне соответствующий разделитель, но как мне изменить его программно?
Например, измените внешние разделители за один раз:
( (\sqrt{a} + b)^{-1} + c^{-1} )
в
[ (\sqrt{a} + b)^{-1} + c^{-1} ]
forward-sexp-function
(что, я предполагаю, TeX mode), либо он будет использовать scan-sexps
для поиска возможного соответствия. В последнем случае совпадение не всегда будет правильным. Итак, если все, что вам нужно, это сопоставить совпадающие разделители, вы можете проверить синтаксис символа под точкой. Если это так $
, то у него должно быть совпадение, и вы можете использовать forwad-sexp
его для сопоставления.
\bigl(...\bigr)
на\Bigl(...\Bigr)
и т. Д.