Neovimで色を自在に作ろう!
はじめに
便利で見た目がリッチな色作成用のプラグインです。
スライダーの動的ハイライト、様々な色空間対応、以前使った色の復元、バッファ内のハイライトなど、機能モリモリです。
背景
特にちゃんとした理由があるわけでもないんですが、欲しい感じのものがなくて、自分で作れそうだったので作りました。
似たようなプラグインは多いですが、多分これが一番便利です。
使い方
normal modeから使うためのコマンドと、insert modeから使うためのマッピングがあります。
-
:CccPick
- カーソル下の色を検出し、調整した色で置き換えます。
-
<Plug>(ccc-insert)
- 作った色を挿入します。
セットアップ
Lua製プラグインあるあるの、デフォルト設定のまま使うのに空setupが必要な点は回避しています。
なにかしらの変更が必要な場合だけsetupしてください。
local ccc = require("ccc")
local mapping = ccc.mapping
ccc.setup({
highlighter = {
-- ハイライトの自動有効化
auto_enable = true,
-- ハイライトが有効になるファイルタイプの制限
filetypes = { "css", "html", "vim" },
},
mappings = {
-- qで閉じるの無効化
q = mapping.none,
},
})
オプション
まだ作ったばかりで開発がアクティブなので、FAQ的に重要な設定だけ載せようと思います。
helpはちゃんと書いてるので、気になったことがあれば見てみてください。
Q. なんかエラー出たんだけど
A. mainでは大量の動的ハイライトによるバグを回避するために、0.7.2には存在しないAPIを使っています。
0.7.2
というブランチがあるのでそれを使ってください。
バージョンの問題でないならissueお願いします。
Q. スライダーの見た目関連
A. フォントの問題で滑らかに見えないのはよくあるようです。
好きな文字に変えられるので、フォントにあったものを選んでください。
ポインターの文字や色も設定できます。
ccc.setup({
bar_char = "█",
point_char = "😈",
point_color = "#4833cc",
})
Q. あの色空間が欲しい。
A. 既に実装してあるのは、RGB, HSL, HSV, CMYK, Lab, XYZ, HSLuvです。
追加は簡単なので、要望あればissue立ててください。
複数の色空間を同時に使うこともできますが、これはちょっと高度な設定がいるのでwikiを見てください。
おわりに
相談に乗って下さったvim-jpの皆様に、この場を借りて感謝申し上げます。
Discussion