Ruby言語やLinuxのネタが多いです。
March 12, 2002
■ [Linux] GNU GetText
gettext-0.11のソースをダウンロードして読んでみる。うーむ、結構いろいろやってるなぁ。一番Ruby GetText Packageにとって痛いのが、setlocale()まわりだよな。Win32への対応はなんと自前でWin32のAPIからja_JPみたいな文字列を取得するテーブルを持ってる。つーか、setlocale()自体に対応できてないからまずいな。iconv使ってるところを見ると内部で変換もしてるのか....。
■ これ全部実装するのめんどいなぁ。まぁ、もともと完全互換を目指そうとは思ってはいないのだが、いっそのこと、yashiさんのGNU GetTextのラッパベースに改造しなおそうかなぁ。pure rubyってのが良いのだけどな...。
March 12, 2003
■ [Hiki] Hiki英語化?
詳しくはまだ書かないけど、なぜかHiki-0.4のテンプレート・メッセージをナンチャッテ英語化したのが手元にあります。
ニーズがありそうなので、とりあえずここに置いときます。
これを展開して、hikiconf.rbの$langにenを指定すればOK。
興味がある方はどうぞ。
おっと、忘れてましたがTextFormattingRulesはわけがあって訳してません。
■ [Hiki] オットビックリ英語化中にふと思ったこと
- template配下の文字列は全てmessages/[lang].rbに追い出せば、template自体は一切手を入れずに済むんじゃないかなぁ。(でも、templateのHTMLに直書きされてる言葉でmessages/ja.rbにあるものもあるので実は評価する順番で参照できない?)
- template配下は全てがHTMLとして完結してる。これはこれで良いのだけど、header.html, navigater.html, footer.htmlは分割・共通化できそうだし、共通化してあればいじる部分少なくてすむのになぁ。
いや、ふと思っただけなんですが。
March 12, 2010
■ [Rails] 3.0 betaを試してみる(9) railsコマンドを動作するように
前回の続きなんだけど、その前に、railsコマンド自体が動作しないのに気づいたので動作するようにそちらをまず修正。
% rails -v /home/mutoh/.rvm/rubies/ruby-1.8.7-p249/lib/ruby/site_ruby/1.8/rubygems.rb:334:in `bin_path': can't find executable rails for rails-3.0.0.beta (Gem::Exception)
同様のことに悩んでいる人は多いらしく、こちらを参照しながら、railtiesをインストール。
% gem install railties --pre
インストールしただけでもやっぱり動作しないので、とりあえず、空のプロジェクトを作ってそれと比較することにした。
% cd ../
% rails newprj
create
create README
create .gitignore
create Rakefile
create config.ru
create Gemfile
create app
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create app/models
create app/views/layouts
create config
create config/routes.rb
create config/application.rb
create config/environment.rb
create config/environments
create config/environments/development.rb
create config/environments/production.rb
create config/environments/test.rb
create config/initializers
create config/initializers/backtrace_silencers.rb
create config/initializers/cookie_verification_secret.rb
create config/initializers/mime_types.rb
create config/initializers/session_store.rb
create config/initializers/inflections.rb
create config/locales
create config/locales/en.yml
create config/boot.rb
create config/database.yml
create db
create db/seeds.rb
create doc
create doc/README_FOR_APP
create lib
create lib/tasks
create lib/tasks/.gitkeep
create log
create log/server.log
create log/production.log
create log/development.log
create log/test.log
create public
create public/422.html
create public/index.html
create public/404.html
create public/favicon.ico
create public/robots.txt
create public/500.html
create public/images
create public/images/rails.png
create public/stylesheets
create public/stylesheets/.gitkeep
create public/javascripts
create public/javascripts/rails.js
create public/javascripts/effects.js
create public/javascripts/dragdrop.js
create public/javascripts/controls.js
create public/javascripts/prototype.js
create public/javascripts/application.js
create script
create script/rails
create test
create test/performance/browsing_test.rb
create test/test_helper.rb
create test/unit
create test/functional
create test/fixtures
create test/integration
create tmp
create tmp/sessions
create tmp/sockets
create tmp/cache
create tmp/pids
create vendor/plugins
create vendor/plugins/.gitkeep
お。script/配下がrailsだけになってる!とりあえず環境依存ではなさそうなので新しいのをこちらにコピってきて上書き。他のファイルは全削除。これなら動くか!?ということでrailsコマンドを起動。
% rails -v /home/mutoh/.rvm/rubies/ruby-1.8.7-p249/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- initializer (LoadError) from /home/mutoh/.rvm/rubies/ruby-1.8.7-p249/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' from /home/mutoh/dev/git/gettext_rails/sample_rails3/config/boot.rb:54:in `load_initializer' from /home/mutoh/dev/git/gettext_rails/sample_rails3/config/boot.rb:38:in `run'
まだエラー出るなぁ。config/boot.rbあたりが怪しいかな。ということで、両者を比較するとこれまた全然違う。新しい方がかなりシンプルだ。ということで、新しいconfig/boot.rbでこちらも上書き。
% rails -v /home/mutoh/.rvm/gems/ruby-1.8.7-p249%rails3beta/gems/bundler-0.9.10/lib/bundler/resolver.rb:163:in `resolve': Could not find gem 'rails (= 3.0.pre, runtime)' in any of the sources. (Bundler::GemNotFound)
んっと、今度はGemfileの指定の問題か。前回、rake rails:upgrade:gemsで生成したGemfileの中身を修正する。
# Edit this Gemfile to bundle your application's dependencies.
# This preamble is the current preamble for Rails 3 apps; edit as needed.
source 'http://gemcutter.org'
#path "/path/to/rails", :glob => "{*/,}*.gemspec"
#git "git://github.com/rails/rack.git"
#
#gem "rails", "3.0.pre"
gem "rails", "3.0.0.beta"
#
gem 'locale_rails'
gem 'gettext_activerecord'
gem 'gettext_rails'
んでもって実行。
% rails -v /home/mutoh/.rvm/gems/ruby-1.8.7-p249%rails3beta/gems/bundler-0.9.10/lib/bundler/resolver.rb:163:in `resolve': Could not find gem 'locale_rails (>= 0, runtime)' in any of the sources. (Bundler::GemNotFound)
お、ようやくlocale_railsまできたぞ。bundlerを使ってインストールしておこう。
% bundler install
なんかいろいろインストールされた。
% rails -v Rails 3.0.0.beta
おぉ。ようやくバージョンが表示できた…、って今日はここまでか(苦笑)。

▲ たむら [本日100人目ゲト、ズサー。 ふふふ。Let's hack Hiki!!]
▲ たけうち [トラブル中(泣)分割・共通化ですが、Amritaのテンプレート合成でゴニョゴニョしようとずーっと考えているのですが着..]
▲ むとぽん [お疲れのようで(^_^;)。]