Vimscript:未加载文件类型
我不熟悉vimscript,也不了解它的工作原理。我想将其安装到我的配置中:我将其直接放在我的.vim目录中,这可能是我出错的地方 它有一个~/.vim/ftdetect/twee.vim文件,我对它做了一些修改。看起来是这样的:Vimscript:未加载文件类型,vim,cygwin,Vim,Cygwin,我不熟悉vimscript,也不了解它的工作原理。我想将其安装到我的配置中:我将其直接放在我的.vim目录中,这可能是我出错的地方 它有一个~/.vim/ftdetect/twee.vim文件,我对它做了一些修改。看起来是这样的: " markdown filetype file if exists("did\_load\_filetypes") echom "I put this here" finish endif augroup twee
" markdown filetype file
if exists("did\_load\_filetypes")
echom "I put this here"
finish
endif
augroup twee
au! BufRead,BufNewFile *.twee,*.tw setfiletype twee
autocmd BufRead,BufNewFile *.twee,*.tw compiler twee
augroup END
我补充说,这是我自己的回声。每当我打开一个扩展名为.twee的文件时,它就会打印出回声。但是当文件打开时,如果我键入:set filetype?它打印出:filetype=
我做错了什么?我如何让它运行这个自动组?顺便说一句,如果我在本地缓冲区中设置filetype=twee,语法高亮显示将正常工作 答案是:
有许多不同的文件类型检测方法;
你把他们两个弄糊涂了
我不太明白ftdetect目录是如何工作的,但是
:help ftdetect表示如果要添加文件类型
通过将文件放入“ftdetect”来检测新文件类型
目录,该文件应仅包含自动命令,例如
au BufRead,BufNewFile *.wibble set filetype=wibblewobble
请注意,没有!在au之后,命令是
设置文件类型,而不是“设置文件类型”。还请注意,帮助条目显示:
...there is no "augroup" command, this has already been
done when sourcing your file.
另一方面,如果通过创建
拥有~/.vim/filetype.vim文件,然后将
您在上面使用的命令,即
if exists("did_load_filetypes")
finish
endif
augroup filetypedetect
au! BufRead,BufNewFile *.wibble setfiletype wibblewobble
augroup END