Automator を使ってサービスを作成すると、アプリケーションを問わずに選択範囲の文字列を簡単に取得することができる。
ターミナルから Kobito へ文字列を送信する をサービスにしてみた。
1. Automator を起動してサービスを選択する。
2. 「シェルスクリプトを実行」を追加する。
3. 実行するコマンドとして /usr/bin/ruby
を選択して、以下のコードを記述する。
data = ARGF.read
path = "/tmp/kobito#{Time.now.to_i}.md"
File.open(path, "w") { |io| io.print data }
system "open -a Kobito '#{path}'"
File.delete(path)