1133 lines
47 KiB
Plaintext
1133 lines
47 KiB
Plaintext
Prvo berilo za Emacs. Pogoji uporabe in razširjanja so navedeni na koncu.
|
|
|
|
Ukazi v Emacsu v splošnem vključujejo tipki CONTROL (včasih označeni
|
|
CTRL ali CTL) in META (včasih označena EDIT ali ALT). Namesto, da bi ju
|
|
vedno izpisali s celim imenom, bomo uporabili naslednji okrajšavi:
|
|
|
|
C-<znak> pomeni, da moramo držati pritisnjeno tipko CONTROL, ko
|
|
vtipkamo <znak>. Oznaka C-f tako pomeni: držimo pritisnjeno
|
|
tipko CONTROL in pritisnemo tipko f.
|
|
M-<znak> pomeni, da moramo držati pritisnjeno tipko META, EDIT ali
|
|
ALT, ko vtipkamo <znak>. Če na tipkovnici ni tipk META, EDIT
|
|
ali ALT, pritisnemo tipko ESC, jo spustimo in zatem
|
|
pritisnemo tipko <chr>. Tipko ESC bomo označevali z <ESC>.
|
|
|
|
Pomembno: Emacs zapustimo z ukazom C-x C-c (dva znaka).
|
|
V učbeniku so vaje, s katerimi preskusite nove ukaze. Označujeta jih
|
|
znaka ,>>` ob levem robu. Zgled:
|
|
<<Blank lines inserted here by startup of help-with-tutorial>>
|
|
[Sredina strani je iz didaktičnih razlogov prazna. Besedilo se nadaljuje spodaj]
|
|
>> Vtipkajte zdaj ukaz C-v (View next screen, Prikaži naslednji zaslon),
|
|
da se premaknete na naslednji zaslon (kar poskusite, pritisnite
|
|
hkrati tipko CONTROL in V). Od zdaj naprej boste morali to
|
|
napraviti sami vsakič, ko pridete do konca zaslona.
|
|
|
|
Ste opazili, da sta se dve vrstici s prejšnjega zaslona ponovili? Ta
|
|
kontinuiteta olajša branje pri skakanju s strani na stran.
|
|
|
|
Prva stvar, ki si jo morate zapomniti, je, kako se premikate po
|
|
datoteki. Zdaj že veste, da se premaknete za cel zaslon naprej z
|
|
ukazom C-v. Za cel zaslon nazaj pa se premaknete z ukazom M-v
|
|
(pritisnite tipko META in jo držite ter pritisnite tipko v, ali pa
|
|
pritisnite in spustite <ESC> ter zatem pritisnite tipko v, če tipke
|
|
META, EDIT ali ALT na vaši tipkovnici ni).
|
|
|
|
>> Nekajkrat pritisnite M-v in C-v, da vidite, kako ukaza delujeta.
|
|
|
|
|
|
* POVZETEK
|
|
----------
|
|
|
|
Za pregled celega zaslona besedila so uporabni naslednji ukazi:
|
|
|
|
C-v Premik se za cel zaslon naprej
|
|
M-v Premik se za cel zaslon nazaj
|
|
C-l Cel zaslon premaknemo tako, da je zdaj po vertikali
|
|
osredninjen okoli besedila, kjer se nahaja kazalček
|
|
(znak v C-l je črka L, ne števka 1)
|
|
|
|
>> Poiščite kazalček na zaslonu in si zapomnite besedilo okoli njega.
|
|
Vtipkajte C-l.
|
|
Ponovno poiščite kazalček. Besedilo okoli njega je ostalo isto.
|
|
|
|
Za premikanje za cel zaslon naprej ali nazaj lahko tipkovnicah, ki
|
|
imajo ti tipki, uporabljate tudi PageUp in PageDown. Opisan postopek s
|
|
C-v in M-v pa deluje povsod.
|
|
|
|
|
|
* PREMIKANJE KAZALČKA
|
|
---------------------
|
|
|
|
Premiki za celo stran naprej in nazaj so sicer uporabni, ampak kako pa
|
|
pridemo do izbranega mesta na zaslonu?
|
|
|
|
Načinov je več. Najosnovnejši je uporaba ukazov C-p, C-b, C-f in
|
|
C-n. Ti po vrsti premaknejo kazalček v prejšnjo vrstico, znak nazaj,
|
|
znak naprej, in v naslednjo vrstico. Ti štirje ukazi so enakovredni
|
|
kurzorskim tipkam:
|
|
|
|
prejšnja vrstica, C-p
|
|
:
|
|
:
|
|
nazaj, C-b .... trenutni položaj kazalčka .... naprej, C-f
|
|
:
|
|
:
|
|
naslednja vrstica, C-n
|
|
|
|
>> S pritiski na C-n ali C-p premaknite kazalček v sredinsko vrstico
|
|
na diagramu zgoraj. Zatem pritisnite C-l. S tem diagram postavite na
|
|
sredino zaslona.
|
|
|
|
V angleščini ima izbor tipk nazoren pomen. P kot ,previous`
|
|
(prejšnji), N kot ,next` (naslednji), B kot ,backward` (nazaj) in F
|
|
kot ,forward` (naprej). Te osnovne ukaze za premikanje kazalčka boste
|
|
uporabljali ves čas.
|
|
|
|
>> Nekajkrat pritisnite C-n, da pride kazalček do te vrstice.
|
|
|
|
>> Z nekaj C-f se pomaknite na desno na sredo vrstice, nato pa nekajkrat
|
|
pritisnite C-p. Opazujte, kaj se dogaja s kazalčkom na sredini
|
|
vrstice.
|
|
|
|
Vsaka vrstice v besedilu je zaključena z znakom za novo vrstico
|
|
(angl. Newline). Ta ločuje vrstico v besedilu od naslednje. Tudi
|
|
zadnja vrstica v datoteki mora biti zaljučena z znakom za novo vrstico
|
|
(čeprav tega Emacs ne zahteva).
|
|
|
|
>> Poskusite ukaz C-b, ko je kazalček na začetku vrstice. Kazalček se
|
|
mora premakniti na konec prejšnje vrstice. To je zato, ker se je
|
|
ravnokar premaknil prek znaka za konec vrstice.
|
|
|
|
Ukaz C-f premika kazalček prek znaka za novo vrstico enako kot C-b.
|
|
|
|
>> Poskusite še nekajkrat pritisniti C-b, da dobite občutek za
|
|
premikanje kazalčka. Potem nekajkrat poskusite C-f, da pridete do konca
|
|
vrstice. Še enkrat pritisnite C-f, da skočite v naslednjo vrstico.
|
|
|
|
Ko s kazalčkom dosežete zgornji ali spodnji rob zaslona, se besedilo
|
|
toliko premakne, da kazalček ostane na zaslonu. V angleščini se temu
|
|
pravi ,,scrolling``. To omogoča, da lahko premaknemo kazalček na
|
|
katerokoli mesto v besedilu, a vseeno ostanemo na zaslonu.
|
|
|
|
>> Poskusite kazalček pripeljati s C-n čisto do dna zaslona in si oglejte,
|
|
kaj se zgodi.
|
|
|
|
Če se vam zdi premikanje po en znak prepočasno, se lahko premikate za
|
|
celo besedo. M-f (META-f) premakne kazalček za eno besedo naprej, M-b
|
|
pa za besedo nazaj.
|
|
|
|
>> Poskusite nekajkrat M-f in M-b.
|
|
|
|
Če je kazalček sredi besede, ga M-f prestavi na konec besede. Če je v
|
|
belini med besedami, ga M-f premakne na konec naslednje besede. M-b
|
|
deluje podobno, a v nasprotni smeri.
|
|
|
|
>> Nekajkrat poskusite M-f in M-b, vmes pa še nekaj C-f in
|
|
C-b. Opazujte učinke M-f in M-b, ko je kazalček sredi besede ali
|
|
med besedami.
|
|
|
|
Ste opazili paralelo med C-f in C-b na eni strani ter M-f in M-b na
|
|
drugi? V Emacsu se dostikrat ukazi Meta nanašajo na operacije nad
|
|
enotami jezika (besede, stavki, odstavki), medtem ko se ukazi Control
|
|
nanašajo na operacije, neodvisne od zvrsti besedila (znaki, vrstice
|
|
ipd.).
|
|
|
|
Podobna zveza je tudi med vrsticami in stavki: ukaza C-a in C-e
|
|
premakneta kazalček na začetek oz. konec vrstice, M-a in M-e pa na
|
|
začetek oz. konec stavka.
|
|
|
|
>> Poskusite nekaj ukazov C-a, potem pa nekaj ukazov C-e.
|
|
Poskusite nekaj ukazov M-a, potem pa nekaj ukazov M-e.
|
|
|
|
Ste opazili, da ponovljeni C-a ne napravijo nič, ponovljeni M-a pa se
|
|
premikajo naprej? Čeprav se ne obnašata enako, pa je vendar obnašanje
|
|
enega in drugega po svoje naravno.
|
|
|
|
Položaju kazalčka na zaslonu pravimo tudi ,,point``, točka.
|
|
Parafrazirano: kazalček kaže na zaslonu, kje je točka v besedilu.
|
|
|
|
Povzetek preprostih ukazov za premikanje kazalčka, vključno s premiki
|
|
po besedo in stavek:
|
|
|
|
C-f Premik za znak naprej
|
|
C-b Premik za znak nazaj
|
|
|
|
M-f Premik za besedo naprej
|
|
M-b Premik za besedo nazaj
|
|
|
|
C-n Premik v naslednjo vrstico
|
|
C-p Premik v prejšnjo vrstico
|
|
|
|
C-a Premik na začetek vrstice
|
|
C-e Premik na konec vrstice
|
|
|
|
M-a Premik na začetek stavka
|
|
M-e Premik na konec stavka
|
|
|
|
>> Za vajo nekajkrat poskusite vsakega od teh ukazov.
|
|
To so najpogosteje uporabljani ukazi.
|
|
|
|
Še dva pomembna ukaza za premikanje kazalčka sta M-< (META-manjši od),
|
|
ki ga premakne na začetek datoteke, in M-> (META-večji od), ki ga
|
|
premakne na konec datoteke.
|
|
|
|
Na ameriških tipkovnicah najdete znak < nad vejico in morate
|
|
pritisniti tipko Shift, da pridete do njega. Z ukazom M-< je enako -
|
|
prav tako morate pritisniti tipko Shift, sicer moste izvedli drug
|
|
ukaz, Meta-vejica. Na naših tipkovnicah sta oba znaka na isti tipko,
|
|
in za ukaz M-> morate pritisniti še tipko Shift.
|
|
|
|
>> Poskusite zdaj M-<, skok na začetek tega učbenika.
|
|
Potem se vrnite nazaj z zaporednimi C-v.
|
|
|
|
>> Poskusite zdaj M->, skok na konec tega učbenika.
|
|
Potem se vrnite nazaj z zaporednimi M-v.
|
|
|
|
Če ima vaša tipkovnica kurzorske tipke, lahko premikate kazalček po
|
|
zaslonu tudi z njimi. Vseeno priporočamo, da se privadite ukazov C-b,
|
|
C-f, C-n in C-p, in to iz treh razlogov. Prvič, delujejo na čisto vseh
|
|
terminalih. Drugič, z nekaj prakse v Emacsu boste opazili, da je
|
|
tipkanje ukazov s CONTROL hitrejše od tipkanja s kurzorskimi tipkami, ker
|
|
ni treba ves čas premikati desnice s tipkovnice na kurzorske tipke in
|
|
nazaj. In tretjič, ko se enkrat navadite teh ukazov s CONTROL, se boste
|
|
enostavneje naučili tudi bolj zapletenih ukazov za premikanje kazalčka.
|
|
|
|
Večini ukazov v Emacsu lahko podamo številčni argument; največkrat ta
|
|
pove, kolikokrat zapovrstjo naj se ukaz izvede. Večkratno ponovitev
|
|
ukaza izvedemo tako, da najprej vtipkamo C-u, zatem število,
|
|
kolikokrat naj se ukaz ponovi, in nazadnje željeni ukaz. Če ima vaša
|
|
tipkovnica tipko META (ali EDIT ali ALT), lahko izpustite ukaz C-u in
|
|
namesto tega vtipkate število ponovitev, medtem ko držite pritisnjeno
|
|
tipko META. Druga metoda je sicer krajša, priporočamo pa prvo, ker
|
|
deluje na vseh terminalih. Takšen številčni argument je ,,prefiksni``
|
|
argument, ker vnesemo argument pred ukazom, na katerega se nanaša.
|
|
|
|
Zgled: C-u 8 C-f premakne kazalček za osem znakov naprej.
|
|
|
|
>> Poskusite s primernim argumentom za število ponovitev ukaza
|
|
C-n ali C-p priti čim bliže tej vrstici v enem samem skoku.
|
|
|
|
Večina ukazov, ne pa vsi, uporablja številčni argument kot število
|
|
ponovitev ukaza. Nekateri ukazi - nobeden od tistih, ki smo si jih
|
|
ogledali do zdaj - ga uporabljajo kot stikalo: s podanim prefiksnim
|
|
argumentom napravi ukaz nekaj drugega kot običajno.
|
|
|
|
Ukaza C-v in M-v sta tudi izjemi, a drugačni. Če jima podamo argument,
|
|
premakneta zaslon za navedeno število vrstic, ne pa zaslonov. Ukaz C-u
|
|
8 C-v, na primer, premakne zaslon navzgor za 8 vrstic.
|
|
|
|
>> Poskusite zdaj C-u 8 C-v
|
|
|
|
To bi moralo zaslon premakniti navzgor za osem vrstic. Če bi ga radi
|
|
premaknili nazaj, poskusite M-v z istim argumentom.
|
|
|
|
Če uporabljate grafični vmesnik, denimo X11 ali MS Windows, imate
|
|
verjetno ob robu Emacsovega okna navpično pravokotno ploskev,
|
|
imenovano drsnik. Pogled na besedilo lahko premikate tudi tako, da z
|
|
miško kliknete na drsnik.
|
|
|
|
>> Postavite kazalec na vrh označenega območja na drsniku in pritisnite
|
|
srednji gumb na miški. To bi moralo premakniti besedilo na mesto,
|
|
določeno s tem, kako visoko ali nizko na drsnik ste kliknili.
|
|
|
|
>> Medtem ko držite srednji gumb pritisnjen, premikajte miško gor in
|
|
dol. Vidite, kako se premika besedilo v Emacsovem oknu, ko
|
|
premikate miško?
|
|
|
|
|
|
* ČE SE EMACS OBESI
|
|
-------------------
|
|
|
|
Če se Emacs preneha odzivati na vaše ukaze, ga lahko varno prekinete z
|
|
ukazom C-g. Z njim lahko prekinete ukaze, za katere bi trajalo
|
|
predolgo, da bi se izvedli.
|
|
|
|
Isti ukaz, C-g, lahko uporabite tudi, da prekličete številčni
|
|
argument, ali pa začetek ukaza, ki ga ne želite izvesti.
|
|
|
|
>> Vtipkajte C-u 100, s čimer ste izbrali številčni argument 100,
|
|
zatem pa vtipkajte C-g. Vtipkajte zdaj C-f. Kazalček se je
|
|
premaknil le za en znak, ker ste številčni argument vmes preklicali
|
|
s C-g.
|
|
|
|
Tudi če ste po nesreči vtipkali <ESC>, se ga lahko znebite s C-g.
|
|
|
|
|
|
* ONEMOGOČENI UKAZI
|
|
-------------------
|
|
|
|
Nekaj ukazov v Emacsu je namenoma ,,onemogočenih``, da bi jih
|
|
začetniki ne izvedli po nesreči.
|
|
|
|
Če vtipkate tak onemogočen ukaz, se bo na zaslonu pojavilo novo okno z
|
|
obvestilom, kateri ukaz ste skušali izvesti, in vas vprašalo, če ga
|
|
res želite izvesti.
|
|
|
|
Če v resnici želite poskusiti ukaz, pritisnite preslednico kot odgovor
|
|
na vprašanje. Normalno verjetno ukaza ne želite izvesti, zato na
|
|
vprašanje odgovorite z ,n`.
|
|
|
|
>> Vtipkajte C-x C-l (ki je onemogočen ukaz),
|
|
zatem na vprašanje odgovorite n.
|
|
|
|
|
|
* OKNA
|
|
------
|
|
|
|
Emacs lahko prikaže več oken in v vsakem svoje besedilo. Kasneje bomo
|
|
razložili, kako uporabljamo več oken hkrati. Zaenkrat bomo povedali
|
|
le, kako se znebite dodatnih oken, ki jih lahko odpre vgrajena pomoč ali
|
|
pa izpis kakšnega drugega programa. Preprosto je:
|
|
|
|
C-x 1 Eno okno (torej, zaprimo vsa ostala).
|
|
|
|
To je CONTROL-x, ki mu sledi števka 1. Ukaz C-x 1 raztegne čez cel
|
|
zaslon okno, v katerem se nahaja kazalček, ostala pa zapre.
|
|
|
|
>> Premaknite kazalček do te vrstice in vtipkajte C-u 0 C-l
|
|
>> Vtipkajte CONTROL-h k CONTROL-f.
|
|
Vidite, kako se je to okno skrčilo in odstopilo prostor oknu,
|
|
ki pojasnjuje ukaz CONTROL-f?
|
|
|
|
>> Vtipkajte C-x 1 in spodnje okno se bo zaprlo.
|
|
|
|
Za razliko od ukazov, ki smo se jih naučili do zdaj, je ta ukaz
|
|
sestavljen iz dveh znakov. Začne se z znakom CONTROL-x. Cela vrsta
|
|
ukazov se začne enako, in mnogi od njih zadevajo delo z datotekami,
|
|
delovnimi področji in podobnim. Vsem tem ukazom je skupno, da se
|
|
začnejo s CONTROL-x, ki mu sledi še en, dva ali trije znaki.
|
|
|
|
|
|
* VRIVANJE IN BRISANJE
|
|
----------------------
|
|
|
|
Če želite v obstoječe besedilo vriniti novo, preprosto premaknite
|
|
kazalček na željeno mesto in začnite tipkati. Znake, ki jih lahko
|
|
vidite, na primer A, 7, * in podobno, razume Emacs kot del besedila in
|
|
jih takoj vrine. S pritiskom na Return (ali Enter) vrinete znak za
|
|
skok v novo vrstico.
|
|
|
|
Zadnji vtipkani znak lahko izbrišete s pritiskom na tipko
|
|
<Delback>. To je tista tipka na tipkovnici, ki jo navadno uporabljate
|
|
za brisanje nazadnje natipkanega znaka. Navadno je to velika tipka
|
|
vrstico ali dve nad tipko <Return>, ki je označena z "Backspace",
|
|
"Delete" ali "Del".
|
|
|
|
Če imate na tipkovnici tipko "Backspace", je to tipka <Delback>. Naj
|
|
vas ne zmede, če imate poleg tega še tipko "Delete" - <Delback> je
|
|
"Backspace".
|
|
|
|
Splošno <Delback> pobriše znak neposredno pred trenutnim položajem
|
|
kazalčka.
|
|
|
|
>> Vtipkajte zdaj nekaj znakov in jih zatem s tipko <Delback> pobrišite.
|
|
Nič naj vas ne skrbi, če se je ta vrstica spremenila. Izvirnika
|
|
tega učbenika ne boste pokvarili -- tole je samo vaša osebna kopija.
|
|
|
|
Ko vrstica postane predolga za zaslon, se ,,nadaljuje`` v naslednji
|
|
vrstici na zaslonu. Obrnjena poševnica (znak ,\`) ali v grafičnih
|
|
okoljih zavita puščica ob desnem robu označuje vrstico, ki se
|
|
nadaljuje v naslednji zaslonski vrstici.
|
|
|
|
>> Zdaj začnite tipkati besedilo, dokler ne dosežete desnega roba, in
|
|
še naprej. Opazili boste, da se pojavi znak za nadaljevanje.
|
|
|
|
>> S tipko <Delback> pobrišite toliko znakov, da vrstica ne sega
|
|
več čez širino zaslona. Znak za nadaljevanje v naslednji
|
|
vrstici je izginil.
|
|
|
|
Znak za novo vrstico lahko pobrišemo enako kot vsak drug znak. S tem,
|
|
ko pobrišemo znak za novo vrstico, združimo vrstici v eno samo. Če bo
|
|
nova vrstica predolga, da bi cela prišla na zaslon, bo razdeljena v
|
|
več zaslonskih vrstic.
|
|
|
|
>> Premaknite kazalček na začetek vrstice in pritisnite <Delback>. To
|
|
združi vrstico s prejšnjo.
|
|
|
|
>> Pritisnite <Return>. S tem ste ponovno vrinili znak za skok v novo
|
|
vrstico, ki ste ga malo prej zbrisali.
|
|
|
|
Spomnimo se, da lahko za večino ukazov v Emacsu določimo, naj se
|
|
izvedejo večkrat zaporedoma; to vključuje tudi vnos teksta. Ponovitev
|
|
običajnega znaka ga večkrat vrine v besedilo.
|
|
|
|
>> Poskusite zdaj tole: da vnesete osem zvezdic, vtipkajte C-u 8 *
|
|
|
|
Zdaj ste se naučili najpreprostejši način, da v Emacsu nekaj natipkate
|
|
in popravite. Brišete lahko tudi besede ali vrstice. Tu je povzetek
|
|
ukazov za brisanje:
|
|
|
|
<Delback> pobriše znak tik pred kazalčkom (levo od
|
|
oznake za kazalček)
|
|
C-d pobriše znak tik za kazalčkom (,pod` oznako
|
|
za kazalček)
|
|
|
|
M-<Delback> pobriše besedo tik pred kazalčkom
|
|
M-d pobriše besedo tik za kazalčkom
|
|
|
|
C-k zavrže besedilo desno od kazalčka do konca vrstice
|
|
M-k zavrže besedilo od položaja kazalčka do konca stavka
|
|
|
|
Črka ,d` je iz angleške besede ,delete` (pobrisati), črka ,k` pa iz
|
|
besede ,kill` (pobiti). Ste opazili, da <Delback> in C-d na eni, ter
|
|
M-<Delback> in M-d na drugi strani nadaljujeta paralelo, ki sta jo začela
|
|
C-f in M-f (<Delback> pravzaprav ni kontrolni znak, kar pa naj nas ne
|
|
moti). C-k in M-k sta v enakem sorodu s C-e in M-e: prvi deluje na
|
|
vrstice, drugi na stavke.
|
|
|
|
Obstaja tudi splošen postopek za brisanje kateregakoli dela delovnega
|
|
področja. Kazalček postavimo na en konec področja, ki ga želimo
|
|
izbrisati, in pritisnemo C-@ ali C-SPC (SPC je
|
|
preslednica). Katerikoli od obeh ukazov deluje. Premaknite kazalček na
|
|
drug konec področja, ki ga želite izbrisati, in pritisnite C-w. S tem
|
|
ste zavrgli vse besedilo med obema mejama.
|
|
|
|
>> Premaknite kazalček na črko O, s katero se začenja prejšnji
|
|
odstavek.
|
|
>> Vtipkajte C-SPC. Emacs prikaže sporočilo "Mark set" (slov. Oznaka
|
|
postavljena) na dnu ekrana.
|
|
>> Premaknite kazalček na črko V v "postavimo" v drugi vrstici istega
|
|
odstavka.
|
|
>> Vtipkajte C-w. S tem zavržemo vse besedilo začenši z O in vse do
|
|
črke V.
|
|
|
|
Razlika med tem, če zavržete cel odstavek besedila (angl. ,,kill``,
|
|
pobiti) ali pa če pobrišete znak (angl. ,,delete``), je ta, da lahko
|
|
prvega vrnete nazaj z ukazom C-y, drugega pa ne. Na splošno ukazi, ki
|
|
lahko povzročijo veliko škode (pobrišejo veliko besedila), shranijo
|
|
pobrisano besedilo; tisti, ki pobrišejo samo posamezni znak, ali samo
|
|
prazne vrstice in presledke, pa ne.
|
|
|
|
>> Postavite kazalček na začetek neprazne vrstice. Pritisnite C-k, da
|
|
pobrišete vsebino vrstice.
|
|
>> Še enkrat pritisnite C-k. To pobriše še znak za novo vrstico.
|
|
|
|
Ste opazili, da prvi C-k pobriše vsebino vrstice, naslednji C-k pa še
|
|
vrstici samo, s čimer se vse besedilo pod bivšo vrstico premakne za
|
|
eno vrstico navzgor? Ukaz C-k obravnava številčni argument malo
|
|
drugače: pobriše toliko in toliko vrstic z vsebinami vred. To ni zgolj
|
|
ponovitev. C-u 2 C-k pobriše dve polni vrstici besedila, kar je nekaj
|
|
drugega, kot če dvakrat vtipkate C-k.
|
|
|
|
Besedilo, ki ste ga prej pobili, lahko povrnete (angl. ,,yank`` --
|
|
potegniti). Predstavljajte si, kot da potegnete nazaj nekaj, kar vam
|
|
je nekdo odnesel. Pobito besedilo lahko potegnete nazaj na isti ali pa
|
|
na kakšen drug kraj v besedilu, ali pa celo v kaki drugi
|
|
datoteki. Isto besedilo lahko večkrat potegnete nazaj, tako da je v
|
|
delovnem področju povečterjeno.
|
|
|
|
Ukaz za vračanje pobitega besedila je C-y.
|
|
|
|
>> Poskusite z ukazom C-y povrniti pobrisano besedilo.
|
|
|
|
Če ste uporabili več zaporednih ukazov C-k, je vse pobrisano besedilo
|
|
shranjeno skupaj, in en sam C-y bo vrnil vse tako pobrisane vrstice.
|
|
|
|
>> Poskusite, nekajkrat vtipkajte C-k.
|
|
|
|
Zdaj pa vrnimo pobrisano besedilo:
|
|
|
|
>> Vtipkajte C-y. Zdaj pa premaknite kazalček za nekaj vrstic navzdol
|
|
in še enkrat vtipkajte C-y. Vidite zdaj, kako se kopira dele
|
|
besedila?
|
|
|
|
Kaj pa, če ste pobrisali nekaj besedila, ki bi ga radi vrnili, vendar
|
|
ste za iskanim odlomkom pobrisali še nekaj? C-y vrne samo nazadnje
|
|
pobrisan odlomek. Vendar tudi prejšnje besedilo ni izgubljeno. Do
|
|
njega lahko pridete z ukazom M-y. Ko ste vrnili nazadnje zbrisano
|
|
besedilo s C-y, pritisnite M-y, ki ga zamenja s predzanje pobrisanim
|
|
besedilom. Vsak naslednji M-y prikaže še eno prej. Ko ste končno
|
|
prišli do iskanega besedila, ni treba napraviti nič posebnega, da bi
|
|
ga obdržali. Preprosto nadaljujte z urejanjem, in vrnjeno besedilo bo
|
|
ostalo, kamor ste ga odložili.
|
|
|
|
Če pritisnete M-y dovolj velikokrat, se boste vrnili na začete, torej
|
|
spet na zadnje pobrisano besedilo.
|
|
|
|
>> Pobrišite vrstico, premaknite se nekam drugam, in pobrišite še
|
|
eno vrstico.
|
|
Z ukazom C-y dobite nazaj to drugo vrstico.
|
|
Z ukazom M-y pa jo zamenjate s prvo vrstico.
|
|
Ponovite ukaz M-y še nekajkrat in si oglejte, kaj dobite na
|
|
zaslon. Ponavljajte ga, dokler se ne prikaže ponovno nazadnje
|
|
pobrisana vrstica, in še naprej. Če želite, lahko tudi ukazu
|
|
M-y podate pozitivno ali negativno število ponovitev.
|
|
|
|
|
|
* PREKLIC UKAZA (UNDO)
|
|
----------------------
|
|
|
|
Če ste besedilo spremenili, a ste se kasneje premislili, lahko
|
|
besedilo vrnete v prvotno stanje z ukazom Undo, C-x u. Normalno vrne
|
|
C-x u zadnjo spremembo besedila; če ukaz ponovimo, prekličemo še
|
|
predzadnjo spremembo, in vsaka nadaljnja ponovitev seže še eno
|
|
spremembo globlje v zgodovino.
|
|
|
|
Emacs hrani bolj ali manj celotno zgodovino naših ukazov, z dvema
|
|
izjemama: ukazov, ki niso napravili nobene spremembe v besedilu
|
|
(npr. premik kazalčka), ne shranjuje, in zaporedje do 20 vrinjenih
|
|
znakov shrani kot en sam ukaz. Slednje prihrani nekaj ukazov C-x u, ki
|
|
bi jih morali vtipkati.
|
|
|
|
>> Pobrišite to vrstico z ukazom C-k, potem jo prikličite nazaj s C-x u.
|
|
|
|
C-_ je alternativni ukaz za preklic zadnjega ukaza. Deluje enako kot
|
|
s C-x u, ga je pa lažje odtipkati, če morate ukaz ponoviti večkrat
|
|
zaporedoma. Težava z ukazom C-_ je, da na nekaterih tipkovnicah ni
|
|
povsem očitno, kako ga vtipkati, zato je podvojen še kot C-x u. Na
|
|
nekaterih terminalih moramo na primer vtipkati /, medtem ko držimo
|
|
pritisnjeno tipko CONTROL.
|
|
|
|
Če podamo ukazu C-_ ali C-x u numerični argument, je to enako, kot če
|
|
bi ukaz ročno ponovili tolikokrat, kot pravi argument.
|
|
|
|
Ukaz za brisanje besedila lahko prekličete in besedilo povrnete,
|
|
enako, kot če bi besedilo pobili. Razlika med brisanjem in pobijanjem
|
|
besedila je le ta, da le slednje lahko potegnete nazaj z ukazom
|
|
C-y. Preklic ukaza pa velja za eno in drugo.
|
|
|
|
|
|
* DATOTEKE
|
|
----------
|
|
|
|
Da bi bile spremembe v besedilu trajne, morate besedilo shraniti v
|
|
datoteko. V nasprotnem primeru jih boste za vedno izgubili tisti hip,
|
|
ko boste zapustili Emacs. Besedilo postavimo v datoteko tako, da
|
|
na disku ,,poiščemo`` (angl. find) datoteko, preden začnemo tipkati
|
|
(pravimo tudi, da ,,obiščemo`` datoteko).
|
|
|
|
Poiskati datoteko pomeni, da v Emacsu vidimo vsebino datoteke. To je
|
|
bolj ali manj tako, kot da z Emacsom urejamo datoteko samo. Vendar pa
|
|
spremembe ne postanejo trajne, dokler datoteke ne shranimo
|
|
(angl. save) na disk. Tako imamo možnost, da se izognemo temu, da bi
|
|
nam na pol spremenjene datoteke ležale po disku, kadar tega ne
|
|
želimo. Ker pa Emacs ohrani izvorno datoteko pod spremenjenim imenom,
|
|
lahko prvotno datoteko prikličemo nazaj celo še potem, ko smo datoteko
|
|
že shranili na disk.
|
|
|
|
V predzadnji vrstici na dnu zaslona vidite vrstico, ki se začne in
|
|
konča z vezaji, in vsebuje niz znakov ,,--:-- TUTORIAL``. Ta del
|
|
zaslona navadno vsebuje ime datoteke, ki smo jo obiskali. Zdajle je to
|
|
,,TUTORIAL``, vaša delovna kopija učbenika Emacsa. Ko boste poiskali
|
|
kakšno drugo datoteko, bo na tem mestu pisalo njeno ime.
|
|
|
|
Posebnost ukaza za iskanje datoteke je, da moramo povedati, katero
|
|
datoteko iščemo. Pravimo, da ukaz ,,prebere argument s terminala`` (v
|
|
tem primeru je argument ime datoteke). Ko vtipkate ukaz
|
|
|
|
C-x C-f (poišči datoteko)
|
|
|
|
vas Emacs povpraša po imenu datoteke. Kar vtipkate, se sproti vidi v
|
|
vrstici na dnu zaslona. Temu delovnemu področju pravimo pogovorni
|
|
vmesnik (minibuffer), kadar se uporablja za tovrstni vnos. Znotraj
|
|
pogovornega vmesnika lahko uporabljate običajne ukaze za urejanje, če
|
|
ste se na primer pri tipkanju zmotili.
|
|
|
|
Sredi tipkanja imena datoteke (ali katerega koli drugega opravila v
|
|
pogovornem vmesniku) lahko ukaz prekličete s C-g.
|
|
|
|
>> Vtipkajte C-x C-f, zatem pa še C-g. Zadnji ukaz od treh je
|
|
zaprl pogovorni vmesnik in tudi preklical ukaz C-x C-f, ki je
|
|
uporabljal pogovorni vmesnik. Konec z iskanjem datoteke.
|
|
|
|
Ko ste dokončali ime, ga vnesete s pritiskom na <Return>. S tem se
|
|
požene ukaz C-x C-f in poišče iskano datoteko. Pogovorni vmesnik
|
|
izgine, ko je ukaz izveden.
|
|
|
|
Trenutek kasneje se vsebina datoteke pojavi na zaslonu. Zdaj lahko
|
|
dopolnjujete, urejate ali kako drugače spreminjate vsebino. Ko želite,
|
|
da ostanejo spremembe trajne, izvedete ukaz:
|
|
|
|
C-x C-s (shrani datoteko)
|
|
|
|
Besedilo se s tem shrani iz pomnilnika računalnika na datoteko na
|
|
disk. Ko prvič izvedete ta ukaz, se izvorna datoteka preimenuje, tako
|
|
da ni izgubljena. Najdete jo pod novim imenom, ki se od starega
|
|
razlikuje po tem, da ima na koncu pripet znak ,,~``.
|
|
|
|
Ko je Emacs shranil datoteko, izpiše njeno ime. Shranjujte raje
|
|
pogosteje kot ne, da v primeru, če gre z računalnikom kaj narobe, ne
|
|
izgubite veliko.
|
|
|
|
>> Vtipkajte C-x C-s, s čimer boste shranili svojo kopijo tega
|
|
učbenika. Emacs bo v vrstici na dnu zaslona izpisal ,,Wrote
|
|
...TUTORIAL``.
|
|
|
|
Poiščete lahko lahko že obstoječo datoteko, da si jo ogledate ali
|
|
popravite, ali pa tudi datoteko, ki še ne obstaja. To je način, kako z
|
|
Emacsom ustvarimo novo datoteko: poiščite datoteko z izbranim imenom,
|
|
ki bo sprva prazna, in začnite pisati. Ko jo boste prvič shranili, bo
|
|
Emacs ustvaril datoteko z vnešenim besedilom. Od tod dalje delate na
|
|
že obstoječi datoteki.
|
|
|
|
|
|
* DELOVNA PODROČJA
|
|
------------------
|
|
|
|
Tudi če ste z ukazom C-x C-f poiskali in odprli drugo datoteko, prva
|
|
ostane v Emacsu. Nanjo se vrnete tako, da jo še enkrat ,,poiščete`` z
|
|
ukazom C-x C-f. Tako imate lahko v Emacsu hkrati kar precej datotek.
|
|
|
|
>> Ustvarite datoteko z imenom ,,bla`` tako, da vtipkate C-x C-f
|
|
bla <Return>. Natipkajte nekaj besedila, ga po potrebi popravite, in
|
|
shranite v datoteko ,,bla`` z ukazom C-x C-s. Ko ste končali, se
|
|
vrnite v učbenik z ukazom C-x C-f TUTORIAL <Return>.
|
|
|
|
Emacs hrani besedilo vsake datoteke v takoimenovanem ,,delovnem
|
|
področju`` (angl. buffer). Ko poiščemo datoteko, Emacs ustvari zanjo
|
|
novo delovno področje. Vsa obstoječa delovna področja v Emacsu vidimo
|
|
z ukazom:
|
|
|
|
C-x C-b Seznam delovnih področij.
|
|
|
|
>> Poskusite C-x C-b zdaj.
|
|
|
|
Vidite, da ima vsako delovno področje svoje ime, pri nekaterih pa piše
|
|
tudi ime datoteke, katere vsebina se hrani v njem. Vsako besedilo, ki
|
|
ga vidite v katerem od Emacsovih oken, je vedno del kakšnega delovnega
|
|
področja.
|
|
|
|
>> Z ukazom C-x 1 se znebite seznama delovnih področij.
|
|
|
|
Tudi če imate več delovnih področij, pa je vedno le eno od njih
|
|
trenutno dejavno. To je tisto delovno področje, ki ga popravljate. Če
|
|
želite popravljati drugo delovno področje, morate ,,preklopiti``
|
|
nanj. Če bi radi preklopili na delovno področje, ki pripada kakšni
|
|
datoteki, že poznate en način, kako to storiti: ponovno ,,obiščete``
|
|
(odprete) to datoteko z ukazom C-x C-f. Obstaja pa še lažji način: z
|
|
ukazom C-x b. Pri tem ukazu morate navesti ime delovnega področja.
|
|
|
|
>> Vtipkajte C-x b bla <Return>, s čimer se vrnete v delovno področje
|
|
,,bla`` z vsebino datoteke ,,bla``, ki ste jo maloprej
|
|
odprli. Zatem vtipkajte C-x b TUTORIAL <RETURN>, s čimer se vrnete
|
|
nazaj v ta učbenik.
|
|
|
|
Večinoma se ime delovnega področja kar ujema z imenom datoteke (brez
|
|
poti do datoteke), ne pa vedno. Seznam delovnih področij, ki ga
|
|
prikaže ukaz C-x C-b, prikaže imena vseh delovnih področij.
|
|
|
|
Vsako besedilo, ki ga vidite v katerem od Emacsovih oken, je vedno del
|
|
kakšnega delovnega področja. Nekatera delovna področja ne pripadajo
|
|
nobeni datoteki. Področje ,,*Buffer List*``, na primer, je že eno
|
|
takih. To delovno področje smo ustvarili ravnokar, ko smo pognali ukaz
|
|
C-x C-b, in vsebuje seznam delovnih področij. Tudi delovno področje
|
|
,,Messages`` ne pripada nobeni datoteki, ampak vsebuje sporočila, ki
|
|
jih je Emacs izpisoval v odzivnem področju na dnu zaslona.
|
|
|
|
>> Vtipkajte C-x b *Messages* <Return> in si oglejte delovno področje
|
|
s sporočili, zatem pa vtipkajte C-x b TUTORIAL <Return> in se tako
|
|
vrnite v učbenik.
|
|
|
|
Če ste spreminjali besedilo ene datoteke, potem pa poiskali drugo, to
|
|
ne shrani spremeb v prvo datoteko. Te ostanejo znotraj Emacsa, na
|
|
delovnem področju, ki pripada prvi datoteki. Ustvarjenje ali
|
|
spreminjanje delovnega področja druge datoteke nima nobenega vpliva na
|
|
področje prve. To je zelo uporabno, pomeni pa tudi, da potrebujemo
|
|
udobno pot, da shranimo delovno področje prve datoteke. Nerodno bi
|
|
bilo preklapljanje na prvo področje s C-x C-f, da bi shranili s C-x
|
|
C-s. Namesto tega imamo:
|
|
|
|
C-x s Shrani nekatera delovna področja
|
|
|
|
Ukaz C-x poišče delovna področja, katerih vsebina je bila spremenjena,
|
|
odkar je bila zadnjič shranjena na datoteko. Za vsako tako delovno
|
|
področje C-x s vpraša, če ga želite shraniti.
|
|
|
|
|
|
* RAZŠIRJEN NABOR UKAZOV
|
|
------------------------
|
|
|
|
Še mnogo, mnogo je ukazov Emacsa, ki bi zaslužili, da jih obesimo na
|
|
razne kontrolne in meta znake. Emacs se temu izogne z ukazom X (iz angl.
|
|
eXtend - razširiti), ki uvede ukaz iz razširjenega nabora. Dveh vrst je:
|
|
|
|
C-x Znakovna razširitev (angl. Character eXtend).
|
|
Sledi mu en sam znak.
|
|
M-x Razširitev s poimenovanim ukazom. Sledi mu dolgo ime
|
|
ukaza.
|
|
|
|
Tudi ti ukazi so na splošno uporabni, ne uporabljamo pa jih tako
|
|
pogosto kot tiste, ki ste se jih že naučili. Dva ukaza iz razširjenega
|
|
nabora že poznamo: C-x C-f, s katerim poiščemo datoteko, in C-x C-s, s
|
|
katerim datoteko shranimo. Še en primer je ukaz, s katerim Emacsu
|
|
povemo, da želimo končati z delom iz iziti iz Emacsa. Ta ukaz je C-x
|
|
C-c (ne skrbite: preden konča, Emacs ponudi, da shrani vse spremenjene
|
|
datoteke).
|
|
|
|
Z ukazom C-z Emacs zapustimo samo *začasno*, tako da lahko ob vrnitvi
|
|
nadaljujemo z delom, kjer smo ostali.
|
|
|
|
Na sistemih, ki to dopuščajo, ukaz C-z izide iz Emacsa v ukazno
|
|
lupino, a ga ne konča - če uporabljate ukazno lupino C, se lahko
|
|
vrnete z ukazom ,fg` ali splošneje z ukazom ,,%emacs``.
|
|
|
|
Drugod ukaz C-z požene sekundarno ukazno lupino, tako da lahko
|
|
poženete kakšen drug program in se kasneje vrnete v Emacs. V tem
|
|
primeru pravzaprav Emacsa ne zapustimo. Ukaz ,,exit`` v ukazni lupini
|
|
je navadno način, da zapremo sekundarno lupino in se vrnemo v Emacs.
|
|
|
|
Ukaz C-x C-c uporabimo, če se nameravamo odjaviti s sistema. To je
|
|
tudi pravilen način za izhod iz Emacsa, če je tega pognal program za
|
|
delo s pošto ali kak drug program, saj ta verjetno ne ve, kaj
|
|
napraviti z začasno prekinjenim Emacsom. V vseh ostalih primerih pa,
|
|
če se ne nameravate odjaviti s sistema, uporabite C-z, in se vrnite v
|
|
Emacs, ko bi radi spet urejali besedilo.
|
|
|
|
Ukazov C-x je veliko. Zaenkrat smo spoznali naslednje:
|
|
|
|
C-x C-f Poišči datoteko.
|
|
C-x C-s Shrani datoteko.
|
|
C-x C-b Prikaži seznam delovnih področij.
|
|
C-x C-c Končaj Emacs.
|
|
C-x 1 Zapri vsa okna razen enega.
|
|
C-x u Preklic zadnjega ukaza.
|
|
|
|
Poimenovani razširjeni ukazi so ukazi, ki se uporabljajo še bolj
|
|
poredko, ali pa se uporabljajo samo v nekaterih načinih dela. Eden
|
|
takih je na primer ukaz replace-string, ki po vsem besedilu zamenja en
|
|
niz znakov z drugim. Ko vtipkate M-x, se to izpiše v pogovornem
|
|
vmesniku na dnu zaslona, Emacs pa čaka, da vtipkate ime ukaza, ki ga
|
|
želite priklicati; v tem primeru je to ,,replace-string``. Vtipkajte
|
|
samo ,,repl s<TAB>`` in Emacs bo dopolnil ime (<TAB> je tabulatorska
|
|
tipka; navadno jo najdemo nad tipko Caps Lock ali Shift na levi strani
|
|
tipkovnice). Ukaz vnesete s pritiskom na <Return>.
|
|
|
|
Ukaz replace-string potrebuje dva argumenta -- niz, ki ga želite
|
|
zamenjati, in niz, s katerim bi radi zamenjali prvega. Vsakega posebej
|
|
vnesete in zaključite s pritiskom na tipko Return.
|
|
|
|
>> Premaknite kazalček na prazno vrstico dve vrstici pod to, zatem
|
|
vtipkajte M-x repl s<Return>zamenjala<Return>spremenila<Return>.
|
|
|
|
Opazite, kako se je ta vrstica zamenjala? Vse besede
|
|
z-a-m-e-n-j-a-l-a od tod do konca besedila ste nadomestili z besedo
|
|
,,spremenila``.
|
|
|
|
|
|
* AVTOMATIČNO SHRANJEVANJE
|
|
--------------------------
|
|
|
|
Spremembe v datoteki, ki jih še niste shranili na disk, so izgubljene,
|
|
če medtem denimo zmanjka elektrike. Da bi vas zavaroval pred tem,
|
|
Emacs periodično avtomatično shrani vse datoteke, ki jih
|
|
urejate. Avtomatično shranjena datoteka se od izvorne razlikuje po
|
|
znaku ,#` na začetku in koncu imena: če se je vaša datoteka imenovala
|
|
,,hello.c``, se avtomatično shranjena datoteka imenuje
|
|
,,#hello.c#``. Ko normalno shranite datoteko, avtomatično shranjena
|
|
datoteka ni več potrebna, in Emacs jo pobriše.
|
|
|
|
Če res pride do izgube podatkov v pomnilniku, lahko povrnete avtomatično
|
|
shranjeno besedilo tako, da normalno poiščete datoteko (pravo ime
|
|
datoteke, ne ime avtomatično shranjene datoteke), zatem pa vtipkate M-x
|
|
recover file<Return>. Ko vas vpraša za potrditev, vtipkajte yes<Return>
|
|
za nadaljevanje in povrnitev avtomatično shranjenenih podatkov.
|
|
|
|
|
|
* ODZIVNO PODROČJE
|
|
------------------
|
|
|
|
Kadar Emacs opazi, da počasi vtipkavate ukaz, odpre v zadnji vrstici
|
|
na dnu zaslona odzivno področje in v njem sproti prikazuje natipkano.
|
|
|
|
|
|
* STATUSNA VRSTICA
|
|
------------------
|
|
|
|
Vrstica nad odzivnim področjem je statusna vrstica. Ta kaže verjetno
|
|
nekaj podobnega kot:
|
|
|
|
--:** TUTORIAL (Fundamental)--L670--58%----------------------
|
|
|
|
V njej so izpisani pomembni podatki o stanju Emacsa in besedilu, ki ga
|
|
urejate.
|
|
|
|
Zdaj že veste, kaj pomeni ime datoteke -- to je datoteka, ki ste jo
|
|
poiskali. Oznaka --NN%-- pomeni, da je nad vrhom zaslona še NN
|
|
odstotkov celotne datoteke. Če je začetek datoteke na zaslonu, bo
|
|
namesto --00%-- pisalo --Top--. Podobno bo pisalo --Bot--, če je
|
|
zadnja vrstica datoteke na zaslonu. Če je datoteka, ki jo ogledujete,
|
|
tako kratka, da gre vsa na en zaslon, pa bo pisalo --All--.
|
|
|
|
Črka L in številke za njo kažejo položaj še drugače, kot zaporedno
|
|
številko vrstice, v kateri je kazalček.
|
|
|
|
Zvezdice na začetku vrstice pomenijo, da ste datoteko že spreminjali.
|
|
Tik po tem, ko ste odprli ali shranili datoteko, ni nobenih zvezdic,
|
|
so samo črtice.
|
|
|
|
Del statusne vrstice znotraj oklepajev vam pove, v kakšnem načinu dela
|
|
Emacs. Privzeti način je osnovni način (Fundamental), v katerem ste
|
|
sedaj. Fundamental je eden od glavnih načinov (angl. major
|
|
mode). Emacs pozna veliko različnih glavnih načinov. Nekateri od njih
|
|
so namenjeni pisanju programov, kot na primer Lisp, ali pisanju
|
|
besedil, kot npr. Text. Naenkrat je lahko aktiven le en glavni način,
|
|
njegovo ime pa je vedno izpisano v statusni vrstici, kjer zdaj piše
|
|
Fundamental.
|
|
|
|
Glavni načini lahko spremenijo pomen nekaterim ukazom. Obstajajo,
|
|
denimo, ukazi za pisanje komentarjev v programu, in ker ima vsak
|
|
programski jezik svoje predstave o tem, kako mora komentar izgledati,
|
|
mora vsak glavni način vnesti komentarje drugače. Ker je vsak glavni
|
|
način ime razširjenega ukaza, lahko tako tudi izbiramo glavni
|
|
način. Na primer, M-x fundamental-mode vas postavi v način
|
|
Fundamental.
|
|
|
|
Če nameravate popravljati slovensko (ali angleško) besedilo, kot je na
|
|
primer tole, boste verjetno izbrali tekstovni način (Text).
|
|
>> Vtipkajte M-x text mode<Return>.
|
|
|
|
Brez skrbi, noben od ukazov Emacsa, ki ste se jih naučili, se s tem ne
|
|
spremeni kaj dosti. Lahko pa opazite, da Emacs zdaj jemlje opuščaje za
|
|
dele besed, ko se premikate z M-f ali M-b. V osnovnem načinu jih je
|
|
obravnaval kot meje med besedami.
|
|
|
|
Glavni načini navadno počenjajo majhne spremembe, kot je ta: večina
|
|
ukazov ,,opravi isti posel``, vendar pa to počnejo na različen način.
|
|
|
|
Dokumentacijo o trenutno aktivnem glavnem načinu dobite z ukazom C-h m.
|
|
|
|
>> Uporabite C-u C-v enkrat ali večkrat, toliko, da bo ta vrstica blizu
|
|
vrha zaslona.
|
|
>> Vtipkajte C-h m, da vidite, v čem se tekstovni način (Text) razlikuje
|
|
od osnovnega (Fundamental).
|
|
>> Vtipkajte C-x 1, da umaknete dokumentacijo z zaslona.
|
|
|
|
Glavnim načinom pravimo glavni načini zato, ker obstajajo tudi
|
|
podnačini (angl. minor modes). Podnačini ne nadomeščajo glavnih
|
|
načinom, ampak le spreminjajo njihovo obnašanje. Podnačine lahko
|
|
aktiviramo ali deaktiviramo neodvisno od glavnega načina in neodvisno
|
|
od ostalih podnačinov. Tako lahko ne uporabljate nobenega podnačina,
|
|
en podnačin, ali kombinacijo večih podnačinov.
|
|
|
|
Podnačin, ki je zelo uporaben posebno za pisanje besedil, je Auto
|
|
Fill. Ko je vklopljen, Emacs med pisanjem avtomatično deli vrstice na
|
|
presledkih med besedami, tako da vrstice niso predolge.
|
|
|
|
Vklopite ga lahko z ukazom M-x auto fill mode<Return>. Ko je
|
|
vklopljen, ga lahko izklopite z istim ukazom, M-x
|
|
auto fill mode<Return>. Z istim ukazom torej preklapljamo
|
|
(angl. toggle) med vklopljenim in izklopljenim stanjem.
|
|
|
|
>> Vtipkajte zdaj M-x auto fill mode<Return>. Potem začnite tipkati
|
|
"asdf asdkl sdjf sdjkf"... dokler ne opazite, da je Emacs razbil
|
|
vrstico na dve. Med tipkanjem mora biti dovolj presledkov, saj
|
|
Auto Fill prelamlja vrstice samo na presledkih.
|
|
|
|
Širina besedila je navadno postavljena na 70 znakov, kar pa lahko
|
|
spremenite z ukazom C-x f. Novo širino morate podati kot številčni
|
|
argument.
|
|
|
|
>> Vtipkajte C-x f in argument 20. (C-u 2 0 C-x f). Zatem vtipkajte
|
|
nekaj besedila in poglejte, če bo Emacs res delil vrstice pri 20
|
|
znakih. Potem z ukazom C-x f postavite mejo nazaj na 70.
|
|
|
|
Auto Fill deluje le, kadar pišete novo besedilo, ne pa,
|
|
kadar popravljate že napisan odstavek.
|
|
Tak odstavek lahko poravnate tako, da kazalček premaknete nekam
|
|
znotraj odstavka in ukažete M-q (META-q).
|
|
|
|
>> Premaknite kazalček v prejšnji odstavek in izvedite M-q.
|
|
|
|
|
|
* ISKANJE
|
|
---------
|
|
|
|
Emacs lahko v besedilu poišče niz znakov (zaporedje znakov ali besed),
|
|
naprej ali nazaj po besedilu. Iskanje spada v skupino ukazov za
|
|
premikanje kazalčka, saj premakne kazalček na kraj v besedilu, kjer je
|
|
našel iskani niz.
|
|
|
|
Iskanje v Emacsu je morda nekoliko drugačno od tistega, ki ste ga
|
|
navajeni, in sicer je ,,inkrementalno``. To pomeni, da se iskanje
|
|
odvija hkrati s tem, ko tipkate iskani niz.
|
|
|
|
Ukaza za iskanje sta C-s za iskanje naprej po datoteki in C-r za
|
|
iskanje nazaj po datoteki. POČAKAJTE! Ne preizkušajte jih še ta hip!
|
|
|
|
Ko boste natipkali C-s, boste opazili niz ,,I-search`` kot pozivnik
|
|
v pogovornem vmesniku. To vam pove, da je Emacs v inkrementalnem iskanju
|
|
in vas čaka, da začnete tipkati, kar iščete. <Return> zaključi iskanje.
|
|
|
|
>> Pritisnite zdaj C-s. POČASI, črko za črko, vtipkajte besedo
|
|
,,kazalček``. Za vsako vtipkano črko se ustavite in si oglejte, kaj
|
|
se je zgodilo s kazalčkom.
|
|
>> Še enkrat pritisnite C-s, da poiščete naslednji ,,kazalček``.
|
|
>> Šestkrat pritisnite <Delback> in opazujte, kako se premika kazalček.
|
|
>> Končajte iskanje s tipko <Return>.
|
|
|
|
Ste videli, kaj se je zgodilo? Emacs pri inkrementalnem iskanju skuša
|
|
poiskati niz, ki ste ga natipkali do tistega hipa. Da poiščete
|
|
naslednje mesto, kjer se pojavi ,,kazalček``, samo še enkrat
|
|
pritisnete C-s. Če takega mesta ni, Emacs čivkne in vam sporoči, da
|
|
iskanje ni uspelo. Tudi C-g prekine iskanje.
|
|
|
|
OPOZORILO: Na nekaterih sistemih bo s pritiskom na C-s ekran
|
|
zmrznil. To je znak, da je operacijski sistem prestregel znak C-s in
|
|
ga interpretiral kot znak za prekinitev toka podatkov, namesto da bi
|
|
ga posredoval programu Emacs. Ekran ,,odtajate`` s pritiskom na
|
|
C-q. Potem si oglejte razdelek ,,Spontaneous Entry to Incremental
|
|
Search`` v priročniku za nasvet, kako se spopasti s to nevšečnostjo.
|
|
|
|
Če sredi inkrementalnega iskanja pritisnete <Delback>, boste opazili,
|
|
da to pobriše zadnji znak v iskanem nizu, kazalček pa se premakne
|
|
nazaj na mesto v besedilu, kjer je našel krajši niz. Na primer,
|
|
predpostavimo, da ste do zdaj natipkali ,,ka`` in je kazalček na
|
|
mestu, kjer se prvič pojavi ,,ka``. Če zdaj pritisnete <Delback>, boste
|
|
s tem v pogovornem vmesniku izbrisali ,a`, hkrati pa se bo kazalček
|
|
postavil na mesto, kjer je prvič našel ,k`, preden ste natipkali še
|
|
,a`.
|
|
|
|
Če sredi iskanja vtipkate katerikoli kontrolni znaki ali metaznak
|
|
(razen tistih, ki imajo poseben pomen pri iskanju, to sta C-s in C-r),
|
|
se iskanje prekine.
|
|
|
|
C-s začne iskati na mestu v datoteki, kjer trenutno stoji kazalček, in
|
|
išče do konca datoteke. Če bi radi iskali proti začetku datoteke,
|
|
namesto C-s vtipkamo C-r. Vse, kar smo povedali o ukazu C-s, velja
|
|
tudi za C-r, le smer iskanja je obrnjena.
|
|
|
|
|
|
* VEČ OKEN NA ZASLONU
|
|
---------------------
|
|
|
|
Ena simpatičnih lastnosti Emacsa je, da zna hkrati prikazati več oken
|
|
na ekranu, tudi če ne delamo v grafičnem načinu.
|
|
|
|
>> Premaknite kazalček v to vrstico in vtipkajte C-u 0 C-l (zadnji
|
|
znak je CONTROL-L, ne CONTROL-1)
|
|
>> Zdaj vtipkajte C-x 2, da razdelite zaslon na dve okni.
|
|
V obeh oknih imate odprt ta priročnik. Kazalček je ostal v zgornjem
|
|
oknu.
|
|
>> Pritisnite C-M-v za listanje v spodnjem oknu.
|
|
(Če nimate tipke META, tipkajte ESC C-v).
|
|
>> Vtipkajte C-x o (o kot ,,other``, drugi), da preselite kazalček v
|
|
spodnje okno.
|
|
>> S C-v in M-v se v spodnjem oknu premikate po vsebini datoteke.
|
|
Zgornje okno še vedno kaže ta navodila.
|
|
>> Ponovni C-x o vas vrne v zgornje okno. Kazalček se je vrnil na
|
|
mesto, kjer je bil, preden smo skočili v spodnje okno.
|
|
|
|
Z ukazom C-x o lahko preklapljamo med okni. Vsako okno si zapomni, kje
|
|
v oknu je ostal kazalček, samo trenutno aktivno okno pa kazalček tudi
|
|
v resnici prikaže. Vsi običajni ukazi za urejanje, ki smo se jih
|
|
naučili, veljajo za aktivno okno.
|
|
|
|
Ukaz C-M-v je zelo uporaben, kadar urejamo besedilo v enem oknu,
|
|
drugega pa uporabljamo samo za pomoč. Kazalček ostaja ves čas v oknu,
|
|
v katerem urejamo, po vsebini spodnjega okna pa se vseeno lahko
|
|
premikamo, ne da bi morali venomer skakati iz enega okna v drugega.
|
|
|
|
C-M-v je primer znaka CONTROL-META. Če imate v resnici tipko META (na
|
|
PC navadno levi Alt), lahko vtipkate C-M-v tako, da držite pritisnjeni
|
|
tako CONTROL kot META, medtem ko vtipkate v. Ni pomembno, katero od
|
|
tipk, CONTROL ali META, pritisnete prvo, saj obe delujeta šele, ko
|
|
pritisnete znak, ki sledi (v zgornjem primeru ,v`).
|
|
|
|
Nasprotno pa je vrstni red pritiskanja pomemben, če nimate tipke META
|
|
in namesto nje uporabljate ESC. V tem primeru morate najprej
|
|
pritisniti ESC, potem pa Control-v. Obratna kombinacija, CONTROL-ESC v
|
|
ne deluje. To je zato, ker je ESC znak sam po sebi, ne pa modifikator,
|
|
kot sta CONTROL in META.
|
|
|
|
>> V zgornjem oknu vtipkajte C-x 1, da se znebite spodnjega okna.
|
|
|
|
(Če bi vtipkali C-x 1 v spodnjem oknu, bi se znebili
|
|
zgornjega. Razmišljajte o tem ukazu kot ,,Obdrži samo eno okno, in
|
|
sicer tisto, v katerem sem zdaj.``)
|
|
|
|
Seveda ni nujno, da obe okni kažeta isto delovno področje. Če v enem
|
|
oknu izvedete C-x C-f in poiščete novo datoteko, se vsebina drugega
|
|
okna ne spremeni. V vsakem oknu lahko neodvisno obdelujete drugo
|
|
datoteko.
|
|
|
|
Pa še ena pot, kako v dveh oknih prikažete dve različni datoteki:
|
|
|
|
>> Vtipkajte C-x 4 C-f, in na pozivnik vtipkajte ime ene vaših
|
|
datotek. Končajte z <Return>. Odpre se še eno okno in izbrana
|
|
datoteka se pojavi v drugem oknu. Tudi kazalček se preseli v drugo
|
|
okno.
|
|
|
|
>> Vtipkajte C-x o, da se vrnete nazaj v zgornje okno, in C-x 1, da
|
|
zaprete spodnje okno.
|
|
|
|
|
|
* REKURZIVNI NIVOJI UREJANJA
|
|
----------------------------
|
|
|
|
Včasih boste prišli v nekaj, čemur se pravi ,,rekurzivni nivo
|
|
urejanja``. To se vidi po tem, da v statusni vrstici oglati oklepaji
|
|
oklepajo ime glavnega načina. V osnovnem načinu bi, na primer, videli
|
|
[(Fundamental)] namesto (Fundamental).
|
|
|
|
Iz rekurzivnega nivoja urejanja se rešite, če vtipkate ESC ESC ESC. To
|
|
zaporedje je vsenamenski ukaz ,,pojdi ven``. Uporabite ga lahko tudi
|
|
za ukinjanje odvečnih oken, ali vrnitev iz pogovornega vmesnika.
|
|
|
|
>> Pritisnite M-x, da odprete pogovorni vmesnik, zatem pa vtipkajte
|
|
ESC ESC ESC, da pridete ven iz njega.
|
|
|
|
Z ukazom C-g ne morete iz rekurzivnega nivoja urejanja, ker C-g
|
|
prekliče ukaze ali argumente ZNOTRAJ rekurzivnega nivoja.
|
|
|
|
|
|
* DODATNA POMOČ
|
|
---------------
|
|
|
|
V tem uvodu smo poskušali zbrati dovolj informacij, da lahko začnete
|
|
Emacs uporabljati. Emacs ponuja toliko, da bi bilo nemogoče vse to
|
|
zbrati tukaj. Verjetno pa bi se vseeno radi naučili kaj o številnih
|
|
koristnih možnostih, ki jih še ne poznate. Emacs ima že vgrajene
|
|
veliko dokumentacije, do katere lahko pridete s pritiskom na CONTROL-h
|
|
(h kot ,,help``, pomoč).
|
|
|
|
Za pomoč pritisnete C-h, potem pa vtipkate znak, ki pove, kakšno pomoč
|
|
želite. Če ste poplnoma izgubljeni, vtipkajte C-h ? in Emacs vam bo
|
|
povedal, kakšna pomoč je sploh na voljo. Če ste vtipkali C-h, pa ste
|
|
si premislili, lahko ukaz prekličete s C-g.
|
|
|
|
(Na nekaterih sistemih se znak C-h preslika v kaj drugega. To ni
|
|
dobro, in v takem primeru se pritožite sistemskemu vzdrževalcu. Medtem
|
|
pa, če C-h ne prikaže sporočila o pomoči na dnu zaslona, namesto tega
|
|
poskusite pritisniti tipko F1 ali pa vtipkajte M-x help <Return>.)
|
|
|
|
Najosnovnejši tip pomoči prikaže C-h c. Pritisnite C-h, tipko c, zatem
|
|
pa ukazni znak ali zaporedje ukaznih znakov, in Emacs bo izpisal
|
|
kratek opis ukaza.
|
|
|
|
>> Vtipkajte C-h c C-p.
|
|
Izpiše se nekaj takega kot
|
|
|
|
C-p runs the command previous-line
|
|
|
|
Ukaz je izpisal ime funkcije, ki izvede ukaz. Imena funkcij
|
|
uporabljamo, kadar pišemo prilagoditve in razširitve Emacsa. Ker pa so
|
|
navadno imena funkcij izbrana tako, da kaj povedo o tem, kaj funkcija
|
|
počne, bo verjetno to tudi dovolj za kratko osvežitev, če ste se z
|
|
ukazom že kdaj srečali.
|
|
|
|
Ukazu C-h lahko sledi tudi zaporedje znakov, kot na primer C-x C-s,
|
|
ali, če nimate tipke META, <Esc>v.
|
|
|
|
Za več informacij o ukazu vtipkajte C-h k namesto C-h c.
|
|
|
|
>> Vtipkajte C-h k C-p.
|
|
|
|
To odpre novo okno in v njem prikaže dokumentacijo o funkciji, obenem
|
|
z njenim imenom. Ko ste opravili, vtipkajte C-x 1, da se znebite okna
|
|
z pomočjo. Tega seveda ni potrebno napraviti takoj, ampak lahko
|
|
urejate, medtem ko imate odprto okno s pomočjo, in ga zaprete, ko ste
|
|
končali.
|
|
|
|
Sledi še nekaj uporabnih možnosti, ki jih ponuja pomoč:
|
|
|
|
C-h f Opiši funkcijo. Kot argument morate podati ime
|
|
funkcije.
|
|
|
|
>> Poskusite C-h f previous-line<Return>.
|
|
To izpiše vse podatke, ki jih ima Emacs o funkciji, ki izvede ukaz C-p.
|
|
|
|
Podoben ukaz C-h v izpiše dokumentacijo za spremenljivke, s katerimi
|
|
lahko nastavite obnašanje Emacsa. Ob pozivniku morate vpisati ime
|
|
spremenljivke.
|
|
|
|
C-h a Apropos. Vtipkajte ključno besedo in Emacs bo izpisal
|
|
vse ukaze, ki vsebujejo to ključno besedo. Vse te
|
|
ukaze lahko prikličete z META-x. Pri nekaterih ukazih
|
|
bo Apropos izpisal tudi eno ali dvoznakovno
|
|
zaporedje, s katerim dosežete isti učinek.
|
|
|
|
>> Vtipkajte C-h a file<Return>.
|
|
|
|
To odpre novo okno, v katerem so vsa dolga imena ukazov, ki vsebujejo
|
|
,,file`` v imenu. Izvedete jih lahko z M-x. Pri nekaterih se izpiše
|
|
tudi kratek ukaz, npr. C-x C-f ali C-x C-w pri ukazih find-file in
|
|
write-file.
|
|
|
|
>> Pritisnite C-M-v, da se sprehajate po oknu s pomočjo. Poskusite
|
|
nekajkrat.
|
|
|
|
>> Vtipkajte C-x 1, da zaprete okno s pomočjo.
|
|
|
|
C-h i Priročniki z navodili za uporabo (tkim. datoteke
|
|
"info"). Ta ukaz vas prestavi v posebno delovno
|
|
področje, imenovano "info". V njem lahko prebirate
|
|
priročnike za programe, ki so nameščeni v sistemu. Z
|
|
ukazom m emacs<Return> denimo dobite priročnik za
|
|
urejevalnik Emacs. Če sistema Info še niste
|
|
uporabljali, vtipkajte ? in Emacs vas bo popeljal na
|
|
vódeni izlet po načinu Info in možnostih, ki jih
|
|
ponuja. Ko boste zaključili z branjem tega prvega
|
|
berila, bo priročnik za Emacs v sistemu Info vaš
|
|
glavni vir dokumentacije.
|
|
|
|
|
|
* DRUGE MOŽNOSTI
|
|
----------------
|
|
|
|
Še več se lahko naučite o Emacsu z branjem priročnika, bodisi
|
|
natisnjenega, bodisi na zaslonu v sistemu Info (uporabite menu Help
|
|
ali vtipkajte F10 h r). Dve možnosti, ki vam bosta morda posebej všeč,
|
|
sta samodejno zaključevanje vrstice, s katerim prihranite nekaj
|
|
tipkanja, in dired, s katerim poenostavimo delo z datotekami.
|
|
|
|
Samodejno zaključevanje vrstic je način, s katerim prihranimo nekaj
|
|
tipkanja. Če želite denimo preklopiti v delovno področje *Messages*,
|
|
je dovolj, da vtipkate C-x b *M<Tab> in Emacs bo sam dopolnil
|
|
preostanek imena delovnega področja. Samodejno zaključevanje je
|
|
opisano v sistemu Info v priročniku za Emacs, razdelek ,,Completion``.
|
|
|
|
Dired omogoča izpis seznama datotek v imeniku (in po možnosti tudi
|
|
podimenikih), premikanje po seznamu, obiskovanje (odpiranje),
|
|
preimenovanje, brisanje in druge operacije z datotekami. Dired je
|
|
opisav v sistemu Info v priročniku za Emacs, razdelek ,,Dired``.
|
|
|
|
Priročnik opisuje tudi mnoge druge možnosti Emacsa.
|
|
|
|
|
|
* ZAKLJUČEK
|
|
-----------
|
|
|
|
Zapomnite si, da Emacs zapustite z ukazom C-x C-c. Če bi radi samo
|
|
začasno skočili v ukazno lupino in se kasneje vrnili v Emacs, pa
|
|
storite to z ukazom C-z.
|
|
|
|
Ta učbenik je napisan z namenom, da bi bil razumljiv vsem novincem v
|
|
Emacsu. Če se vam kaj ne zdi jasno napisano, ne valite krivde nase -
|
|
pritožite se!
|
|
|
|
|
|
* RAZMNOŽEVANJE IN RAZŠIRJANJE
|
|
------------------------------
|
|
|
|
Angleški izvirnik tega uvoda v Emacs je naslednik dolge vrste tovrstnih
|
|
besedil, začenši s tistim, ki ga je Stuart Cracraft napisal za izvorni
|
|
Emacs. V slovenščino ga je prevedel Primož Peterlin.
|
|
|
|
To besedilo, kot sam GNU Emacs, je avtorsko delo, in njegovo
|
|
razmnoževanje in razširjanje je dovoljeno pod naslednjimi pogoji:
|
|
|
|
Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004,
|
|
2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
|
|
|
Dovoljeno je izdelovati in razširjati neokrnjene kopije tega spisa
|
|
v kakršnikoli obliki pod pogojem, da je ohranjena navedba o
|
|
avtorstvu in to dovoljenje, ter da distributer dovoljuje prejemniku
|
|
nadaljnje razširjanje pod pogoji, navedenimi v tem dovoljenju.
|
|
|
|
Pod pogoji iz prejšnjega odstavka je dovoljeno razširjati
|
|
spremenjene verzije tega spisa ali njegovih delov, če je jasno
|
|
označeno, kdo je nazadnje vnesel spremembe.
|
|
|
|
Pogoji za razmnoževanje in razširjanje samega Emacsa so malo drugačni,
|
|
a v istem duhu. Prosimo, preberite datoteko COPYING in potem dajte
|
|
kopijo programa GNU Emacs svojim prijateljem. Pomagajte zatreti
|
|
obstrukcionizem (,,lastništvo``) v programju tako, da uporabljate,
|
|
pišete in delite prosto programje!
|
|
|
|
;;; Local Variables:
|
|
;;; coding: iso-latin-2
|
|
;;; sentence-end-double-space: nil
|
|
;;; End:
|
|
|
|
;;; arch-tag: 985059e4-44c6-4ac9-b627-46c8db57acf6
|