2012-05-07 9 views
0

私はテスト中に私のコードの一部をコメントしたいが、Rubyでは他の言語と比べてそれほど簡単ではない。私はコメントする現在のRubyの方法を知っていますが、代替が可能かどうか疑問です。ここのコードは明らかに機能しません。多くの人がそうしない理由があると思いますが、それはできますか?Ruby:新しいコメント方法を実装する

def /* 
    =begin 
end 
def */ 
    =end 
end 

/*testing*/ 
//testing 

/* 
testing 
on multiple lines 
*/ 

puts 'test' 
+0

あなたはRubyのパーサをハックする方法を知りたいですか、またはあなたには、いくつかのコードにコメントをしたいですか?あなたの質問は何ですか? –

+0

Rubyのようなコメントを可能にすることが可能かどうか疑問に思うRubyデコーダをハッキングすることは私の期待を上回る – peter

+0

いいえ、明らかにこれを行うことはできません。なぜあなたはこれがうまくいくと思いますか?それらはCスタイルのコメントです。 Rubyはそれらを使用しません。 – meagar

答えて

4

=endを使用して複数の行をコメントアウトすることはできますが、行の先頭に配置する必要があります。

class TestClass 

    def my_method 

    end 

=begin 
    def another_method 
    # ... 
    end 
=end 

end 

これ以外にも、答えはできないということです。 RubyではCスタイルの複数行コメントは使用できません。技術的な制限の場合ではなく、言語はこれをサポートしていません。どのようにしてこの作業をしても、すぐにRubyを書くことはなくなります。通訳者だけが理解できるRubyの壊れた方言を作ったでしょう。

+2

私は(個人的に)この構文を使用しません。textmateはそれをはるかに簡単にします:) –

+0

ありがとう、しかし、私は既存の可能性を認識している、私はしばしばそこにあることを望む理由の一つであることを明らかにするために私の質問を編集しました。代わりに、すべての行またはこのテクニック(またはそれ以外のもの)に#を付ける以外には – peter

+0

@SergioそれはあなたとTextmateにとって素晴らしいです。私はそれを使用しません。 – meagar

0

現代のエディタ/ IDEは、マスコードのコメントを容易にするはずです。私はIDEATextMateを使用しましたが、両方とも許可されています。コードを選択してCmd + /を押すと、すべての行が1行のコメントでコメントアウトされます。 Cmd + /をもう一度押し、コードのコメントを外します。とても便利な。

+0

ありがとう、しかし、私は既存の可能性を認識している私の質問を編集して明確にする – peter

+0

あなたはCスタイルのコメントをしたい場合は、ルビーパーザをハックする以外に選択肢がありません。 –

0

Rubyのコメントは、文字列リテラルの外側で#文字で始まります。

エディタの「列」モードを使用して行の最初の文字として#を挿入すると、一度に複数の行をコメントアウトできます。

例:

def foo 
# ... 
#end 
#def bar 
# ... 
end 
+0

ありがとう、しかし、私は既存の可能性を認識している、私の質問を編集してそれを明確にする – peter

関連する問題