Naoki URAI/クソ古自宅サーバ (Debian) に vim 9.x をインストールする

Created Mon, 18 Sep 2023 17:17:38 +0900 Modified Sat, 14 Oct 2023 01:29:47 +0000
621 Words

久々に自宅サーバをメンテしていて、あ。vim の環境をキレイにしようと思い立ちました。

https://github.com/Shougo/dein.vim を入れるかーと軽い気持ちで設定を始めたら

わらわらとエラーがでます。

... (snip) ...
行  145:
E475: 無効な引数です: plugins = []) abort
行  147:
E133: 関数外に :return がありました
行  148:
E193: 関数の外に :endfunction がありました
${HOME}/.vimrc の処理中にエラーが検出されました:
行   41:
E117: 未知の関数です: dein#check_install

よくよく README を読んでみると

8.2 以降を入れてね!とのこと

あれ? そういえばウチの vim って…

vim --version
VIM - Vi IMproved 8.1 (2018 May 18, compiled Jun 12 2023 14:23:03)
... (snip) ...

やだ古すぎ

そりゃそうよね。とっくに OS が EOL 迎えてるんだもの。もちろん apt の package も閉店です。

という事で久々に source からコンパイルする事にしました。

source はこちらから良きバージョンを

mkdir ~/vim-src && cd ~/vim-src && curl -OL https://github.com/vim/vim/archive/master.zip
unzip ./master.zip
cd ./vim-master
./configure
  • ... (snip)  ...
    configure: updating cache auto/config.cache
    configure: creating auto/config.status
    config.status: creating auto/config.mk
    config.status: creating auto/config.h
    
make test 
  • ... (snip) ...
         objects/netbeans.o objects/job.o objects/channel.o objects/xdiffi.o objects/xemit.o objects/xprepare.o objects/xutils.o objects/xhistogram.o objects/xpatience.o  objects/charset.o objects/json.o objects/memfile.o objects/message_test.o        -lm -ltinfo  -lrt -ldl
    link.sh: Linked fine
    ./message_test || exit 1; echo  passed;
    passed
    make[2]: ディレクトリ '${HOME}/vim-src/vim-master/src/libvterm' に入ります
    ... (snip) ...
    

うむいけそう。南無三!!!

make && sudo make install
  • ... (snip) ...
    if test -d /usr/local/share/applications -a -w /usr/local/share/applications; then \
       if test -f po/vim.desktop -a -f po/gvim.desktop; then \
            cp po/vim.desktop po/gvim.desktop \
                    /usr/local/share/applications; \
       else \
            cp ../runtime/vim.desktop \
                    ../runtime/gvim.desktop \
                    /usr/local/share/applications; \
       fi; \
       if test -z "" -a -x ""; then \
           -q /usr/local/share/applications; \
       fi \
    fi
    make[1]: ディレクトリ '${HOME}/vim-src/vim-master/src' から出ます
    

確認

/usr/local/bin/vim --version
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled Sep 18 2023 17:53:02)

パスはこうなっているので、シェルをリロードするかログインし直せば大丈夫ですね。

echo $PATH
${HOME}/bin:/usr/local/bin:/usr/bin:/bin:/usr/games

無事に dein.vim を設定する事ができました。

はよ OS アップグレードしなはれ!なんてごもっともな声が聞こえてきそうですが、

このサーバ、自宅のネットワーク系を一手に引き受ける SPOF なので、なかなか腰が重いのですよ。

かしこ