如果点在任何东西上(特别是行尾),我希望(在与 TeX 相关的模式下)波浪号键像往常一样插入自身,但如果一个点在空间上,我希望波浪号覆盖它。(在将某些内容粘贴到 TeX 源文件中之后,这将是一个非常有用的功能。)我破解了这样的东西:
(defun electric-tie ()
"Inserts a tilde at point unless the point is at a space
character, in which case it deletes the space first."
(interactive)
(while (equal (char-after) 32) (delete-char 1))
(while (equal (char-before) 32) (delete-char -1))
(insert "~"))
(add-hook 'TeX-mode-hook (lambda () (local-set-key "~" 'electric-tie)))
我的问题很简单:它是否正确(它似乎有效)并且可以做得更好吗?(我假设如果第一个问题的答案是肯定的,那么后者就是风格问题。)