新年伊始,首先祝大家新年快乐~~
今天和朋友看了一下flash对3D的支持,需要用到扩展名为.as的actionscript文件(虽然我暂时确实不知道怎么写它……),于是就尝试着用vim来编辑它。
首先,下载actionscript着色文件:actionscript.vim,放到syntax目录下。然后打开一个.as文件。
结果事与愿违,由于atlas和actionscript都可以用as扩展名,而vim却将.as文件认做是atlas文件,所以着色完全不对。解决方法有三,其中第三种是最好的,但是作为思路,还是3中方案全部记录在这里:
1.修改filetype.vim文件
在vim72目录下有一个filetype.vim文件,找到
" Atlas
au BufNewFile,BufRead *.atl,*.as setf atlas
修改为
au BufNewFile,BufRead *.atl setf atlas
au BufNewFile,BufRead *.as setf actionscript
这样就可以了。
---------------------------------我是华丽的分割线---------------------------------
在说明后两种方法之前,大家首先需要了解一下,由于用的是autocmd,所以无论你自己写的autocmd先执行,或者是filetype.vim中的autocmd先执行,实际上最后在autocmd映射的指令真正执行时,我们是控制不了的,所以无论是放在ftplugin,syntax或者after下,或者在vimrc中写,都是没有用的;方法在与变换autocmd的写法
2.在BufRead之后执行
在vimrc文件中,写下:
au BufWinEnter *.as setf actionscript
由于BufWinEnter比BufRead晚执行,所以就可以正确的显示着色啦
3.强制使用vimrc中的autocmd
在vimrc文件中,写下:
augroup filetypedetect
au! BufNewFile,BufRead *.as setf actionscript
augroup END
注意到有一个!,这个就会强制使用当前的autocmd
OK,上班第一天,总结的东西希望对大家有用~~