我工作的源代码树的文件缩进了不同的选项卡值(更不用说空格)了,我能做的最好的事情就是设置emacs来使用在我修改的代码区域中找到的样式.而不是将Mx set-variable tab-width设置为4或8,用于在这两个值之间切换tab-width的键绑定将有很大帮助.
谢谢.
;; Obviously substitute your preferred key for(global-set-key (kbd " ") 'tf-toggle-tab-width-setting) ; ' "fix" highlighting (defun tf-toggle-tab-width-setting () "Toggle setting tab widths between 4 and 8" (interactive) (setq tab-width (if (= tab-width 8) 4 8)) (redraw-display))
根据建议的评论编辑添加重绘显示
不完全回答问题(给出的答案足够好),但您可能需要考虑设置每个文件的局部变量.例如,假设"//"表示使用您的语言发表评论,您可以将以下内容放在文件的第一行:
// -*- tab-width: 4 -*-
每当您访问该文件时,emacs都会为您设置变量.有关基于文件的变量的更多信息,请参见http://www.gnu.org/software/emacs/manual/html_node/emacs/Specifying-File-Variables.html.
当然,如果文件是在一个小组之间共享的话,这可能不是一个选择 - 除非你能说服你的大学这个第一行评论是完全无害且非常有用的!