Emacs-asiakkaalla lyskomia lukemaan!

Sisällysluettelo

1. Alkutoimet

Huom! Alkutoimia käsittelevä osuus mukailee Kimmo Tykkälän lyskom-sivua, jolta on saatavissa teknisempää tietoa kuin mitä tällä sivulla on tarjolla.

1.1. Muutokset tiedostossa .login

Avaa kotihakemistossasi oleva tiedosto .login jollakin editorilla, esim. emacsilla (uemacs, yliopiston standardi). Jollet ole aikaisemmin tehnyt lisäyksiä tiedostoon, se näyttää suunnilleen tältä:

######################################################################
#
#  This file is read and executed every time you log in
#
######################################################################
# Uncomment next lines, if you wish
#biff y
# Add your own stuff here, before next line
source $HOME/../../local/lib/Login

Kirjoita tiedostoon seuraavat rivit:

setenv KOMSERVER com.helsinki.fi
Tämä lisäys kertoo lyskomille, että serveri on Helsingin yliopiston lyskom-palvelin eikä Linköpingin yliopiston (alkuperäinen) lyskom.
setenv KOMNAME "Mari Voipio" (sijoita lainausmerkkeihin oma nimesi)
KOMNAME kertoo lyskomille, kuka on loggaamassa sisään. Voit tästä huolimatta käyttää lisänimiä, kunhan ne tulevat vasta KOMNAMEssa määritellyn nimen jälkeen. Ympäristömuuttuja KOMNAME ei ole välttämätön, mutta tekee sisäänloggauksen nopeammaksi.

Nyt .login-tiedostosi pitäisi näyttää suunnilleen tältä:

######################################################################
#
#  This file is read and executed every time you log in
#
######################################################################
# Uncomment next lines, if you wish
#biff y
# Add your own stuff here, before next line
setenv KOMSERVER com.helsinki.fi
setenv KOMNAME "Oma Nimi"
source $HOME/../../local/lib/Login

Huom! Muutokset eivät tule voimaan heti, kun lopetat tiedoston muokkauksen ja suljet editorin, vaan vasta seuraavan kerran, kun loggaat sisään johonkin unix-koneeseen.

1.2. Muutokset tiedostossa .cshrc:

Jos et tarvitse GNU Emacsia (=gemacs) muuten (harvat meistä tarvitsevat), avaa tiedosto .cshrc jollakin editorilla ja kirjoita sinne muiden aliaksien (aliakset ovat lyhyempiä ja helpommin muistettavia nimiä pitkille käskyille; niitä on jokaisella jonkin verran valmiiksi, ylläpidon tekeminä) joukkoon:

alias lcom 'gemacs -l /usr/local/contrib/elisp19/lyskom -f lyskom'

Myös tämä muutos tulee voimaan vasta seuraavan kerran, kun loggaat sisään unixiin.

Jos tarvitset GNU Emacsia muuhunkin kuin lyskomin lukemiseen, olet tarpeeksi "edistynyt" ymmärtääksesi Kimmo Tykkälän lyskom-sivua näiltä osin. Katso viritykset sieltä ja siirry osaan 2.

2. Lyskomin emacs-asiakkaan käynnistäminen ja sulkeminen

Jos teit aliaksen, lyscomin emacs-asiakas käynnistyy antamalla käsky lcom jossakin unix-koneessa (ei plootu). Gemacsin käynnistymisen jälkeen lyskom kysy ruudun alareunassa ("käskyrivi", englanniksi "minibuffer") salasanaasi.

Lyskomista poistutaan painamalla näppäintä 'q' niin kuin quit. Tämän jälkeen pitää GNU Emacs sulkea vielä erikseen näppäinyhdistelmällä Ctrl-c Ctrl-x (merkitään jatkossa lyhyemmin C-c C-x).

3. Komentojen antaminen lyskomin emacs-asiakkaalle

Tavallisimmat komennot voi antaa emacs-asiakkaalle kahdella tavalla: joko yhden - neljän näppäimen pikakomennoilla tai painamalla ensin x:ää ja antamalla sitten käsky komentorivillä.

Pitkien käskyjen tulee olla täydellisiä sulkuineen päivineen, esim. 'Write (a) letter', mutta aivan kaikkea ei tarvitse kirjoittaa, koska GNU Emacsissa on komentorivin täydennys; 'wri (a) l' riittäisi tässä tapauksessa. GNU Emacs osaa myös auttaa, jos muistat vain komennon alun: jos kirjoitat komentoriville 'wri' ja painat tabulattoria ensin kerran (jolloin käsky täydentyy niin pitkälle kuin se on yksiselitteinen eli 'Write (a' ) ja sitten toisen kerran, näet vaihtoehtoiset komennot 'Write (a) letter' ja 'Write (an) article'.

KOMENNON KESKEYTTÄMINEN GNU Emacsissa tehdään näppäinyhdistelmällä Ctrl-g (merkitään yleensä C-g).

APUA saa lyskomissa kysymysmerkillä tai kirjoittamalla käskyriville sanan 'help'. Help-ikkunasta pääsee eroon komennolla C-x 1.

4. Tavallisimpia PortaCOMin komentoja vastaavat pikanäppäimet

HUOM! Useampien kirjainten yhdistelmissä kirjaimet annetaan peräkkäin, mutta ilman välilyöntejä (vrt. vanhan comin r a c ja lyskomin rac).

4.1. Sekalaiset

Next conference:        nc
Join (VARO TÄTÄ!):	g	niin kuin 'go'
Present (HUOM!):	w	niin kuin 'who is on'
List new:		ln
"status"		rp	niin kuin 'review presentation'
			sc	niin kuin 'show status of conference'
			su	niin kuin 'show status of user'

4.2. Viestien lukeminen

review:			r SPC (=r+välilyönti)
review commented: 	rc
review all comments:	rac
review all marked:	ram

4.3. Viestien kirjoittaminen

notice:		a 	niin kuin 'article' (julkinen
viesti)
comment:	c 	niin kuin 'comment' (julkinen kommentti)
"persletteri":  p	niin kuin 'personal' (henkilökohtainen kommentti)
"letteri":	m	niin kuin 'mail' (henkilökohtainen kirje)

4.4. Viestien merkitseminen ja tallettaminen

mark article		M
unmark article		U
save article		sa

Kimmo Tykkälä on myös webistänyt täydellisen listan pikanäppäilyistä, hänen listansa on sama, jonka saa help-komennolla tai painamalla kysymysmerkkiä.

5. Muutamia emacs-asiakkaalla tehtäviä erikoistoimintoja

5.1. Jäsenten lisääminen suljettuihin kokouksiin.

  1. Mene kyseiseen kokoukseen näppäimellä g (niin kuin 'go') - j:tä EI VOI käyttää!
  2. Paina näppäintä x, jolloin pääset antamaan pitkiä käskyjä komentoriville.
  3. Kirjoita riville Add (a) member ja paina enteriä. Anna pyydetyt tiedot.

Jos alin rivi häviää näkyvistäsi, rullaa vain nuolinäppäimillä tai page down-näppäimellä alaspäin; se ei ole hukassa!

5.2. Tilattujen kokousten priorisointi omalla listalla.

  1. Siirry käskyriville näppäimellä x.
  2. Kirjoita riville prioritize, jolloin pääset priorisointitilaan.
  3. Voit vaihtaa kokouksen prioriteettilukua siirtämällä kursorin kyseisen kokouksen eteen listalla ja painamalla näppäintä p, jolla on erityismerkitys priorisointitilassa.
  4. Anna uusi prioriteettiluku ja paina enteriä.
  5. Prioriteettitilasta poistutaan näppäimellä q.

6. Pari sanaa GNU Emacsista lyskomin käyttäjälle

HUOM! TKK:n kotisivuilla on täydellisempi GNU Emacs-opas aloittelevalle käyttäjälle. Tämä esitys perustuu valtaosin juuri kyseiseen oppaaseen.

6.1. Muutama peruskomento

Komennon keskeyttäminen: C-g
Käytetään esimerkiksi, kun on vahingossa painanut c:tä, kun oli tarkoitus painaa x:ää. Keskeyttää komennon suorittamisen, komentoriville tulee Quit.
GNU Emacsin eli emacsin lopettaminen (lyskomista poistumisen jälkeen): C-x C-c
c niin kuin close; sulkee gemacsin.

6.2. Ikkunat ja puskurit

GNU Emacs tekee jokaiselle avaamalleen tiedostolle uuden puskurin ("buffer"). Lyskomissa on "peruspuskurin" lisäksi välillä myös editointipuskuri ja/tai priorisointipuskuri. Puskurin nimi näkyy alhaalla olevan tumman palkin ("tilarivi") vasemmassa reunassa.

Puskurikomennot

Puskurin vaihtaminen: C-x b
C-x b (b niin kuin buffer) tarjoaa vaihtoehdoksi edellistä käytettyä puskuria, mutta riville voi kirjoittaa myös jonkin muun puskurin nimen. Esimerkiksi lyscomin "peruspuskurin" ja editointipuskurin välillä liikkuminen käy kätevästi tällä komennolla.
Puskurin "tappaminen": C-x k
C-x k (k niin kuin kill) tappaa sen puskurin, jossa kursori sillä hetkellä on (ts. jos ikkunoita on vain yksi, sillä hetkellä näkyvissä olevan puskurin). Jos puskurissa on tallentamatonta tietoa, gemacs pyytää varmistusta.
Luettelo puskureista: C-x C-b
Tämä käsky jakaa ikkunan kahteen osaan ja näyttää alemmassa ikkunassa listauksen olemassa olevista puskureista. Listasta pääsee eroon komennolla C-x 1, joka sulkee listausikkunan.

TKK:n emacs-opas: Liikkuminen puskureissa

Emacsin ruudun voi jakaa myös useammaksi vaaka- tai pystysuoraksi ikkunaksi. Kaikissa ikkunoissa voi olla joko sama tiedosto tai eri ikkunoihin voi lukea eri puskurien sisällön.

Ikkunakomennot

Ikkunan jakaminen kahteen vaakasuoraan ikkunaan C-x 2
Jos jaat itse ikkunan kahtia tällä komennolla, on molemmissa ikkunoissa sama tiedosto. Monet ohjelmat saattavat ikkunoita avatessaan lukea toiseen ikkunan jonkin muun puskurin, näin tekee esimerkiksi puskurilistaus (ks. puskurit).
Ikkunoiden välillä liikkuminen: C-x o
Kursoria on välillä tarpeen siirtää ikkunasta toiseen (o niin kuin other), koska kursorin paikka on tärkeä mm. ikkunoita kasvatettaessa ja puskureita tapettaessa.
Yhden ikkunan kasvattaminen koko ruudun kokoiseksi: C-x 1
Komento kasvattaa sen ikkunan, jossa kursori sillä hetkellä on, koko ruudun kokoiseksi. Auttaa yleensä pääsemään eroon erilaisista apulistauksista.

TKK:n emacs-opas: Ikkunoiden käsittely

6.3. Yleisimmät editointikomennot

Tekstin merkitseminen: C-SPC
SPC = välilyönti; tämä tapa ei toimi aivan kaikilla päätetyypeillä.
Merkki asetetaan sen tekstinpätkän alkuun, joka halutaan leikata/kopioida. Leikkaamis-/kopioimiskomento annetaan halutun pätkän lopussa.
Tekstin kopioiminen: ESC-w
Huomaa, että ESC-alkuisissa (merkitään yleensä M-, esim. M-w; ESC-toimii meta-näppäimenä useimmissa päätetyypeissä) näppäinyhdistelmissä näppäimiä painetaan peräkkäin, ei yhtä aikaa. Jos kuitenkin vahingossa painaa muita näppäimiä ESC-näppäimen kanssa yhtä aikaa, C-g auttaa.
Tekstin leikkaaminen: C-w
Loppurivin leikkaaminen: C-k
C-k:ta varten ei tarvitse merkata tekstiä, vaan se leikkaa loppurivin kursorista eteenpäin. C-k:lla leikatun tekstin voi palauttaa aivan samalla tavalla kuin C-w-komennolla leikatun tekstin.
Tekstin liimaaminen: C-y
C-y liimaa viimeiseksi leikatun tai kopioidun tekstin kursorista eteenpäin.
Kopioinnin/leikkauksen/liimaamisen peruuttaminen: C-x u
u niin kuin 'undo'. Peruuttaa viimeksi tehdyn toiminnan. Jos C-x u:ta painaa uudestaan, peruuntuu toiseksi viimeinen editointi jne.

6.4. Tympiikö? Ottaako päähän? GNU Emacsista löytyy apu!

Kevennä sydäntäsi tohtorille...

M-x doctor (= esc x doctor) kaivaa emacsista esille psykologin, jolle voit purkaa paineita. Tohtori ei taatusti kyllästy ja siitä pääsee vaivatta eroon tappamalla puskurin (C-x k).

...tai tuijota tylsänä game of life:a

M-x life (= esc x life) taikoo ruudullesi kuvion, joka muuttuu tiettyjen sääntöjen mukaan. Game of life on joka kerta erinäköinen ja aina uusien kuvioiden kehittymistä on vangitsevaa tuijottaa.
Elämästäkin pääsee eroon tappamalla puskurin komennolla C-x k.


Virallinen LysKOM-sivu | Kimmo Tykkälän lyskom-sivu | TKK:n GNU Emacs-opas


Mari Voipio