0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

これはVim駅伝の295本目の記事です。

こんにちは、苔コッコーです。
今回は、Vimが邪魔してくるようにしました。なんでこんなことをしたのかはよくわかりません。
もちろんオンオフはできますが、邪魔でしか無いので導入することは推奨しません。

邪魔モードの概要

「邪魔モード」は、Neovimを意図的に邪魔をさせるネタプラグインです。実行すると、以下のような予測不能な動作がランダムで発生します。

  1. ランダムな色の変更
  2. ランダムなスクロール
  3. 意味不明なエラーメッセージの表示
  4. 行の非表示(折りたたみ)
  5. ランダムなファイルのオープン
  6. 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のカスタマイズ性を活用したジョークプラグインであり、日常の編集作業にちょっとしたユーモアを加えるものです。興味がある方は、ぜひ試してみてください!

最後までお読みいただきありがとうございました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?