有时我会编写没有任何文件扩展名的脚本。例如:
#!/usr/bin/env node
console.log('hello world!');
我希望Vim可以从shebang行检测文件类型(例如#!/usr/bin/env node
是javascript
)。我应该把什么放进filetype.vim
?
答案 0 :(得分:30)
按照:help new-filetype-scripts
中列出的说明操作,
在用户运行时目录(scripts.vim
上创建~/.vim
文件
类Unix系统),并在其中编写以下脚本。
if did_filetype()
finish
endif
if getline(1) =~# '^#!.*/bin/env\s\+node\>'
setfiletype javascript
endif
答案 1 :(得分:10)
创建此文件~/.vim/ftdetect/node.vim
有了这个内容
fun! s:DetectNode()
if getline(1) == '#!/usr/bin/env node'
set ft=javascript
endif
endfun
autocmd BufNewFile,BufRead * call s:DetectNode()
答案 2 :(得分:0)
派对有点晚了,但是Node.vim会为你处理这样的JavaScript文件。然后还有一些。 : - )
答案 3 :(得分:-1)
如果您对插件感兴趣,那么确实存在一个插件:
https://github.com/vitalk/vim-shebang
这包含node -> javascript
突出显示的模式。
AddShebangPattern! javascript ^#!.*\s\+node\>