gem:rerun


#1

rerun是一個有趣的gem
Github在這邊

這東西很棒,我很常用在於 Sinatra / EventMachine / lib 的開發上

簡單的用一句話來形容:如果檔案變更了,重新執行

所以你今天可以寫一個很無聊的code,切記一定要讓該 code 不會結束( 如果上 Sinatra 或 EventMachine 因為其有上 rack,本身就不會結束所以沒差 )

# 檔名隨意,demo 用:test.rb,不用 require 任何東西

# 程式寫在這邊
puts 123

# 讓程式不會結束,永久的睡眠
loop do
  sleep(10)
end

# > rerun ruby test.rb #使用左方指令執行,也可用縮寫 rerun test.rb 即可

之後另外開一個編輯器去修改 test.rb 存檔時會發覺該程式會自己 kill 掉並重啟,大大節省開發打指令的時間

另外一方面,在 rerun 的程式下按下任何按鍵會看到這樣的說明

"\n" pressed inside rerun
  c -- clear screen   # 清除terminal畫面
  r -- restart        # 重啟
  p -- toggle pause   # 暫停
  x or q -- stop and exit  # 結束和關閉

所以不用 command + c 然後打指令重開之類的動作,按個按鍵即可,其餘還有更多可以設定的東西請參閱官方 Github 的說明就是 :smile:

這樣就可以開兩個視窗,一個編輯一個看結果,然後一直待在編輯畫面即可,非常方便使用滴~


#2

= =…

我試用的時候它倒是很爽快的丟給我not implemented error(未執行錯誤?)