Xemacs

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 7 maj 2022; kontroller kräver 2 redigeringar .
Xemacs

Sorts Textredigerare
Utvecklaren XEmacs community
Skrivet i C [3] och Lisp
Gränssnitt GTK
Operativ system Cross plattform
Första upplagan 1991
senaste versionen
betaversion
Licens GNU GPL
Hemsida xemacs.org
 Mediafiler på Wikimedia Commons

XEmacs  är en grafisk och konsoltextredigerare av Emacs -familjen , en gaffel av GNU Emacs , distribuerad under GNU GPL-licensen , som körs på de flesta Unix-liknande operativsystem och på Microsoft Windows .

Historik

I slutet av 1980-talet stod Richard P. Gabriels företag Lucid inför behovet av att använda Emacs som redaktör i deras nya Energize-produkt, en integrerad utvecklingsmiljö för C++ . På grund av en betydande försening mellan 1987 och 1993 med att släppa en ny version av GNU Emacs [4] , rekryterade Lucid ett utvecklingsteam för att förbättra och vidareutveckla redaktörskoden [5] , med förväntningen att deras nya version, som släpptes 1991, skulle bli grunden för GNU Emacs 19. Men på grund av tidsbrist kunde de inte skicka in sina ändringar till Free Software Foundation (FSF) [6] .

När Lucid gick i konkurs 1994, fortsatte andra utvecklare att underhålla koden [7] . Företag som Sun Microsystems ville fortsätta göra Lucid Emacs; dock blev användningen av detta varumärke juridiskt tvetydig, på grund av att ingen visste vem som skulle kontrollera varumärket "Lucid" [8] .

Medan XEmacs ursprungligen stödde X11 , kunde den, liksom GNU Emacs, kompileras utan GUI-stöd och köras på icke-X11-fönstersystem, så prefixet "X" i namnet är inte associerat med specifikt fönstersystemstöd. Dessutom hade XEmacs under en tid vissa terminalfunktioner, såsom syntaxmarkering , som GNU Emacs inte hade.

År 2004 skapade redaktörens utvecklingsteam, ledd av Steve Youngs , en oberoende gaffel - SXEmacs , med hänvisning till det instabila tillståndet för XEmacs, såväl som svårigheten att göra radikala förbättringar på grund av XEmacs-gemenskapens konservatism.

Funktioner

Bland redaktörens funktioner finns kommandon för att manipulera ord och stycken (ta bort, flytta, flytta inuti dem, och så vidare), syntaxmarkering av källkoder , tangentbordsmakron för att exekvera godtyckliga sekvenser av redigeringskommandon som definieras av användaren. XEmacs har omfattande inbyggd hjälp, tillsammans med fem manualer tillgängliga på programmets webbplats. Många språk stöds. För att redigera programs källkoder är de så kallade !!redigeringslägena implementerade för många programmeringsspråk.

XEmacs kan köras på en mängd olika operativsystem, inklusive olika varianter av BSD , Linux , Solaris , Mac OS X. Att köra programmet på Mac OS kräver X11 ; även om utvecklingen av den ursprungliga versionen för Carbon startade 2007. Det finns två versioner av XEmacs för Microsoft Windows, den ena kräver ingen ytterligare programvara för att installeras, och den andra kräver att Cygwin är installerad för att kunna köras .

Användaren kan åsidosätta beteendet hos vilken del av editorn som helst med hjälp av programmeringsspråket - Emacs Lisp  - en version av Lisp. Att ändra källkoden kräver inte att redigeraren laddas om eller kompileras om. Många färdiga tillägg skrivna i Lisp är tillgängliga för programmerare.

Utveckling

Redan från början av projektet försökte utvecklarna att släppa nya versioner av editorn så ofta som möjligt, för tillfället finns det 2-3 släpp per år [9] . Det upprätthåller också öppenheten för experiment, och XEmacs introducerar ofta nya funktioner före andra redaktörer i familjen, som att applicera olika typsnitt eller använda färger när man arbetar med textterminaler. Med tiden skriver utvecklare aktivt om koden för att möta modernare standarder. XEmacs har ett enhetligt pakethanteringssystem skrivet av oberoende utvecklare. Från och med 2007 stöder redigeraren GTK+ [10] .

XEmacs utveckling har alltid varit väldigt öppen, inklusive tillgång till anonyma CVS , senare Mercurial , och e -postlistor med öppen källkod . Avsikten är att upprätthålla full kompatibilitet med GNU Emacs [11] .

Releaseförberedelser utförs i tre grenar: stabil ( stabil ), gamma ( gamma ) och beta ( beta ) [12] , innovationer dyker först upp i beta, även om dessa versioner kan vara otillräckligt testade och ha problem med stabilitet och säkerhet.

XEmacs och GNU Emacs

Några av XEmacs huvudutvecklare har publicerat sina åsikter om splittringen mellan XEmacs och GNU Emacs, till exempel har Stephen Turnbull publicerat sammanfattningar av båda sidors argument. En av huvudorsakerna till kontroversen har varit olika åsikter om delegering: FSF anser att delegering av FSF är nödvändigt för att ge skydd mot GPL-intrång [13] , medan XEmacs-utvecklarna hävdar att frånvaron av behovet av delegering möjliggjorde stora företag att engagera sig i utveckling, eftersom företag ibland kan licensiera koden, men på grund av oviljan att komma i konflikt med ägarna kan det vara svårt för företag att få tillstånd att helt överföra rättigheterna till koden. Free Software Foundation innehar rättigheterna till mycket av XEmacs-koden, eftersom dessa rättigheter överfördes under fusions- och samutvecklingsförsök. Huruvida en bit ny kod från XEmacs kommer in i GNU Emacs beror ofta på en viss författares önskan att överföra rättigheterna till FSF.

Nya funktioner i en editor dyker vanligtvis upp snart i en annan. Dessutom gör många utvecklare ändringar i båda projekten, särskilt stora Lisp-undersystem som Gnus och Dired utvecklas för att fungera i båda redaktörerna.

Anteckningar

  1. http://www.xemacs.org/Releases/21.4.22.html
  2. http://www.xemacs.org/Releases/21.5.34.html
  3. Xemacs Open Source Project på Open Hub: Languages-sidan - 2006.
  4. Emacs tidslinje . Hämtad 23 oktober 2008. Arkiverad från originalet 4 augusti 2015.
  5. Command Line Wars  Arkiverad 22 november 2010.
  6. FOLDOC . Hämtad 23 oktober 2008. Arkiverad från originalet 8 mars 2008.
  7. XEmacs History of XEmacs  Arkiverad 18 december 2014.
  8. XEmacs Internals Manual: A History of Emacs . Hämtad 23 oktober 2008. Arkiverad från originalet 7 september 2008.
  9. XEmacs: Release Notice Archive . Tillträdesdatum: 23 oktober 2008. Arkiverad från originalet den 6 februari 2015.
  10. XEmacs: XEmacs and the GTK Platform Arkiverad 4 mars 2016.
  11. XEmacs FAQ: Introduktion . Hämtad 23 oktober 2008. Arkiverad från originalet 10 oktober 2008.
  12. XEmacs: Release Notice Archive . Tillträdesdatum: 23 oktober 2008. Arkiverad från originalet den 6 februari 2015.
  13. Varför FSF får upphovsrättsuppdrag från bidragsgivare - Free Software Foundation . Hämtad 23 oktober 2008. Arkiverad från originalet 1 juli 2009.

Länkar