はじめに
本記事は Vim Advent Calendar 2022 の17日目の記事です。
昨日は @NI57721 さんで Vimで古代ギリシア語【自作プラグインのすすめ】 でした。
初めてLua製のNeovimプラグインを開発したので紹介します。
環境
- OS:macOS Ventura 13.0.1
- Neovim:v0.8.1
プラグインを開発したきっかけ
社内のとあるVimmerがとある猫を回転させていた のを見て、「これパクればウホーイも回転させられるんじゃね?」と思ったからです。(雑)
当時はNeovimを使い始めたばかりで、Luaも全然わからなかった(今もあまりわかりませんが)ので、勉強がてら作ってみることにしました。
開発手順
参考にするリポジトリをフォークする
まず参考にするリポジトリをフォークしました。
基本的には画像を差し替えるだけなので、そのほうが手っ取り早かったからです。
XPMファイルを作成する
回転させる画像は、XPMというフォーマットが採用されていました。
作成方法がわからなかったのですが、調べたらImageMagickでGIFをXPMに変換できることがわかりました。
無事にXPMファイルを作成できたので、手順を忘れないようにImageMagickの記事に追記しました。
いいね数は少ないですが、私はImageMagickを使うときによく見返します。
画像などを差し替える
文言や画像をとある猫からウホーイに差し替えます。
エラーを修正する
ビルドエラーが発生したので修正しました。
本家でも発生するエラーだったので、PRを作成し、マージもされました。
色を追加する
XPMファイルは色をカラーコードまたはカラーネームで指定するのですが、 gray1
や gray2
など、一部のカラーネームはそのままだと色が付きませんでした。
そのためカラーネームを手動でカラーコードに変換する処理を仕込みました。
完成!
ウホーイがNeovim上で踊りました ₍₍⁽⁽└|▼▼|┐₎₎⁾⁾
おわりに
画像を差し替えてちょっとソースコードをいじっただけなので、そこまでLuaやNeovimプラグイン開発の勉強にはなりませんでしたが、楽しかったのでよかったです。
作ったのが半年くらい前なので、また何かしらLua製のNeovimプラグインを作りたいです。
以上 Vim Advent Calendar 2022 の17日目の記事でした。
明日は @uga-rosa さんで「えっ!NimでNeovim用プラグインを!?」です。