<para>Príkazy pre zakomentovanie a odkomentovanie sú dostupné z menu <guimenu>Nástroje</guimenu>. Umožňujú pridať alebo odstrániť značky komentára do výberu alebo na aktuálny riadok v prípade, že žiadny text vybraný nie je. Komentáre sú podporované formátom textu, ktorý editujete.</para>
<para>Pravidlá na to, ako sa označujú komentáre, sú definované v definícii syntaxu, takže ak nie je zvýraznenie použité, zakomentovanie a odkomentovanie nie je možné.</para>
<para>Niekto formáty definujú komentáre je jeden riadok, niektoré pre viac riadkov naraz a niektoré obidva typy. Ak nie sú dostupné pravidlá pre viac riadkov, posledný riadok výberu nebude zakomentovaný.</para>
<para>Ak sú dostupné komentáre pre jeden riadok, zakomentovaniu jedného riadku sa dáva prednosť, pretože to bráni problémom s vnorenými komentármi.</para>
<para>Pri odkomentovaní by nemal byť vybraný žiadny text. Pri odstraňovaní viacriadkových komentárov z výberu sa ignorujú všetky medzery okolo značiek komentárov.</para>
<para>Tento nástroj dostupný z menu <menuchoice><guimenu>Nástroje</guimenu><guimenuitem>Príkaz pre editovanie</guimenuitem></menuchoice> poskytuje prístup k malej skupine príkazov v štýle <application>vi</application>/<application>vim</application>. Je určený hlavne pre skúsených používatelov, ale nebojte sa využiť jeho možnosti!</para>
<variablelist> <varlistentry> <term><command>čas</command></term> <listitem> <para>Tento príkaz vygeneruje aktuálny čas podla počítača vo formáte <quote>HH:MM:SS</quote></para> <para>Spustíte ho pomocou dialógu pre editovací príkaz a zadať do vstupného poľa slovo <userinput>time</userinput></para> </listitem> </varlistentry> <varlistentry> <term><command>znak</command></term> <listitem> <para>Tento príkaz umožňuje vložiť rôzne znaky pomocou ich číselnej reprezentácie v desiatkovej, osmičkovej alebo šesťnástkovej sústave. Použijete ho pomocou dialógu pre editovací príkaz a zadaním <userinput>char:[číslo]</userinput> do textového poľa. Potom stlačte <guibutton>OK</guibutton>.</para> <example> <title>príklady <command>char</command></title> <para>Vstup: <userinput>char:234</userinput></para> <para>Výstup: <computeroutput>ê</computeroutput></para> <para>Vstup: <userinput>char:0x1234</userinput></para> <para>Výstup: <computeroutput>ê</computeroutput></para> <para>Vstup: <userinput>char:1232</userinput></para> <para>Výstup: <computeroutput>ê</computeroutput></para> </example> </listitem> </varlistentry> <varlistentry> <term><command>s///[ig]</command> <command>%s///[ig]</command></term> <listitem> <para>Tento príkaz robí operáciu hladania/nahradenia podobnú sed na aktuálnom riadku alebo na celom súbore (<command>%s///</command>).</para> <para>V krátkosti, text sa prehladá podla <emphasis>vzorky hladania</emphasis>, regulárneho výrazu medzi prvým a druhým lomítkom a ak sa nejaký text nájde, odpovedajúca časť sa nahratí výrazom medzi stredným a koncom reťazca. Zátvorky vo vzorky vytvárajú <emphasis>spätné referencie</emphasis>, čiže príkaz si zapamätá, ktorá časť odpovedá zátvorkám. Tieto reťazce je potom možné znovu použiť vo vzorke pre nahradenie použitím <userinput>\1</userinput> pre prvý pár zátvoriek, <userinput>\2</userinput> pre druhý atd.</para> <para>Pre hladanie symbolu <literal>(</literal> alebo <literal>)</literal> ich musíte označiť, (<emphasis>escape</emphasis>) pomocou spätného lomítka: <userinput>\(\)</userinput></para> <para>Ak na koniec výrazu pridáte <userinput>i</userinput>, hladanie nebude rozlišovať velkosť písmen.</para> <example> <title>Náhrada textu na aktuálnom riadku</title> <para>Váš prekladač práve skončil a oznámil vám, že <classname>mojaTrieda</classname> na riadku 3902 nie je vo vašom zdrojovom kóde definovaná.</para> <para>Poviete si: "Ach jo!". Samozrejme, že to je <classname>MojaTrieda</classname>. Prejdete na riadok 3902 a namiesto hľadania slova v texte, spustíte dialóg pre editovací príkaz a zadáte <userinput>s/mojatrieda/MojaTrieda/i</userinput> a stlačíte <guibutton>OK</guibutton>. Uložíte súbor a spustíte kompilátor – a preklad je bez chýb.</para> </example> <example> <title>Náhrada textu v celom súbore</title> <para>Predstavte si, že máte súbor, ktorý hovorí niekoľkokrát o <quote>Miss Jensen</quote>. V tom ale niekto príde a oznámi vám, že sa práve vydala za <quote>pána Jonesa</quote>. Takže musíte každné <quote>Miss Jensen</quote> prepísať na <quote>Ms Jones</quote>.</para> <para>Spustíte ho pomocou dialógu pre editovací príkaz. Potom zadajte <userinput>%s/Miss Jensen/Ms Jones/</userinput> a stlačte enter.</para> </example> <example> <title>Zložitejší príklad</title> <para>Tento príklad používa <emphasis>spätné referencie</emphasis> spolu so <emphasis>triedou slov</emphasis> (ak neviete, čo to je, prečítajte si súvisiacu dokumentáciu, ktorá je zmienená dole).</para> <para>Predpokladajme takýto riadok: <programlisting>void MyClass::DoStringOps( String &foo, String &bar String *p, int &a, int &b )</programlisting> </para> <para>Teraz si uvedomíte, že to nie je pekný kód a rozhodnete sa použiť kľúčové slovo <constant>const</constant> rpe všetky <quote>adresy</quote> argumentov, ktoré sú označené operátorom &. Chceli by ste aj vynechať zbytočné medzery ta
<para>Toto je velmi silný nástroj. Aj ked je možné túto operáciu vrátiť použitím <menuchoice><guimenuitem>Vrátiť späť</guimenuitem></menuchoice> odpovedajúcim počtom krát, doporučujem, aby ste si ho najprv trochu natrénovali pre skutočné použitie v prípade, že nemáte moc skústeností s aplikáciou <application>sed</application> alebo regulárnymi výrazmi v jazyku perl.</para>