Wie kann ich mittels (n)vi in einem offenem Textdokument Zeilen auskommentieren ?
Ich möchte z.B., das bei allen folgenden 14 Zeilen vom aktuellen Cursor an ein "#" an den Zeilenanfang geschrieben (oder wieder gelöscht, so vorhaden) wird.
Größere Teile per Hand auskommentieren wird nervig.
Frage an vi-junkies
Re: Frage an vi-junkies
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">:s/^/#/g 14</font><hr></pre></blockquote> substitute beginning of line by '#' in the current line and 13 following lines.
(man vim, :help range)
ratte
(man vim, :help range)
ratte
Re: Frage an vi-junkies
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">:s/^#//g 14</font><hr></pre></blockquote>
delete heading '#'s in the current line and 13 following lines.
(man vim, :help range)
ratte
delete heading '#'s in the current line and 13 following lines.
(man vim, :help range)
ratte
Re: Frage an vi-junkies
z.b. fügst du von zeile 20 bis 30 ein kommentarzeichen ein im command mode:
20,30 s/^/#/
20,30 s/^/#/
Re: Frage an vi-junkies
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">:set ruler</font><hr></pre></blockquote>, damit du auch sehen kannst, wo sich Zeile 20 bis 30 befinden.
(:help set)
ratte
(:help set)
ratte
Re: Frage an vi-junkies
Danke - aber meiner Meinung nach war "substitue" ersetzen. Ich will aber nicht ersetzen, sondern einfügen. Sonst darf ich die ersten Buchstaben wieder Nachtippen - außer die Zeile beginnt mit einem " ".
Re: Frage an vi-junkies
Das mit dem "g 14" war mir neu, aber ältere vi's dürften damit Schwierigkeiten haben. Was <i>jeder</i> vi kann, wäre relative Adressierung:<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
:.,+14s/^/#/
</font><hr></pre></blockquote>
Punkt steht für die aktuelle Zeile, +14 für die folgenden 14 Zeilen, und der Rest ist halt substitute wie oben.
:.,+14s/^/#/
</font><hr></pre></blockquote>
Punkt steht für die aktuelle Zeile, +14 für die folgenden 14 Zeilen, und der Rest ist halt substitute wie oben.
Re: Frage an vi-junkies
Einen hab ich noch:
Wenn man die Zeilen nicht abzählen will, kann man auch mittels "ma" in der letzten auszukommentierenden Zeile die Marke "a" setzen, dann in die erste auszukommentierende Zeile gehen und ein <blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
:.,'as/^/#/
</font><hr></pre></blockquote>
absetzen, also mit der Adressierung "Von dieser Zeile bis zur Marke a".
Jochen
Wenn man die Zeilen nicht abzählen will, kann man auch mittels "ma" in der letzten auszukommentierenden Zeile die Marke "a" setzen, dann in die erste auszukommentierende Zeile gehen und ein <blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
:.,'as/^/#/
</font><hr></pre></blockquote>
absetzen, also mit der Adressierung "Von dieser Zeile bis zur Marke a".
Jochen