【问题标题】:Auto wrap long lines in VIM在 VIM 中自动换行
【发布时间】:2011-08-01 22:53:43
【问题描述】:

当我在 Vim 中编辑 haskell 文件时,我的编辑器会自动将超过 80 个字符的 cmets 换行到下一行。我希望 Vim 对 python 文件(和文本文件)使用相同的行为,但我在 ~/.vim/syntax 文件夹或 vimrc 的任何地方都找不到执行此操作的设置。

这是我的 .vimrc 的相关行:

set wrap
set textwidth=80

【问题讨论】:

    标签: vim word-wrap


    【解决方案1】:

    设置textwidth 将设置您的最大行长。这将在该字符点放置一个新行(尽管空白可以精确地播放 80 位)。 (这会影响文件的实际格式)。

    wrap 确实是您想要的拆分/包装。

    确保您的 .vimrc 在您的主目录中。

    【讨论】:

    • 这个关于stackoverflow的问题也谈到了一些python包装的东西stackoverflow.com/questions/1314174/…
    • 谢谢 - 我认为在我的 formatoptions 中添加“c”有助于解决问题。
    【解决方案2】:

    我在我的 vimrc 中使用以下脚本自动包装 .txt 文件。这可能会给你一些提示。

    if has('autocmd')
      au BufRead,BufNewFile *.txt set wm=2 tw=80
    endif
    

    【讨论】:

    • 如果textwidth != 0wordmargin 被忽略。
    【解决方案3】:

    如果在插入模式启动时一行已经比 textwidth 长,即使在该行中添加了文本,该行也可能不会被换行。如果formatoptions 包含“l”,则添加文本时不会换行。如果需要,可以像这样删除“l”:

    :set fo-=l
    

    您可以通过以下方式检查格式选项的值:

    :set fo?
    

    您可以通过here 或通过以下方式了解这些字母的含义:

    :he fo-table
    

    【讨论】:

      猜你喜欢
      • 2012-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-06
      • 2010-12-24
      • 2011-02-12
      相关资源
      最近更新 更多