これはVim駅伝の295本目の記事です。
こんにちは、苔コッコーです。
今回は、Vimが邪魔してくるようにしました。なんでこんなことをしたのかはよくわかりません。
もちろんオンオフはできますが、邪魔でしか無いので導入することは推奨しません。
邪魔モードの概要
「邪魔モード」は、Neovimを意図的に邪魔をさせるネタプラグインです。実行すると、以下のような予測不能な動作がランダムで発生します。
- ランダムな色の変更
- ランダムなスクロール
- 意味不明なエラーメッセージの表示
- 行の非表示(折りたたみ)
- ランダムなファイルのオープン
- 1分ごとの休憩メッセージ
プラグインの設定
プラグインには柔軟な設定オプションが用意されています。デフォルトの設定は以下の通りです:
interference.config = {
  enable_colors = true,  -- ランダムな色の変更を有効化
  enable_scroll = true,  -- ランダムスクロールを有効化
  enable_errors = true,  -- エラーメッセージの表示を有効化
  enable_files = true,   -- ランダムなファイルを開く機能を有効化
  enable_break = true,   -- 休憩メッセージを有効化
  start_shortcut_key = "<leader>rb",  -- 開始のショートカットキー
  stop_shortcut_key = "<leader>rq"   -- 停止のショートカットキー
}
この設定は、setup()関数を使ってカスタマイズできます。
主な機能
以下は、プラグインが提供する主な邪魔機能の詳細です。
ちゃんと動かないのもありますが、それも含めて邪魔です。
1. ランダムな色の変更
背景色と文字色をランダムに変更し、視認性を意図的に損ないます。色が変わるたびに「こっちのほうが見やすいでしょ?」というメッセージが表示されます。
2. ランダムなスクロール
カーソル位置をランダムな行に移動させ、「ここが見たかったんだよね」というメッセージを表示します。
3. 意味不明なエラーメッセージの表示
リストからランダムに選ばれたユーモラスなエラーメッセージを表示します。
4. 行の非表示(折りたたみ)
ランダムな範囲の行を折りたたんで非表示にします。「その行、邪魔だったでしょ?」というメッセージが添えられます。
5. ランダムなファイルのオープン
現在のディレクトリからランダムなファイルを開きます。「気分転換にこっちを編集しよう!」というメッセージが表示されます。
6. 1分ごとの休憩メッセージ
1分ごとに「1分たったよ!そろそろ休憩しよう!」というメッセージを表示します。モーダル形式で作業をブロックすることで、強制的に休憩を促します。
実行と停止
プラグインを起動および停止するためのショートカットキーとコマンドが用意されています。
ショートカットキー
- 
開始: <leader>rb
- 
停止: <leader>rq
コマンド
- 
InterferenceStart: プラグインを開始。
- 
InterferenceStop: プラグインを停止。
まとめ
「邪魔モード」は、Neovimのカスタマイズ性を活用したジョークプラグインであり、日常の編集作業にちょっとしたユーモアを加えるものです。興味がある方は、ぜひ試してみてください!
最後までお読みいただきありがとうございました。
