これはVim駅伝の297本目の記事です。
こんにちは!中学生プログラマーの苔コッコーです。HTML、CSS、Javascriptのみで簡易的なサイトを作る際、それだけのためにテキストエディタを閉じてpython -m http.server 8000
するの面倒じゃないですか?
そこで今回は、Neovimから抜けずに開発用サーバーを建てるためのプラグインを開発しました。
(Node.jsやVite、Jekyllなどには対応しません)
簡単に説明
依存プラグイン:plenary.nvim
Python3が必要
:Serve [port]
でlocalhostのサーバーを起動、デフォルトのポートは8000
:ServeStop
でサーバーを停止。
Neovimの終了時に自動でサーバーを停止。異常終了の場合(fishでのCtrl-zなど)ではサーバーは停止しないので、適宜プロセスをkillしてください。
詳しくはREADMEを参照してください。
開発で躓いた点
最初は、plenaryのserver_job:shutdown()でサーバーを停止する仕様にしていたのですが、なぜかうまく停止しなかったので、pidを取得してからkillで終了するようにしました。(ChatGPTに感謝です)
最後に
以上でserve.nvimの紹介を終わります。静的なHTMLのみの開発は現在珍しいかとも思いますが、ぜひ使ってみてください!