Provided by: manpages-fi_0.2-2_all bug

NIMI

       indent  -  muokkaa  C-lähdekoodin  ulkonäköä  lisäämällä ja poistamalla
       välejä.

YLEISKATSAUS

       indent [-bad] [-bap] [-bbb] [-bc] [-bl] [-bliN] [-br] [-cN] [-cdN] [-cdb]
            [-ce] [-ciN] [-cliN] [-cpN] [-cs] [-bs] [-dN] [-diN] [-fc1] [-fca]
            [-gnu] [-iN] [-ipN] [-kr] [-lN] [-lp] [-nbad] [-nbap] [-nbbb]
            [-nbc] [-ncdb] [-nce] [-ncs] [-nfc1] [-nfca] [-nip] [-nlp] [-npcs]
            [-npsl] [-nsc] [-nsob] [-nss] [-nv] [-orig] [-npro] [-pcs] [-psl]
            [-sc] [-sob] [-ss] [-st] [-T] [-tsN] [-v] [-version] [tiedosto]

KUVAUS

       Tämä  manuaalisivu  perustuu  info-tiedostoon  indent.info,   joka   on
       tuotettu  Makeinfo-1.47  -ohjelmalla  lähdetiedostosta  indent.texinfo.
       Indent-manuaalisivun  versio  on  0.02,  5.  toukokuuta  1992   indent-
       versiolle 1.3.

       Copyright (C) 1989, 1992 Free Software Foundation, Inc.

KOPIOINTI

       Permission  is  granted  to make and distribute verbatim copies of this
       manual provided the copyright notice and  this  permission  notice  are
       preserved on all copies.

ESITTELY

       ‘Indent’-ohjelman   tarkoitus   on   tehdä   C-lähdekoodista  helpommin
       luettavaa.  Se osaa myös muuttaa yhdellä tyylillä  kirjoitettua  koodia
       toisentyyliseksi.

       ‘Indent’  ymmärtää  huomattavan  osan  C-syntaksista,  jonka lisäksi se
       pyrkii selviytymään myös syntaksiltaan epätäydellisestä ja/tai väärästä
       ohjelmakoodista.

       Versiossa   1.2   sekä   sitä  myöhemmissä  versioissa  oletusarvoisena
       sisennystyylinä käytetään GNU-tyyliä.

INDENTIN KÄYTTÄMINEN

       Versiossa 1.3 ‘indent’-komennon formaatti on seuraava:

            indent [OPTIOT] [SYÖTETIEDOSTOT]

            indent [OPTIOT] [SYÖTETIEDOSTO] [-o UUSITIEDOSTO]

       Tämä formaatti eroaa muista ‘indent’-ohjelman versioista.

       Ensimmäisessä  muodossa  komentorivillä  annetaan  yksi  tai   useampia
       tiedostoja.    ‘Indent’  tekee  tiedostoista  varmuuskopiot  ja  korvaa
       alkuperäiset  sisennetyillä  versioilla.   Katso  lukua   varmuuskopiot
       saadaksesi lisätietoja varmuuskopiotiedostojen luomisesta.

       Toisessa  muodossa annetaan vain yksi syötetiedosto.  Tässä tapauksessa
       luotavan tiedoston nimi voidaan antaa käyttäen ‘-o’-optiota.

       ‘Indent’ kirjoittaa sisennetyn  tiedoston  vakiotulosteeseen  (standard
       output),  jos  optio  ‘-st’  on  annettu.  Tämä  on  sallittu vain, jos
       ainoastaan  yksi  syötetiedosto   on   annettu   tai,   jos   käytetään
       vakiosyötettä (standard input).

       Jos  yhtään  syötetiedostoa  ei  anneta,  lukee ‘indent’ vakiosyötettä.
       Myös  siinä  tapauksessa,  että  annettu  tiedosto  on  nimeltään  ‘-’,
       käytetään lukemiseen vakiosyötettä.

       Esimerkiksi  kaikki  seuraavat  komennot  lukevat tiedoston ‘esim.c’ ja
       tulostavat sisennetyn ohjelmakoodin tiedostoon ‘esim.out’:

            indent esim.c -o esim.out

            indent -st esim.c > esim.out

            cat esim.c | indent -o esim.out

       Useimmat ‘indent’-ohjelman optiot  ohjaavat  ohjelmakoodin  sisennystä.
       Versiosta 1.2 ‘indent’ tunnistaa myös pitkän nimen jokaiselle optiolle.
       Pitkä optiot alkavat aina merkeillä  ‘--’  tai  ‘+’.   ‘--’  on  POSIX-
       standardin   mukainen,   joten  sen  käyttö  on  suositeltavaa.   Tässä
       dokumentissa käytetään enimmäkseen perinteistä lyhyttä muotoa.

       Toinen esimerkki:

            indent -br test/metabolism.c -l85

       Tämä komento sisentää tiedoston ‘test/metabolism.c’  käyttäen  optioita
       ‘-br’   ja  ‘-l85’,  kirjoittaa  uuden  tiedoston  takaisin  tiedostoon
       ‘test/metabolism.c’  ja  kirjoittaa  alkuperäisen  tiedoston   sisällön
       varmuuskopiotiedostoon hakemistoon ‘test’.

       Vastaava komento käyttäen pitkiä optioita olisi:

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

            indent +braces-on-if-line +line-length185 test/metabolism.c

       Jos  käytät  usein  ‘indent’-ohjelmaa  samoilla optioilla, voit laittaa
       nämä optiot tiedostoon  nimeltä  ‘.indent.pro’.   ‘Indent’  etsii  tätä
       tiedostoa  ensin  työhakemistosta  ja  mikäli  tiedosto löytyy, käyttää
       sitä. Mikäli tiedostoa ei löyty, etsitään vastaavan  nimistä  tiedostoa
       kotihakemistostasi.   Tämä  toiminta  eroaa muista ohjelman versioista,
       jotka käyttävät kumpaakin mahdollisesti löytämäänsä tiedostoa.

       Komentorivioptiot   käsitellään    ‘.indent.pro’-tiedoston    lukemisen
       *jälkeen*.   Myöhemmin  annetut  optiot kumoavat aiemmin annetut optiot
       yhdellä poikkeuksella: eksplisiittisesti annetut optiot  kumoavat  aina
       taustaoptiot      (Katso      Yleiset     tyylit.).      Voit     estää
       ‘.indent.pro’-tiedostojen lukemisen antamalla option ‘-npro’.

VARMUUSKOPIOT

       Versiosta 1.3 GNU  ‘indent’  luo  GNU-tyylisiä  varmuuskopioita,  aivan
       kuten  GNU emacs tekee.  Tämä tarkoittaa että joko "yksinkertaisia" tai
       "numeroituja" varmuuskopiotiedostoja voidaan käyttää.

       Yksikertainen  varmuuskopio  luodaan  lisäämällä  pääte   alkuperäiseen
       tiedostonimeen.   Oletusarvoinen  pääte  on  merkki ‘~’ (tilde).  Täten
       esimerkiksi tiedoston ‘python.c’ varmuuskopio olisi ‘python.c~’.

       Oletusarvoisen ‘~’ merkin sijaan voit käyttää mitä tahansa  merkkijonoa
       asettamalla    ympäristömuuttujaan   ‘SIMPLE_BACKUP_SUFFIX’   haluamasi
       merkkijonon.

       Numeroitu varmuuskopio tiedostosta ‘momewraths’ on  momewraths.c.~23~’,
       missä   23  on  kyseisen  vamuuskopion  järjestysnumero.   Kun  luodaan
       varmuuskopio  tiedostosta  ‘src/momewrath.c’,   varmuuskopiotiedostolle
       annetaan  nimi  ‘src/momewrath.c.~V~’,  missä  V  on yhtä suurempi kuin
       suurin hakemistossa olevien varmuuskopioiden suurin järjestysnumero.

       Käytettävä   varmuuskopioinnin   tapa   riippuu    ympäristömuuttujasta
       ‘VERSION_CONTROL’.    Jos   sen   arvo  on  merkkijono  ‘simple’,  niin
       ainoastaan  yksinkertaisia  varmuuskopioita  käytetään.   Jos  arvo  on
       ‘numbered’,   numeroituja   varmuuskopioita  käytetään.   Jos  arvo  on
       ‘numbered-existing’,  käytetään  numeroituja  varmuuskopioita,   mikäli
       numeroituja   varmuuskopioita   *on  jo  olemassa*,  muutoin  käytetään
       yksinkertaisia      varmuuskopioita.       Jos        ‘VERSION_CONTROL’
       ympäristömuuttujaa  ei  ole asetettu, toimitaan kuten sen arvoksi olisi
       asetettu ‘numbered-existing’.

       Toiset ‘indent’ ohjelman versiot käyttävät  varmuuskopioiden  päätteenä
       merkkijonoa     ‘.BAK’.      Tätä    voidaan    emuloida    asettamalla
       ‘SIMPLE_BACKUP_SUFFIX’ arvoon ‘.BAK’.

       Huomaa, että toiset versiot ‘indent’-ohjelmasta  tekevät  varmuuskopiot
       työhakemistoon tiedoston hakemiston sijaan, kuten GNU ‘indent’ tekee.

YLEISET TYYLIT

       On  olemassa  useita  tunnettuja C-ohjelmointityylejä, kuten GNU-tyyli,
       Kernighan & Ritchie -tyyli  sekä  alkuperäinen  Berkeley-tyyli.   Tyyli
       voidaan  valita  yhdellä  "taustaoptiolla", joka asettaa arvot kaikille
       muille optioille.  Eksplisiittisesti annetut optiot kumoavat  kuitenkin
       aina taustaoptioiden asettamat optiot.

       Versiosta  1.2  oletusarvoinen  tyyli  GNU  ‘indent’:ille on ollut GNU.
       Täten  ei  ole  enää  tarvetta  antaa  ‘-gnu’  -optiota   tämä   tyylin
       aikaansaamiseksi,  vaikkakaan  tästä  ei  aiheudu  virhettä. GNU-tyyliä
       vastaavat optiot ovat:

            -nbad -bap -nbbb -nbc -bl -bli2 -c33 -cd33 -ncdb -nce  -cli0  -cp1
            -di0 -nfc1 -nfca -i2 -ip5 -lp -pcs -psl -nsc -nsob -nss -ts8

       GNU-ohjelmoitityyli  on  suositeltava  GNU-projektin  ohjelmissa.   GNU
       emacsin C-moodi tukee GNU-tyylin  käyttöä  ja  GNU  emacsin  C-osat  on
       kirjoitettu   tällä  tyylillä.   Jos  olet  kiinnostunut  kirjoittamaan
       ohjelmia GNU-projektiin, hanki itsellesi  dokumentti  ‘The  GNU  Coding
       Standards’,   joka   kattaa   myös  semanttiset  sekä  siirrettävyyteen
       liittyvät seikat, kuten muistinkäytön, tietotyyppien koon jne.

       Kernighan &  Ritchie  -tyyli  on  tunnettu  heidän  kirjastaan  ‘The  C
       Programming  Language’.   Se  voidaan  aktivoida  optiolla  ‘-kr’. Tätä
       tyyliä vastaavat optiot ovat:

            -nbad -bap -nbbb -nbc -br -c33 -cd33 -ncdb -ce  -ci4  -cli0  -cp33
            -d0 -di1 -nfc1 -nfca -i4 -ip0 -l75 -lp -npcs -npsl -nsc -nsob -nss
            -ts8

       Kernighan  &  Ritchie  -tyyli  ei  laita  kommentteja  koodin  oikealla
       puolella  aina samalle tasolle (eikä käytä aina yhtä välilyöntiä koodin
       oikealla  puolella),  joten  tälle  tyylille   ‘indent’-ohjelmassa   on
       mielivaltaisesti valittu sarake 33.

       Alkuperäisen   Berkeley   ‘indent’-ohjelman   tyyli  voidaan  aktivoida
       antamalla optio ‘-orig’ (tai  antamalla  ‘--original’  käyttäen  pitkiä
       optioita).  Tätä tyyliä vastaavat optiot ovat:

            -nbap -nbad -nbbb -bc -br -c33 -cd33 -cdb -ce -ci4 -cli0 -cp33 -d4
            -di16 -fc1 -fca -i4 -ip4 -l75 -lp -npcs -psl -sc -nsob -nss -ts8

TYHJÄT RIVIT

       Eri ohjelmointityylit käyttävät tyhjiä rivejä eri kohdissa  lähdekodia.
       ‘indent’   tuntee   useita   optioita  tyhjien  rivien  lisäämiseen  ja
       poistamiseen eri kohtiin/kohdista.

       Option ‘-bad’ aikaansaa tyhjän rivin jokaisen  määrittelyjä  sisältävän
       lohkon  jälkeen.   Option  ‘-nbad’  puolestaan  estää  tällaisen  rivin
       luomisen.

       Optio  ‘-bap’ aikaansaa tyhjän rivin jokaisen funktion rungon  jälkeen.
       Optiolla ‘-nbap’ tällaisen tyhjän rivin luominen voidaan estää.

       Optio  ‘-bbb’  lisää  tyhjän  rivin  jokaisen  kommenttilohkon jälkeen.
       Kommenttilohkoksi tulkitaan lähdekoodi, joka alkaa sarakkeesta yksi tai
       merkillä  ‘-’  tai  ‘*’  heti kommentin alkumerkin ‘/*’ jälkeen.  Optio
       ‘-nbbb’ estää tällaisen rivin luomisen.

       Optio  ‘-sob’  aiheuttaa  sen,  että  ‘indent’  poistaa  alkuperäisessä
       lähdekoodissa  olevat  tyhjät  rivit.  Jos  optio  ‘-nsob’  on annettu,
       kopioidaan tyhjät rivit sellaisenaan tulostustiedostoon.

       Optio ‘-bad’ aikaansaa tyhjän rivin  jokaisen  määrittelyjä  sisältävän
       lohkon   jälkeen.   Optio  ‘-nbad’  puolestaan  estää  tällaisen  rivin
       luomisen.

       Esimerkiksi, jos syöte on

                 char *foo;
                 char *bar;
                 /* Tämä erottaa määrittelylohkot.  */
                 int baz;

       ‘indent -bad’ tuottaa

                 char *foo;
                 char *bar;

                 /* Tämä erottaa määrittelylohkot.  */
                 int baz;

       ja ‘indent -nbad’ tuottaa

                 char *foo;
                 char *bar;
                 /* Tämä erottaa määrittelylohkot.  */
                 int baz;

       Optio  ‘-bap’ aikaansaa tyhjän rivin jokaisen funktion rungon  jälkeen.
       Esimerkiksi jos syöte on

                 int
                 foo ()
                 {
                   puts("Moro");
                 }
                 /* Tämä aliohjelma on vieläkin tylsempi.  */
                 char *
                 bar ()
                 {
                   puts("Terve");
                 }

       ‘indent -bap’ tuottaa

                 int
                 foo ()
                 {
                   puts ("Moro");
                 }

                 /* Tämä aliohjelma on vieläkin tylsempi.  */
                 char *
                 bar ()
                 {
                   puts ("Terve");
                 }

       ja ‘indent -nbap’ tuottaa

                 int
                 foo ()
                 {
                   puts ("Moro");
                 }
                 /* Tämä aliohjelma on vieläkin tylsempi.  */
                 char *
                 bar ()
                 {
                   puts ("Terve");
                 }

       Funktion ‘foo’ jälkeen ei lisätä tyhjää riviä.

KOMMENTIT

       Kommentteja  ei  enää  muokata kuten versiossa 1.2.  Tämä tyyli voidaan
       ottaa käyttöön optiolla ‘-fca’.  Tämä aikaansaa sen, että  rivinvaihdot
       kommenttitekstissä    ohitetaan    ja    rivi    täytetään   määrättyyn
       rivinpituuteen  asti  (voidaan  asettaa  ‘-l’  optiolla).    Jos   tämä
       muokkaustapa  on käytössä, tyhjät rivit kuvaavat kappaleen vaihtumista.

       Optio ‘-fc1’ sallii sarakkeesta yksi alkavien kommenttien muokkaamisen.
       Optio   ‘-nfc1’  estää  tällaisten  kommenttien  muokkaamisen.   Vaikka
       ensimmäisestä  sarakkeesta  alkavien  kommenttien   muokkaus   olisikin
       estetty, yleinen kommenttien muokkaus voidaan silti suorittaa.

       Kommenttien,   jotka  eivät  sijaitse  lähdekoodin  oikealla  puolella,
       sisennykseen voidaan vaikuttaa optiolla ‘-d’.  Tämä määrää sen,  kuinka
       monta    välilyöntiä   vasemmalle   ympäröivästä   koodista   kommentti
       sijoitetaan. Esimerkiksi ‘-d2’ sijoittaa  kommentin  kaksi  välilyöntiä
       vasemmalle  ympäröivästä  koodista,  kun  taas  ‘-d0’  linjaa kommentin
       samalle tasolle.  Optiolla ‘-cdb’ voidaan vaikuttaa siihen, laitetaanko
       tyhjille  riveille  kommenttimerkit  ‘/*’ ja ‘*/’. Option ‘-cdb’ kanssa
       kommentit näyttävät seuraavanlaisilta:

                 /*
                  * tämä on kommentti
                  */

       Option ‘-ncdb’ kanssa kommentti näyttää seuraavalta:

                 /* tämä on kommentti */

       Huomaa,   että   ‘-cdb’   vaikuttaa   vain    kommenttilohkoihin,    ei
       kommentteihin,  jotka sijaitsevat koodin oikealla puolella.  Oletusarvo
       on ‘-ncdb’.

       Kommentit, jotka ovat samalla rivillä ohjelmakoodin kanssa  sisennetään
       koodin   oikealle   puolelle.   Sarake,  jolle  kommentit  sisennetään,
       määrätään optiolla ‘-c’. Sarake, jolta määrittelyjen oikealla  puolella
       olevat  kommentit  alkavat, määrätään optiolla ‘-cd’.  Oletusarvoisesti
       kummatkin alkavat samalta  sarakeellta  33.   Sarake,  jolta  kommentit
       ‘#else’  ja ‘#endif’ lauseiden jälkeen alkaa, määrätään optiolla ‘-cp’.
       Jos  rivillä  on  ohjelmakoodia  ohi  määrätyn  sarakkeen,   siirretään
       kommentin  alkua vastaavasti oikealle ja oikeaa marginaalia siirretään,
       jos on tarve.

       Jos optio  ‘-sc’  on  annettu,  ‘*’  tulostetaan  kaikkien  kommenttien
       vasemmalle puolelle. Esimerkiksi:

                 /* Tämä kommentti jatkuu riviltä
                  * toiselle, joten meidän on keksittävä,
                  * kuinka se esitetään.  */

       kun taas ilman ‘-sc’ optiota tuloste olisi:

                 /* Tämä kommentti jatkuu riviltä
                    toiselle, joten meidän on keksittävä,
                    kuinka se esitetään.  */

LAUSEKKEET

       Optiot  ‘-br’ ja ‘-bl’ määräävät, kuinka aaltosulut muotoillaan.  Optio
       ‘-br’ toimii seuraavasti:

                 if (x > 0) {
                   x--;
                 }

       kun taas optio ‘-bl’ muotoilee koodin seuraavasti:

                 if (x > 0)
                   {
                     x--;
                   }

       Jos käytät ‘-bl’ optiota, voit antaa myös option  ‘-bli’,  joka  määrää
       kuinka  monta  välilyöntiä  aaltosulut  sisennetään.   Oletusarvo, joka
       antaa ylläesitetyn tuloksen,  on  ‘-bli2’.  Esimerkiksi  ‘-bli0’  antaa
       seuraavan tuloksen:

                 if (x > 0)
                 {
                   x--;
                 }

       Jos   käytät   ‘-br’-optiota,   todennäköisesti   haluat  käyttää  myös
       ‘-ce’-optiota,   joka   aikaansaa   sen,   että   ‘else’   if-then-else
       -rakenteessa  tulostetaan  välittömasti sulkeutuvan aaltosulun jälkeen.
       Eli optiot ‘-br -ce’ antavat seuraavan tuloksen;

                 if (x > 0) {
                   x--;
                 } else {
                   fprintf (stderr, "...jotakin pielessä?0);
                 }

       Optioilla ‘-br -nce’ tulos olisi:

                 if (x > 0) {
                   x--;
                 }
                 else {
                   fprintf (stderr, "...jotakin pielessä?0);
                 }

       Optio ‘-cli’ määrää,  kuinka  monta  välilyöntiä  oikealle  switch-case
       -rakenteen case-rivit sisennetään switch-rivistä.

       Jos  puolipiste  on  samalla  rivillä ‘for’ tai ‘while’ lauseen kanssa,
       optio ‘-ss’ aikaansaa välilyönnin ennen puolipistettä.   Tämä  korostaa
       puolipistettä,  jolloin  on  helpompi erottaa, että edeltävän ‘for’ tai
       ‘while’ -lauseen runko on tyhjä.  Optio ‘-nss’ estää tämän toiminnon.

       Optio ‘-pcs’ aikaansaa välilyönnin funktion nimen  ja  avautuvan  sulun
       (‘(’) väliin.  Esimerkiksi puts ("Terve");’ ‘-npcs’ option kanssa antaa
       tulokseksi ‘puts("Terve");’.

       Jos   optio   ‘-cs’   on   annettu,    ‘indent’    lisää    välilyönnin
       tyyppimuunnosoperaattorin jälkeen.

       Optio  ‘-bs’   varmistaa,  että  avainsanan  ‘sizeof’ ja sen argumentin
       välissä  on  aina  välilyönti.   Joissakin  versioissa  tämä  tunnetaan
       nimellä ‘Bill_Shannon’ -optio.

MÄÄRITTELYT

       Oletusarvoisesti ‘indent’ tasaa tunnisteet sarakkeeseen, joka määrätään
       optiolla ‘-di’.  Esimerkiksi ‘-di16’ saa aikaan seuraavan tulosteen:

                 int             foo;
                 char           *bar;

       Käyttämällä pientä arvoa (esim.  yksi  tai  kaksi)  saadaan  tunnisteet
       asettumaan mahdollisimman lähelle vasenta reunaa, siis esimerkiksi

                 int foo;
                 char *bar;

       Optiolla  ‘-di’  annettu  arvo  vaikuttaa  silti  muuttujiin,  jotka on
       esitelty eri rivillä  kuin  niiden  tyyppi.  Esimerkiksi  ‘-di2’  antaa
       tulosteen

                 int
                   foo;

       Jos  optio  ‘-bc’  on  annettu,  niin tulosteeseen lisätään rivinvaihto
       jokaisen määrittelyissä esiintyvän pilkun jälkeen.  Esimerkiksi

                 int a,
                   b,
                   c;

       Option ‘-nbc’ kera tulostus olisi

                 int a, b, c;

       Optio ‘-psl’  aikaansaa  sen,  että  funktion  tyyppi  tulostetaan  eri
       riville  kuin  sen  nimi.   Tämä tyyli vaaditaan, jotta ‘etags’-ohjelma
       toimisi oikein. Myös jotkut Emacsin ‘c-mode’-tilan  funktiot  saattavat
       vaatia tätä ohjelmointityyliä.

       Jos  et  käytä  optiota  ‘-di1’ sisentääksesi määriteltävien muuttujien
       nimet heti niiden tyyppien jälkeen, sinun tulee  käyttää  optiota  ‘-T’
       kertomaan  niiden  tyyppien  nimet,  jotka  olet  määritellyt ‘typedef’
       -avainsanalla.   ‘-T’  voidaan  antaa  useammin  kuin  kerran,  jolloin
       kaikkia   annettuja   nimiä   käytetään   tyyppeinä.   Esimerkiksi  jos
       ohjelmassasi on määrittelyt:

                 typedef unsigned long CODE_ADDR;
                 typedef enum {red, blue, green} COLOR;

       Sinun tulee antaa optiot ‘-T CODE_ADDR -T COLOR’.

SISENNYS

       Yksi  tärkeä  tyyliseikka  C-ohjelmoinnissa   on   se,   kuinka   monta
       välilyöntiä   oikealle  vasemmasta  marginaalista  ohjelmakoodi  tulisi
       sisentää.   Kun  aloitetaan  uusi  lause  (kuten   ‘if’   tai   ‘for’),
       sisennystasoa   lisätään   määrällä,  joka  on  annettu  ‘-i’-optiolla.
       Esimerkiksi ‘-i8’ aikaansaa kahdeksan merkin sisennyksen.  Kun  lauseke
       jatkuu  seuraavalle  riville,  sen  sisennystä lisätään edelleen option
       ‘-ci’ määräämän arvon verran.   Oletusarvo  optiolle  ‘-ci’  on  nolla.
       Kuitenkin,  jos optio ‘-lp’ on annettu ja rivillä on aukeava aaltosulku
       ilman vastaavaa  sulkeutuvaa  aaltosulkua  samalla  rivillä,  seuraavat
       rivit  sisennetään  heti  aukeavan  aaltosulun  oikelle puolelle.  Sama
       pätee merkkiin ‘[’   sekä  merkkiin  ‘{’  siinä  tapauksessa,  että  se
       esiintyy   alustuslistassa.   Esimerkiksi  ohjelmakoodi  voisi  näyttää
       seuraavalta optioiden ‘-nlp -ci3’ kanssa:

                   p1 = first_procedure (second_procedure (p2, p3),
                      third_procedure (p4, p5));

       Optio ‘-lp’ voimassa koodi näyttää hieman selkeämmältä:

                   p1 = first_procedure (second_procedure (p2, p3),
                                         third_procedure (p4, p5));

       ‘indent’ olettaa, että tabulaattorit ovat  säännöllisen  levyisiä  sekä
       syötteessä  että tulosteessa.  Oletusarvona on kahdeksan merkkiä, mutta
       tätä voidaan muuttaa optiolla ‘-ts’.  Tabulaattorit  käsitellään  ikään
       kuin niiden paikalla olisi vastaava määrä välilyöntejä.

       Sisennystyyli  vanhantyyppisissä  funktioissa  määräytyy  option  ‘-ip’
       mukaan.  Tämä optio määrää, kuinka monta merkkiä funktion  argumenttien
       määrittelyjä sisennetään.  Esimerkiksi oletusarvoinen ‘-ip5’ saa koodin
       näyttämään seuraavalta:

                 char *
                 create_world (x, y, scale)
                      int x;
                      int y;
                      float scale;
                 {
                   . . .
                 }

       Yhteensopivuuden varmistamiseksi ohjelman eri versioiden  kanssa  optio
       ‘-nip’ on tuettu.  Se vastaa toiminnaltaan optiota ‘-ip0’.

SEKALAISET OPTIOT

       Komento  ‘indent  -version’ tulostaa käytettävän ohjelman versionumeron
       eikä tee mitään muuta.

       Optio ‘-v’ aikansaa "puheliaan" moodin, jolloin ‘indent’ kertoo, jos se
       jakaa  rivin  kahteen  tai  useampaan  riviin  sekä  tulostaa  joitakin
       tilatietoja, kun ohjelman suoritus päättyy.

COPYRIGHT

       The following copyright notice applies to  the  ‘indent’  program.  The
       copyright  and  copying  permissions  for  this  manual appear near the
       beginning of this document.
            Copyright (c) 1989, 1992 Free Software Foundation
            Copyright (c) 1985 Sun Microsystems, Inc.
            Copyright (c) 1980 The Regents of the University of California.
            Copyright (c) 1976 Board of Trustees of the University of Illinois.
            All rights reserved.

            Redistribution and use in source and binary forms are permitted
            provided that the above copyright notice and this paragraph are
            duplicated in all such forms and that any documentation,
            advertising materials, and other materials related to such
            distribution and use acknowledge that the software was developed
            by the University of California, Berkeley, the University of Illinois,
            Urbana, and Sun Microsystems, Inc.  The name of either University
            or Sun Microsystems may not be used to endorse or promote products
            derived from this software without specific prior written permission.
            THIS SOFTWARE IS PROVIDED ‘‘AS IS’’ AND WITHOUT ANY EXPRESS OR
            IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
            WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
            PURPOSE.

OPTIOT

       Seuraavassa ovat listattuna kaikki ‘indent’-ohjelman  tuntemat  optiot.
       Optiot  on  järjestettu aakkosjärjestykseen lyhyen option mukaan.  Tätä
       seuraa lista, jossa optiot on järjestetty pitkän optionimen mukaan.

       ‘-bad’
       ‘--blank-lines-after-declarations’
            Aseta tyhjä rivi määrittelyjen jälkeen.

       ‘-bap’
       ‘--blank-lines-after-procedures’
            Aseta tyhjä rivi proseduurin rungon jälkeen.

       ‘-bbb’
       ‘--blank-lines-after-block-comments’
            Aseta tyhjä rivi kommenttilohkon jälkeen.

       ‘-bc’
       ‘--blank-lines-after-commas’
            Aseta rivinvaihto määrittelyissä esiintyvän pilkun jälkeen.

       ‘-bl’
       ‘--braces-after-if-line’
            Aseta aaltosulku ’if’-lauseen tms. jälkeiselle riville.

       ‘-bliN’
       ‘--brace-indentN’
            Sisennä aaltosulkuja N välilyöntiä.

       ‘-br’
       ‘--braces-on-if-line’
            Laita aaltosulut samalle riville, jolla ‘if’ tms. esiintyi.

       ‘-cN’
       ‘--comment-indentationN’
            Sisennä kommentit koodin oikealla puolella sarakkeeseen N.

       ‘-cdN’
       ‘--declaration-comment-columnN’
            Sisennä kommentit määrittelyjen oikealla puolella sarakkeseen N.

       ‘-cdb’
       ‘--comment-delimiters-on-blank-lines’
            Laita kommenttierottimet tyhjille riveille.

       ‘-ce’
       ‘--cuddle-else’
            Laita else ja edeltävä ‘}’ samalle riville.

       ‘-ciN’
       ‘--continuation-indentationN’
            Jatkuva sisennys N välilyöntiä.

       ‘-cliN’
       ‘--case-indentationN’
            Case-avainsanan sisennys N välilyöntiä.

       ‘-cpN’
       ‘--else-endif-columnN’
            Aseta kommentit sanojen ‘#else’ ja ‘#endif’ oikealla puolella
            sarakkeseen N.

       ‘-cs’
       ‘--space-after-cast’
            Aseta välilyönti tyyppimuunnos-operaattorin jälkeen.

       ‘-bs’
       ‘--blank-before-sizeof’
            Aseta välilyönti avainsanan ‘sizeof’ ja sen argumentin väliin.

       ‘-dN’
       ‘--line-comments-indentationN’
            Aseta sellaisten kommenttien, jotka eivät ole koodin oikealla puolella,
            sisennys N välilyöntiin.

       ‘-diN’
       ‘--declaration-indentationN’
            Aseta muuttuja sarakkeeseen N.

       ‘-fc1’
       ‘--format-first-column-comments’
            Aseta kommentit ensimmäiseen sarakkeeseen.

       ‘-fca’
       ‘--format-all-comments’
            Älä estä kaikkien kommenttien muokkaamista.

       ‘-gnu’
       ‘--gnu-style’
           Käytä GNU-ohjelmointityyliä.  Tämä on oletusarvo.

       ‘-iN’
       ‘--indent-levelN’
            Aseta sisennystaso N välilyöntiin.

       ‘-ipN’
       ‘--parameter-indentationN’
            Sisennä vanhantyylisten funktioiden argumentteja N välilyöntiä.

       ‘-kr’
       ‘--k-and-r-style’
            Käytä Kernighan & Ritchie -ohjelmointityyliä.

       ‘-lN’
       ‘--line-lengthN’
            Aseta maksimi rivinpituus N merkkiin.

       ‘-lp’
       ‘--continue-at-parentheses’
            Linjaa jatkuvat rivit sulkuihin.

       ‘-nbad’
       ‘--no-blank-lines-after-declarations’
            Älä pakota tyhjää riviä määrittelyjen jälkeen.

       ‘-nbap’
       ‘--no-blank-lines-after-procedures’
            Älä pakota tyhjää riviä proseduurien runkojen jälkeen.

       ‘-nbbb’
       ‘--no-blank-lines-after-block-comments’
            Älä pakota tyhjää riviä kommenttilohkojen jälkeen.

       ‘-nbc’
       ‘--no-blank-lines-after-commas’
            Älä pakota rivinvaihtoa määrittelyissä esiintyvän pilkun jälkeen.

       ‘-ncdb’
       ‘--no-comment-delimiters-on-blank-lines’
            Älä aseta kommenttierotinta tyhjille riveille.

       ‘-nce’
       ‘--dont-cuddle-else’
            Älä laita else-avainsanaa samalle riville edeltävän ‘}’-merkin kanssa.

       ‘-ncs’
       ‘--no-space-after-casts’
            Älä laita välilyöntiä tyyppimuunnosoperaattorin jälkeen.

       ‘-nfc1’
       ‘--dont-format-first-column-comments’
            Älä muokkaa kommentteja, jotka ovat ensimmäisessä sarakkeessa.

       ‘-nfca’
       ‘--dont-format-comments’
            Älä muokkaa mitään kommentteja.

       ‘-nip’
       ‘--no-parameter-indentation’
            Nollan levyinen sisennys parametreille.

       ‘-nlp’
       ‘--dont-line-up-parentheses’
            Älä linjaa sulkuja.

       ‘-npcs’
       ‘--no-space-after-function-call-names’
            Älä laita välilyöntiä funktion nimen jälkeen funktiokutsussa.

       ‘-npsl’
       ‘--dont-break-procedure-type’
            Laita funktion tyyppi ja nimi samalle riville.

       ‘-nsc’
       ‘--dont-star-comments’
            Älä laita ‘*’-merkkiä kommenttien vasemmalle puolelle.

       ‘-nsob’
       ‘--leave-optional-blank-lines’
            Älä poista ylimääräisiä tyhjiä rivejä.

       ‘-nss’
       ‘--dont-space-special-semicolon’
            Älä laita välilyöntiä ennen puolipistettä joissakin lauseissa.
            Estää option ‘-ss’.

       ‘-nv’
       ‘--no-verbosity’
            Estää puheliaan toimitilan.

       ‘-orig’
       ‘--original’
            Käytä alkuperäistä Berkeley-ohjelmointityyliä.

       ‘-npro’
       ‘--ignore-profile’
            Älä lue ‘.indent.pro’-tiedostoja.

       ‘-pcs’
       ‘--space-after-procedure-calls’
            Aseta välilyönti kutsuttavan funktion ja aukeavan sulun väliin.

       ‘-psl’
       ‘--procnames-start-lines’
            Laita funktion tyyppi funktion nimeä edeltävälle riville.

       ‘-sc’
       ‘--start-left-side-of-comments’
            Laita ‘*’-merkki kommenttien vasemmalle puolelle.

       ‘-sob’
       ‘--swallow-optional-blank-lines’
            Poista ylimääräiset tyhjät rivit.

       ‘-ss’
       ‘--space-special-semicolon’
            Yhden rivin ‘for’- ja ‘while’-lauseissa aseta välilyönti ennen
            puolipistettä.

       ‘-st’
       ‘--standard-output’
            Tulosta vakiosyötteeseen (standard output).

       ‘-T’
            Kerro ‘indent’-ohjelmalle tyyppinimiä.

       ‘-tsN’
       ‘--tab-sizeN’
            Aseta tabulaattorin koko N välilyöntiin.

       ‘-v’
       ‘--verbose’
            Aseta puhelias toimitila.

       ‘-version’
            Tulosta ohjelman versionumero äläkä tee mitään muuta.

OPTIOIDEN RISTIVIITTAUKSET

       Seuraavassa on lista optioista järjestettynä aakkosjärjestykseen pitkän
       optionimen mukaan.  Tämän avulla löydät vastaavan lyhyen option.

                 --blank-lines-after-block-comments      -bbb
                 --blank-lines-after-commas              -bc
                 --blank-lines-after-declarations             -bad
                 --blank-lines-after-procedures               -bap
                 --braces-after-if-line                  -bl
                 --brace-indent                     -bli
                 --braces-on-if-line                -br
                 --case-indentation                 -cliN
                 --comment-delimiters-on-blank-lines          -cdb
                 --comment-indentation                   -cN
                 --continuation-indentation              -ciN
                 --continue-at-parentheses               -lp
                 --cuddle-else                      -ce
                 --declaration-comment-column            -cdN
                 --declaration-indentation               -diN
                 --dont-break-procedure-type             -npsl
                 --dont-cuddle-else                 -nce
                 --dont-format-comments             -nfca
                 --dont-format-first-column-comments          -nfc1
                 --dont-line-up-parentheses              -nlp
                 --dont-space-special-semicolon               -nss
                 --dont-star-comments                    -nsc
                 --else-endif-column                -cpN
                 --format-all-comments                   -fca
                 --format-first-column-comments               -fc1
                 --gnu-style                        -gnu
                 --ignore-profile                   -npro
                 --indent-level                     -iN
                 --k-and-r-style                         -kr
                 --leave-optional-blank-lines            -nsob
                 --line-comments-indentation             -dN
                 --line-length                      -lN
                 --no-blank-lines-after-block-comments        -nbbb
                 --no-blank-lines-after-commas           -nbc
                 --no-blank-lines-after-declarations          -nbad
                 --no-blank-lines-after-procedures       -nbap
                 --no-comment-delimiters-on-blank-lines       -ncdb
                 --no-space-after-casts                  -ncs
                 --no-parameter-indentation              -nip
                 --no-space-after-function-call-names         -npcs
                 --no-verbosity                     -nv
                 --original                         -orig
                 --parameter-indentation                 -ipN
                 --procnames-start-lines                 -psl
                 --space-after-cast                 -cs
                 --space-after-procedure-calls           -pcs
                 --space-special-semicolon               -ss
                 --standard-output                  -st
                 --start-left-side-of-comments           -sc
                 --swallow-optional-blank-lines               -sob
                 --tab-size                         -tsN
                 --verbose                     -v

PALUUARVO

       Tuntematon

TIEDOSTOT

       $HOME/.indent.pro          sisältää oletusarvoiset optiot.

TEKIJÄ

       The Free Software Foundation.

HISTORIA

       Kehitetty UCB-ohjelmasta "indent".

                                                                    INDENT(1L)