使用%在vim中的大括号之间跳转只能工作一次,然后停止跳转(仅在html文件中的javascript)

时间:2015-01-08 20:27:02

标签: vim

所以我希望能够使用%在匹配的大括号之间跳转,它似乎只是第一次工作。此行为似乎是HTML文件中的Javascript(和CSS)所独有的。在Javascript文件中它可以正常工作。

此外,它似乎适用于HTML标记并在<之间跳转。和>。所以它只是我的HTML文件的CSS或JavaScript部分中的(),[]或{}。

我应该分享哪些代码?

1 个答案:

答案 0 :(得分:1)

OP提出的问题可以通过对.html文件进行符号链接来解决,如下所示:

ln -s index.html index.js

然后编辑index.js文件,index.html文件将自动更新,因为index.js只是index.html文件的符号链接。

您可以使用:set filetype?检查vim中文件的当前文件类型,还可以强制使用:set filetype=javascript的文件类型。

然而,这不是很优雅,并且需要更持久的解决方案。

通过在~/.vimrc的末尾添加以下行,似乎可以永久解决问题:

au BufNewFile,BufRead *.html set filetype=javascript

这会将所有.html文件视为.js文件。

如果~/.vimrc中的此指令在vim中加载文件时似乎没有任何效果,您可以考虑在~/.vim/view中清除对该文件的引用。

我暂时重命名了我的~/.vim目录,看看OP的问题是否是由我所拥有的任何插件引起的。似乎没有插件问题仍然存在,所以它可能是vim中的一个bug。但是,如上所述,由于问题很容易永久修复,我不会向vim维护者提交报告。如果有人认为应该报告,请继续这样做。