Emacs-opas, luku 7 Viestintä:

Meiliohjelmat Rmail ja Mail

Mitä Rmail ja Mail ovat

Rmail on tarkoitettu meilin lukemiseen Emacsin alla, Mail taas on vain meilin lähettämistä varten. Rmaililla voi lukea meilejä, vastata niihin (reply), lähettää niitä edelleen (forward) sekä tallettaa viestejä. Meilin sisäinen talletusmuoto on erillinen Rmail-formaatti.

Rmailin käynnistäminen ja lopettaminen

Rmail käynnistetään käskyllä M-x rmail. Ikkunaan tulee ensimmäinen lukematon viesti ja käskyriville ilmoitus uusien viestien määrästä. Jos uutta meiliä ei ole tullut, Rmail antaa tästä ilmoituksen ja näyttää viimeisimmän meilin; tämän jälkeen käyttäjä voi selailla vanhoja meilejä.

Käynnistettäessä Rmail lukee meilit käyttäjän meililaatikosta ja tallettaa ne RMAIL-nimiseksi tiedostoksi käyttäjän kotihakemistoon erityisessä Rmail-formaatissa.

Uusien viestien lukeminen tapahtuu painamalla välilyöntiä.

Rmail lopetetaan painamalla q-kirjainta. Tällöin palataan siihen tilanteeseen Emacsissa, mistä Rmail käynnistettiin.

Mailin käynnistäminen

Mailin voi käynnistää käskyllä C-x m (tai M-x mail) taikka C-x 4 m, joista jälkimmäinen avaa samalla uuden ikkunan. Koko puskuri on varattu kirjeen kirjoittamiselle, ja siinä voi käyttää normaaleja Emacsin editointikäskyjä.

Aluksi Mail kirjoittaa näytön alkuun seuraavan:

To:
Subject: 
--text follows this line--
Kursori jää tekstin To: perään, ja käyttäjä voi suoraan kirjoittaa vastaanottajan meiliosoitteen. Sen jälkeen siirrytään seuraavan rivin loppuun (esim. C-n C-e) ja kirjoitetaan viestin otsikko. Seuraavaksi mennään koko tekstin loppuun (esim. M->) ja ryhdytään kirjoittamaan itse viestiä. Sen kirjoittamisen jälkeen tilanne näyttää seuraavantapaiselta:
To: Jukka.Korpela@malibutelecom.com
Subject: Testimeili
--text follows this line-- 
Tämä on testiviesti.

Meili lähetetään käskyllä C-c C-c, jonka jälkeen Emacs ilmoittaa lähettämisestä. Tällöin Mail-ohjelman käyttö päättyy eli palataan tilanteeseen, josta aloitettiin meilin lähettäminen.

Apua!

Sekä Rmailissa että Mailissa saa apua käskyllä C-h, joka käynnistää toimintatilan kuvauksen. Myös muut Emacsin sisäiset avunannot toimivat (ks. kohtaa 6.3). Infopuussa on varsin kattavat ohjeet molemmille ohjelmille.

Meilien lukeminen ja jatkokäsittely

Rmail näyttää käynnistyessään ensimmäisen lukemattoman viestin tai, ellei uutta meiliä ole tullut, viimeisen luetun viestin. Seuraava ruudullinen viestiä saadaan näkyviin painamalla välilyöntiä, ja edelliseen ruutuun voidaan palata painamalla Delete-näppäintä.
SPC
Näyttää seuraavan ruudullisen viestiä.
DEL
Näyttää edellisen ruudullisen viestiä.
n
Siirtyy seuraavaan tuhoamattomaan viestiin (next).
p
Siirtyy edelliseen tuhoamattomaan viestiin (previous).
M-n
Pakottaa siirtymään seuraavaan viestiin, vaikka se olisi tuhottu.
M-p
Pakottaa siirtymään edelliseen viestiin, vaikka se olisi tuhottu.
>
Siirtyy RMAIL-tiedoston viimeiseen viestiin.
j
Siirtyy RMAIL-tiedoston ensimmäiseen viestiin, ellei numeroargumentilla toisin määrätä. Esim. C-u 3 j siirtyy kolmanteen viestiin.

Kun uutta meiliä tulee vanhaa luettaessa

Jos uutta meiliä tulee Rmailia käytettäessä, sen voi siirtää systeemin meililaatikosta RMAIL-tiedostoon ja luettavaksi painamalla g:tä (get new mail).

Miten kannattaa lopettaa Rmail

Rmailin voi lopettaa kuten aiemmin esitettiin, painamalla q:ta, joka on näppäinlyhennys käskylle M-x rmail-quit. Tällöin RMAIL-puskuri jää olemaan ja voit palata siihen jatkamaan viestien selailua ilman uutta Rmailin käynnistystä vaihtamalla puskuria käskyllä C-x b RMAIL.

Puskurin voi myös tappaa (C-x k), jolloin Emacs varmistaa, haluatko tallettaa RMAIL-tiedoston. Tätä voi käyttää paniikkitilanteissa, jolloin ei ole aivan varma, onko tehnyt jotain, jota ei olisi kannattanut tehdä; silloin tietysti kerrotaan, että muutoksia ei haluta tallettaa.

Jos vahingossa tai tahallaan tappaa ja lopettaa Emacsinsa, se kysyy, talletetaanko muutokset. Tämä pätee myös RMAIL-tiedostoon.

Meilin kirjoittaminen ja lähetys

Mail-ohjelman voi käynnistää käskyllä C-x m tai toiseen ikkunaan käskyllä C-x 4 m tai Rmailin sisällä käskyllä m.

Puskurissa *mail* on valmiina kentät otsikkotiedoille To: ja Subject:. Omia kenttiään voi lisätä seuraavaan tapaan:

To:
viestin vastaanottaja, ainoa pakollinen kenttä
Subject:
viestin otsikko
Keywords:
avainsanoja, jotka kuvaavat viestin sisältöä
Fcc:
kopio viestistä tähän tiedostoon
Cc:
kopiot viestistä myös näille käyttäjille
Bcc:
kopiot viestistä niin, ettei se näy muille käyttäjille
Reply-to:
kenelle ohjataan viestiin tulevat vastaukset.

Rivin --text follows this line-- jälkeen kaikki teksti on itse kirjettä eli vastaanottajalle päätyvää viestiä.

Käskyllä C-c C-w lisätään viestin perään käyttäjän kotihakemistosta tiedosto .signature.

Kirjoitettuasi viestin lähettäminen tapahtuu painamalla C-c C-c, jolloin viesti lähetetään, *mail*-puskuri tuhotaan ja palataan puskuriin, josta maili päätettiin lähettää.

Meiliin vastaaminen

Meiliin vastaaminen (reply) onnistuu käskyllä r. Tällöin Rmail käynnistää Mailin toisessa ikkunassa ja asettaa tarpeelliset otsikkokentät valmiiksi. Otsikkotietoja voidaan muutella: voit lisätä tai poistaa vastaanottajia tai lisätä uusia otsikkotietoja.

Alkuperäisen viestin saat kopioitua vastaukseesi käskyllä C-c C-y. Voit myös vaihtaa takaisin RMAIL-tiedostoon ja valita näkyville jonkin toisen viestin ja kopioida senkin sisällön parhaillasi kirjoittamaasi viestiin käskyllä C-c C-y.

Viesti tulee taas tekstin --text follows this line-- jälkeen ja jälleen käskyllä C-c C-w lisätään .signature.

Jos välillä "unohdat" vastauksesi ja jatkat meiliesi selailua, pääset palaamaan aloittamaasi viestiin käskyllä c, continue.

Lähettäminen tapahtuu käskyllä C-c C-c, jonka jälkeen palataan takaisin Rmailiin, tai käskyllä C-c C-s, joka vain lähettää viestin mutta jättää *mail*-puskurin esille jatkotoimenpiteitä varten.

Kopio meilistä itselle

Joskus voi tulla tarvetta ottaa lähetettävästä viestistä kopio itselleen. Helpointa on lisätä itsensä vastaanottajien joukkoon, mutta myös automaattisia tapoja viestien tallettamiseen on. Bcc:n eli muille näkymättömän kopion saa automaattisesti itselleen lisäämällä .emacsiinsa rivin

(setq mail-self-blind t)

Meilin lähetys eteenpäin

Joskus tulee tarve välittää saamansa viesti edelleen ("forwardoida") jollekulle toiselle. Siihenkin on Rmailissa mahdollisuus käskyllä f.

Tällöin Emacs kopioi edelleen lähetettävän viestin kokonaisuudessaan puskuriin *mail* ja kysyy sille uuden vastaanottajan. Viestiin on mahdollista tehdä omia korostuksiaan ja poistaa tarpeettomia pätkiä.

Lähettäminen tapahtuu käskyllä C-c C-c.

Meilin tuhoaminen

Kun viesti on käynyt tarpeettomaksi, se kannattaa tuhota pois levytilaa viemästä. Rmailissa tuhoaminen tapahtuu kahdessa vaiheessa, mikä antaa mahdollisuuden muuttaa mieltään. Ensin merkitään viestit tuhottaviksi, ja Rmail käyttäytyy ikäänkuin ne olisivat poistetut. Oikeilla käskyillä ne ovat vielä löydettävissä. Toisessa vaiheessa viestit hävitetään lopullisesti.
d
Merkitsee viestin tuhottavaksi ja siirtyy seuraavaan tuhoamattomaan viestiin (delete).
C-d
Merkitsee viestin tuhottavaksi ja siirtyy edelliseen tuhoamattomaan viestiin.
u
Poistaa tuhoamismerkinnän ensimmäiseltä viestiltä taaksepäin mennessä (undelete).
e tai x
Tuhoaa viestit lopullisesti; Rmailin lopettaminen tekee tämän automaattisesti.

Meilien talletus

Emacs tallettaa kaikki meilit automaattisesti RMAIL-tiedostoon käyttäjän kotihakemistoon. Tallettaessaan Emacs käyttää erikoista Rmail-formaattia eli lisää tiedostoon ohjausmerkkejä, jotta Rmail osaisi näyttää viestin kerrallaan ja liittää viestiin oikeat attribuutit (onko vastattu, muokattu jne.).

Yksittäisten viestien tallettaminen onnistuu sekä RMAIL-formaatissa että tavallisessa, ns. Unix mail -formaatissa. Jos samalle nimelle talletetaan useampia viestejä, menee uudempi viesti tiedoston perään.

o
Tallettaa viestin Rmail-formaatissa kysyen, mille nimelle talletetaan.
i
Rmail vierailee o:lla talletetussa tiedostossa eli näyttää tiedoston sisällön (talletetun viestin).
C-o
Tallettaa viestin Unix mail-formaatissa, ilman ohjauskoodien lisäyksiä.

Tunnisteiden hyödyntäminen

Jokaiseen Rmailin viestiin liittyy tunnisteita (labels), joista ilmenee, onko viesti luettu, vastattu, talletettu, muokattu, tuhottu vai lähetetty edelleen. Omia tunnisteitaan voi myös lisätä, jotta viestin löytää nopeammin.

Tunnisteen lisäys tapahtuu käskyllä a. Rmailin tuntemat tunnisteet voi täydentää tabulaattorilla.

Tunnisteet näkyvät tilarivin oikeassa reunassa viestin numeron yhteydessä tai otsikoiden yhteenvedossa (kts. seuraava kappale). Käskyllä l voi nopeasti kaivaa esiin kaikki tuhottaviksi merkityt viestit, talletetut viestit tai jo vastatut viestit.

Tunniste poistetaan käskyllä k.

Meilien käsittely otsikkoriveittäin Rmailissa

Rmailia voi käyttää ilman, että koskaan näkee muuta kuin viestin kerrallaan, mutta jos meiliä tulee paljon, eikä kaikkea ehdi kerralla lukea, voi tehdä otsikoista yhteenvedon ja valita, mitä lukea ja mitä säästää myöhemmäksi.

Käskyllä h avataan toiseen ikkunaan RMAIL-summary-puskuri, jossa on viestin numero, lähettäjä, viestin tunnisteet ja aihe.

Esimerkki Rmail-SUMMARY-puskurista:

17  18-Jun    Paivi.Hyvarinen@hut.fi   tärkeää, Opaskokous
18  20-Jun    jkorpela@vipunen.hut.fi  opasopas
19  25-Jun    kiravuo@meridian.hut.fi  Netiketti
Näissä otsikoissa voi liikkua kuten viesteissäkin:
SPC
Näyttää seuraavan ruudullisen viestiä toisessa ikkunassa.
DEL
Näyttää edellisen ruudullisen viestiä.
n
Siirtyy seuraavaan tuhoamattomaan viestiin.
p
Siirtyy edelliseen tuhoamattomaan viestiin.
C-n
Siirtyy seuraavaan viestiin.
C-p
Siirtyy edelliseen viestiin.
>
Siirtyy RMAIL-tiedoston viimeiseen viestiin.
j
Siirtyy kursorin osoittamaan viestiin.
d
Merkitsee tuhottavaksi kursorin osoittaman viestin ja siirtyy seuraavaan.
u
Poistaa tuhoamismerkin kursorin osoittamasta tai viimeisimmästä tuhotusta viestistä.
q
Lopettaa Rmailin.
x
Poistuu yhteenvedosta ja tuhoaa ikkunan.

Meilialiakset Rmailissa

Rmailissa voi määritellä oman meilialiaksen monimutkaisille osoitteille tai tietylle ryhmälle, jolle lähetetään usein meiliä. Aliakset säilytetään .mailrc-tiedostossa käyttäjän kotihakemistossa.

Aliasmäärittely on seuraavaa muotoa:

alias nimi lista

missä nimi on se nimi, joka aliakselle halutaan antaa, ja lista on lista osoitteista yhdellä rivillä välilyönnillä erotettuna.

Esimerkki alias-määrittelystä:

  alias itse viu@uta.fi viu@vehka.cs.uta.fi viu@vipunen \
  viu@niksula viu@pepperone
Huomaa, että \ tarkoittaa rivin jatkuvan vielä rivinvaihdonkin yli. Jos auto-fill-mode on päällä, jolloin Emacs katkaisee rivit automaattisesti, täytyy joko auto-fill-mode ottaa pois päältä tai tuhota rivinvaihto käsin.