秀丸のマクロを他の言語で実行する(ruby編)
ruby.mac(秀丸から実行するマクロファイル)
if( selecting == 1 ) { run "ruby \"C:\\Program Files\\Hidemaru\\mac\\test.rb\" < con > con "; }
test.rb(ruby.macから実行するrubyのソース)
for line in STDIN puts line.chomp + "a" end
※秀丸のマクロのパスを「C:\Program Files\Hidemaru\mac」として記述しています。(動的にパスを編集できる方法を知ってれば是非教えてください!)
選択した範囲にたいしてrubyで編集されます。
例えば以下のようなデータを選択した場合。
1234 12345 123456
下記結果になります。
1234a 12345a 123456a
ソースの修正履歴を残したい場合の例(ruby編)
test.rbを下記のように編集してみる
require "date" puts "# --- add start --- #{ Date.today.to_s } ---#" for line in STDIN print line end print "# --- add end --- #{ Date.today.to_s } ---#"
上記の例だと
1234 12345 123456
下記結果になります。
# --- add start --- 2008-11-29 ---# 1234 12345 123456 # --- add end --- 2008-11-29 ---#