viコマンドリファレンス

Vi機能別主要コマンドリファレンス

^  現在行の先頭に移動
$  現在行の最後に移動
G  最後の行に移動
置換
:s/<置換される文字列>/<置換後の文字列>/<オプション>
オプション
g  すべての文字列を置換する
c  置換する前に確認する
現在行から後ろにあるすべての「abc」を「123」に変更
:s.,$s/abc/123/g
ファイル内のすべての「html」を「HTML」に変更
:%s/html/HTML/

==、eql?、equal?

equal? は、同一オブジェクトの場合にtrue
Object#equal?(other) は決してオーバーライドされない。これは、otherと同一オブジェクトの場合、つまりobject_idが等しい場合のみ、trueを返す。
== と eql? は、等価の場合にtrue
一方、==とeql?は、各サブクラスによってオーバーライドされる。
通常は、==とeql?はともに、等価の場合にtrueを返すが、例外としてNumericタイプでは、以下のように==とeql?は異なる。
例外としてNumericタイプでは、==とeql?は異なる
Class: Numeric

1 == 1.0          #=> true
1.eql?(1.0)       #=> false
(1.0).eql?(1.0)   #=> true