2019-12-08 (Sun) [長年日記]
_ Textbringerのredo_command
※Textbringer Advent Calendar 2019の参加記事です。
Textbringerの操作はほとんどEmacsと同じなのでEmacsチートシートを利用できるが、少しだけ違うところがある。
EmacsのC-/でundoを実行できるがちょっと癖があり、戻しすぎた時にredoするコマンドがなく、いったんundoをC-fなどの他のコマンドで中断すると、以降のundoはそれまでのundoを取り消す動作になる。
Textbringerはこの挙動は踏襲せず、redo_command(デフォルトではC-x C-/)というredo用コマンドを別途用意している。
ちなみにundoのコマンド名はundoなのに対し、redo_commandというコマンド名になっているのは、redoはRubyでは予約語であるため。 Rubyでは予約語と同名のメソッドも定義できるが、レシーバを省略した呼び出しができないのは不便なので、別の名前にしている。