Editor war on yleinen nimi vi- ja Emacs-tekstieditorien käyttäjien väliselle kilpailulle. Kilpailusta on tullut pysyvä osa hakkerikulttuuria ja vapaiden ohjelmistojen yhteisöä.

Vähän ohjelmistoja on yleisempiä kuin tekstieditorit. Monet liekkisodat on käyty sellaisten ryhmien välillä, jotka vaativat, että heidän valitsemansa editori on muokkauksen täydellisyyden perikuva, ja loukkasivat muita. Useimmat näiden kiistojen osanottajat tunnustavat, että kyseessä on (suurelta osin) kieli poskessa. Aiheeseen liittyviä taisteluita on käyty käyttöjärjestelmistä, ohjelmointikielistä ja jopa lähdekoodin sisennystyylistä.

Editorisotia käydään yleensä Unixin kaltaisten järjestelmien kahden suosituimman editorin, vi:n ja emacsin, kannattajien välillä. Kiistat keskittyvät yleensä näiden kahden editorin nykyaikaisiin toteutuksiin, joista suosituimmat ovat vim ja GNU emacs. Useimmat näiden järjestelmien käyttäjät tuntevat molemmat ohjelmat jossain määrin, tuntevat ne tarpeeksi hyvin tehdäkseen ainakin jonkin verran perustekstin muokkausta, ja siksi he katsovat olevansa hyvissä asemissa tekemään päätöksiä siitä, kumpi on ”parempi”. Molemmat editorit ovat laajoja ja erittäin tehokkaita työkaluja, ja niiden oppimiskäyrä on melko jyrkkä, joten käyttäjät käyttävät paljon aikaa tutustuakseen käyttämäänsä editoriin. Tämä välttämätön aikainvestointi johtaa siihen, että käyttäjät ovat mielipiteellisempiä.

Vi:n ja Emacsin erot

Template:POV Tärkeimmät erot vi:n ja Emacsin välillä ovat:

  • vi:n muokkaus säilyttää jokaisen kirjoitettujen näppäinten permutaation. Tämä luo päätöspuuhun polun, joka yksilöi yksiselitteisesti minkä tahansa komennon.
  • Emacsin komennot ovat näppäiltyjen näppäinten yhdistelmiä, jotka suoritetaan välittömästi, mikä jättää käyttäjälle mahdollisuuden valita, käyttääkö komentoa vai ei.
  • vi on pienempi ja nopeampi, ja (ainakin perinteisesti) sillä on rajalliset muokkausmahdollisuudet.
  • Emacsin käynnistyminen kestää pidempään ja se tarvitsee enemmän muistia. Se on kuitenkin hyvin muokattavissa ja sisältää suuren määrän kelloja ja pillejä, koska se on pohjimmiltaan Lisp-ohjelmointikielen suoritusympäristö, joka ajaa tekstinkäsittelyyn suunniteltua Lisp-ohjelmaa.
  • vi:tä käytettiin perinteisesti tekstimoodin konsolin sisällä, eikä sillä ollut graafista käyttöliittymää (GUI) (vaikka vimissä on sellainen).
  • Emacs, vaikka se alunperin suunniteltiinkin käytettäväksi konsolilla, kasvatti graafisen käyttöliittymän jo melko varhain. Molempien nykyaikaiset versiot tarjoavat erilaisia graafisia käyttöliittymiä.

Historiallinen huomautus:

  • Ero ominaisuuksissa ja käynnistymisaikataulussa pyrkii vaikuttamaan editorien käyttötapaan: vi:n käyttäjät pyrkivät yleensä menemään editoriin sisään ja sieltä ulos toistuvasti ja käyttämään Unixin komentotulkkia monimutkaisissa tehtävissä, kun taas Emacsin käyttäjät pysyvät tavallisesti editorin sisäpuolelle jäävässä editorissa ja käyttävät monimutkaisten tehtävien suorittamiseen itse Emacsia. Molemmat editorit pystyvät nyt antamaan komentoja komentotulkista.

Template:Copyedit

Vi:n kaltaisten editorien edut

  • Seuraa ”yksinkertaisten työkalujen kooste”-filosofiaa
  • Koko on pieni ja noudattaa Unixin filosofiaa ”tee yksi asia ja tee se hyvin”. Vältä Featuritis
  • Nopeampi kuin Emacs (ainakin perinteisesti)
  • Käynnistyy kaikissa järjestelmissä, jotka pystyvät toteuttamaan C-standardikirjaston, mukaan lukien DOS,Windows, Mac, BeOS ja POSIX-yhteensopivat järjestelmät
  • Tarjoaa yksinkertaistettua liikkumista tekstissä (rivien alku|loppu|sana|kappaleet …)
  • Voi koota komentoja liikkeen avulla, esim.esim. 6dd poistaa 6 riviä
  • Mahdollistaa käyttäjän pitää sormet aloitusrivillä, jolloin muokkaaminen vaatii vähemmän liikkeitä

Emacsin edut

  • ”Kaikki käden ulottuvilla” -filosofia.
  • Ei tilojen vaihtamista (”tekstin lisääminen”, ”liikkuminen ja komentojen määrittäminen”) (vrt. vi:n hyödyt; käyttää metakey-akkordeja).
  • Laajempi joukko komentoja kuin vi.
  • Tuki muille kuin ASCII-kielille(kiinan kieli, …).
  • Laajennettavissa ja muokattavissa (Lisp-ohjelmointikielen muunnos – Emacs Lisp); luettelo joistakin mukavista ominaisuuksista:
    • Erikoismuokkaustilat lukuisille ohjelmointi-, merkintä- ja kirjoitusohjelmointikielille (Bash-ohjelmointi-, C-ohjelmointi-, java-ohjelmointikielet, Lisp-ohjelmointikielet, latex-ohjelmointikielet, wikipedia …).
    • Voi myös emuloida vi:tä (tunnetaan nimellä ”viper-mode”).
    • Voi suorittaa laskutoimituksia Mayan ja Discordian kalentereissa (GNU Emacs).

Historiallinen huomautus:

  • Emacs sisälsi aikoinaan hyödyllisen poistumista selittävän näytön, joka esitettiin ohjelman käynnistyessä. Tuohon aikaan vi ei tarjonnut tällaista vihjettä, mikä pakotti monet käyttäjät, jotka eivät keksineet, miten poistua, yksinkertaisesti katkaisemaan päätelaitteensa.

Huumori

Säännöllisesti, jossain vaiheessa keskustelua, joku huomauttaa, että ed on vakiotekstieditori.

Vi:n luojan Bill Joyn haastattelussa vuonna 1984 paljastui, että hän itse käytti ed:tä, mikä johti Emacsin kannattajat sanontaan: ”Edes Bill Joy ei käytä enää vi:tä.”

Richard Stallmanin perustama Emacsin kirkko (Church of Emacs Church of Emacs) on vitsiniekka, ja vaikkakin siinä vi:hen vi:tä nimitetäänkin ”petoeditoriksi” (vi-vi-vi on roomalaisin numeroin 6-6-6) , se ei vastusta vi:n käyttöä, vaan pikemminkin kutsuu omistusoikeudella suojattuja ohjelmistoja anateemaksi. (”Vi:n vapaan ohjelmistoversion käyttäminen ei ole synti, vaan katumus.”) Sillä on oma uutisryhmänsä, alt.religion.emacs, jossa on viestejä, jotka väittävät tukevansa tätä parodiauskontoa.

Tässä on tyypillinen viesti:

Truly, our responsibility to spread the Gospel of the Gnu is weighty.Cleave to what is good. Remember the words the prophet Stallmanbrought down from the Mount MIT, graved in Lisp on tablets ofcrystalline lambda calculus.Only this true: Emacs is pure.All else is false.Do not be misled by false gods like Vi, the Editor of the Beast.Do not be seduced by Word, the Scarlet Woman of Babylon.Do not be driven to madness by Xcode, the Blind Priest of the Children of Asherath.When the wild winds of chaos blow, stay pure.When the universe collapses in shards around you, stay holy.When the gibbering hobgoblins of apostate Editors attack with shardsof broken syntax, seek the crystalline stillness within you.Brethren, ensure that you (Meta-x-say-hallel-to-Emacs) daily for otherwise you will be lost.When the Beast comes, only Emacs can save you.This was brought to you as a public service by the Holy and Ineffable Church of The Mighty Emacs.SUPPORT THIS CRUSADE WITH YOUR DONATIONS. EMAIL THE STILL BEATINGHEART OF A VILE VI USER TO emacs-highpriest@god-hates-vi-users

Stallman on vitsaillen julistautunut Pyhäksi IGNU-ciukseksi, Emacsin kirkon pyhäksi.

vi:n kannattajat ovat luoneet vastakkaisen vi:n kultin, jonka kovan linjan Emacs-käyttäjät väittävät olevan yritys ”matkia parempia”.

Vi:n modaalisen luonteen suhteen jotkut Emacs-käyttäjät vitsailevat, että vi:llä on kaksi moodia – ”piippaa toistuvasti” ja ”riko kaikki”. Vi-käyttäjät vitsailevat mielellään, että Emacsin näppäinsekvenssit aiheuttavat karpaalitunneli-oireyhtymää, tai mainitsevat jonkun monista satiirisista laajennuksista lyhenteestä EMACS, kuten ”Escape Meta Alt Control Shift” (vitsi Emacsin riippuvuudesta modifiointinäppäimiin).Toiset ovat esittäneet, että tämä lyhenne tarkoittaa itse asiassa ”Eight Megabytes And Constantly Swapping” (kahdeksan megatavua ja jatkuva vaihtaminen) (aikana, jolloin se oli suuri määrä muistia) tai ”EMACS Makes Any Computer Slow” (”EMACS tekee kaikista tietokoneista hitaita”) (Stallmanin käyttämien lyhenteiden kaltainen rekursiivinen lyhenne), viitaten Emacsin korkeisiin järjestelmäresurssien vaatimuksiin. Nykyaikaisempi humoristi käyttää ”Eventually Mallocs All Core Storage” (Lopulta Mallocs kaikki ydintallennustila) tulevaisuudenkestävänä nokkeluutena. Ne, joilla on erityistä kaunaa EMACSin GNU-makua kohtaan (ehkä XEmacsin fani), voivat ehdottaa ”Generally Not Used, Except by Middle-Aged Computer Scientists” sopivaksi laajennukseksi.

Vi:n puolestapuhujat kuvailevat Emacsia ”loistavaksi käyttöjärjestelmäksi, josta puuttuu vain kunnon editori” Emacsin hiipivää featurismia vastaan.

Huumoria, joka pilkkaa vi:tä on lisäksi osoitteessa http://www.dina.kvl.dk/~abraham/religion/vi-tutorial.html, sekä Lispiä (joka liittyy Emacsiin) xkcd-sarjakuvassa täällä, täällä ja täällä.

Word War vi on humoristinen Defenderin kaltainen shoot’em up, joka perustuu editorisotaan.

Editorisodan nykytilanne

Vi menneisyydessä kukoistivat lukuisat Emacsin mallin mukaan mallinnetut tai Emacsista johdetut pienet editorit. Tämä johtui muistin säästämisen tärkeydestä silloisella verrattain vähäisellä muistimäärällä. Nykyään, kun muistia on runsaasti, monet vi-alikit, erityisesti Vim, ovat kasvaneet kooltaan ja koodin monimutkaisuudeltaan. Näillä nykypäivän vi-muunnoksilla, kuten vanhoilla kevyillä Emacs-muunnoksilla, on yleensä monia vastapuolen koettuja etuja ja haittoja. Nimittäin Vimin uusimmissa versioissa voi olla enemmän laajennuksia ja ne toimivat hitaammin kuin aiemmat Emacs-versiot. Lisäksi nykyaikaisten tietokoneiden suurten RAM-muistimäärien vuoksi sekä vi että Emacs ovat suhteellisen kevyitä verrattuna Eclipsen kaltaisiin suuriin IDE-ohjelmiin, jotka yleensä herättävät pilkkaa sekä vi:n että Emacsin käyttäjissä.

O’Reilly, yritys, joka myy Vim- ja Emacs-oppaita, sanoo, että Vim-oppaita myydään kaksi kertaa enemmän kuin Emacsia. Eräässä paintball-tapahtumassa Vimiin ilmoittautui noin kaksi kertaa enemmän ihmisiä kuin Emacsiin. Joidenkin mielestä tämä viittaa siihen, että noin kaksi kertaa useampi henkilö pitää Vimistä enemmän kuin Emacsista. On kuitenkin huomattu, että monet edistyneet ohjelmoijat käyttävät Emacsia ja sen eri versioita, mukaan lukien Linus Torvalds, joka käyttää MicroEMACSia.

Kyselyssä, johon osallistui yhdeksän tunnettua ohjelmoijaa, kun heiltä kysyttiin, mitkä olivat heidän suosikkityökalunsa, kuusi heistä mainitsi Emacsin.

Vi- ja emacs-työkalujen lisäksi pico ja sen vapaaohjelmistoklooni nano sekä muut editorit saavat editorisodissa usein omat kolmannen osapuolen puolestapuhujansa, joskaan eivät vi:n ja emacsin verran.

Template:ReflistTemplate:Refbegin

  • The Art of Unix Programming: Template:Cite book

Template:Refend

  • Kirkon Emacs-resurssit
  • Säännöt, synnit, hyveet, Gods and more of The Church of Emacs
  • Saint Ignucius – as portrayed by Richard Stallman
  • Vi Lovers Home Page
  • $EDITOR sucks-rules-o-meter mittaa sitä, minkä editorin aktivistit näkyvät paremmin Webissä
  • Ed on vakiotekstieditori
  • Transkripti siitä, kun Richard esittelee St. IGNUcias ja Emacsin kirkko

de:Editorenkriegfr:Guerre d’éditeursid:Perang editorja:エディタ戦争

pl:Wojny edytorowe

Vastaa

Sähköpostiosoitettasi ei julkaista.