aTextでRubyスクリプトを使う

先日からaTextというユーティリティーを使い始めました。Mac OSXではTextExpanderが有名な、スニペットツールというジャンルのソフトウェアです。お値段$4.99のわりにとても多機能で、決まったテキストを出力するだけでなくシェルスクリプトの実行もできるという事で購入を決断しました。しかしシェルスクリプトの実行方法を調べてもさっぱりわからず、試行錯誤していたらやっとわかったので記録しておきます。

このソフト、いいのはなんといっても安いところです。TextExpanderは$44.95なので9倍違います。できることはそこまで違わないと思うんですよね。iOS端末も含めた同期が必要な人はTextExpanderでないとだめなんでしょうが、Macだけで使えればいいなら断然aTextだと思います。

で、メーカーの情報ページを見ると”Invoke AppleScripts and Shell Scripts.”と書いてあるのでどうやるんだろうと探してみたんですが情報が見つけられませんでした。ソフトにヘルプはなくて、サポートページには載ってません。

しかしいじくり回していたら、画面の赤丸で囲んだ部分の右端にある不等号を縦にした記号の所をクリックすると
atext2
メニューが出てくる事がわかったのです。
atext4

そうとわかれば話は早い。echo helloと入力したらhelloと出たので、標準出力が出力として使われる事が分かりました。ならばという事で、こんなスクリプトを書きました。

#! /usr/bin/env ruby

def addquote(text)
  text.each_line{|line|
    print("> #{line.chomp}\n")
  }
end

text = `pbpaste | /usr/local/bin/nkf -w`
case ARGV[0]
when nil
  addquote(text)
when "quote"
  addquote(text)
end

このスクリプトをaTextから呼び出せば、クリップボードにコピーしたテキストの各行頭に>をつけたテキストを出力する事ができます。拡張できるように引数で動作を追加できるようにしておきました。

そうそう、Previewってところを押すと実行結果を見られます。
atext3

たのしいRuby 第5版
たのしいRuby 第5版

posted with amazlet at 16.01.17
高橋 征義 後藤 裕蔵
SBクリエイティブ
売り上げランキング: 219,098
Rubyによるテキストデータ処理 (講座ITと日本語研究)
明治書院
売り上げランキング: 741,859
カテゴリー: ありものソフト, Mac, OSX, Ruby タグ: , , パーマリンク

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中