Emacs Windowsiin

Tämä dokumentti on tarkoitettu lyhyeksi käytännölliseksi ohjeeksi siitä, miten Gnu-Emacs-editori hankitaan ja asennetaan Windows-koneeseen (Windows 95/98/NT/2000).

Mikä Emacs on

Emacs on Gnu-projektin kehittämä erittäin monipuolinen tekstieditori. Se ei ole tekstinkäsittelyohjelma samassa mielessä kuin esim. MS Word vaan tarkoitettu pelkkää tekstiä (plain text, ilman fonttimäärittelyjä tms.) sisältävien dokumenttien käsittelyyn.

Emacsin käytön perusteita kuvaa Emacs-opas, jossa on myös linkkejä lisätietoihin Emacsista. Se on tosin kirjoitettu Emacsin Unix-versiota varten, mutta valtaosa asioista toimii myös Windows-versioissa.

Mistä sen saa?

Emacs on vapaasti levitettävä ohjelma, joka on saatavissa hyvin monille tietokoneille, mukaan lukien Win 95-, Win 98-, Win NT ja Win 2000 -koneet. (Myös DOSille se on saatavissa.) Voit siis laillisesti kopioida Emacsin ihan mistä vain sen löydät.

Emacsin Windows-version jakelupaikka on http://ftp.gnu.org/gnu/windows/emacs/

Seuraavat tiedot ovat suureksi osaksi vanhentuneita. Erityisesti olen huomannut, että Emacsin jakelupaketti ei auennut Windows Vistan normaalilla pakatun kansion avaustoiminnolla, vaan hankin sitä varten IZArc-ohjelman.

Tarkemmat menettelyt ovat:

  1. Valitse omasta koneestasi sopiva hakemisto, johon haet ja asennat Emacsin.
  2. Tarkista, että sinulla on PowerArchiver-ohjelma (tai hae ja asenna kyseinen maksuton ohjelma) tai tarkista, että sinulla on riittävän uusi muu ns. zippausohjelma; esimerkiksi WinZip 8.0 sopii. Vaihtoehtoisesti: Hae utilities-hakemiston i386-alihakemistosta apuohjelmat tar ja gunzip. Nimet voivat hiukan vaihdella; tätä kirjoitettaessa ne ovat seuraavat (mutta tiedostot kannattaa tallentaa kätevämmillä nimillä kuten gunzip.exe ja tar.exe):
  3. Hae sitten latest-hakemiston i386-alihakemistosta tuorein versio. Normaalikäyttöön sopii ns. minimal precompiled distribution -versio, jonka tiedostonnimessä on bin, ei barebin (suppea versio) eikä fullbin (laaja versio). Sen nimi on tätä kirjoitettaessa mutta se kannattaa tallentaa lyhyemmällä nimellä, esim. emacs.tar.gz. (Muista tarjolla olevista vaihtoehdoista kertoo kyseisen hakemiston README-tiedosto.)

Asennus

Jos olet hankkinut Emacsin edellä kuvatulla tavalla, asennus käy seuraavasti:

Pakkauksesta purkaminen

Jos sinulla on PowerArchiver, WinZip 8.0 tai vastaava ohjelma asennettuna, mene (Windowsissa) hakemistoon, jonne olet hakenut Emacs-paketin, ja napsauta sen kuvaketta. Toimi kyseisen ohjelman ohjeiden mukaan purkaaksesi paketin.

Vaihtoehtoisesti, jos sinulla ei ole mainitunlaista ohjelmaa vaan olet hankkinut gunzip- ja tar-ohjelman, niin...

  1. Mene komentorivitilaan ("DOS-ikkunaan").
  2. Mene hakemistoon, johon olet pannut hankkimasi Emacsin.
  3. Anna seuraava komento:
    gunzip -c -d emacs.tar.gz | tar xvf -
    (huomaa, että komennon lopussa on todella yhdysmerkki)

Varsinainen asennus:

  1. Mene komentorivitilaan ("DOS-ikkunaan").
  2. Mene alihakemistoon, jonka edellä mainittu komento on luonut ja johon se on sijoittanut Emacsin (tätä kirjoitettaessa sen nimi on emacs-21.2) ja sitten sen alihakemistoon bin
  3. Anna komento
    addpm

Nyt Emacs on asennettu, ja voit käynnistää sen klikkaamalla ruudulle ilmestyvää kuvaketta. Kuvake kannattaa ehkä siirtää työpöydälle.

Vinkkejä

Näyttää siltä, että joissakin tilanteissa Emacs ei osaa näyttää ns. skandeja (åäö) oikein, vaan esim. ä:n tilalla näkyy d. Tähän auttaa se, että perustat C-levysi päähakemistoon alustustiedoston .emacs, jonka sisältö on seuraava:

(standard-display-european 1)
(require 'latin-1)
(Tämän jälkeen pitää Emacs käynnistää uudestaan.)

Datan siirto leikepöydän kautta toisesta Windows-sovelluksesta Emacsiin käy näin:

  1. leikataan (cut) data normaaliin tapaan
  2. mennään Emacs-ikkunaan ja klikataan kohtaa, johon leikattu teksti halutaan
  3. valitaan Emacsin Edit-valikosta kohta Paste.

Jos haluat voida käynnistää Emacsin "Windows-maisesti", niin voit menetellä kahdella eri tavalla (jotka eivät sulje toisiaan pois):

Aloitushakemiston asettaminen käy kirjoittamalla .emacs-tiedostoon rivi
(cd "hakemisto")
siten, että hakemistopolkuun kuuluva kenoviiva (\) kahdennetaan eli esim. c:\jukan kirjoitetaan muodossa c:\\jukan. Tämä johtuu siitä, että kenoviivalla on erikoismerkitys .emacs-tiedostossa (tai siis kielessä, jolla sen sisältö kirjoitetaan). Tämän asetuksen ansiosta Emacs tarjoaa kyseisen hakemistopolun oletusarvoksi, kun Emacsin käynnistettyäsi esimerkiksi annat käskyn control-X control-V.

Emacsissa on pieniä työkaluja HTML-dokumenttien kirjoittamiseen. Ikkunan yläreunan HTML-alasvetovalikosta löytyy toimintoja, joilla lisätään dokumenttiin erilaisia HTML-rakenteita. Ks. juttua Emacsin HTML-moodi.

Emacsiin sisältyvää Gnusia voi käyttää nyysien (newsien) lukemiseen ja kirjoittamiseen. Lähettämistä varten on lisättävä .emacs-tiedostoon sentapainen rivi kuin

(setq user-mail-address "jkorpela@malibutelecom.com")
mihin kirjoitat lainausmerkkien väliin tietenkin oman meiliosoitteesi. Tai ainakin osoitteen, joka näyttää oikealta Internet-meiliosoitteelta. (Ellei näin tehdä, Gnus antaa virheilmoituksen
You appear to have a misconfigured system. Really post?
eikä lähettäminen onnistu.) Samalla vaivalla voi lisätä rivin, joka ilmoittaa todellisen lähettäjänimen, seuraavaan tapaan:
(setq user-full-name "Jukka K. Korpela")

Jos ns. spämmin takia et halua kirjoittaa oikeaa osoitettasi, huolehdi ainakin siitä, että et aiheuta muille enempää haittaa kuin on tarpeen. Eli ei ainakaan mitään, mikä saattaisi olla jonkun oikea osoite. Parasta on silloin kirjoittaa osoite, jonka viimeinen osa on .invalid.

Ja jos haluat käyttää Emacsia meilin ("sähköpostin") lähettämiseen, on hyvä konfiguroida se lähettämään oikeanlaiset otsaketiedot.

Seuraavassa enemmittä selittelyittä .emacs-tiedoston malli, jossa on yritetty ottaa huomioon kaikki edellä mainitut konfiguroinnit ja jossa on korostettu ne kohdat, jotka pitää muuttaa käyttäjän oman tilanteen mukaisiksi:

(standard-display-european 1)
(require 'latin-1)
(cd "c:\\jukan")
(setq user-mail-address "jkorpela@malibutelecom.com")
(setq user-full-name "Jukka K. Korpela")
(setq smtpmail-default-smtp-server "smtp.malibutelecom.com")
(setq smtpmail-local-domain nil)
(setq send-mail-function 'smtpmail-send-it)
(load-library "smtpmail")
(load-library "message")
(setq mail-user-agent 'message-user-agent)
(setq message-send-mail-function 'smtpmail-send-it)
(custom-set-variables
 '(message-default-headers "Mime-Version: 1.0
Content-type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
"))

Ongelmia?

Ongelmissa voi olla apua mm. seuraavista: