在 vim 中,我如何才能不仅根据扩展名,还根据开头的 #! 行来设置文件类型?例如,当文件以以下格式开头时,我希望 vim 将文件识别为 coffee-script 文件:#!/usr/bin/env coffee
答案1
当 hash-bang 不使用“env”实用程序时,Vim 通常可以正确检测文件类型,并且它有代码尝试在内部将#!/usr/bin/env [...]
行转换为它也可以处理的内容。问题是 $VIMRUNTIME/scripts.vim 没有“coffee”模式。
好消息是,您可以添加 Vim 的检测功能,而无需修改分发文件。您只需将自己的检测逻辑添加到 即可~/.vim/scripts.vim
。:help new-filetype-scripts
有关详细信息,请参阅“ ”。您可能希望查看整个“ :help new-filetype
”部分。