vim:希望它仅针对某些文件类型打开设置

问题描述 投票:0回答:3

我看过this,但没有太多帮助。 可能是我没读太懂。

基本上我想要的是当我打开 .txt 文件时的设置:

set wrap
set linebreak

已开启。 我该怎么做呢?

提前致谢。

另外,我使用的是XP。

vim text-files
3个回答
31
投票

我对这个问题的回答仍然适用:

将基于文件后缀的 autocmd 命令放入 ~/.vimrc 中

autocmd BufRead,BufNewFile   *.txt set wrap linebreak

正如 Luc 所说,你可能更喜欢

autocmd BufRead,BufNewFile   *.txt setlocal wrap linebreak

如果您可能同时打开 txt 和非 txt 文件。


10
投票

将其放入 ~/.vim/ftdetect/text.vim (此路径在 Windows 上会略有不同):

autocmd BufRead,BufNewFile *.txt setfiletype text

然后将其放入 ~/.vim/ftplugin/text.vim:

setlocal wrap
setlocal linebreak

最好只对某个文件类型执行一次 autocmd,并将其与 vimrc 文件分开。


3
投票

一个好的解决方案是“after”目录。 您可以在其中添加您想要的任何内容、语法突出显示、文件类型等的 rc 文件。这些配置在所有其他配置运行之后运行,因此在系统配置之后和 .vimrc 之后运行。 因此,您可以在 unix 类型系统上创建一个名为 ~/.vim/after/ftplugin/text.vim 的文件,并在其中添加您想要的两行。 这些选项将为“文本”文件类型设置,但不会为其他文件类型设置。 您可以在每个目录中为其他文件类型包含不同的文件,例如 perl.vim。 由于您不在unix环境中,因此您需要通过检查[runtimepath][2]选项来找到您的[runtime目录][1]。 您将在其中创建“after”目录和文件。

注意:

这些链接对我不起作用,可能是因为锚点:

目录简要后 这里提到:
    http://www.vim.org/htmldoc/usr_43.html#43.2
  • 运行时目录:
  • http://www.vim.org/htmldoc/usr_43.html#your-runtime-dir
  • 运行时路径:
  • http://www.vim.org/htmldoc/options.html#
  • '运行时路径'
© www.soinside.com 2019 - 2024. All rights reserved.