使用自动填充模式自动重新填充整个段落?
Posted
技术标签:
【中文标题】使用自动填充模式自动重新填充整个段落?【英文标题】:Re-filling entire paragraph automatically with auto-fill-mode? 【发布时间】:2013-06-18 19:54:50 【问题描述】:动机:使用默认设置,自动填充模式似乎没有我想象的那么有用 曾希望:如果我在段落中间插入一个句子,只有当前 线被重新填充。当我插入一个句子时,我希望整个段落都被重新填充。
问题:我怎样才能设置auto-fill-function
(或者也许
normal-auto-fill-function
) 在我的 .emacs 中
文件以便在单行溢出时重新填充段落?
我尝试将其设置为 fill-paragraph
,但随后我无法在段落末尾插入 任何 个空格(例如,添加另一个单词)。
更多细节:我主要在 AUCTeX 主要模式中使用自动填充模式用于 LaTeX。
auto-fill-mode
的内置 Emacs 文档指出:
auto-fill-mode
开启时,auto-fill-function
变量为 非nil
。
normal-auto-fill-function
的值指定要使用的函数auto-fill-function
开启自动填充模式时。
normal-auto-fill-function
变量的文档
表示如果自动填充模式是,它是用于auto-fill-function
的函数
开启,初始值为do-auto-fill
。
【问题讨论】:
【参考方案1】:您不妨试试refill-mode
。但总的来说,要使这样的功能正常工作是很棘手的。另一种方法是仅将重新填充作为重新显示的一部分(即不影响缓冲区的实际内容)。为此,请尝试设置word-wrap
或启用visual-line-mode
。
【讨论】:
感谢您的提示!我会尝试这些模式。【参考方案2】:对于 LaTeX 文件,您可以尝试(需要 AUCTeX)
(add-hook 'LaTeX-mode-hook '(lambda ()
(setq auto-fill-function 'LaTeX-fill-paragraph)))
但请谨慎使用。
【讨论】:
这非常适合在段落内进行编辑,但不允许我在段落末尾插入空格(开始一个新单词)。(setq auto-fill-function (lambda () (if (looking-at "\n") (do-auto-fill) (LaTeX-fill-paragraph))))
我的运气更好以上是关于使用自动填充模式自动重新填充整个段落?的主要内容,如果未能解决你的问题,请参考以下文章
停止 jQuery 自动完成以过滤/搜索结果并填充整个源数组数据