asm*_*asm 4 tags vim exuberant-ctags
我使用优秀的EasyTags插件与vim.我唯一的问题是Exuberant CTags不支持Haskell.但是,有几个程序可以正确生成Haskell vim标记文件,我已经在EasyTags中使用了每个文件类型标记文件选项.
有没有办法告诉EasyTags在每种文件类型的基础上使用不同的ctags程序?我可以编写一个包装脚本并将其设置为全局ctags程序,但更喜欢更清洁的解决方案.
我试过了
:autocmd FileType haskell let g:easytags_cmd = '~/.cabal/bin/lushtags'
Run Code Online (Sandbox Code Playgroud)
但EasyTags似乎试图在ctags程序中查询支持的语言列表,因此当我打开启用了此选项的Haskell文件时,我收到错误.
Run Code Online (Sandbox Code Playgroud)
"Data/Csv/Conduit.hs" [RO] 51L, 1950C
Error detected while processing function xolox#easytags#register..xolox#easytags#get_tagsfi
le..xolox#easytags#supported_filetypes..34_check_filetype:
line 3:
E605: Exception not caught: Failed to get supported languages! (output: Usage: lushtags [op
tions] [--] )
Error detected while processing function xolox#easytags#register..xolox#easytags#get_tagsfi
le..xolox#easytags#supported_filetypes:
line 14:
E171: Missing :endif
Error detected while processing function xolox#easytags#register..xolox#easytags#get_tagsfi
同样在这里的EasyTags用户,我也一直想要这个功能(for jsctags).我已经实现了一个补丁,允许为特定语言配置单独的可执行文件.
在合并之前(不幸的是,过去几个月里没有任何活动),你可以使用我的前叉.配置将是这样的:
let g:easytags_languages = {
\ 'haskell': {
\ 'cmd': '~/.cabal/bin/lushtags',
\ 'args': [],
\ 'fileoutput_opt': '-f',
\ 'stdout_opt': '-f-',
\ 'recurse_flag': '-R'
\ }
\}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1234 次 |
| 最近记录: |