マークダウン便利ですね―、パパっとしたメモがHTMLに変換されて便利です。
こんな感じ。
マークダウンはプレビューが不便だった
マークダウンはドキュメント生成が楽なのに、プレビューするととたんに面倒になります。
Finderのプレビューエリアをつかってプレビューしてた。
面倒だから監視スクリプト書いた
マークダウンをメインで使いたいので、監視スクリプトと自動プレビューを作った。
こういうのがパパっと作れるのでOSXは本当に好き。
(IEでコレやろうと思うと大変ですよね。。。)
自動プレビューできるRubyスクリプト
必要なgems
gem install rb-kqueue
起動
ruby markdown_watcher.rb m_sample
Rubyファイル
#!/usr/bin/env ruby require 'rb-kqueue' ##引数処理 f_name = ARGV.shift puts "usage:\n #{__FILE__} FILE \n " if f_name.nil? puts "error\n file '#{f_name}' does not exits.\n" unless File.exist? f_name ##ファイル名処理 html_name = f_name.gsub(/\..+$/, "")+".html" f_name = File.realpath f_name html_name = File.expand_path( html_name,File.dirname(f_name), ) ##メインループ loop{ queue = KQueue::Queue.new [:write,:rename].each{|e| queue.watch_file(f_name, :write) { puts " #{f_name} was changed!(#{e})" sleep 0.2 Thread.start{ `/usr/local/bin/markdown '#{f_name}' > '#{html_name}'` `open -g -a Safari '#{html_name}'` } } } queue.watch_file(f_name, :revoke) { puts " #{f_name} was revoked "; exit; } ##vim 対策 [:delete].each{|e| queue.watch_file(f_name, e) { puts " #{f_name} was #{e}d "; sleep 0.4 queue.stop #削除されたら監視ループを止める } } queue.run }
とっても楽ですね
マークダウンが自動プレビューされるのでウインドウを左右に出せば終わりなので楽です。
Automator見ながら使えるの探してて、openコマンドSafariで同じファイルを再度OpenすればSafariリロードされた。それに気づいた瞬間に、これだ!と思いましたよ
コレが出来ないなら、Windowを探すか、WebView使うか、WebSocketでリロード掛けないとと思ってたからね。Openコマンド便利ですね―
応用可能です。
ファイルをプレビューはopen コマンドだけでするので、CSSやHTMLでも応用可能ですです。