私はここから少し変更した次の機能を持っています:
;; Insert text around a region. In this case, it's
;; the LaTeX code environment from the listings package
(defun wrap-code (start end)
"Insert a \begin{code} and \end{code} around a region."
(interactive "r")
(save-excursion
(goto-char start) (insert "\\begin{code}")
(goto-char end) (insert "\\end{code}")
))
;; Assign its shortcut
(global-set-key (kbd "C-c p") 'wrap-code)
次にリージョンを選択して関数を適用する\end{code}
と、が間違った場所に挿入されます。
\begin{code}while :; do
echo this is\end{code} a test
done