我对elisp不太熟悉,我正在努力学习.在emacs中,我希望能够执行以下操作:
通过C空间标记
转到我希望标记结束的位置,因此我有一个突出显示的区域,假设它是"突出显示的文本"
按键序列
有emacs要求我输入一些文字,说"情节",和
将突出显示的文本更改为"plot(突出显示的文本)".也就是说,我想用括号括起highlited文本,并在它前面添加我输入的文本.
(defun wrap-text () )
我想函数的输入将是突出显示的文本,但我不知道从哪里开始查找.另一个难点是输入文本部分.有人可以指导我吗?谢谢.
对于您的情况,这应该工作:
(defun wrap-text (b e txt) "simple wrapper" (interactive "r\nMEnter text to wrap with: ") (save-restriction (narrow-to-region b e) (goto-char (point-min)) (insert txt) (insert "(") (goto-char (point-max)) (insert ")"))) (global-set-key (kbd "C-x M-w") 'wrap-text)