Războiul editorilor este numele comun al rivalității dintre utilizatorii editorilor de text vi și Emacs. Rivalitatea a devenit o parte durabilă a culturii hackerilor și a comunității de software liber.
Puține elemente de software sunt mai universale decât editorii de text. Multe războaie de flăcări au fost purtate între grupuri care insistau că editorul ales de ei este exemplul perfecțiunii în materie de editare și îi insultau pe ceilalți. Majoritatea participanților la aceste dispute recunosc că este vorba (în mare parte) de ironie. Există bătălii înrudite pe tema sistemelor de operare, a limbajelor de programare și chiar a stilului de indentare a codului sursă.
Războaiele editorilor sunt de obicei purtate între adepții celor mai populare două editoare de pe sistemele de tip Unix: vi și emacs. Certurile se concentrează de obicei pe implementările moderne ale acestor două editoare, dintre care cele mai populare sunt vim și GNU emacs. Majoritatea utilizatorilor acestor sisteme sunt familiarizați cu ambele programe într-o oarecare măsură, cunoscându-le suficient de bine pentru a face cel puțin o editare de bază a textului și, prin urmare, consideră că sunt bine plasați pentru a judeca care este „mai bun”. Ambele editoare sunt instrumente extinse și extrem de puternice și au curbe de învățare destul de abrupte, astfel încât utilizatorii investesc mult timp pentru a cunoaște editorul pe care îl folosesc. Această investiție de timp necesară are ca rezultat utilizatori cu mai multe opinii.
Diferențe între vi și Emacs
Template:POV Cele mai importante diferențe între vi și Emacs sunt:
- Editările vi rețin fiecare permutare a tastelor tastate. Acest lucru creează o cale în arborele de decizie care identifică fără ambiguitate orice comandă.
- Comandațiile Emacs sunt o combinație de taste tastate executate imediat, ceea ce lasă utilizatorului posibilitatea de a alege dacă să folosească sau nu o comandă.
- vi este mai mic și mai rapid și (cel puțin în mod tradițional) are o capacitate limitată de personalizare.
- Emacs durează mai mult la pornire și necesită mai multă memorie. Cu toate acestea, este extrem de personalizabil și include un număr mare de clopoței și fluiere, deoarece este, în esență, un mediu de execuție a limbajului de programare Lisp care rulează un program Lisp conceput pentru editare de text.
- vi a fost utilizat în mod tradițional în interiorul unei console în mod text, neavând o interfață grafică cu utilizatorul (GUI) (deși vim are una).
- În timp ce Emacs, deși a fost inițial conceput pentru a fi utilizat într-o consolă, a dezvoltat o interfață grafică cu utilizatorul (GUI) destul de devreme. Versiunile moderne ale ambelor oferă diverse interfețe grafice.
Observație istorică:
- Diferența dintre setul de caracteristici și timpul de pornire tinde să influențeze modul în care sunt folosite editorii: utilizatorii vi tind să intre și să iasă din editor în mod repetat și să folosească shell-ul Unix pentru sarcini complexe, în timp ce utilizatorii Emacs rămân de obicei în interiorul editorului și folosesc Emacs însuși pentru sarcini complexe. Ambele editoare sunt acum capabile să emită comenzi din shell.
Template:Copyedit
Avantajele editorilor de tip vi
- Să urmeze filozofia „Compoziție de instrumente simple”
- Sunt de dimensiuni reduse și păstrează filozofia Unix „fă un singur lucru și fă-l bine”. Evitați Featuritismul
- Mai rapid decât Emacs (cel puțin în mod tradițional)
- Funcționează în toate sistemele care pot implementa biblioteca standard C, inclusiv DOS,Windows, Mac, BeOS și sisteme compatibile POSIX
- Oferă deplasare simplificată pe text (început|final de linie|cuvânt|paragraf …)
- Poate compune comenzi cu mișcare, de ex.ex. 6dd șterge 6 rânduri
- Permite utilizatorului să mențină degetele pe rândul de start, necesitând astfel mai puține mișcări pentru a edita
Avantajele Emacs
- Filosofia „Totul la îndemână”.
- Nu există comutare de mod („inserare de text”, „deplasare și specificare de comenzi”) (vezi avantajele vi; folosește acordurile metakey).
- Set mai mare de comenzi decât vi.
- Suportul limbajelor non ASCII(chineză, …).
- Extensibil și personalizabil (varianta limbajului de programare Lisp – Emacs Lisp); lista unor caracteristici plăcute:
- Moduri speciale de editare pentru un număr mare de limbaje de programare, marcare, tipărire (Bash, C, Java, Lisp, LaTex, Wikipedia …).
- Poate, de asemenea, emula vi (cunoscut sub numele de „viper-mode”).
- Poate executa calcule în calendarul mayaș și discordant (GNU Emacs).
Nota istorică:
- La început, Emacs includea un ecran util care explica cum să ieși și care era prezentat la pornirea programului. La acea vreme, vi nu oferea un astfel de indiciu, forțând mulți utilizatori care nu-și dădeau seama cum să iasă să își deconecteze pur și simplu terminalul.
Umor
Frecvent, la un moment dat în discuție, cineva va sublinia faptul că ed este editorul de text standard.
Un interviu din 1984 cu Bill Joy, creatorul vi, a dezvăluit că el însuși folosea ed, ceea ce i-a determinat pe susținătorii Emacs să spună: „nici măcar Bill Joy nu mai folosește vi.”
Biserica Emacs, formată de Richard Stallman, este o glumă și, deși se referă la vi ca la „editorul fiarei” (vi-vi-vi fiind 6-6-6 în cifre romane) , nu se opune folosirii vi; mai degrabă, numește software-ul proprietar o anatemă. („Folosirea unei versiuni free-software a vi nu este un păcat; este o penitență.”) Are propriul grup de știri, alt.religion.emacs, care are postări care pretind să susțină această religie parodie.
Iată o postare tipică:
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 s-a declarat în glumă că este Sfântul IGNU-cius, un sfânt în Biserica Emacs.
Suporterii vi au creat un cult opus al vi, susținut de cei mai duri utilizatori de Emacs ca fiind o încercare de a-și „maimuțări superiorii”.
În ceea ce privește natura modală a vi, unii utilizatori de Emacs glumesc spunând că vi are două moduri – „beep repetat” și „sparge totul”. Utilizatorilor de vi le place să glumească pe seama faptului că secvențele de taste ale Emacs induc sindromul tunelului carpian, sau să menționeze una dintre numeroasele expansiuni satirice ale acronimului EMACS, cum ar fi „Escape Meta Alt Control Shift” (o glumă la adresa dependenței Emacs de tastele modificatoare).Alții au afirmat că acest acronim înseamnă, de fapt, „Eight Megabytes And Constantly Swapping” (într-o perioadă în care aceasta era o cantitate mare de memorie) sau „EMACS Makes Any Computer Slow” (un acronim recursiv precum cele folosite de Stallman), cu referire la cerințele ridicate de resurse de sistem ale Emacs. Umoristul mai modern folosește „Eventual Mallocs All Core Storage” (În cele din urmă, Mallocs All Core Storage) ca glumă de viitor. Cei care au o anumită supărare pe aroma GNU a EMACS (poate un fan XEmacs) pot propune „Generally Not Used, Except by Middle-Aged Computer Scientists” ca expansiune adecvată.
Ca o aluzie la featurismul târâtor al Emacs, susținătorii vi vor descrie Emacs ca fiind „un sistem de operare grozav, căruia îi lipsește doar un editor decent”.
Există un umor suplimentar care ironizează vi la http://www.dina.kvl.dk/~abraham/religion/vi-tutorial.html, precum și Lisp (asociat cu Emacs) la banda desenată xkcd aici, aici și aici.
Word War vi este un joc umoristic de tip „shoot’em up” asemănător cu Defender, bazat pe războiul editorilor.
Starea actuală a războiului editorilor
În trecut, au înflorit mulți editoare mici, modelate după Emacs sau derivate din Emacs. Acest lucru s-a datorat importanței conservării memoriei cu cantitatea relativ minusculă disponibilă la acea vreme. În zilele noastre, cu o plenitudine de memorie, multe vi-alegeri, Vim în special, au crescut în dimensiune și în complexitatea codului. Aceste variante vi de astăzi, ca și vechile variante ușoare de Emacs, tind să aibă multe dintre avantajele și dezavantajele percepute de partea opusă. Și anume, versiunile recente de Vim pot avea mai multe extensii și pot rula mai lent decât vechile versiuni de Emacs. Mai mult, având în vedere cantitățile mari de memorie RAM din computerele moderne, atât vi cât și Emacs sunt relativ ușoare în comparație cu IDE-uri mari, cum ar fi Eclipse, care tind să atragă ironiile utilizatorilor de vi și Emacs deopotrivă.
O’Reilly, o companie care vinde tutoriale Vim și Emacs, spune că cel de Vim se vinde de două ori mai mult decât cel de Emacs. În cadrul unui eveniment de paintball, aproximativ de două ori mai multe persoane s-au înscris pentru Vim decât pentru Emacs. Acest lucru a fost interpretat de unii ca sugerând că aproximativ de două ori mai multe persoane preferă Vim decât Emacs. Cu toate acestea, se remarcă faptul că mulți programatori avansați folosesc Emacs și diversele sale ramificații, inclusiv Linus Torvalds care folosește MicroEMACS.
În cadrul unei sesiuni Q&A cu nouă programatori proeminenți, atunci când au fost întrebați care sunt instrumentele lor preferate, șase dintre ei au menționat Emacs.
În plus față de workalikes vi și emacs, pico și clona sa de software liber nano și alți editori au adesea proprii avocați terți în războaiele editorilor, deși nu în măsura vi și emacs.
Template:ReflistTemplate:Refbegin
- The Art of Unix Programming: Template:Citește cartea
Template:Refend
- Biserica de resurse Emacs
- Reguli, păcate, virtuți, Zeii și multe altele ale Bisericii Emacs
- Sfântul Ignucius – așa cum este portretizat de Richard Stallman
- Vi Lovers Home Page
- $EDITOR sucks-rules-o-meter măsoară ce activiști ai editorului sunt mai vizibili pe Web
- Ed este editorul de text standard
- O transcriere a lui Richard prezentându-l pe St. IGNUcias and the Church of Emacs
de:Editorenkriegfr:Guerre d’éditeursid:Perang editorja:エディタ戦争
pl:Wojny edytorowe
.