为了制作我自己的代码片段,Vim不能使用js作为类型来创建我的代码片段。
autocmd FileType js inoremap ,f ()...我如何定义Vim FileType?
发布于 2021-01-11 04:10:45
如评论中链接的文章所示,您可以在vimrc中使用autocmd完成此操作。但是,我发现利用vim的运行时路径结构来设置特定于文件类型的设置会更简洁。
TL;DR
将特定于文件类型的命令放在~/.vim/after/ftplugin/javascript.vim中,比如inoremap ,f ()...。如果这些目录中的任何一个不存在,就创建它们。你可以对其他语言做类似的事情(例如,将html绑定放在~/.vim/after/ftplugin/html.vim中,等等)。
解释
vim运行时路径就是vim启动时查找配置文件和相关内容的地方(就像它读取~/.vimrc的方式一样)。首先,它将从/etc读取一些系统范围的内容,然后将读取~/.vim的内容。顾名思义,after目录将在其他设置之后被读取,尽管可能没有必要将这种类型的内容放入after,但它不会有什么坏处(它确保它不会被系统范围的配置覆盖)。在after中是ftplugin目录,这是特定于文件类型的配置所在的位置。您也可以将一个ftplugin目录直接放在~/.vim中,它也会做同样的事情(除了它会被更早地读取。您放置在此目录中的文件的工作方式与autocmd的工作方式类似。我只是更喜欢这样做,因为我发现它比在我的vimrc中有一堆autocmd更整洁。有关vim运行时路径以及如何使用它的更多详细信息,请查看this video。整个事情不是关于运行时路径的,但它确实有一个非常好的解释。
当然,如果您愿意,您仍然可以使用autocmd (我认为您唯一的问题是您的autocmd必须使用Filetype javascript而不是Filetype js)。
https://stackoverflow.com/questions/65656327
复制相似问题