经过大量的实验,我认为我喜欢:
(setq truncate-lines nil)
(setq word-wrap t)
用于文本编辑,但
(setq truncate-lines t)
(setq word-wrap nil)
用于编程。
在所有模式中,我都喜欢:
(setq fill-column 80)
这样我就可以使用M-q
和C-u M-q
将文字传输到80列,但我也发现我不喜欢auto-fill
模式,并且永远不会喜欢它。
我也不是那么热衷visual-line-mode
(或至少不是word-wrap
的那一点)
我可以在我的.emacs
文件中放一些让我开心的咒语吗?
我认为很高兴:'这一切都只是做我想要的,我不需要再考虑这个了。'
答案 0 :(得分:7)
使用prog-mode-hook
和text-mode-hook
设置这些变量:
(add-hook 'text-mode-hook '(lambda ()
(setq truncate-lines nil
word-wrap t)))
和
(add-hook 'prog-mode-hook '(lambda ()
(setq truncate-lines t
word-wrap nil)))
答案 1 :(得分:2)
很抱歉没有在我的回答中提供源代码,但我可以向您保证,您所考虑的设置是可能的。它只取决于你对“编程模式”的定义。大多数模式都带有一个所谓的钩子函数(参见http://www.gnu.org/software/emacs/manual/html_node/emacs/Hooks.html)。这些基本上是加载模式时执行的功能。这样的钩子会调整您的设置。
答案 2 :(得分:1)
(setq truncate-lines t)仍然不起作用?
罪魁祸首可能是另一种模式。视线模式是我的(全局 - 可视线模式),所以我不得不将禁用功能放入钩子中:
(add-hook 'neotree-mode-hook
(lambda ()
(visual-line-mode -1)
(setq truncate-lines t)))