Naprej Nazaj Kazalo

4. Prilagoditev Emacsa

4.1 Šumniki in črke z naglasnimi znamenji

Črke slovenske abecede so podprte v kodnem naboru ISO Latin 2 (ISO 8859-2). Na tem mestu je koristno prebrati Slovenian HOWTO, ki razlaga nastavitve za vnos, prikaz in tiskanje naših črk.

Emacs prebere svoje nastavitve iz naslednjih datotek:

Tam, kjer se sklicujemo na datoteko .emacs, s tem pravzaprav mislimo na katerokoli izmed zgornjih treh datotek.

Prikaz osembitnih znakov

Če želite pisati spise .sgml v slovenščini ali v kateremkoli drugem evropskem jeziku, boste potrebovali osembitne znake. Emacs prilagodite za prikaz osembitnih znakov z naslednjo vrstico v vaši datoteki .emacs:

(standard-display-european t)
Za vnos zahodnoevropskih črk pride prav tudi naslednja vrstica, ki pa zaenkrat ni uporabna za slovenščino:
(load-library "iso-syntax")
Če uporabljate Emacs za pisanje zahodnoevropskih besedil na terminalu, ki ne podpira osembitnega prikaza, lahko uporabite knjižnico iso-ascii ((load-library "iso-ascii")), ki poskrbi, da Emacs prikazuje najboljše približke osembitnih črk.

Vnos osembitnih znakov

Tipkovnico nastavite za vnos osembitnih črk v konzoli ali v Oknih X, če Emacs poganjate tam. Take nastavitve so skupne vsem programom v konzoli ali v Oknih X in so opisane v spisu Slovenian HOWTO.

Če vaša tipkovnica v konzoli ali Oknih X torej podpira vnos osembitnih znakov, boste morali le v datoteko .emacs dodati naslednje vrstice:

;; Omogočimo vnos znakov s kodo, večjo od 127
(set-input-mode (car (current-input-mode))
        (nth 1 (current-input-mode))
        0)
Če vaš terminal ne podpira osembitnega vnosa, ste pri pisanju slovenskih besedil v težavah. Za pisanje zahodnoevropskih besedil si lahko pomagate z dodatnimi paketi:

Knjižnica iso-acc

Knjižnica za Emacs iso-acc vam bo omogočila vnos osembitnih znakov s tipkovnico, ki sicer omogoča le vnos sedembitnih črk.

Za uporabo te knjižnice vstavite naslednje v vašo datoteko .emacs:

(load-library "iso-acc")

Ko boste naslednjič pognali Emacs in odprli datoteko, ki bi jo radi uredili, napišite Meta-x iso-accents-mode.

Črko é v francoski besedi café lahko vstavite tako, da pritisnete ' in potem še e. V splošnem lahko vpišete zahodnoevropski znak z naglasnim znamenjem tako, da najprej pritisnete ustrezno naglasno znamenje, ki mu sledi črka pod njim (velika ali mala). Uporabite lahko naslednja naglasna znamenja:

  • ' : ostrivec
  • ` : krativec
  • ^ : strešica
  • " : preglas"
  • ~ : tilda nad črko, sedij (kljukica pod ,,c``), in drugi posebni primeri (glejte iso-acc.el)
  • / : različna skandinavska naglasna znamenja idr.
  • Če potrebujete enega od teh znakov in ne naglašene črke, pritisnite za njim presledek. Na primer, za vnos l'éléphant, napišite l ' spc ' e l ' e ...

    Vse možne kombinacije boste našli v datoteki iso-acc.el.

    Tipka Meta

    Nekateri terminali vam omogočajo vnos osembitnih znakov s tipko Meta (ali Alt). Na primer, če pritisnete kombinacijo Meta-i, lahko dobite znak é.

    Vendar Emacs potrebuje tipko Meta za drugačno rabo. Zato morate pritisniti zaporedje Ctrl-q (ukaz quoted-insert), preden pritisnete Meta-i.

    Ta ukaz vam dovoljuje vnos znakov tudi z vpisom osmiške kode. Pritisnite kombinacijo Meta-q, ki ji sledi osmiška koda znakov, ki bi jih radi vnesli. Slovenske šumnike ,,ČŠŽ`` in hrvaški črki ,,ĆĐ``, pisane

    po ISO Latin 2, lahko vnesete z naslednjimi kombinacijami:

    č  Ctrl-q 350    Č  Ctrl-q 310
    š  Ctrl-q 271    Š  Ctrl-q 251
    ž  Ctrl-q 276    Ž  Ctrl-q 256
    ć  Ctrl-q 346    Ć  Ctrl-q 306
    đ  Ctrl-q 360    Đ  Ctrl-q 320
    

    Prikaz osembitnih znakov v SGML DTD LinuxDoc

    V SGML lahko vnašate naglašene znake z makroukazi, vendar žal ne tudi srednjeevropskih. Na primer, simbol za tipko é je é. V splošnem, aplikacije, ki morajo brati SGML, znajo brati osembitne znake in ni treba uporabljati teh makroukazov. Vendar nekateri morda ne bodo mogli brati osembitnih znakov. Če vemo, da je na voljo preprosta rešitev (spet samo za zahodne narode, op. prev.), bi bilo škoda pustiti, da se take aplikacije sesujejo.

    Knjižnica iso-sgml vam omogoča vnos naglašenih znakov v Emacsu kakor vedno, a ob shranjevanju datoteke na disk bo samodejno spremenila osembitne znake v njihove ustreznike v SGML. Vendar, žal, slovenske povsem napačno, saj jih v ISO Latin 1 ni.

    No, zahvaljujoč tej knjižnici, je lahko vnašati in brati spise z zahodnimi znaki, pisanimi po ISO Latin 1 (ISO 8859-1) v Emacsu, in prepričani ste lahko, da bo aplikacija, ki sicer ne sprejme osembitnih sestavkov, po takem postopku vašega sprejela.

    Za uporabo te knjižnice morate dodati naslednje vrstice v vašo datoteko .emacs:

    (setq sgml-mode-hook
    '(lambda () "Privzete nastavitve načina SGML."
    (load-library "iso-sgml")))
    

    4.2 Način SGML

    Po nalaganju datoteke s podaljškom .sgml Emacs samodejno vstopi v način sgml (ang. sgml mode). Če ne, mu lahko to naročite ročno z ukazom Meta-x sgml-mode, ali samodejno z dodatkom naslednjih vrstic v vašo datoteko .emacs:

    (setq auto-mode-alist
    (append '(("\.sgml$"  . sgml-mode))
              auto-mode-alist))
    
    Ta način vam bo, na primer, omogočil izbiranje, kako boste vnašali osembitne znake. Z ukazom Meta-x sgml-name-8bit-mode (ali z menujsko postavko SGML/Toggle 8-bit insertion) lahko izberete vnos osembitnih znakov kot takih, ali v obliki SGML, se pravi, v obliki &...;.

    Emacs vam bo tudi dovoljeval skriti ali prikazati oznake SGML z ukazom Meta-x sgml-tags-invisible (ali z menujsko postavko SGML/Toggle Tag Visibility).

    4.3 Način PSGML

    Načinu PSGML zelo pomaga pri urejanju spisov SGML z Emacsom.

    Dokumentacija za psgml-linuxdoc razlaga, kako namestiti in uporabljati ta način z zvrstjo besedila LinuxDoc.

    4.4 Razno

    Način auto-fill

    Ko v normalnem načinu napišete odstavek in pridete do konca vrstice, morate sami uporabiti tipko Return, da pridete v naslednjo vrstico, sicer se bo vaša vrstica nadaljevala nedoločeno dolgo skozi ves odstavek. Kadar uporabite Return za pomik v novo vrstico, dobite odstavek z neporavnanimi desnimi robovi. Če dopustite, da so nekatere vrstice daljše od razumne širine, jih z nekaterimi urejevalniki ne boste mogli videti.

    Način auto-fill avtomatizira to nehvaležno opravilo: ko greste dlje od določenega stolpca (privzeto 70.), vas samodejno postavi v naslednjo vrstico.

    Takole uporabite ta način in nastavite širino vaših vrstic na 80:

    (setq sgml-mode-hook
         '(lambda () "Defaults for SGML mode."
             (auto-fill-mode)       
             (setq fill-column 80)))
    


    Naprej Nazaj Kazalo