emacs - AUCTeX:自定义 ‘fill-nobreak-predicate’ 钩子(Hook)以尊重大括号

标签 emacs autofill auctex

在编写 LaTeX 代码时,我使用以下 C 风格的缩进/支撑样式:

\foo{
  blah blah... this line is getting too long and should be wrapped
}

每当我需要根据 fill-column 选项(本例中为 50)重新包装(从技术上来说,重新填充)一个 block /段落时,我都会点击 M-q。这也会改变大括号的位置:

\foo{ blah blah blah... this line is getting too
  long and should be wrapped }

这伤害了我的眼睛:-( 事实上,我想将大括号保持在原来的位置,即:

\foo{ 
  blah blah blah... this line is getting too
  long and should be wrapped 
}

我想我应该为 AUCTeX 添加一个自定义 fill-nobreak-predicate Hook ,或者自定义 paragraph-startparagraph-separate,但我对 emacs lisp 不太熟练...

由于此问题可能适用于任何标记文本模式,因此请随意填写以将其向上游移动。

最佳答案

实际上,没有 fill-nobreak-predicate(顾名思义)是为了避免在某些地方断行,而您想要强制在某些地方断行。 paragraph-separate 可能会为您提供更好的服务:声明仅包含 } 的行或不应考虑仅包含 \cmd{作为段落的一部分。

关于emacs - AUCTeX:自定义 ‘fill-nobreak-predicate’ 钩子(Hook)以尊重大括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11012634/

相关文章:

emacs - 如何使用Emacs运行方案?

javascript - 覆盖黄色自动填充背景

emacs - 设置 AUCTeX : LaTeX-mode-hook does not work

macos - 使用 'cocoa emacs' 更改 emacs 的默认目录

Emacs 粘液迷你缓冲区接管

javascript - 使用另一个输入值自动填充输入

emacs - Emacs + AUCtex 下的 knit 和 latexmk 的一次性命令

emacs ispell 在 Latex 引号上中断

emacs - Emacs选项卡的全局配置

javascript - 如果没有 id,用 JavaScript 填写网站上的输入字段?