很久以前,我遇到了一个文本编辑器功能,它将单词“lambda”替换为字符“λ”。我想在 emacs 中执行此操作。我的喜好:
我想仅在某些模式下激活此功能(例如,在Scheme模式下激活它,但在C模式下关闭它)。
在工作中我仍然使用旧版本的 emacs,因此该解决方案应该适用于 emacs22 和 emacs23。
我应该如何进行?
答案1
您创建一个模式挂钩,lambda
用希腊字符替换。
(defun sm-greek-lambda ()
(font-lock-add-keywords nil `(("\\<lambda\\>"
(0 (progn (compose-region (match-beginning 0) (match-end 0)
,(make-char 'greek-iso8859-7 107))
nil))))))
然后将此挂钩添加到您的模式中:
(add-hook 'emacs-lisp-mode-hook 'sm-greek-lambda)