Bundler: The best way to manage Ruby applications
Install all gems into vendor/bundle, even gems that are already installed to your system and would normally be used from there instead of installed.
インストール時にnative extensionが作られるgem(たとえばsqlite3-ruby)をBundlerで入れるときに、おすすめされているディレクトリ(vendor/bundle)にインストールするとnativeなものがリポジトリに含まれちゃってわりと残念な感じになるんですが、みなさんどうしてるんでしょうか。
いくつかのディレクトリ(cache,gems,specifications)に撒かれているのをそれぞれ.gitignoreに書くのもそれはそれで気持ち悪いのでなにかうまい方法を考えていたら日が暮れてしまうという始末。あーなんてこと!
改行とるのをベタ実装してたらメソッドあったという話。
activesupport-2.3.8/lib/active_support/core_ext/base64/encoding.rb
10 def encode64s(value)
11 encode64(value).gsub(/\n/, '')
12 end
ほっほー。
Rubyで仕事をしているので2つ買いました。おひとつ、いかがですか?
自分はjpmobileを使ってアプリを作る章を担当しました。書店で見かけたら手にとって頂けるとありがたいです。
screen+vimで縦分割したときに矢印(→)やら米印(※)やら三角(▽)やらを含んだファイルで桁ずれを起こしていたのですが、対策が見つからずそのファイルは単独タブで開くという後ろ向きな手段で回避して使っていました。
しかし先日ついに我慢できなくなって、前から気になっていたtmuxを試してみたところ見事にこの現象が起きず、これを機に乗り換えることにしました。複数コンソールを開くだけ、というきわめて基本的な機能しか使っていなかったため、少し設定ファイルを書くだけでまったく同じように使えています。(参考として.tmux.confを貼っておきます。)
bind-key BSpace previous-window
bind-key Space next-window
set -g default-terminal screen-256color
set -g prefix C-z
set -g status-bg colour7
set -g status-fg black
setw -g window-status-current-format " #I:#W "
setw -g window-status-current-bg black
setw -g window-status-current-fg white
setw -g window-status-format " #I:#W "
さて、ということで必要に迫られてautotest_screenのtmux版であるautotest-tmuxを作りました。
screen版の区切りをアンダースコアにしたのが、githubに置かれたgemの命名規則にかち合うのを回避という理由だったため、いまはその心配がないであろうという判断でtmux版はハイフン区切りにしました。
同じような環境にあるかた、お試しください。
configの下も出したかったので調べた。
rails-2.3.5/lib/source_annotation_extractor.rb
48 # Returns a hash that maps filenames under +dirs+ (recursively) to arrays
49 # with their annotations. Only files with annotations are included, and only
50 # those with extension +.builder+, +.rb+, +.rxml+, +.rjs+, +.rhtml+, and +.erb+
51 # are taken into account.
52 def find(dirs=%w(app lib test))
53 dirs.inject({}) { |h, dir| h.update(find_in(dir)) }
54 end
ここね。
サイキョウライン » RubyKaigi2008に行ってきました。
明日は諸事情で行けないのですが、来年は皆勤、というよりATTENDEEではないネームプレートで参加できるといいなー。
去年はこんなこと言ってたのですが、今年は皆勤できました。(名札はATTENDEEのままだけど><)
書きたいことがうまく文字にならず、書いては消してをくり返してのこの文章。開き直って最終日のkakutaniさんの言葉を借りると、「えも言われぬいい感じ」があそこにありました。文字通り、うまく言えないのですが、ありました。
・・・そして唐突に自分の話を。
自分、もっと前に出て行こうと意識が変わった時期(いまだPerlは書けませんが><)があって、自分ではそれ以前の意識を「テレビを見ている感覚」と呼んでいます。
旅行をしたり、歌を歌ったり、自分でもすることなのだけれど、テレビを見ている時ってあくまでもブラウン管の中で、自分がやるのとは別で、関係ないところの出来事という気持ち。(実際そうなことも多々ありますが。)
Webの記事なりブログなり、雑誌や本を読んでもそうだった。書く人はちがう世界の人で、それを読んでいる自分とはちがうところにいる人。
しかしあのイベントで数m先にいるnaoyaさんやmiyagawaさんを見て、「あー実物はふつうの人なんだ、そしてすごいことを話しているけれど、自分のやっていることも、遠いけれど同じ線上にあることで、あそことここはつながっているんだ。」と、同年代という勝手な親近感と物理的な距離の近さが相まって、そんな事を考えたのでした。
そんなことを思い出して周りを見回してみたら、ジュンク堂RubyKaigi支店で売られていた本の半分くらい(言い過ぎ?)を書いた人たちや、いつも見ているあのブログの中の人が、参加者としてとなりの椅子に座っていたり、少し先の壇上で話していたり、トイレに行くときに目の前を横切ったり、懇親会で酔っぱらったりしていたわけです。
見た目はそうかもしれないけど、普段やってることはおまえ、て意見はあると思います。でも、そんなちょっとした勘違い、軽度の自信過剰、そういうのって、一歩を踏み出すときの推進力になると思うんです。エンジンのセルモーターだとか、セルが回らなかった時に手で引くロープだとか。コンピュータのファンも電源投入時はブーンってなるじゃないですか、あれです、あれ。
そんな「テレビを見ている感覚」をひっくり返す「きっかけ」がゴロゴロ転がっていて、しかも、楽しそうにワイワイやってるところがあちこちにある。そしてちょっと踏み出すとその中に入れちゃう。(つぎの○○勉強会に来てくださいよ、みたいな。)そんな「きっかけ」とその勢いで「行動できる場所」が共存してるのが魅力のひとつなんだろうな、と、そう思ったのでした。
途中から文章が飛散した気がしますが、言いたいことは「そこに境界はあるのかい?」ということです。昔テレビで江口洋介も似たようなこと言ってました。あと、来年のために少しずつ自然石を集めていきたいと思います。以上
昨日17日から開催しているRubyKaigi 2009の会場内で開催されたRejectKaigi 2009(記事では19日のみですが、18日もありました)で、Rubyで作ったATOKダイレクトプラグインについて話しました。
途中でパワポが止まって焦った上に時間におさまりきらなかったのですが、Macユーザが多いRubyistの前で、ATOKプラグインがMacでも(Rubyで!)作れるようになったということは言えました。
作りかけの資料と話につき合っていただいたLT勉強会参加者のみなさん、本当にありがとうございました!
また、準備が8割本番2割という言葉をしっかり体感しました。(つまり、準備がまだまだ足りない!がんばります。)
以下、プレゼンで紹介しているプラグインです。
そして、APIの説明はこちら。
概要|ATOKダイレクト API|ATOK.com
「ATOK 2008」から導入された、新たな機能拡張の仕組みである「ATOKダイレクト」のプラグインを、PerlやRubyを用いて作成するための技術情報です。「ATOK2009」からは、新たにPythonにも対応いたしました。
ATOK 2009は↓から買えます。(アサマシ!)