【问题标题】:How to avoid syntax-highlighting for large files in vim?如何避免 vim 中大文件的语法高亮显示?
【发布时间】:2008-10-07 12:43:28
【问题描述】:

由于语法高亮,在 vim 中加载和处理巨大的文件需要很长时间。

我正在寻找一种方法来限制突出显示的文件的大小,这样大于(比如说)10MB 的文件将是无色的。

【问题讨论】:

    标签: vim colors vim-syntax-highlighting


    【解决方案1】:

    将以下行添加到 _vimrc 可以解决问题,还有一个好处:它也可以处理 gzip 压缩的文件(这在大文件中很常见):

    autocmd BufWinEnter * if line2byte(line("$") + 1) > 1000000 | syntax clear | endif
    

    【讨论】:

    • 如果您将syntax clear 更改为syn sync clear,您可能可以保持语法突出显示。尽管 YMMV 取决于所涉及的语法,但同步会减慢您的速度。就个人而言,我正在编辑一个 1100 万行的 IDAPro .LST 文件,添加该行后没有任何问题。
    • 我刚刚发现的一个技巧,可以大大缩短大文件的加载时间:如果已定义折叠,则禁用折叠,例如set foldmethod=manual.
    【解决方案2】:

    添加到您的 .vimrc:

    autocmd BufReadPre * if getfsize(expand("%")) > 10000000 |语法关闭 |结束

    请注意,这会禁用所有缓冲区中的语法高亮;语法是全局 vim 的东西,不能限制在单个缓冲区。

    【讨论】:

    • 使用 'syntax clear' 而不是 'syntax off' 仅适用于一个缓冲区。
    【解决方案3】:

    我自己没有尝试过,但LargeFile 插件似乎正好可以解决您正在寻找的东西。

    【讨论】:

      【解决方案4】:

      vim -u NONE

      这将跳过配置文件中的所有初始化。

      运行 gvim 时使用大写 U。

      "-i NONE" 只排除 viminfo 被加载。如果你在那里定义了语法高亮,那也会有所帮助。

      【讨论】:

        【解决方案5】:

        vim -c 'syntax off' 文件名.ext

        【讨论】:

        • 这将在加载文件后关闭突出显示
        • vim --cmd 'syntax off' 应该在加载文件之前运行它。
        猜你喜欢
        • 2011-06-03
        • 1970-01-01
        • 2015-12-17
        • 2016-05-07
        • 2010-09-08
        • 2016-08-16
        • 2015-04-24
        • 1970-01-01
        相关资源
        最近更新 更多