読者です 読者をやめる 読者になる 読者になる

Pebble Coding

プログラマーの作業メモ

RubyMineからMacVimを起動する設定追加手順

Preference - Tools - External Tools で+ボタンを押す。 Nameに「MacVim」と入力する。 Programに「/Applications/mvim」と入れる。 Parametersに「 +$LineNumber$ $FilePath$」と入れる。 Working directoryに「/Applications」と入れてOKを押す。 これで…

ruby文法その4

演算子の優先順位 (高) ! ~ ** * / % + - << >> & | ^ > >= < <= == != && || .. ... ?: = not and or (低) <と&&では<のほうが優先順位が高い。なので次の結果は納得できるだろう。 irb(main):001:0> num = 1 < 2 && 5 5 irb(main):001:0> num = 1 > 2 && 5…

ruby文法その3

前回のソースコードをもう少し見ていきます。 少し変更して次のようにしてみるとどうなるでしょうか? # MyMathModule.rb module MyMathModule def plus(x, y) x + y + (@something || 0) end end # MyApp.rb require './MyMathModule' class MyApp include …

ruby文法その2

Moduleの使い方。 ディレクトリにMyMathModule.rbとMyApp.rbの2つのファイルを作成してみる。 # MyMathModule.rb module MyMathModule def plus(x, y) x + y end end # MyApp.rb require "./MyMathModule" class MyApp include MyMathModule end myapp = My…

rbenvコマンドメモ

過去の記事と内容かぶっている気がするが、とりあえず書いとく。 インストールされているrubyのバージョンリスト表示 $ rbenv versions system 1.9.3-p484 * 2.0.0-p247 (set by /Users/pebble8888/.rbenv/version)

ruby 複数のクラスに共通のメソッドを追加する

共通のモジュールを作成し、使用したいクラスにMixInする。 action_util.rb module ActionUtil def shake(x) print( "shake #{x}!" ) end end cafe.rb require './action_util' // この./はrails内では必要ない class Cafe include ActionUtil def serve sha…

ruby文法その1

rubyはたまにしかいじらないので、いつもすぐに思い出せないrubyの文法をメモしておく。 複数行コメント =begin, =end 文字列にデータ埋め込み "Hello#{var}" if文 if a > 10 elsif a == 10 else end 真偽値 false:nilとfalse true:上記以外 ||演算子と&&演…

ruby gemソースフォルダをvimで開く

ruby gemソースフォルダを開くには ~/.bash_profile に export EDITOR=vim とエディタ変数を設定し、 $ gem open {gem名} とすればいいようです。 [追記] $ gem open rails ERROR: While executing gem ... (Gem::CommandLineError) Unknown command open 上…

rubyハッシュ

rubyのハッシュで以下の表記を使う場合、キー名とコロンの間にスペースを入れてはいけない。 ダメな例 { key : "value" } OKな例 { key: "value" } うーん、教科書にあまり載ってないような。 Objective-CだとOKなので、間違えやすい。

Rubyでのprintfデバッグ出力

Objective-Cでデバッグログ出力する場合は、 NSLog( @"file[%@] line[%d]", __FILE__, __LINE__ ); こうしますが、rubyでは logger.debug "#{__LINE__}" あるいは、 logger.debug "#{__FILE__} #{__LINE__}" でいけるようです。

C++,Objective-C の使い手のためのRuby講座

Rubyのクラスの理解に苦しんでおります。 Rubyのこの概念はC++,Objective-C でいうところのコレだよって感じに 強引に理解していこうと思います。 RubyはわりとObjective-Cに似ているので、そこから理解した方が 早く理解できそうです。 なぜかRubyの本にはO…

gem installが遅いのを改善する

gem install がやたら遅いので、何故こんなに重いんだろうと思ったら、 大抵はドキュメントのインストールで時間がかかっているようだ。 ドキュメントなんて要らねえ!ということで、なんとかする方法がないかと思ったらありました。 ~/.gemrcファイルを新規…

ruby ソースコード中の改行

rubyは基本的に改行を文の終わりとして認識する。 そのため、続けたい場合はバックスラッシュを入れればいいのだが、 そんなプログラム見たことない。 この方の記事 によると、ある程度は自動認識してくれるらしい。 結論としては、文が長くなってしまった時…