4

私はvimで優れたEasyTagsプラグインを使用しています。私の唯一の問題は、ExuberantCTagsがHaskellをサポートしていないことです。ただし、Haskell vimタグファイルを正しく生成するプログラムがいくつかあり、EasyTagsのファイルタイプごとのタグファイルオプションをすでに使用しています。

EasyTagsにファイルタイプごとに異なるctagsプログラムを使用するように指示する方法はありますか?ラッパースクリプトを記述して、それをグローバルctagsプログラムとして設定することもできますが、よりクリーンなソリューションをお勧めします。

私はもう試した

:autocmd FileType haskell let g:easytags_cmd = '~/.cabal/bin/lushtags'

しかし、EasyTagsはサポートされている言語のリストをctagsプログラムに照会しようとしているようです。そのため、このオプションを有効にしてHaskellファイルを開くと、エラーが発生します。

"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

4

1 に答える 1

5

ここのEasyTagsユーザーの仲間、私はいつもその機能も欲しかった(のためにjsctags)。特定の言語用に個別の実行可能ファイルを構成できるパッチを実装しました。

これがマージされるまで(残念ながら、過去数か月間、そこでは何のアクティビティもありませんでした)、私のフォークを使用できます。構成は次のようになります。

let g:easytags_languages = {
\   'haskell': {
\       'cmd': '~/.cabal/bin/lushtags',
\       'args': [],
\       'fileoutput_opt': '-f',
\       'stdout_opt': '-f-',
\       'recurse_flag': '-R'
\   }
\}
于 2013-03-07T16:27:14.490 に答える