next up previous index
Következő: 15.70.10 PROMPT­OK Fel: 15.70 less(1) Előző: 15.70.8 BEMENETI ELŐFELDOLGOZÓ (INPUT   Index

15.70.9 NEMZETI KARAKTERKÉSZLETEK

A bemeneti fájlok karaktereit három típusra bonthatjuk: Egy ,,karakterkészlet'' egyszerűen azt adja meg, mely karaktereket kell normális­, vezérlő­ illetve bináris karakternek tekinteni. A `LESSCHARSET' környezeti változó használható a karakterkészlet beállítására. Ennek lehetséges értékei:
ascii
Az alapértelmezett karakterkészlet. `BS', `TAB', `NL', `CR' és a soremelés karakterek a vezérlőkarakterek, a 127 és 255 közötti kódúak binárisak, a többi pedig normális.
latin1
Az ISO 8859/1 karakterkészletet választja ki. A `latin1' ugyanaz, mint az `ascii', csak a 161 és 255 közötti kódtartományban is normálisnak veszi a karaktereket.
dos
Az MS-DOS-nak megfelelő karakterkészletet ad meg.
koi8-r
Orosz karakterkészletet ad meg.
next
A NeXT számítógépeknek megfelelő karakterkészletet ad meg.
Különleges esetekben a less testreszabott karakterkészlettel is használható. Ebben az esetben a `LESSCHARDEF' környezeti változót kell használni a karakterkészlet definíciójához. Ez egy olyan stringet kell tartalmazzon, melynek minden karaktere egy karaktert reprezentál a karakterkészletből. A ,,.'' jelenti a normális, a ,,c'' a vezérlő, a ,,b'' a bináris karaktereket. Ismétlés jelzésére decimális számokat használhatunk. Például ,,bccc4b.'' azt jelenti, hogy a 0 kódú karakter bináris, az 1, 2 és 3 kódúak vezérlő-, a 4, 5, 6 és 7 kódúak bináris-, a 8-as pedig normális karakter. Az utolsó karakter által megadott típus érvényes a további karakterkódokra is, azaz példánkban a 9-től 255-ig eső karakterek is normálisként lesznek kezelve. (Ez a példa természetesen nem feltétlenül egy valódi karakterkészletet reprezentál.) A következő táblázat azon `LESSCHARDEF' értékeket jeleníti meg, melyek a `LESSCHARSET' lehetséges értékeinek felelnek meg.
ascii 8bcccbcc18b95.b
latin1 8bcccbcc18b95.33b.
dos 8bcccbcc12bc5b95.b.
koi8­r 8bcccbcc18b95.b128.
next 8bcccbcc18b95.bb125.bb
Ha sem a LESSCHARSET,sem a LESSCHARDEF nem rendelkezik értékkel, de a rendszer biztosítja a setlocale interfészt, a less a`setlocale'-t használja a karakterkészlet megállapítására. (A setlocale-t a LANG vagy az LC_TYPE környezeti változó érétkén keresztül vezérelhetjük.) A vezérlő- és a bináris karaktereket kiemelve (inverz állapotban) jelzi ki a less. Minden ilyen karaktert lehetőleg a `^' jelöléssel (caret notation) jelenít meg a program, ha tud, azaz pl. `^A' jelenti `control-A'-t.

Ezt a jelölést akkor használja, ha a 0100 bit invertálása nyomtatható karaktert eredményez. Másképp a karakter hexadecimálisan, `<' és '>' zárójelek közt jelenik meg. Ez a formátum megváltoztatható a `LESSBINFMT' környezeti változóval. A `LESSBINFMT' egy `*' jellel és egy kijelzési jellemzőt jelentő karkaterrel kezdődhet: ,,*k'' a villogó, ,,*d'' a vastag, ,,*u'' az aláhúzott, ,,*s'' a kiemelt, és ,,*n'' a normális. Ha a LESSBINFMT nem `*'-gal kezdődik, normál kijelzést tételez fel.

A LESSBINFMT maradék része egy string, mely egy `printf' stílusú escape­sorozatot tartalmazhat, azaz egy `%' jelet, melyet x, X, o, d stb. követ. Például ha a LESSBINFMT értéke,,*u[%x]'', a bináris karakterek aláhúzva, hexadecimálisan, szögletes zárójelben jelenenk meg. Ha a LESSBINFMT nem létezik, az alapértelmezett megadás ,,*d<%X>''.


next up previous index
Következő: 15.70.10 PROMPT­OK Fel: 15.70 less(1) Előző: 15.70.8 BEMENETI ELŐFELDOLGOZÓ (INPUT   Index

1999-09-17