Muokataan sivua Emacs
Siirry navigaatioon
Siirry hakuun
Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.
Nykyinen versio | Oma tekstisi | ||
Rivi 1: | Rivi 1: | ||
''Tässä artikkelissa kerrotaan yleisesti ohjelmasta Emacs. Opas Emacsin peruskäyttöön löytyy artikkelista [[Emacsin peruskäyttö]]''. | |||
{{ | {{Ohjelma | nimi=Emacs | kuva=[[Kuva:Emacs-logo.png|150px]] | kuvateksti= | lisenssi=[[GPL]] | kotisivu=[http://www.gnu.org/software/emacs/ gnu.org/software/emacs] | käyttöliittymä=[[X]] tai teksti}} | ||
GNU Emacs on monipuolinen ja mukautettava [[tekstieditori]] ja yleinen käyttöympäristö. GNU Emacsin kehityksen aloitti [[Richard Stallman]] ([[RMS]]) vuonna 1984, joskin ensimmäiset Emacs-sukuiset editorit syntyivät jo 70-luvulla. 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öposti]]ohjelma (Gnus, RMail), [[uutisryhmä]]lukija (Gnus), monipuolinen kalenteri, laskin ja pelejä (löytyy <tt>Tools</tt>-valikosta). Usein vitsaillaankin, että Emacs on hyvä käyttöjärjestelmä | Emacs on todella laaja ohjelma. Sen mukana tulee mm. [[sähköposti]]ohjelma (Gnus, RMail), [[uutisryhmä]]lukija (Gnus), monipuolinen kalenteri, laskin ja pelejä (löytyy <tt>Tools</tt>-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 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. | 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ä. | Seuraavat komennot liikuttavat osoitinta puskurin sisällä. | ||
{| | {| | ||
Rivi 68: | Rivi 49: | ||
|} | |} | ||
== Tekstin poistaminen, palauttaminen ja valinta == | |||
Emacsissä tekstin valinta tapahtuu asettamalla merkki ja liikuttamalla kursoria. Valinta on merkin ja kursorin väliin jäävä alue. | Emacsissä tekstin valinta tapahtuu asettamalla merkki ja liikuttamalla kursoria. Valinta on merkin ja kursorin väliin jäävä alue. | ||
{| | {| | ||
Rivi 105: | Rivi 86: | ||
|} | |} | ||
== Etsi ja korvaa == | |||
Seuraavat komennot etsivät merkkijonoa puskurista. | Seuraavat komennot etsivät merkkijonoa puskurista. | ||
{| | {| | ||
Rivi 117: | Rivi 98: | ||
|} | |} | ||
== Tiedostot == | |||
{| | {| | ||
|'''C-x C-f''' | |'''C-x C-f''' | ||
Rivi 129: | Rivi 110: | ||
|} | |} | ||
== Puskurit ja ikkunat == | |||
{| | {| | ||
|'''C-x C-b''' | |'''C-x C-b''' | ||
Rivi 153: | Rivi 134: | ||
|} | |} | ||
== Apukomennot == | |||
{| | {| | ||
|'''C-h ?''' | |'''C-h ?''' | ||
Rivi 166: | Rivi 147: | ||
|} | |} | ||
== Muuta == | |||
{| | {| | ||
|'''C-u numero''' | |'''C-u numero''' | ||
Rivi 182: | Rivi 163: | ||
|} | |} | ||
= 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. | 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|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. | 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|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. | 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. | * '''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. | ||
<tt> | <tt> | ||
Rivi 202: | Rivi 184: | ||
</tt> | </tt> | ||
== 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: | 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. | * '''shell''' on yksinkertainen, mutta "tyhmä" kuori. | ||
Rivi 208: | Rivi 190: | ||
* '''eshell''' on kokonaan elispillä ohjelmoitu kuori, joka on shelliä "tyhmempi". | * '''eshell''' on kokonaan elispillä ohjelmoitu kuori, joka on shelliä "tyhmempi". | ||
== IRC-asiakasohjelmia == | |||
* '''ERC''' | * '''ERC''' | ||
* '''rcirc''' | * '''rcirc''' | ||
== Org == | |||
[http://orgmode.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. | [http://orgmode.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. | ||
Rivi 220: | Rivi 202: | ||
Lyhyt johdatus Org-moodin käyttöön on esimerkiksi [http://orgmode.org/worg/org-tutorials/orgtutorial_dto.html tämä David O'Toolen tutoriaali]. | Lyhyt johdatus Org-moodin käyttöön on esimerkiksi [http://orgmode.org/worg/org-tutorials/orgtutorial_dto.html 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. | '''TRAMP''' (suomeksi 'kulkuri') eli Transparent Remote Access, Multiple Protocol tuo etätiedostojen muokkauskyvyn Emacsiin. Se tukee [[ssh]]-, [[rsh]]-, [[telnet]]-protokollia. | ||
=Katso myös= | |||
*[[Emacsin peruskäyttö]] | *[[Emacsin peruskäyttö]] | ||
Rivi 230: | Rivi 212: | ||
*[[Vi]] | *[[Vi]] | ||
=Aiheesta muualla= | |||
*[http://www.gnu.org/software/emacs/ Emacsin kotisivusto] | *[http://www.gnu.org/software/emacs/ Emacsin kotisivusto] | ||
*[https://www.emacswiki.org/emacs/SiteMap Emacs-wiki] | *[https://www.emacswiki.org/emacs/SiteMap Emacs-wiki] | ||
Rivi 236: | Rivi 218: | ||
*[[wikipedia:GNU Emacs|Emacs englanninkielisessä Wikipediassa]] | *[[wikipedia:GNU Emacs|Emacs englanninkielisessä Wikipediassa]] | ||
== Emacs-oppaita == | |||
*[https://wiki.aalto.fi/display/unixaapinen/Emacs-tekstieditori Aalto-yliopiston Emacs-opas] | *[https://wiki.aalto.fi/display/unixaapinen/Emacs-tekstieditori Aalto-yliopiston Emacs-opas] | ||
*[http://www.cs.tut.fi/~jkorpela/emacs/ Jukka Korpelan Emacs-opas] | *[http://www.cs.tut.fi/~jkorpela/emacs/ Jukka Korpelan Emacs-opas] | ||
Rivi 243: | Rivi 225: | ||
*[https://emacsrocks.com/ Emacs Rocks! -videosarja] | *[https://emacsrocks.com/ Emacs Rocks! -videosarja] | ||
[[Luokka:Tekstieditorit]] | [[Luokka:Tekstieditorit]] | ||
[[Luokka:Kehitystyökalut]] | [[Luokka:Kehitystyökalut]] |