termtterのプラグインをいじってみる

プログラミングに関するブログを読んだり、Twitterプログラマな人をfollowしたりしていると、「ネットユーザーはおしなべてプログラミングができるもんだ」という錯覚におちいります。

プログラミングができるのは素敵だなあ、ということで、ぼくも最近Rubyをおぼえはじめました。はじめてみれば、これがなかなかおもしろいのですね。

さしあたり、てごろな教材としてtermtterのプラグインをいじっていきたいとおもいます。

てはじめに、confirm.rbに手を加えてみました(というほどのものでもないですが)。

# -*- coding: utf-8 -*-

Termtter::Client.register_hook(
  :name => :confirm,
  :points => [:pre_exec_update],
  :exec_proc => lambda {|cmd, arg|
    if /^y?$/i !~ Readline.readline("update? #{arg} (#{arg.split(//).size}) [Y/n] ", false)
      puts 'canceled.'
      raise Termtter::CommandCanceled
    end
  }
)

termtterは、他のクライアントにあるような「入力文字数の表示」がなさそう(Ver 1.0.7 現在)だったので、confirmの際にそれができたらうれしいな、ということでconfirmのプロンプトに"(文字数)"という形で表示されるようにしてみました。
こういう、ちょとしたことを簡単にできるのは、すばらしいですね。
自作や独自に改造したプラグインは、"~/.termtter/plugins"というディレクトリを作って、その中にいれておけば、termtter本体に添付されているプラグインより優先して読み込まれるようです。