Rails

September 07, 2010

Emacs自分は普段CakePHPメインで仕事をしているのだけれども、ひょんなことからRuby on Railsを触ることに。

実際には既にあるプロジェクトのソースを触るだけなので、デプロイなどはする必要はないし、作業は主にViewファイルの編集、CakePHPとディレクトリ構成も近い、と「まあ、簡単だろう」とタカをくくっていたら


作業が遅々としてすすまない。


原因はRubyやRailsの構文を理解できないとかそういうことではなくて、cake.elの機能とキーバインドに慣れすぎた

これは困った。

いづれはポピュラーなRails用マイナモードのRinariを使って・・・とか思っていたのだけれども、なまじMVCの構成が近いので指がcake.elのキーバインドで動いてしまう。

仕方ないやということでcake.elの機能のRails移植を開始してみた。


http://github.com/k1LoW/emacs-yarm


まだ移植できていないものとか、Rails開発でのみ欲しいものとかあるけれども、基本的なファイルスイッチとanything.el連携ができたので断然効率が上がった。

やっぱ候補選択はanything.elだよねー。Rinariはanything.el連携はしないのかいな。


もともとEmacsのコマンドでマイグレーションとかテストとかWEBRick起動とか実行しようとは思っていないで(shell-pop.elユーザ)、よきに計らってくれるいつものファイルスイッチがあれば十分。

あとは開発に合わせて欲しい機能を実装していけばいいかな。


というわけで対象が「全世界数人のcake.elユーザ」というものですが、良かったら触ってみてください。

March 21, 2007

RubyRuby on Rails環境構築メモ。


【前提】
・OS:CentOS4.4 on coLinux(baseインストール)
・ruby:1.8.6
・rubygems:0.9.2


【gcc/zlib-develのインストール】
最小構成のCentOSにはgccが入っていない。まずgccをインストール。
#yum install gcc


さらにzlib-develをインストール(rubygemsインストールに必要)。
#yum install zlib-devel


【rubyのインストール】
CentOSのyumでインストールできるrubyのバージョン(1.8.1)だとRuby on Railsがうまく動かないらしいので、
Ruby on Railsの環境のために最新のrubyをインストールする。
まず古いrubyをアンインストール。

#yum remove ruby


wgetコマンドでrubyの最新版をダウンロード(現段階での最新は1.8.6)。

(例)
#wget ftp://core.ring.gr.jp/pub/lang/ruby/1.8/ruby-1.8.6.tar.gz

#tar zxvf ruby-1.8.6.tar.gz //解凍
#cd ruby-1.8.6
#./configure //configureを実行してMakefileを作成
#make all
#make install


【rubygemsのインストール】
wgetコマンドでrubygemsの最新版をダウンロード(現段階での最新は0.9.2)。

(例)
#wget http://rubyforge.org/frs/download.php/17190/rubygems-0.9.2.tgz

#tar zxvf rubygems-0.9.2.tgz


ここでruby用にzlibのインストール。

# cd ./ruby-1.8.6/ext/zlib
# ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
# make
# make install



【Railsのインストール】
gemコマンドでRailsをインストール。

# cd ../rubygems-0.9.2
# ruby setup.rb config
# ruby setup.rb setup
# ruby setup.rb
#gem install rails



これで完了。結局zlib周辺の設定関係がなぜ必要なのかは不明。うーん。


【参考URL】
http://d.hatena.ne.jp/tomisima/20070124


-----追記-----
どうやらzlib-develをrubyの前にインストールしておけば以下は必要ないみたい。

# cd ./ruby-1.8.6/ext/zlib
# ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
# make
# make install