V prve rade podle pravidel na tom kterem projektu. Nicmene i o tom uz se vedla debata u minulych dilu.
Nejde o to, co ma byt vysledkem [ :-) ] jde o to, jak si v editoru usnadnit praci co nejvic, at je pozadovany vystup jakykoliv.
Doporucuji:
:help smarttab
:help softtabstop
Napr. muzes zkusit moje oblibene nastaveni (pokud si urcujes vystup sam):
:set ts=8 sts=3 noexpandtab
StandarDní (krucinál, co pořád máte proti té češtině, vždyť je to takový pěkný jazyk) je vybrat si z několika málo zavedených (obvykle bývají v přílohách učebnic programovacích jazyků apod.) stylů formátování sdrojového kódu ten, který nejlépe vyhovuje, a pak jej pokud možno důsledně dodržovat. Samozřejmě jsou výjimky (Makefile aj.), kde je to či ono formátování předepsáno "natvrdo".
Diky za ohlasy a odkazy na clanky o tab vs mezery, tak ja osobne budu pouzivat TABulator ... . a kdyz to bude nekdo chtit neni problem to pro nej prevest na mezery.
Osobne ted pouzivat :set ts=3 :)
Mimochodem jeste pred pul rokem jsem nechapal jak se da vicko pouzivat a zacina se mi cim dal tim vice libit
Naprostý souhlas. Tabelátor má (měl) snad smysl pro vytváření tabulek v ASCII, ale jeho použití k odsazování je omyl, o formátování ani nemluvě. Je to slepá vývojová větev a patří na smetiště dějin spolu se znaky jako ENQ a DCL3. Kdo používá formfeed nebo vertikální tabelátor? Ale ten normální stále ne a ne vyhynout.
Musím se přiznat, že také moc nechápu výhodu používání tabulátorů. Rychlejší mazání? To je ve vimu o tolik rychlejší napsat x, než 4x nebo 8x? Chápu používání tabulátoru ve "WYSIWYG" editorech s proporcionálním písmem. Ale ve zdrojácích podle mého názoru nadělá tabulátor víc škody než užitku.
A kdo potrebuje standard? Je prece mnohem lepsi nastavit si odsazeni tak, jak se to libi mne, ale ostatnim nechat volnost v tom, kolik mezer preferuji oni. Neni nic horsiho, nez pracovat se zdrojakem nejakyho mezernikovyho cunete, co se zrovna blbe vyspal a libilo se mu pet mezer na "tab" a ja uz nemam sanci s tim cokoliv udelat...
A k tomu, kdyz pisu program, odsazeni bloku je LOGICKE a nema vyznam esteticky...
Mezerniky jsou prezitek a mely by se zahodit... :-)
To je naprostý omyl.
Kód programu není volný text vysázený proporcionálním písmem. Je neproporcionálním písmem právě proto, aby existovalo jednoznačné členění do sloupců (obvykle 80). Jeden sloupec má šířku jednoho znaku a o jeden sloupec vpravo se proto posunu mezerníkem. [Neexpandující se] tabelátor je naproti tomu jakási navíc zavedená jednotka odsazení, a to velmi nestabilní, tudíž k ničemu.
Mozna bychom tu debatu meli ukoncit, protoze jeden druheho stejne nepresvedcime... :-)
Ja jen proste vidim odsazeni jako "logickou" vec, tudiz by melo byt reprezentovano nejakym metaznakem pro odsazeni (tabem), ktere pak vyjadri treba "3x odsazeno" -> 3x tab. Vy to vidite jako zalezitost vizualniho vzhledu, proto chcete,a by to vsude vypadalo stejne (3x dvoj/troj/n-mezera). I kdyz nevidim jediny duvod, proc by mel nekdo chtit, aby kod vypadal vsude stejne, respektuji vas pohled.
Mluvim jen ze zkusenosti. Uz mnohokrat jsem byl nucen hrabat se v cizim kodu a kdyz autor pouzival mezerniky, byla pro mne orientace mnohem narocnejsi, protoze jsem absolutne ztratil moznost nastavit si sirku odsazeni tak jak JA chci... :-(
Naprosty souhlas, kod budiz vzdy neproporcionalni.
Je ale nutno rozlisovat tabelator coby znak (ten by mel vyhynout) a tabelator klavesu (uzitecna zalezitost, expanduje-li se do mezer :-)
Jeste bych chtel v teto souvislosti pripomenout, ze tabelator-znak ma nekdy bohuzel i syntakticky vyznam (napr. Makefile). Nastesti jde cim dal vice o historii.
Chm, chm. Když odsazuji
dlouhé_jméno_funkce_třeba_z_gtk(argumenty, ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>argumenty, ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>argumenty);
(zobáčky jsou tam kvůli nemožnosti formátování příspěvku) tak chci, aby mi i ty následující argumenty lícovaly s prvním. Totéž u dlouhých matematických výrazů, kde pak je poznat z fyzické logická úroveň zanoření.
Když je odsazeno pomocí mezer, všichni vidí totéž (někomu se nemusí líbit počet mezer na jednu úroveň odsazení, ale aspoň nevidí nesmysly).
Když je to odsazeno pomocí tabelátorů, mám tyto možnosti: (a) nastavit si tabelátor na stejnou velikost jako autor (takže když se mi jeho velikost odsazení nelíbí, tak jsem stejně utřel), (b) klít, protože se rozhodí formátování a já se v tom nevyznám.
Takže IMHO je to přesně naopak, než píšete vy.