如何在使用ispell时更改Emacs中的语言?
我想在Emacs中使用ispell-buffer命令。 它默认使用英文。 有没有一种简单的方法来切换到另一个字典(例如,另一种语言)?
以下命令提出了一个使用的已安装字典的列表:
Mx ispell-change-dictionary
通常, Mx isp-cd
扩展到上面。
从文件ispell.el你可以指定一些选项ispell
命令。 这是通过添加一个部分到你的文件的结尾像这样:
;; Local Variables: ;; ispell-check-comments: exclusive ;; ispell-local-dictionary: "american" ;; End:
请注意,双分号表示当前模式下注释的开始。 它可能应该改变,以反映你的文件(编程语言)引入评论的方式,比如//
for Java。
在一个LaTeX文件的结尾可以使用:
%%% Local Variables: %%% ispell-local-dictionary: "british" %%% End:
这将设置字典仅用于该文件。
使用Mx ispell-change-dictionary
并点击TAB
查看可用的字典。
然后在你的.emacs
写入默认字典的设置,并添加一个钩子来自动为你的特定模式(如果你想)启动ispell。
例如,在AUCTeX中使用英式英语自动启动ispell(默认英文字典是美式英语)
(add-hook 'LaTeX-mode-hook 'flyspell-mode) ;start flyspell-mode (setq ispell-dictionary "british") ;set the default dictionary (add-hook 'LaTeX-mode-hook 'ispell) ;start ispell
如果您想要更改每个目录的语言,可以将其添加到.dir-locals.el
文件中:
(ispell-local-dictionary . "american")
如果您没有.dir-locals.el
文件,它将如下所示:
((nil . ((ispell-local-dictionary . "american"))) )
有关更多信息,请参阅有关目录variables的emacs wiki页面 。