標準愚痴出力

個人的なIT作業ログです。もしかしたら一般的に参考になることが書いているかもしれません(弱気

vim 9.1 (stable) の scoop installer 用の暫定的な manifest を作った

vim の manifest は scoop-installer の Main bucket に登録されているが、ずっと vim 9.0 のままで、最新版の 9.1 にあがる様子が一向にない。マニフェスト: vim.json が参照しているページ: https://ftp.nluug.nl/pub/vim/pc/vim がずっと 9.0 のままだからだ。

vim 9.1 、入力モードでカーソルの形状がアンダーバー状に変わったり、なかなか良さそうだ。全部手作業でインストールしてもよいのだが、今後の更新やアンインストール時のことを考えると、きちんとパッケージ管理した形でインストールできた方が望ましい。

  • (案1)winget install vim.vim
    • C:\Program Files\vim\vim91 分、%PATH% 長くなって、いやん
    • 管理者権限が必要
  • (案2)nightly 版が GitHub Releases にあがっている
    • 比較的手軽に自動更新の manifest が作れる
    • stable ではない
    • 毎晩更新されるので、無駄に bucket のコミット数が増える

両方ともイマイチなので、make-scoop-manifest で自前で最新の stable版の manifest を作る方法を検討した。

今の make-scoop-manifest は GitHub の Releases しか見ないようになっているが、まずこれを普通のHTMLのページも見られるようにした1。これで、vim.org の Download ページ: https://www.vim.org/download.php のHTML からマニフェストを作ってみた。いつものように hymkor bucket 経由でインストール可能になっている。

scoop bucket add hymkor https://github.com/hymkor/scoop-bucket
scoop install vim-hogehoge

インストール時、あまり要らんことはさせたくなかったので、install.exe や uninstall.exe を呼び出さないなどの点で、Mainvim.json と違いがある。なぜ vim-hogehoge という名前かというと、Main版との違いが分かるような良い名前がなかったためだ。それならば、いっそのこと「雑に作ったもの」と分かるような名前でいいやと考えた。

なお、新make-scoop-manifest.exe は改造点が多過ぎるので、リリース・解説はもうちょっとだけ後にしたいと思う。

(追記:2024.03.18)

make-scoop-manifest の任意のHTMLをスキャンする新仕様だが、よく考えるとそのオプションの内容を検討するより、人間が目視でHTML を確認した方が早く、意味がなかったため、廃案とした。

繰り返し手動で更新するならば使いどころがあったかもしれないが、BucketTemplate を複製して使っている場合は GitHub Actions で自動更新できてしまうのだった。


  1. 他にもいろいろ機能追加が必要だったのだが、書き出すとキリがないので、今回は省略する。