TermtterならGoogle検索だってできる
Termtterはpluginによる拡張ができる
パッケージには最初からたくさんのpluginが含まれているので
自分の好みに合わせて機能拡張ができるだけでなく
自分でpluginを書くときの参考としても利用できる
Termtter本体のコードは僕には難易度が高いけれども
pluginならなんとかいけそうだ
pluginとして登録できる機能には
コマンドラインから実行させるCommand
Termtterの動作をフックするHook
出力をフィルタするFilter
簡単なCommandを登録するMacro
Commandエイリアスを登録するaliasなどがある
pluginはRubyによるDSLのようになっていて
Termtter::Clientモジュールのregister_commandメソッドや
register_hookメソッドにHashの値を渡すようにして記述できる
Termtter::Client.register_command( :name => :fib, :exec => lambda {|arg| n = arg.to_i text = "fib(#{n}) = #{fib n}" Termtter::API.twitter.update(text) puts "=> " << text } )
Google検索plugin
Termtterは検索の使い勝手がいいので
ここでGoogleも検索できたらきっと面白い
少し調べるとgoogle-searchというRubyのライブラリがあったので
これを使って作ってみた
使ってくれる人がいたらうれしい
なおuri-open pluginが必要になる
使い方はgsearchコマンドに続けてクエリーを打つ
> gsearch termtter または gs termtter
8件の結果が番号付きでリストされるので
> 3
のように番号を指定して開く
次の8件の検索結果を見たいときは
> gnext または gn
とする
.termtter/configで設定を少し変更できる
config.plugins.gsearch.colors = ['red','on_green','underline'] # defaultは ['green'] config.plugins.gsearch.verbose = false # defaultは true config.plugins.gsearch.lang = :en # defaultは :ja config.plugins.gsearch.size = :small # defaultは :large
colorsで検索結果の色を変更できる
verbose=falseでtitleとuriだけの表示になる
langで対象言語を指定できる
size=:smallで表示数が4件になる(:largeは8)
また.termtter/configで
config.plugins.gsearch.site = 'd.hatena.ne.jp/keyesberry'
のように特定のサイトを指定した場合 -s(または-site) optionが働いて
> gs -s ruby または gs -site ruby
で指定サイト内の検索ができる
自分の過去の投稿を検索するとき重宝する
いくつか問題点があります
(追記:2010/2/8) コードのupdateと対応する説明を追加しました
(追記:2010/2/8) サイト指定検索のコードと説明を追加しました