Emacs

Linux.fista
Versio hetkellä 7. huhtikuuta 2022 kello 20.10 – tehnyt Lahtis (keskustelu | muokkaukset) (Ohjelma mallineen päivitys + uudet tiedot)
Siirry navigaatioon Siirry hakuun
GNU Emacs


Tekijä(t)
  • Richard Stallman
  • Free Software Foundation
  • Ensijulkaisu 1976
    Vakaa versio 28.1  / 4. huhtikuuta 2022
    Ohjelmoitu Emacs Lisp, Roff, C
    Käyttöliittymä komentorivi
    Tyyppi käyttöympäristö
    Lisenssi GPL
    Kotisivu gnu.org/software/emacs
    Lähdekoodi
  • ftp.gnu.org/gnu/emacs/
  • github.com/emacs-mirror/emacs
  • Tässä artikkelissa kerrotaan yleisesti ohjelmasta Emacs. Opas Emacsin peruskäyttöön löytyy artikkelista Emacsin peruskäyttö.

    GNU Emacs, yleensä vain Emacs on monipuolinen ja mukautettava tekstieditori ja yleinen käyttöympäristö. Emacsin ensimmäisen version kirjoitti Richard Stallman vuonna 1976. Emacsia voi laajentaa Emacs Lisp -kielellä, jolla on toteutettu jopa mediasoitinten ja www-selainten kaltaisia sovelluksia. GNU Emacsista haarautui (fork) vuonna 1991 XEmacs, jossa oli aikoinaan mm. edistyksellisempi graafinen käyttöliittymä. Nykyään XEmacsin kehitys on jäänyt jälkeen GNU Emacsista.

    Emacs on todella laaja ohjelma. Sen mukana tulee mm. sähköpostiohjelma (Gnus, RMail), uutisryhmälukija (Gnus), monipuolinen kalenteri, laskin ja pelejä (löytyy Tools-valikosta). Usein vitsaillaankin, että Emacs on hyvä käyttöjärjestelmä, jossa on huono tekstieditori.

    Komentoja

    Seuraavassa on listattu joitakin yleiskäyttöisiä komentoja. Joidenkin merkitys muuttuu kulloinkin käytössä olevan moodin mukaan, ja voivatpa moodit määrittää myös omia näppäinkomentoja. Esimerkiksi Vi-editorin emulointiin on olemassa vakiona peräti kolme moodia. Näppäinkomennot, kuten monet muutkin asiat Emacsissä, voi mukauttaa mieleisekseen.

    Seuraavassa luettelossa C tarkoittaa Control-näppäintä ja M Meta-näppäintä, joka on yleensä Alt, mutta Esc-näppäin toimii myös.

    Tiedostossa liikkuminen

    Seuraavat komennot liikuttavat osoitinta puskurin sisällä.

    C-p rivi ylöspäin C-n rivi alaspäin
    C-f merkki eteenpäin C-b merkki taaksepäin M-f sana eteenpäin M-b sana taaksepäin
    C-a rivin alkuun C-e rivin loppuun M-a lauseen alkuun M-e lauseen loppuun
    C-v ruudullinen eteenpäin M-v ruudullinen taaksepäin
    M-> puskurin loppuun M-< puskurin alkuun

    Tekstin poistaminen, palauttaminen ja valinta

    Emacsissä tekstin valinta tapahtuu asettamalla merkki ja liikuttamalla kursoria. Valinta on merkin ja kursorin väliin jäävä alue.

    C-välilyönti Aseta merkki C-x C-x Vaihda merkin ja kursorin paikat keskenään.
    askelpalautin Poista edellinen merkki M-askelpalautin Leikkaa edeltävä sana
    C-d Poista seuraava merkki M-d Leikkaa seuraava sana
    C-k Leikkaa rivin loppu M-k Leikkaa lauseen loppu
    C-w Leikkaa valinta M-w Kopioi valinta
    C-y Liitä M-y Korvaa edellinen liitos vanhemmalla leikkauksella
    C-_ Kumoa edellinen muokkaus

    Etsi ja korvaa

    Seuraavat komennot etsivät merkkijonoa puskurista.

    C-s Etsi eteenpäin C-r Etsi taaksepäin
    M-% Etsi ja korvaa

    Tiedostot

    C-x C-f Avaa tiedosto C-x C-s Tallenna tiedosto C-x C-w Tallenna tiedosto nimellä C-x s Tallenna kaikki tiedostot

    Puskurit ja ikkunat

    C-x C-b Listaa puskurit C-x k Tuhoa puskuri
    C-x 0 Piilota aktiivinen ikkuna C-x 1 Suurenna aktiivinen ikkuna
    C-x 2 Kahdenna ikkuna pystysuunnassa C-x 3 Kahdenna ikkuna leveyssuunnassa
    C-x o Siirry seuraavaan ikkunaan C-x b Vaihda ikkunan puskuria

    Apukomennot

    C-h ? Näytä lista aputoiminnoista C-h t Aloita interaktiivinen opas
    C-h r Lue Emacsin manuaalia C-h m Näytä aktiivisten pää- ja sivutilojen dokumentaatio ja näppäinkomennot

    Muuta

    C-u numero Toista seuraava komento n kertaa C-g Keskeytä komento
    C-x C-c Lopeta Emacsin käyttö C-z Poistu tilapäisesti (paluu komennolla fg)
    F10 Siirry valikkoon

    Emacs-sovelluksia

    Emacs sisältää hyvin laajalti erilaisia ohjelmia. Seuraavassa listataan niistä muutamia. Useimmat käynnistyvät joko komennolla M-x ohjelma, tai käynnistyvät automaattisesti esim. lähdekooditiedostoa avattaessa.

    Hakemistomuokkain Dired

    Dired on moodi tiedostonhallintaan. Siihen pääsee komennolla C-x d tai avaamalla hakemiston (C-x C-f hakemisto). Tällöin Dired luo puskurin, jossa hakemiston tiedostot ovat listattuna ls -l -komennon tavoin. Puskurin voi myös luoda find-komennon hakutuloksista komennolla M-x find-dired. Tavallisiin tiedosto-operaatiohin, kuten siirtoon, kopiointiin, poistamiseen, pakkaamiseen, salaamiseen ja niiden omistajan, oikeuksien, nimen muuttamiseen löytyy omat komentonsa. Mikäli nämä eivät riitä, voi komennolla ! suorittaa kuorikomennon valituille tiedostoille.

    Image-dired mahdollistaa kuvien selaamisen joko pikkukuvina tai täydessä koossaan. Komento C-t d luo merkityistä tiedostoista pikkukuvat ja näyttää ne omassa puskurissaan.

    Kalenteri ja päiväkirja

    • calendar on Emacsin kalenteri. Se tuntee lukuisia kalenterijärjestelmiä, pystyy laskemaan auringonnousun ja -laskun ajankohdat ja kuun vaiheet ja tulostamaan kalentereita LaTeX- tai Html-muodossa. Kalenterissa liikkuminen sujuu pitkälti aivan tavallisilla siirtymiskomennoilla, kuten C-p, M-a ja vastaavat. Ohessa on malli, jota soveltamalla Emacsin kalenteri kotoistuu. Sen voi liittää sopivasti soveltaen esim. /.emacs.d/init.el-tiedostoon.

       (setq
             calendar-latitude [62 25 north]
             calendar-longitude [25 75 east]
             calendar-location-name "Jyväskylä"
             calendar-week-start-day '1
             european-calendar-style 't)
    

    Kuoria

    Yksittäisiä kuorikomentoja voi suorittaa komennolla M-!. Numeerisella argumentilla, esim. C-u M-! kuorikomennon tuloste kirjoitetaan nykyiseen puskuriin. M-| taas käyttää valintaa komennon standardisyötteenä. Jos nämä eivät riitä vaan tarvitaan interaktiivinen komentokuori-istunto, löytyy Emacsistä seuraavat sovellukset:

    • shell on yksinkertainen, mutta "tyhmä" kuori.
    • ansi-term ja term käynnistävät "älykkään" kuoren, jolla voi käyttää Ncurses-sovelluksia, kuten vaikkapa Nethackia. Tämä mahdollistaa järkevän editorin, kuten Vimin, käytön Emacsissä.
    • eshell on kokonaan elispillä ohjelmoitu kuori, joka on shelliä "tyhmempi".

    IRC-asiakasohjelmia

    • ERC
    • rcirc

    Org

    Org kuuluu siihen harvalukuiseen sovellusten joukkoon, joiden käyttö on helpompaa kuin niiden kuvaaminen lyhyesti ja täsmällisesti. Ainakin se on Emacsin oma moodi muistiinpanojen ja todo-listojen kirjoittamiseen, projektinhallintaan ja dokumenttien laadintaan. Sitä voi käyttää esimerkiksi henkilökohtaisen Wikin tapaan. Orgilla kirjoitetut dokumentit voi viedä esimerkiksi html-sivuiksi, LaTeX-, pdf- tai odt-tiedostoiksi.

    Ominaisuuksista voidaan mainita mm. deadlinet, aikaleimat, taulukkolaskenta, hypertekstilinkit tiedostoihin sekä verkkoon ja literate programming -ympäristö.

    Lyhyt johdatus Org-moodin käyttöön on esimerkiksi tämä David O'Toolen tutoriaali.

    TRAMP

    TRAMP (suomeksi 'kulkuri') eli Transparent Remote Access, Multiple Protocol tuo etätiedostojen muokkauskyvyn Emacsiin. Se tukee ssh-, rsh-, telnet-protokollia.

    Katso myös

    Aiheesta muualla

    Emacs-oppaita

    v  k  m
      Kehitysympäristöt
    Perinteiset Komentorivi | Tekstieditorit | Vim | Emacs
    GNOME Anjuta
    KDE KDevelop
    JAVA Borland JBuilder | EclipseNetBeans
    muut Geany | JeditLazarus
    web ElectronBluefish