hartwarming lightning talk in winter sapporo
TRANSCRIPT
冬の札幌で、心温まるおしゃべりを。Heartwarming lightning talk in winter Sapporo
大和田 純a.k.a june29
Ruby札幌、サイジニア株式会社
http://www.flickr.com/photos/recompile_net/3736015552/
日本Ruby会議2009当日スタッフ
速報レポート係
札幌Ruby会議02前日スタッフ
Taken by kei-s
当別
倶知安
稚内網走帯広釧路札幌
北海道生まれ北海道育ち寒そうなヤツは大体友達
道産子Dosanko
Tested green
札 Ruby幌 会議
札Ruby
幌
会議
Sapporo
楽しいプログラミング言語
Kaigi
札幌Sapporo 冬Winter
札幌Sapporo 冬Winter
スイーツタイムTera sweets
懇親
スイーツタイムTera sweets
懇親
暖かい飲み物Cocoahttp://www.flickr.com/photos/barl0w/3192038647/
スイーツタイムTera sweets
懇親
暖かい飲み物Cocoa
おしゃべりChat
暖かい飲み物Cocoa
おしゃべりChat
Ruby楽しいプログラミング言語
RubyCocoaLimeChat for Machttp://limechat.net/mac/ja.html
git clone git://github.com/psychs/limechat.git
LimeChat on github
limechat/ruby/view/log.rb
class LogController < NSObject def print(line, unit, use_keyword=true) body, key = build_body(line, unit, use_keyword)
unless @loaded @lines << [line, unit, use_keyword] return key end
s = '' s << %|<span class="time">#{h(line.time)}</span>| if line.time s << %|<span class="place">#{h(line.place)}</span>| if line.place
# ... (途中略)... endend
def write_line(html, attrs) # ...(途中略)...
doc = @view.mainFrame.DOMDocument return unless doc body = doc.body div = doc.createElement('div') div.setInnerHTML(html) attrs.each {|k,v| div.setAttribute__(k, v) } if attrs div.setAttribute__('id', "line#{@line_number}") body.appendChild(div)
# ...(途中略)... end
limechat/ruby/view/log.rb
def initial_document # ...(途中略)...
doc = <<-EOM <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html class="#{body_class}" #{body_attrs}> <head> <title>LimeChat Log</title> <style>#{DEFAULT_CSS}</style> <style><!-- #{style} --></style> <style>#{override_style}</style> </head> <body class="#{body_class}" #{body_attrs}></body> </html> EOMend
limechat/ruby/view/log.rb
LimeChat
LimeChat<html> <body> <div>message</div> <div>message</div> <div>message</div> <div>message</div>
...
</body></html>
LimeChat
RubyDOMHTML
http://localhost:4567/#{nick}
User icon
http://localhost:4567/june29
http://www.flickr.com/photos/tmaedax/3844412763/
snoozer05 tmaeda noplansmrkn
darashi
泥作業リッチ体験
札Ruby
Sapporo
楽しい
幌 プログラミング言語冬Winter
暖かい飲み物Cocoaスイーツタイム
Tera sweets
会議Kaigi
懇親おしゃべりChat
サイエンスとエンジニアリング
提 供
冬の札幌で、心温まるおしゃべりを。Heartwarming lightning talk in winter Sapporo
大和田 純a.k.a june29
Ruby札幌、サイジニア株式会社