现代文字处理器的一个不错的功能是可以在不实际选择单词的情况下更改单词的格式(例如,从罗马体到斜体);只需要将文本光标放在单词中并告诉文字处理器(通过键盘快捷键)更改其格式。 (智能编辑,我相信它有时被称为。)
在 Emacs-AUCTeX 中有没有办法做到这一点? (更改格式的通常方法——即插入格式命令——是选择单词[标记其区域],然后按命令的组合键[例如 C-c C-f C-i
插入 \textit{}
].)
最佳答案
快捷方式 C-c C-f 调用 TeX-font
。然后它强调/斜体化/随便什么,
基于最后的关键和弦。所以解决方案是建议这个功能:
(defvar TeX-font-current-word t)
(defadvice TeX-font (before TeX-font-word (replace what))
"If nothing is selected and `TeX-font-current-word' is not nil,
mark current word before calling `TeX-font'."
(when (and TeX-font-current-word
(not replace)
(not (region-active-p))
(not (looking-at "\\s-")))
(unless (looking-back "\\s-") (backward-word))
(mark-word)))
(ad-activate 'TeX-font)
现在,当没有选择区域时,TeX-font
将像当前单词一样工作
被选中。您可以通过将 TeX-font-current-word
设置为 t
/nil
来打开/关闭此行为。
关于emacs - 在 Emacs-AUCTeX 中更改单词的格式而不实际选择它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18554863/