haskell - 使用 Vim 在文本换行上自动继续 Haskell 注释中的前导破折号

标签 haskell vim comments

我正在使用 Vim 编辑 Haskell 源文件,并设置了 'textwidth' 选项来自动换行过长的行。所以我的 ~/.vimrc 看起来像:

set tw=78

现在,当我编写的行长度超过 78 个字符时,最后一个单词会自动转到下一行。这对于在源文件中编写注释非常有用。好处是,在注释中,当最后一行太长并自动换行时,前导注释符号会自动插入到每行的开头。但这仅适用于 C 风格的注释,但不幸的是不适用于 Haskell 前导破折号。

所以,例如在 JS 文件中

/**
 * This is a very long comment which is longer than 78 chars, yeah really 
 * longer than 78 chars...

包装得很好

// This is a very long comment which is longer than 78 chars, yeah really 
// longer than 78 chars...

所以现在如果在 Haskell 注释中发生同样的事情就好了,比如

------------------------------------------------------------------------------
-- | This is a very long module description which is longer than 78 chars,
--   yeah really longer than 78 chars...

有人知道这是否可行以及如何实现吗?此行为在哪里指定? :set formatexpr 或 :set formatoptions 对我有帮助吗?

预先感谢您的帮助!

=<<约翰内斯

/编辑:顺便说一句,我使用 vim 7.3.x

最佳答案

您应该检查formatoptions设置;对我来说,它的值是croqlc 表示注释在下一行继续。请参阅 :help 'formatoptions'

:set formatoptions=croql

关于haskell - 使用 Vim 在文本换行上自动继续 Haskell 注释中的前导破折号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10719574/

相关文章:

haskell - 自由组单子(monad)

haskell - 使用 DataKinds - 种类不匹配错误

windows - GVim Win32 中的仅键盘列 block 选择,或者为什么包含 mswin.vim 时 Ctrl-Q 不模拟 Ctrl-V?

xaml - 用于 XAML 编辑的 VIM

visual-studio - 在Visual Studio中,是否有只自动换行注释的方法?

list - 浏览 Haskell 中的列表拆分功能

linux - Haskell:quoteFile 在 unicode 字符上带有 "invalid byte sequence"的文本文件上失败

vim - 使用 CSS 样式将代码转换为 HTML

api - 伊姆古尔 API : POST comment in GO

vim - 注释格式,指定 * 和缩进