时间:2010-07-24 10:04:44

标签: svn vim file-type

6 个答案:

答案 0 :(得分:8)

将以下代码添加到~/.vim/filetype.vim

" only load filetypes once
if exists("did_load_filetypes")
  finish
endif

augroup filetypedetect

" when BufRead or BufNewFile event is triggered, pop off the .svn-base extension and
" manually restart filetype autocommands
autocmd! BufRead    *.svn-base execute 'doautocmd filetypedetect BufRead ' . expand('%:r')
autocmd! BufNewFile *.svn-base execute 'doautocmd filetypedetect BufNewFile ' . expand('%:r')

augroup END

正如评论所述,此代码将获取.svn-base个文件并尝试在没有该扩展名的情况下找出文件类型。

:help new-filetype
:help :doautocmd
:help expand()

答案 1 :(得分:3)

答案 2 :(得分:0)

答案 3 :(得分:0)

答案 4 :(得分:0)

基于过多的php答案,即使文件扩展名不在svn文件名中,也可以使用。假设你运行vimdiff,svn-base作为第一个参数,工作副本作为第二个参数:

autocmd! BufRead *.svn-base if &diff && argc() == 2 |
    \     execute 'doautocmd filetypedetect BufRead '.argv(1) |
    \ endif
autocmd! BufNewFile *.svn-base if &diff && argc() == 2 |
    \     execute 'doautocmd filetypedetect BufNewFile '.argv(1) |
    \ endif

答案 5 :(得分:0)

使用GVim 8.0 as the Diff Viewer for TortoiseSVN 1.9.7 on Windows 10,我发现GVim正确识别php文件扩展名并显示语法突出显示。