Emacs:自动填充模式奇怪的缩进行为

时间:2014-09-07 08:59:45

标签: emacs elisp

我目前正在研究从自动填充模式派生的主要模式,我需要以特殊的缩进方式显示文本(它是screenwriter.el项目的派生),我只是被困在当存在多行压痕时自动填充的特殊行为:

(注意:use-hard-newlines为nil,left-margin为0):

我期望它如何运作:

         DUDE           <-- here I insert a newline
     (sad)              <-- here I insert another newline 
Hello, look how good    <-- here I let the auto-fill-mode fill the text automatically
of a day it is!

但是会发生以下情况:

         DUDE           <-- here I insert a newline
     (sad)              <-- here I insert another newline 
Hello, look how good    <-- here I let the auto-fill-mode fill the text automatically
     of a day it is!

所以基本上填充模式在有多个缩进段落时会很奇怪,缩进到第二行的左边距。我无法在任何地方找到如何避免这种行为。

更奇怪的是,以下工作正常,缩小了先例线的边距。

         DUDE           <-- here I insert a newline
Hello, look how good    <-- here I let the auto-fill-mode fill the text automatically
of a day it is!

我想知道这只是一个错误,还是有办法避免这种情况,因为它很烦人。任何人都可以测试它在其他版本的emacs上的工作方式是否有所不同,或者至少给我一个如何解决这个问题的提示?非常感谢你。

Emacs版本:Windows上的24.3.1

编辑:我刚检查过,使用hard-newlines就会发生同样的行为,所以我不知道如何解决这个问题

1 个答案:

答案 0 :(得分:1)

您可以自定义adaptive-fill-mode变量,这是填充文本时自动确定前缀的原因。将变量设置为nil以禁用该行为。

有关如何计算前缀的详细信息,请参阅fill-context-prefix函数。