狠狠撸

狠狠撸Share a Scribd company logo
おれが考えた
見やすい通知
 みかみよしゆき@サイキョウライン
  yoshuki@saikyoline.jp
  http://saikyoline.jp/

       2011年7月16日 於闇RubyKaigi
autotest-tmux
Autotest::Screen
   (ZenTest)
autotest_screen
おれが考えた见やすい通知
おれが考えた见やすい通知
问题
おれが考えた见やすい通知
おれが考えた见やすい通知
おれが考えた见やすい通知
おれが考えた见やすい通知
问题

?小さい
?見にくい
?分かりづらい
なんとかしなきゃ!
対策
大きく
见やすく
分かりやすく
対策

?大きく
?见やすく
?分かりやすく
SW Notifier




 http://saikyoline.jp/air/swn/
デモ

http://saikyoline.jp/air/swn/
必要なモノ




http://saikyoline.jp/air/swn/
活用例

http://saikyoline.jp/air/swn/
ひとつめ

http://saikyoline.jp/air/swn/
autotest-sw

http://saikyoline.jp/air/swn/
$HOME/.autotest
require 'socket'
require 'autotest/tmux'

Autotest.add_hook :ran_command do |at, *args|
  next false unless Autotest::Tmux.execute?

  output = at.results.join
  result = Autotest::Tmux.parse_output(output, at.class.name)

  TCPSocket.open('localhost', 12345) do |s|
    prefix = case result[:color]
              when :red;    'R:'
              when :yellow; 'Y:'
              when :green; 'G:'
              else ''
             end
    s.write "#{prefix}#{output}"
  end

  next false
end




     http://saikyoline.jp/air/swn/
ふたつめ

http://saikyoline.jp/air/swn/
sw

http://saikyoline.jp/air/swn/
sw.rb
require 'socket'

module Kernel
  def sw(*args)
    args.each do |arg|
      TCPSocket.open('localhost', 12345) {|s| s.write arg }
    end
  end

  def sw_r(*args)
    sw *(args.map {|a| "R:#{a}" })
  end

  def sw_y(*args)
    sw *(args.map {|a| "Y:#{a}" })
  end

  def sw_g(*args)
    sw *(args.map {|a| "G:#{a}" })
  end
end




     http://saikyoline.jp/air/swn/
HEY! It's useful!
   HAHAHA!

                        @yoshuki

http://saikyoline.jp/air/swn/

More Related Content

おれが考えた见やすい通知