it-swarm.com.de

Mehrzeilige Kommentare in Ruby?

Wie kann ich in Ruby mehrere Zeilen kommentieren?

712
Mohit Jain
#!/usr/bin/env Ruby

=begin
Every body mentioned this way
to have multiline comments.

The =begin and =end must be at the beginning of the line or
it will be a syntax error.
=end

puts "Hello world!"

<<-DOC
Also, you could create a docstring.
which...
DOC

puts "Hello world!"

"..is kinda ugly and creates
a String instance, but I know one guy
with a Smalltalk background, who
does this."

puts "Hello world!"

##
# most
# people
# do
# this


__END__

But all forgot there is another option.
Only at the end of a file, of course.
  • So sieht es aus (via Screenshot) - ansonsten ist es schwer zu interpretieren, wie die obigen Kommentare aussehen werden. Zum Vergrößern klicken :

Comments in a text-editor

1295
=begin
My 
multiline
comment
here
=end
122
Adam Lear

Trotz der Existenz von =begin und =end besteht die normale und korrektere Art zu kommentieren darin, # in jeder Zeile zu verwenden. Wenn Sie den Quellcode einer Ruby Bibliothek lesen, werden Sie feststellen, dass in fast allen Fällen mehrzeilige Kommentare auf diese Weise erstellt werden.

54
Rein Henrichs
#!/usr/bin/env Ruby

=begin
Between =begin and =end, any number
of lines may be written. All of these
lines are ignored by the Ruby interpreter.
=end

puts "Hello world!"
19
miku

Verwenden Sie entweder:

 = begin 
 Dies ist 
 ein 
 Kommentar 
 block 
 = end 

oder

 # Diese 
 # Ist 
 # Ein 
 # Kommentar 
 # Block 

sind die einzigen, die derzeit von rdoc unterstützt werden, was meiner meinung nach ein guter grund ist, nur diese zu verwenden.

15
the Tin Man
=begin
(some code here)
=end

und

# This code
# on multiple lines
# is commented out

sind beide richtig. Der Vorteil des ersten Kommentartyps liegt in der Bearbeitbarkeit. Das Auskommentieren ist einfacher, da weniger Zeichen gelöscht werden. Der Vorteil des zweiten Kommentartyps ist die Lesbarkeit: Beim zeilenweisen Lesen des Codes ist es viel einfacher zu erkennen, dass eine bestimmte Zeile auskommentiert wurde. Ihr Anruf aber denken Sie darüber nach, wer nach Ihnen kommt und wie einfach es für sie ist, zu lesen und zu pflegen.

13
La-comadreja

Hier ist ein Beispiel :

=begin 
print "Give me a number:"
number = gets.chomp.to_f

total = number * 10
puts  "The total value is : #{total}"

=end

Alles, was Sie zwischen =begin und =end einfügen, wird als Kommentar behandelt, unabhängig davon, wie viele Codezeilen sich dazwischen befinden.

Hinweis: Stellen Sie sicher, dass zwischen = und begin kein Leerzeichen ist:

  • Richtig: =begin
  • Falsch: = begin
12
Prabhakar

=begin comment line 1 comment line 2 =end stellen Sie sicher, dass = begin and = end das erste in dieser Zeile ist (keine Leerzeichen)

4
anandharshan

Falls jemand nach einer Möglichkeit sucht, mehrere Zeilen in einer HTML-Vorlage in Ruby on Rails zu kommentieren, könnte ein Problem mit = begin = end vorliegen, zum Beispiel:

<%
=begin
%>
  ... multiple HTML lines to comment out
  <%= image_tag("image.jpg") %>
<%
=end
%>

schlägt fehl, weil%> das image_tag geschlossen hat.

In diesem Fall ist es vielleicht fraglich, ob dies auskommentiert wird oder nicht, aber ich bevorzuge es, den unerwünschten Abschnitt mit einem "wenn falsch" -Block einzuschließen:

<% if false %>
  ... multiple HTML lines to comment out
  <%= image_tag("image.jpg") %>
<% end %>

Das wird funktionieren.

2
user2553863