EnglezăFrancezăSpaniolă

Ad


Favicon OnWorks

indent - Online în cloud

Rulați indent în furnizorul de găzduire gratuit OnWorks prin Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

Aceasta este indentarea comenzii care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


indentare - schimbă aspectul unui program C prin inserarea sau ștergerea spațiilor albe.

REZUMAT


liniuță [opțiuni] [fișiere de intrare]

liniuță [opțiuni] [fișier-un singur-input] [-o fișier-ieșire]

liniuță --versiune

DESCRIERE


Această pagină de manual este generată din fișier indent.texinfo. Aceasta este ediția „The liniuță
Manual", pentru versiunea Indent , ultima actualizare .

liniuță programul poate fi folosit pentru a face codul mai ușor de citit. De asemenea, se poate converti dintr-unul
stilul de a scrie C la altul.

liniuță înțelege o cantitate substanțială despre sintaxa lui C, dar încearcă și să o facă
face față sintaxei incomplete și deformate.

În versiunea 1.2 și în versiunile mai recente, stilul GNU de indentare este implicit.

OPŢIUNI


-rău, --linii-albe-după-declarații
Forțați liniile goale după declarații.
Vedea GOL LINII.

-bap, --linii-albe-după-proceduri
Forțați liniile goale după corpurile procedurii.
Vedea GOL LINII.

-bbb, --linii-vide-înainte de blocare-commentari
Forțați liniile goale înainte de blocarea comentariilor.
Vedea GOL LINII.

-bbo, --break-before-boolean-operator
Preferă întreruperea liniilor lungi înaintea operatorilor booleeni.
Vedea BREAKING LUNG LINII.

-bc, --linii-vide-după-virgule
Forțați linia nouă după virgulă în declarație.
Vedea DECLARAȚII.

-bl, --acolade-după-dacă-linie
Pune bretele pe linie după if, Etc
Vedea DECLARAȚII.

-blf, --acolade-după-func-def-line
Pune acolade pe linie după linia de definire a funcției.
Vedea DECLARAȚII.

-blin, --brete-indentn
Acolade cu indentare n spații.
Vedea DECLARAȚII.

-bls, --acolade-după-struct-decl-line
Pune bretele pe linie după structura linii de declarație.
Vedea DECLARAȚII.

-br, --acolade-pe-dacă-linie
Pune bretele pe linie cu if, Etc
Vedea DECLARAȚII.

-brf, --acolade-pe-func-def-line
Pune acolade pe linia de definire a funcției.
Vedea DECLARAȚII.

-brs, --acolade-pe-struct-decl-line
Pune bretele structura linia de declarație.
Vedea DECLARAȚII.

-bs, --Bill-Shannon, --blank-before-sizeof
Pune un spațiu între mărimea și argumentul său.
Vedea DECLARAȚII.

-cn, --comentare-indentaren
Pune comentarii în partea dreaptă a codului în coloană n.
Vedea MESAJ.

-cbin, --case-acolade-indentaren
Indentați acolade după o etichetă de caz N spații.
Vedea DECLARAȚII.

-CDn, --coloana-declarație-comentaren
Puneți comentarii în dreapta declarațiilor din coloană n.
Vedea MESAJ.

-cdb, --comment-delimiters-on-blank-lines
Pune delimitatori de comentarii pe linii goale.
Vedea MESAJ.

-cdw, --cuddle-do-in timp ce
Imbratiseaza in timp ce de do {} in timp ce; și precedând „}”.
Vedea MESAJ.

-acest, --imbratisare-altfel
Îmbrățișează altceva și precedând „}”.
Vedea MESAJ.

-acestn, --continuare-indentaren
Continuare liniuță a n spații.
Vedea DECLARAȚII.

-clin, --case-indentaren
Indentarea etichetei cazului din n spații.
Vedea DECLARAȚII.

-cpn, --else-endif-coloanăn
Pune comentarii în dreapta #altfel și #endif declarații în coloană n.
Vedea MESAJ.

-cs, --spațiu-după-turnare
Pune un spațiu după un operator de turnare.
Vedea DECLARAȚII.

-dn, --line-comments-indentationn
Setați indentarea comentariilor nu la dreapta codului pentru n spații.
Vedea MESAJ.

-bfda, --break-function-decl-args
Rupeți linia înaintea tuturor argumentelor dintr-o declarație.
Vedea DECLARAȚII.

-bfde, --break-function-decl-args-end
Rupeți linia după ultimul argument dintr-o declarație.
Vedea DECLARAȚII.

-dj, --declarații-justificate-la-stanga
Dacă se folosește -cd 0, comentariile după declarații sunt lăsate justificate în spatele lui
declaraţie.
Vedea DECLARAȚII.

-dun, --declarație-indentaren
Pune variabile în coloană n.
Vedea DECLARAȚII.

-fc1, --format-prima-coloană-comentarii
Formatați comentariile în prima coloană.
Vedea MESAJ.

-fca, --format-all-comments
Nu dezactivați toată formatarea comentariilor.
Vedea MESAJ.

-gnu, --stil gnu
Utilizați stilul de codare GNU. Aceasta este valoarea implicită.
Vedea COMUNĂ STILURI.

-hnl, --honour-newlines
Preferați să rupeți liniile lungi la poziția liniilor noi din intrare.
Vedea BREAKING LUNG LINII.

-in, --nivel-indentaren
Setați nivelul de indentare la n spații.
Vedea INDENTAȚIE.

-eln, --indent-etichetăn
Setați offset pentru etichete pe coloană n.
Vedea INDENTAȚIE.

-ipn, --indentare-parametrun
Indentați tipurile de parametri în definițiile de funcții în stil vechi prin n spații.
Vedea INDENTAȚIE.

-kr, --k-and-r-stil
Utilizați stilul de codare Kernighan & Ritchie.
Vedea COMUNĂ STILURI.

-ln, --lungimea liniein
Setați lungimea maximă a liniei pentru liniile fără comentarii la n.
Vedea BREAKING LUNG LINII.

-lcn, --coment-line-lungimen
Setați lungimea maximă a liniei pentru formatarea comentariilor la n.
Vedea MESAJ.

-linux, --stil linux
Utilizați stilul de codare Linux.
Vedea COMUNĂ STILURI.

-lp, --continuare-în-paranteze
Aliniați rândurile continue între paranteze.
Vedea INDENTAȚIE.

-lps, --lasă-preprocesor-spațiu
Lăsați spațiu între „#” și directiva de preprocesor.
Vedea INDENTAȚIE.

-nbad, --fără-linii-albe-după-declarații
Nu forțați liniile goale după declarații.
Vedea GOL LINII.

-nbap, --fără-linii-albe-după-proceduri
Nu forțați liniile goale după corpurile procedurii.
Vedea GOL LINII.

-nbbo, --break-after-boolean-operator
Nu preferați să întrerupeți linii lungi înaintea operatorilor booleeni.
Vedea BREAKING LUNG LINII.

-nbc, --fără-linii-albe-după-virgule
Nu forțați linii noi după virgule în declarații.
Vedea DECLARAȚII.

-nbfda, --dont-break-function-decl-args
Nu puneți fiecare argument într-o declarație de funcție pe o linie separată.
Vedea DECLARAȚII.

-ncdb, --no-comment-delimiters-on-blank-lines
Nu puneți delimitatori de comentarii pe linii goale.
Vedea MESAJ.

-ncdw, --nu-imbratisa-fa-in timp ce
Nu vă îmbrățișați } si în timp ce a unui do {} in timp ce;.
Vedea DECLARAȚII.

-nce, --nu-imbratisati-altfel
Nu vă îmbrățișați } și altfel.
Vedea DECLARAȚII.

-ncs, --fără-spațiu-după-turnări
Nu puneți un spațiu după operatorii de turnare.
Vedea DECLARAȚII.

-ndjn, --dont-left-justify-declarations
Comentariile după declarații sunt tratate la fel ca comentariile după alte declarații.
Vedea DECLARAȚII.

-nfc1, --dont-format-prima-coloană-comentarii
Nu formatați comentariile din prima coloană ca de obicei.
Vedea MESAJ.

-nfca, --dont-format-comments
Nu formatați niciun comentariu.
Vedea MESAJ.

-nhnl, --ignore-newlines
Nu preferați să rupeți linii lungi la poziția liniilor noi din intrare.
Vedea BREAKING LUNG LINII.

-nip, --no-parameter-dentation
Indentație cu lățime zero pentru parametri.
Vedea INDENTAȚIE.

-nlp, --nu-aliniați-paranteze
Nu aliniați parantezele.
Vedea DECLARAȚII.

-nbuc, --no-space-after-function-call-names
Nu puneți spațiu după funcție în apelurile de funcție.
Vedea DECLARAȚII.

-nprs, --fără-spațiu-după-paranteze
Nu puneți un spațiu după fiecare „(” și înainte de fiecare „)”.
Vedea DECLARAȚII.

-npsl, --dont-break-procedure-type
Puneți tipul unei proceduri pe aceeași linie cu numele acesteia.
Vedea DECLARAȚII.

-nsaf, --fără-spațiu-după-pentru
Nu pune un spațiu după fiecare pentru.
Vedea DECLARAȚII.

-nsai, --fără-spațiu-după-dacă
Nu pune un spațiu după fiecare if.
Vedea DECLARAȚII.

-nsaw, --fara-spatiu-dupa-timp
Nu pune un spațiu după fiecare în timp ce.
Vedea DECLARAȚII.

-nsc, --dont-star-comentarii
Nu pune caracterul „*” în partea stângă a comentariilor.
Vedea MESAJ.

-nsob, --leave-optional-blank-lines
Nu înghiți linii goale opționale.
Vedea GOL LINII.

-nss, --dont-space-special-punct și virgulă
Nu forțați un spațiu înainte de punctul și virgulă după anumite afirmații. Dezactivează „-ss”.
Vedea DECLARAȚII.

-nuca, --fără-file
Folosiți spații în loc de file.
Vedea INDENTAȚIE.

-nv, --fără-verbositate
Dezactivați modul verbose.
Vedea DIVERSE OPŢIUNI.

-orig, --original
Utilizați stilul original de codare Berkeley.
Vedea COMUNĂ STILURI.

-npro, --ignore-profil
Nu citiți fișierele „.indent.pro”.
Vedea INVOCAT RELICATEA.

-buc, --spațiu-după-apeluri-procedură
Introduceți un spațiu între numele procedurii apelate și „(”.
Vedea DECLARAȚII.

-pin, --parent-indentaren
Specificați indentarea suplimentară pe paranteze deschise „(” atunci când o declarație este întreruptă. Vezi
DECLARAȚII.

-pmt, --preserve-mtime
Păstrați timpii de acces și modificare a fișierelor de ieșire. Vezi DIVERSE OPŢIUNI.

-ppin, --preprocesor-indentaren
Specificați indentarea pentru instrucțiunile condiționale ale preprocesorului. Vezi INDENTAȚIE.

- prs, --spațiu-după-paranteze
Pune un spațiu după fiecare „(” și înainte de fiecare „)”.
Vedea DECLARAȚII.

-psl, --procnames-start-lines
Puneți tipul unei proceduri pe linia înaintea numelui acesteia.
Vedea DECLARAȚII.

-saf, --spațiu-după-pentru
Pune un spațiu după fiecare pentru.
Vedea DECLARAȚII.

-sai, --spațiu-după-dacă
Pune un spațiu după fiecare if.
Vedea DECLARAȚII.

-a văzut, --spațiu-după-timp
Pune un spațiu după fiecare în timp ce.
Vedea DECLARAȚII.

-sbin, --struct-acolade-indentaren
Indentare acolade ale unei structuri, uniuni sau enumerare N spații.
Vedea DECLARAȚII.

-sc, --start-partea-stânga-a-comentariilor
Puneți caracterul „*” în partea stângă a comentariilor.
Vedea MESAJ.

-suspin, --swallow-optional-blank-lines
Înghițiți linii goale opționale.
Vedea GOL LINII.

-ss, --spațiu-special-punct și virgulă
Pe o singură linie pentru și în timp ce instrucțiuni, forțați un spațiu liber înaintea punctului și virgulă.
Vedea DECLARAȚII.

-Sf, --ieșire-standard
Scrieți la ieșirea standard.
Vedea INVOCAT RELICATEA.

-T Spune liniuță numele numelor de tip.
Vedea DECLARAȚII.

-tsn, --tab-sizen
Setați dimensiunea filei la n spații.
Vedea INDENTAȚIE.

-aut, --utilizați-file
Folosiți file. Aceasta este valoarea implicită.
Vedea INDENTAȚIE.

-v, --verbos
Activați modul pronunțat.
Vedea DIVERSE OPŢIUNI.

-versiune
Ieșiți numărul versiunii de liniuță.
Vedea DIVERSE OPŢIUNI.

INVOCAT RELICATEA


Începând cu versiunea 1.3, formatul liniuță comanda este:

indentare [Opțiuni] [fisiere de intrare]

indentare [Opțiuni] [fișier cu o singură intrare] [-O fisier de iesire]

Acest format este diferit de versiunile anterioare și de alte versiuni ale liniuță.

În prima formă, sunt specificate unul sau mai multe fișiere de intrare. liniuță face o copie de rezervă a
fiecare fișier, iar fișierul original este înlocuit cu versiunea sa indentată. Vedea BACKUP DOSARE,
pentru o explicație a modului în care se fac backup-urile.

În a doua formă, este specificat un singur fișier de intrare. În acest caz, sau atunci când standardul
este utilizată intrarea, puteți specifica un fișier de ieșire după opțiunea „-o”.

A cauza liniuță pentru a scrie la ieșirea standard, utilizați opțiunea „-st”. Acest lucru este permis numai
când există un singur fișier de intrare sau când este utilizată intrarea standard.

Dacă nu sunt denumite fișiere de intrare, intrarea standard este citită pentru intrare. De asemenea, dacă un nume de fișier
numit „-” este specificat, apoi este citită intrarea standard.

Ca exemplu, fiecare dintre următoarele comenzi va introduce programul „slithy_toves.c” și
scrieți textul indentat în „slithy_toves.out”:

indent slithy_toves.c -o slithy_toves.out

indent -st slithy_toves.c > slithy_toves.out

cat slithy_toves.c | indent -o slithy_toves.out

Cele mai multe alte opțiuni pentru liniuță controlează modul în care sunt formatate programele. Începând cu versiunea 1.2,
liniuță recunoaște, de asemenea, un nume lung pentru fiecare nume de opțiune. Opțiunile lungi sunt prefixate de
fie „--” fie „+”. [ „+” este înlocuit de „--” pentru a menține consistența cu
Standard POSIX.]
În cea mai mare parte a acestui document, denumirile tradiționale scurte sunt folosite de dragul conciziei.
Vedea OPȚIUNE REZUMAT, pentru o listă de opțiuni, inclusiv nume lungi și scurte.

Iată un alt exemplu:

indent -br test/metabolism.c -l85

Aceasta va indenta programul „test/metabolism.c” folosind opțiunile „-br” și „-l85”, scrieți
ieșirea înapoi la „test/metabolism.c” și scrieți conținutul original al
„test/metabolism.c” într-un fișier de rezervă din directorul „test”.

Invocarile echivalente care folosesc nume lungi de optiuni pentru acest exemplu ar fi:

indent --acolade-on-if-line --line-length185 test/metabolism.c

indentare +acolade-pe-linie-dacă +lungime-linie185 test/metabolism.c

Dacă descoperi că folosești des liniuță cu aceleași opțiuni, puteți pune acele opțiuni
într-un fișier numit „.indent.pro”. liniuță va căuta un fișier de profil în trei locuri.
Mai întâi va verifica variabila de mediu INDENT_PROFILE. Dacă asta există valoarea sa este
se așteaptă să denumească fișierul care urmează să fie utilizat. Dacă variabila de mediu nu există,
indent caută „.indent.pro” în directorul curent
și folosește-l dacă este găsit. In cele din urma liniuță va căuta în directorul dvs. principal „.indent.pro”
și folosiți acel fișier dacă este găsit. Acest comportament este diferit de cel al altor versiuni
of liniuță, care încarcă ambele fișiere dacă ambele există.

Formatul „.indent.pro” este pur și simplu o listă de opțiuni, așa cum ar apărea pe
linie de comandă, separată de spații albe (file, spații și linii noi). Opțiuni în
„.indent.pro” poate fi înconjurat de comentarii C sau C++, caz în care acestea sunt ignorate.

Comutatoarele liniei de comandă sunt gestionate după procesarea „.indent.pro”. Opțiuni specificate mai târziu
suprascrie argumentele specificate mai devreme, cu o singură excepție: opțiunile specificate în mod explicit
înlocuiți întotdeauna opțiunile de fundal (vezi COMUNĂ STILURI). Puteți preveni liniuță din
citind un fișier „.indent.pro” prin specificarea opțiunii „-npro”.

BACKUP DOSARE


Începând cu versiunea 1.3, GNU liniuță realizează fișiere de rezervă în stil GNU, la fel ca GNU Emacs.
Asta înseamnă că fie simplu or numerotat pot fi create nume de fișiere de rezervă.

Numele simple ale fișierelor de rezervă sunt generate prin adăugarea unui sufix la numele fișierului original.
Valoarea implicită pentru acest sufix este șirul de un caracter „~” (tilde). Astfel, backup-ul
fișierul pentru „python.c” ar fi „python.c~”.

În loc de implicit, puteți specifica orice șir ca sufix prin setarea mediului
variabil SIMPLE_BACKUP_SUFFIX la sufixul preferat.

Versiunile de rezervă numerotate ale unui fișier „momeraths.c” arată ca „momeraths.c.~23~”, unde 23 este
versiunea acestei copii de rezervă. Când faceți o copie de rezervă numerotată a fișierului
„src/momeraths.c”, fișierul de rezervă va fi numit „src/momeraths.c.~V~', unde V este unul
mai mare decât cea mai înaltă versiune existentă în prezent în directorul „src”. The
variabilă de mediu VERSION_WIDTH controlează numărul de cifre, utilizând umplutura cu zero la stânga
când este necesar. De exemplu, setarea acestei variabile la „2” va duce la fișierul de rezervă
fiind numit 'momeraths.c.~04~'.

Tipul de fișier de rezervă realizat este controlat de valoarea variabilei de mediu
CONTROLUL VERSIUNII. Dacă este șirul „simplu”, atunci se vor face doar copii de siguranță simple. Dacă
valoarea sa este șirul „numerotat”, apoi se vor face copii de siguranță numerotate. Dacă valoarea sa este
„numerotat-existent”, apoi se vor face copii de rezervă numerotate dacă există deja exista numerotat
copii de rezervă pentru fișierul care este indentat; în caz contrar, se face o copie de rezervă simplă. Dacă
CONTROLUL VERSIUNII nu este setat, atunci liniuță presupune comportamentul de „numerotat-existent”.

Alte versiuni ale liniuță utilizați sufixul „.BAK” în denumirea fișierelor de rezervă. Acest comportament poate
fi emulat prin setare SIMPLE_BACKUP_SUFFIX la '.BAK'.

Rețineți, de asemenea, că alte versiuni ale liniuță face copii de rezervă în directorul curent, mai degrabă decât
în directorul fișierului sursă ca GNU liniuță acum face.

COMUNĂ STILURI


Există mai multe stiluri comune de cod C, inclusiv stilul GNU, Kernighan și
Stilul Ritchie și stilul original Berkeley. Un stil poate fi selectat cu unul singur
fundal opțiunea, care specifică un set de valori pentru toate celelalte opțiuni. In orice caz,
opțiunile specificate în mod explicit înlocuiesc întotdeauna opțiunile implicite de o opțiune de fundal.

Începând cu versiunea 1.2, stilul implicit al GNU liniuță este stilul GNU. Astfel, este nu
mai este necesar să specificați opțiunea „-gnu” pentru a obține acest format, deși procedând astfel
nu va provoca o eroare. Setările opțiunilor care corespund stilului GNU sunt:

-nbad -bap -nbc -bbo -bl -bli2 -bls -ncdb -nce -cp1 -cs -di2
-ndj -nfc1 -nfca -hnl -i2 -ip5 -lp -pcs -nprs -psl -saf -sai
-saw -nsc -nsob

Stilul de codare GNU este cel preferat de proiectul GNU. Este stilul pe care GNU
Modul C Emacs încurajează și care este utilizat în porțiunile C ale GNU Emacs. (Oameni
interesat să scrie programe pentru Proiectul GNU ar trebui să obțină o copie a „Codării GNU
Standarde”, care acoperă, de asemenea, probleme semantice și de portabilitate, cum ar fi utilizarea memoriei,
dimensiunea numerelor întregi etc.)

Stilul Kernighan & Ritchie este folosit în binecunoscuta lor carte „The C Programming
Limbă". Este activată cu opțiunea '-kr'. Stilul Kernighan & Ritchie
corespunde următorului set de opțiuni:

-nbad -bap -bbo -nbc -br -brs -c33 -cd33 -ncdb -ce -ci4 -cli0
-cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs
-nprs -npsl -saf -sai -saw -nsc -nsob -nss

Stilul Kernighan & Ritchie nu pune comentarii în dreapta codului în aceeași coloană la
tot timpul (și nici nu folosește doar un spațiu în dreapta codului), deci pentru acest stil
liniuță a ales în mod arbitrar coloana 33.

Stilul originalului Berkeley liniuță poate fi obținut prin specificarea „-orig” (sau prin
specificând „--original”, folosind numele lung al opțiunii). Acest stil este echivalent cu
următoarele setări:

-nbad -nbap -bbo -bc -br -brs -c33 -cd33 -cdb -ce -ci4 -cli0
-cp33 -di16 -fc1 -fca -hnl -i4 -ip4 -l75 -lp -npcs -nprs -psl
-saf -sai -saw -sc -nsob -nss -ts8

Stilul Linux este folosit în codul kernel-ului Linux și în drivere. În general, codul trebuie să urmeze
stilul de codare Linux să fie acceptat. Acest stil este echivalent cu următorul
setări:

-nbad -bap -nbc -bbo -hnl -br -brs -c33 -cd33 -ncdb -ce -ci4
-cli0 -d0 -di1 -nfc1 -i8 -ip0 -l80 -lp -npcs -nprs -npsl -sai
-saf -saw -ncs -nsc -sob -nfca -cp33 -ss -ts8 -il1

GOL LINII


Diverse stiluri de programare folosesc linii goale în locuri diferite. liniuță are un număr de
opțiuni pentru a insera sau șterge linii goale în anumite locuri.

Opțiunea „-rea” cauzează liniuță pentru a forța o linie goală după fiecare bloc de declarații.
Opțiunea „-nbad” cauzează liniuță să nu forțezi astfel de linii goale.

Opțiunea „-bap” forțează o linie goală după fiecare corp de procedură. Opțiunea „-nbap”.
nu forțează o astfel de linie goală.

Opțiunea „-bbb” forțează o linie goală înainte de fiecare comentariu în casetă (vezi MESAJ.) Cel
Opțiunea „-nbbb” nu forțează astfel de linii goale.

Opțiunea „-sob” cauzează liniuță pentru a înghiți linii goale opționale (adică orice opțional
liniile goale prezente în intrare vor fi eliminate din ieșire). Dacă „-nsob” este
specificat, orice linii goale prezente în fișierul de intrare vor fi copiate în fișierul de ieșire.

--linii-albe-după-declarații


Opțiunea „-bad” forțează o linie goală după fiecare bloc de declarații. „-nbad”
opțiunea nu adaugă astfel de linii goale.

De exemplu, având în vedere intrarea
char *foo;
char *bar;
/* Aceasta separă blocurile de declarații. */
int baz;

liniuță -rău produce

char *foo;
char *bar;

/* Aceasta separă blocurile de declarații. */
int baz;

și liniuță -nbad produce

char *foo;
char *bar;
/* Aceasta separă blocurile de declarații. */
int baz;

--linii-albe-după-proceduri


Opțiunea „-bap” forțează o linie goală după fiecare corp de procedură.

De exemplu, având în vedere intrarea

int
prost ()
{
pune("Bună");
}
/* Bara de proceduri este și mai puțin interesantă. */
char *
bar ()
{
puts("Bună ziua");
}

liniuță -bap produce

int
prost ()
{
pune („Bună”);
}

/* Bara de proceduri este și mai puțin interesantă. */
char *
bar ()
{
pune („Bună ziua”);
}

și liniuță -nbap produce

int
prost ()
{
pune („Bună”);
}
/* Bara de proceduri este și mai puțin interesantă. */
char *
bar ()
{
pune („Bună ziua”);
}

Nu va fi adăugată nicio linie goală după procedură foo.

MESAJ


liniuță formatează atât comentariile C, cât și C++. Comentariile C încep cu „/*”, se termină cu
„*/” și poate conține caractere newline. Comentariile C++ încep cu delimitatorul „//” și
se încheie la noua linie.

liniuță gestionează comentariile în mod diferit, în funcție de contextul lor. liniuță incearca sa
distinge între comentariile care urmează declarațiilor, comentariile care urmează declarațiilor,
comentarii care urmează directivele preprocesorului și comentarii care nu sunt precedate de codul de
orice fel, adică încep textul liniei (deși nu neapărat în coloana 1).

liniuță distinge în continuare între comentariile găsite în afara procedurilor și agregate,
și cele găsite în interiorul lor. În special, comentariile care încep o linie găsită în a
procedura va fi indentată în coloana la care este indentat codul în prezent. The
excepție de la aceasta este un comentariu care începe în coloana din stânga; un astfel de comentariu este scos
la acea coloană.

liniuță încearcă să plece cutie comentarii nemodificat. Ideea generală a unui astfel de comentariu este
că este închis într-un dreptunghi sau într-o „cutie” de stele sau liniuțe pentru a o deosebi vizual.
Mai exact, comentariile în casete sunt definite ca acelea în care este urmată inițialul „/*”.
imediat prin caracterul „*”, „=”, „_” sau „-”, sau cele în care începutul
delimitator de comentariu ('/*') se află pe o linie în sine, iar următoarea linie începe cu un '*'
în aceeași coloană cu steaua delimitatorului de deschidere.

Exemple de comentarii în casete sunt:

/************************
* Comentează într-o cutie!! *
**********************/

/*
* Un alt fel de parfum,
* pentru un alt tip de comentariu.
*/

liniuță încearcă să lase comentarii în casete exact așa cum se găsesc în fișierul sursă.
Astfel, indentarea comentariului este neschimbată, iar lungimea acestuia nu este verificată în niciunul
cale. Singura modificare făcută este că un caracter de filă încorporat poate fi convertit în
numărul adecvat de spații.

Dacă este specificată opțiunea „-bbb”, toate comentariile din casete vor fi precedate de un spațiu liber
linie, cu excepția cazului în care un astfel de comentariu este precedat de cod.

Comentariile care nu sunt comentarii în casete pot fi formatate, ceea ce înseamnă că linia este
rupt pentru a se încadra într-o margine din dreapta și umplut în stânga cu spații albe. Liniile noi unice sunt
echivalent cu un spațiu, dar liniile goale (două sau mai multe linii noi pe rând) sunt luate ca însemnând un
pauza de paragraf. Formatarea comentariilor care încep după ce prima coloană este activată
cu opțiunea '-fca'. Pentru a le formata pe cele care încep în coloana unu, specificați „-fc1”. Astfel de
formatarea este dezactivată în mod implicit.

Marja din dreapta pentru formatare este implicită la 78, dar poate fi modificată cu opțiunea „-lc”.
Dacă marja specificată nu permite tipărirea comentariului, marja va fi
prelungit automat pe durata acelui comentariu. Marja nu se respecta daca
comentariul nu este formatat.

Dacă comentariul începe o linie (adică nu există text de program în stânga sa), va fi
indentat la coloana în care a fost găsit, cu excepția cazului în care comentariul se află într-un bloc de cod. În
în acest caz, un astfel de comentariu va fi aliniat cu codul indentat al acelui bloc (cu excepția cazului în care
comentariul a început în prima coloană). Această aliniere poate fi afectată de opțiunea „-d”,
care specifică o sumă cu care astfel de comentarii sunt mutate în stânga, sau neindentat.
De exemplu, „-d2” plasează comentariile două spații în stânga codului. În mod implicit, comentarii
sunt aliniate cu codul, cu excepția cazului în care încep în prima coloană, caz în care sunt lăsate
acolo în mod implicit --- pentru a le alinia cu codul, specificați „-fc1”.

Comentariile din dreapta codului vor apărea implicit în coloana 33. Acest lucru poate fi modificat
cu una dintre cele trei variante. „-c” va specifica coloana pentru comentarii după cod,
„-cd” specifică coloana pentru comentarii după declarații, iar „-cp” specifică
coloană pentru comentarii după directivele preprocesorului #altfel și #endif. '-dj' împreună
cu „-cd0” poate fi folosit pentru a suprima alinierea comentariilor la dreapta declarațiilor,
determinând comentariul să urmeze o oprire de la sfârșitul declarației. În mod normal, „-cd0”
face ca „-c” să devină eficient.

Dacă codul din stânga comentariului depășește coloana de început, coloana de comentariu
va fi extins la următoarea coloană cu tabstop după sfârșitul codului sau, în cazul
directivele de preprocesor, la un spațiu dincolo de sfârșitul directivei. Această extensie durează
numai pentru rezultatul respectivului comentariu.

Opțiunea „-cdb” plasează delimitatorii de comentarii pe linii goale. Astfel, o singură linie
comenteaza like /* Iubitor îmbrăţişa */ se poate transforma in:

/*
Îmbrățișare iubitoare
*/

Stelele pot fi plasate la începutul comentariilor pe mai multe rânduri cu opțiunea „-sc”. Prin urmare,
comentariul pe o singură linie de mai sus poate fi transformat (cu „-cdb -sc”) în:

/*
* Îmbrățișare iubitoare
*/

DECLARAȚII


Opțiunea „-br” sau „-bl” specifică modul în care se formatează acolade.

Opțiunea „-br” formatează acoladele instrucțiunilor astfel:

dacă (x > 0) {
X--;
}

Opțiunea „-bl” le formatează astfel:

dacă (x > 0)
{
X--;
}

Dacă utilizați opțiunea „-bl”, poate doriți să specificați și opțiunea „-bli”. Această opțiune
specifică numărul de spații cu care sunt indentate acolade. „-bli2”, implicit, dă
rezultatul prezentat mai sus. „-bli0” are următoarele rezultate:

dacă (x > 0)
{
X--;
}

Dacă utilizați opțiunea „-br”, probabil că doriți să utilizați și opțiunea „-ce”. Acest
provoacă altfel într-o construcție dacă-atunci-altfel pentru a se îmbrățișa cu cea imediat precedentă
„}”. De exemplu, cu „-br -ce” obțineți următoarele:

dacă (x > 0) {
X--;
} Else {
fprintf (stderr, „...ceva în neregulă?\n”);
}

Cu „-br -nce” acel cod ar apărea ca

dacă (x > 0) {
X--;
}
altceva {
fprintf (stderr, „...ceva în neregulă?\n”);
}

Acest lucru determină în timp ce într-o buclă do-while pentru a se îmbrățișa cu „}” imediat precedent.
De exemplu, cu „-cdw” obțineți următoarele:

face {
X--;
} în timp ce (x);

Cu „-ncdw” acel cod ar apărea ca

face {
X--;
}
în timp ce (x);

Opțiunea „-cli” specifică numărul de spații la care ar trebui să fie indentate etichetele
dreptul celui care contine comuta afirmație.

Valoarea implicită oferă cod precum:

comutator (i)
{
caz 0:
rupe;
caz 1:
{
++i;
}
implicit:
rupe;
}

Folosind „-cli2” care ar deveni:

comutator (i)
{
caz 0:
rupe;
caz 1:
{
++i;
}
implicit:
rupe;
}

Indentarea acoladelor de sub o declarație case poate fi controlată cu „-cbin"
opțiune. De exemplu, folosind „-cli2 -cbi0” rezultă:

comutator (i)
{
caz 0:
rupe;
caz 1:
{
++i;
}
implicit:
rupe;
}

Dacă punct și virgulă se află pe aceeași linie cu a pentru or în timp ce declarație, opțiunea „-ss” va
face ca un spațiu să fie plasat înaintea punctului și virgulă. Acest lucru accentuează punctul și virgulă, făcându-l
clar că corpul celui pentru or în timp ce declarația este o declarație goală. „-nss” dezactivează
această caracteristică.

Opțiunea '-pcs' face ca un spațiu să fie plasat între numele procedurii
numit și „(” (de exemplu, puts ("Salut");. Opțiunea „-npcs” ar da
pune("Bună");).

Dacă este specificată opțiunea „-cs”, liniuță pune un spațiu între un operator de turnare și
obiect de turnat. „-ncs” asigură că nu există spațiu între operatorul de distribuție și
obiectul. Sa nu uiti asta liniuță știe doar despre tipurile de date standard C și deci nu poate
recunoașteți tipurile definite de utilizator în distribuții. Prin urmare (tipul meu)lucru nu este tratat ca o distribuție.

Opțiunea „-bs” asigură că există un spațiu între cuvântul cheie mărimea şi sa
argument. În unele versiuni, aceasta este cunoscută ca opțiunea „Bill_Shannon”.

Opțiunea „-saf” forțează un spațiu între a pentru și următoarea paranteză. Acesta este
Mod implicit.

Opțiunea „-sai” forțează un spațiu între a if și următoarea paranteză. Acesta este
Mod implicit.

Opțiunea „-saw” forțează un spațiu între a în timp ce și următoarea paranteză. Aceasta este
implicit.

Opțiunea „-prs” face ca toate parantezele să fie separate cu un spațiu de orice este
între ele. De exemplu, folosind „-prs” rezultă un cod precum:

în timp ce ( ( e_code - s_code ) < ( dec_ind - 1 ) )
{
set_buf_break ( bb_dec_ind );
*e_code++ = ' ';
}

DECLARAȚII


În mod implicit liniuță va alinia identificatorii, în coloana specificată de opțiunea „-di”.
De exemplu, „-di16” face ca lucrurile să arate astfel:

int foo;
char *bar;

Utilizarea unei valori mici (cum ar fi una sau două) pentru opțiunea „-di” poate fi folosită pentru a provoca
identificatorii să fie plasați în prima poziție disponibilă; de exemplu:

int foo;
char *bar;

Valoarea dată opțiunii „-di” va afecta în continuare variabilele care sunt puse separat
liniile din tipurile lor, de exemplu „-di2” vor duce la:

int
foo;

Dacă este specificată opțiunea „-bc”, o nouă linie este forțată după fiecare virgulă dintr-o declarație.
De exemplu,

int a,
b,
c;

Cu opțiunea „-nbc” aceasta ar arăta

int a, b, c;

Opțiunea „-bfda” face ca o nouă linie să fie forțată după virgula care separă argumentele
a unei declarații de funcție. Argumentele vor apărea la un nivel de indentare mai adânc decât
declarația funcției. Acest lucru este util în special pentru funcțiile cu argumente lungi
liste. Opțiunea „-bfde” face ca o nouă linie să fie forțată înainte de paranteza de închidere a
declarație de funcție. Pentru ambele opțiuni, setarea „n” este implicită: -nbdfa și -nbdfe.

De exemplu,

void foo (int arg1, char arg2, int *arg3, long arg4, char arg5);
Cu opțiunea „-bfda” aceasta ar arăta

void foo (
int arg1,
char arg2,
int *arg3,
lung arg4,
char arg5);

Cu, în plus, opțiunea „-bfde” ar arăta așa

void foo (
int arg1,
char arg2,
int *arg3,
lung arg4,
char arg5
);

Opțiunea „-psl” face ca tipul de procedură definit să fie plasat pe linie
înainte de denumirea procedurii. Acest stil este necesar pentru etags programul să funcționeze
corect, precum și unele dintre modul c funcțiile Emacs.

Trebuie să utilizați opțiunea „-T” pentru a spune liniuță numele tuturor tipurilor din programul dvs
care sunt definite de typedef. „-T” poate fi specificat de mai multe ori și toate numele
specificate sunt utilizate. De exemplu, dacă programul dvs. conține

typedef unsigned long CODE_ADDR;
typedef enum {roșu, albastru, verde} CULOARE;

ați folosi opțiunile „-T CODE_ADDR -T COLOR”.

Opțiunea „-brs” sau „-bls” specifică modul în care se formatează acolade în declarațiile struct. The
Opțiunea „-brs” formatează acolade astfel:

struct foo {
intx;
};

Opțiunea „-bls” le formatează astfel:

struct foo
{
intx;
};

Similar cu opțiunile „-brs” și „-bls” pentru acolade de structură,
opțiunile de acolade ale funcției „-brf” sau „-blf” specifică modul de formatare a acoladelor în funcție
definiții. Opțiunea „-brf” formatează acolade astfel:

int one(void) {
1 reveni;
};

Opțiunea „-blf” le formatează astfel:

int unu (gol)
{
1 reveni;
};

INDENTAȚIE


O problemă în formatarea codului este cât de departe ar trebui să fie indentată fiecare linie din stânga
marginea. Când începutul unei afirmații precum if or pentru este întâlnit, the
nivelul de indentare este mărit cu valoarea specificată de opțiunea „-i”. De exemplu,
utilizați „-i8” pentru a specifica o indentare de opt caractere pentru fiecare nivel. Când o declarație este
întreruptă pe două linii, a doua linie este indentată de un număr de spații suplimentare
specificat de opțiunea „-ci”. „-ci” este implicit 0. Cu toate acestea, dacă opțiunea „-lp” este
specificat, iar o linie are o paranteză stângă care nu este închisă pe acea linie, atunci
liniile de continuare vor fi aliniate pentru a începe la poziția caracterului imediat după stânga
paranteze. Această procesare se aplică și pentru „[” și se aplică pentru „{” atunci când apare în
liste de inițializare. De exemplu, o bucată de cod continuat ar putea arăta astfel cu
„-nlp -ci3” în vigoare:

p1 = prima_procedură (a doua_procedură (p2, p3),
a treia_procedură (p4, p5));

Cu „-lp” în vigoare, codul arată oarecum mai clar:

p1 = prima_procedură (a doua_procedură (p2, p3),
a treia_procedură (p4, p5));

Când o declarație este ruptă între două sau mai multe perechi de părinți (...), fiecare pereche suplimentară
determină indentarea suplimentară a nivelului de indentare:

dacă ((((i < 2 &&
k > 0) || p == 0) &&
q == 1) ||
n = 0)

Opțiunea „-ipN' poate fi folosit pentru a seta offset-ul suplimentar per părinte. De exemplu, „-ip0”
ar formata cele de mai sus ca:

dacă ((((i < 2 &&
k > 0) || p == 0) &&
q == 1) ||
n = 0)

liniuță presupune că filele sunt plasate la intervale regulate atât de intrare, cât și de ieșire
fluxuri de caractere. Aceste intervale au în mod implicit 8 coloane lățime, dar (începând cu versiunea 1.2)
poate fi modificat prin opțiunea „-ts”. Filele sunt tratate ca un număr echivalent de spații.

Indentarea declarațiilor de tip în definițiile de funcții în stil vechi este controlată de
parametrul „-ip”. Acesta este un parametru numeric care specifică câte spații trebuie indentate
declarații de tip. De exemplu, „-ip5” implicit face ca definițiile să arate astfel:

char *
create_world (x, y, scară)
intx;
int y;
scară plutitoare;
{
Chat
}

Pentru compatibilitate cu alte versiuni de indentare, este furnizată opțiunea „-nip”, adică
echivalent cu „-ip0”.

ANSI C permite plasarea spațiilor albe pe liniile de comandă ale preprocesorului între caractere
„#” și numele comenzii. În mod implicit, liniuță elimină acest spațiu, dar specificând
Opțiunea '-lps' direcționează liniuță pentru a lăsa acest spațiu nemodificat. Opțiunea „-ppi” suprascrie
„-nlps” și „-lps”.

Această opțiune poate fi folosită pentru a solicita ca instrucțiunile condiționale ale preprocesorului să fie
indentat cu un număr dat de spații, de exemplu cu opțiunea „-ppi 3”

#dacă X
#daca eu
#definiți Z 1
#altfel
#definiți Z 0
#endif
#endif
devine
#dacă X
# daca eu
# definiți Z 1
# altfel
# definiți Z 0
# endif
#endif

Această opțiune setează offset-ul la care va fi poziționată o etichetă (cu excepția etichetelor de caz). Dacă
este setat la zero sau un număr pozitiv, aceasta indică cât de departe de marginea din stânga până
indentarea unei etichete. Dacă este setat la un număr negativ, acesta indică cât de departe de
nivelul de indentare curent pentru a plasa eticheta. Setarea implicită este -2 care se potrivește cu
comportamentul versiunilor anterioare de indent. Rețineți că acest parametru nu afectează
plasarea etichetelor cutiei; vezi parametrul '-cli' pentru asta. De exemplu cu opțiunea
'-il 1'

grup
funcţie()
{
if (do_stuff1() == EROARE)
du-te la curățare1;

if (do_stuff2() == EROARE)
du-te la curățare2;

returnează SUCCES;

curatare 2:
do_cleanup2();

curatare 1:
do_cleanup1();

returnează EROARE;
}
devine
grup
funcţie()
{
if (do_stuff1() == EROARE)
du-te la curățare1;

if (do_stuff2() == EROARE)
du-te la curățare2;

returnează SUCCES;

curatare 2:
do_cleanup2();

curatare 1:
do_cleanup1();

returnează EROARE;
}

BREAKING LUNG LINII


Cu opțiunea '-ln', sau '--line-lungimen', se poate specifica lungimea maximă
a unei linii de cod C, fără a include eventualele comentarii care urmează.

Când liniile devin mai lungi decât lungimea de linie specificată, GNU liniuță încearcă să spargă
linie într-un loc logic. Totuși, acesta este nou începând cu versiunea 2.1 și nu foarte inteligent
sau flexibil încă.

În prezent, există două opțiuni care permit cuiva să interfereze cu algoritmul care
determină unde să rupă o linie.

Opțiunea „-bbo” provoacă GNU liniuță a prefera să rupă linii lungi înainte de boolean
Operatorii && și ||. Opțiunea „-nbbo” determină GNU liniuță nu am acea preferinta. Pentru
de exemplu, opțiunea implicită „-bbo” (împreună cu „--line-length60” și „--ignore-
newlines') face codul să arate astfel:

dacă (mască
&& ((mască[0] == '\0')
|| (mască[1] == '\0'
&& ((mască[0] == '0') || (mască[0] == '*')))))

Folosind opțiunea „-nbbo” va arăta astfel:

dacă (mască &&
((mască[0] == '\0') ||
(mască[1] == '\0' &&
((mască[0] == '0') || (mască[0] == '*')))))

„-hnl” implicit, totuși, onorează liniile noi în fișierul de intrare, oferindu-le cea mai mare
prioritatea posibilă pentru a rupe liniile la. De exemplu, când fișierul de intrare arată astfel:

dacă (mască
&& ((mască[0] == '\0')
|| (mască[1] == '\0' && ((mască[0] == '0') || (mască[0] == '*')))))

apoi folosind opțiunea „-hnl”, sau „--honour-newlines”, împreună cu cea anterioară
menționate „-nbbo” și „--line-length60”, va face ca rezultatul să nu fie ceea ce este dat în
ultimul exemplu, dar în schimb va prefera să rupă în pozițiile în care a fost codul
rupt în fișierul de intrare:

dacă (mască
&& ((mască[0] == '\0')
|| (mască[1] == '\0' &&
((mască[0] == '0') || (mască[0] == '*')))))

Ideea din spatele acestei opțiuni este că liniile care sunt prea lungi, dar sunt deja rupte,
nu va fi atins de GNU liniuță. Ar trebui să fie executat un cod cu adevărat dezordonat liniuță at
cel puțin o dată folosind opțiunea „--ignore-newlines”.

DEZACTIVARE FORMATAREA


Formatarea codului C poate fi dezactivată pentru porțiuni ale unui program prin încorporare specială
Control comentarii în program. Pentru a dezactiva formatarea pentru o secțiune a unui program, plasați
comentariul de dezactivare a controlului /* *Indentarea* */ pe o linie de la sine chiar înainte de asta
secțiune. Textul programului scanat după acest comentariu de control este scos exact ca intrare
fără modificări până când comentariul de activare corespunzător este scanat pe o linie de
în sine. Comentariul de dezactivare a controlului este /* *INDENTARE* */, și orice text care urmează
comentariul pe linie este, de asemenea, scos neformatat. Formatarea începe din nou cu introducerea
rând după comentariul de control de activare.

Mai precis, liniuță nu încearcă să verifice delimitatorul de închidere (*/) pentru aceste C
comentarii și orice spațiu alb de pe linie este total transparent.

Aceste comentarii de control funcționează și în formatele lor C++, și anume // *Indentarea* și //
*INDENTARE*.

De remarcat faptul că starea internă a liniuță rămâne neschimbată pe parcursul
secțiunea neformatată. Astfel, de exemplu, dezactivarea formatării în mijlocul unui
funcția și continuarea acesteia după încheierea funcției poate duce la rezultate bizare. Aceasta
Prin urmare, este înțelept să fie oarecum modular în selectarea codului care să fie lăsat neformatat.

Ca o notă istorică, unele versiuni anterioare ale liniuță a produs mesaje de eroare începând
cu *INTRACT**. Aceste versiuni ale liniuță au fost scrise pentru a ignora orice rând de text introdus
care a început cu astfel de mesaje de eroare. Am eliminat această caracteristică incestuoasă din GNU
liniuță.

DIVERSE OPŢIUNI


Pentru a afla ce versiune a liniuță ai, folosește comanda liniuță -versiune. Asta va
raportați numărul versiunii de liniuță, fără a face nicio procesare normală.

Opțiunea „-v” poate fi folosită pentru a activa modul verbose. Când sunteți în modul verbose, liniuță Rapoarte
când împarte o linie de intrare în încă două linii de ieșire și oferă o anumită dimensiune
statistici la finalizare.

Opțiunea „-pmt” cauzează liniuță pentru a păstra timpii de acces și modificare pe
fișiere de ieșire. Utilizarea acestei opțiuni are avantajul că rularea indent pe toate sursele și
fișierele antet dintr-un proiect nu vor cauza face pentru a reconstrui toate țintele. Această opțiune este numai
disponibil pe sistemele de operare care au POSIX utime(2) Funcția.

Utilizați indentarea online folosind serviciile onworks.net


Servere și stații de lucru gratuite

Descărcați aplicații Windows și Linux

  • 1
    NSIS: Nullsoft Scriptable Install System
    NSIS: Nullsoft Scriptable Install System
    NSIS (Nullsoft Scriptable Install
    System) este o sursă deschisă profesională
    sistem pentru a crea programe de instalare Windows. Aceasta
    este conceput pentru a fi cât mai mic și flexibil
    cat posibil...
    Descărcați NSIS: Nullsoft Scriptable Install System
  • 2
    authpass
    authpass
    AuthPass este o parolă open source
    manager cu sprijin pentru popular şi
    Keepass dovedit (kdbx 3.x ȘI kdbx 4.x...
    Descărcați authpass
  • 3
    Zabbix
    Zabbix
    Zabbix este o companie deschisă de clasă enterprise
    soluție de monitorizare distribuită la sursă
    conceput pentru a monitoriza și urmări
    performanța și disponibilitatea rețelei
    servere, dispozitive...
    Descărcați Zabbix
  • 4
    KDiff3
    KDiff3
    Acest depozit nu mai este întreținut
    și se păstrează în scop de arhivă. Vedea
    https://invent.kde.org/sdk/kdiff3 for
    cel mai nou cod și
    https://download.kde.o...
    Descărcați KDiff3
  • 5
    USBLoaderGX
    USBLoaderGX
    USBLoaderGX este o interfață grafică pentru
    Încărcătorul USB al lui Waninkoko, bazat pe
    libwiigui. Permite listarea și
    lansarea de jocuri Wii, jocuri Gamecube și
    homebrew pe Wii și WiiU...
    Descărcați USBLoaderGX
  • 6
    Firebird
    Firebird
    Firebird RDBMS oferă caracteristici ANSI SQL
    și rulează pe Linux, Windows și
    mai multe platforme Unix. Caracteristici
    concurență și performanță excelente
    & putere...
    Descărcați Firebird
  • Mai mult »

Comenzi Linux

Ad