Error detected while processing function ghcmod#util#check_version
ghc-mod.vimでエラーが出た
具体的にはghc-modを5.2.1にupdateしたら.hsファイルを開いたときにエラーが出るようになった
文法エラーを表示する機能には影響していないようなのでほっておいてもいいが、起動時に毎回出るのは面倒なので調べてみた
ちなみにghc-mod.vimはversion 1.2.0
出ていたエラー
Error detected while processing function ghcmod#util#check_version: line 3: E684: list index out of range: 0 E15: Invalid expression: a:version[l:i] > l:ghc_mod_version[l:i] E684: list index out of range: 1 E15: Invalid expression: a:version[l:i] > l:ghc_mod_version[l:i] E684: list index out of range: 2 E15: Invalid expression: a:version[l:i] > l:ghc_mod_version[l:i]
こちらのページの通りでひとまずエラーは出なくなった
Pyon's Diary - 舊 平成廿陸年甲午水無月拾捌日丙戌 (月・晴)
↑のページの通りだが以下のように変更するだけ
ghcmod#util#ghc_mod_version()という関数内のmatchlistの部分
# .vim/bundle/ghcmod-vim/autoload/ghcmod/util.vim - let l:m = matchlist(vimproc#get_last_errmsg(), 'version \(\d\+\)\.\(\d\+\)\.\(\d\+\)') + let l:m = matchlist(vimproc#system('ghc-mod version'), 'version \(\d\+\)\.\(\d\+\)\.\(\d\+\)')
errmsgから取るのではなく、ghc-mod versionの出力からversionを取るようにしたらしい
vimscriptはあまりわかっていないので勉強せねば。。
↓本ならこれがいいのか?気になっていたもののまだ読んでおらず

Vim script テクニックバイブル ~Vim使いの魔法の杖
- 作者: Vim scriptサポーターズ
- 出版社/メーカー: 技術評論社
- 発売日: 2014/08/06
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る