Macintosh-brugere har flere valg af forudbyggede Emacs. Jeg er opmærksom på følgende versioner:
- YAMAMOTO Mitsuharu “s version
- David Caldwell” s version
- Vincent Goulet “s version
- David Reitter “s Aquamacs version
Nogle spørgsmål jeg havde i tankerne:
- Er disse versioner forskellige på nogen væsentlig måde?
- Kan man få funktionaliteten af de andre ved blot at ændre initialiseringsfilen?
- Gør disse ændringer vej tilbage opstrøms?
Jeg er opmærksom på, at Aquamacs betragtes som “uortodoks”, da det har meget Mac-lignende tastebindinger, men jeg er også interesseret i at forstå forskellene mellem de ikke-Aquamacs versioner.
Kommentarer
- Datapunkt: Jeg har lige prøvet en flok af disse emacsen og har slået mig ned på Yamamoto Mitsuharu ‘ s gaffel. Jeg ‘ har brugt Aquamacs i årevis, men det ‘ har styrtet ofte (noget at gøre med rammer / faner), og jeg kunne ikke ‘ Tage det ikke længere. Det ser ud til, at Aquamacs plejede at gøre en masse ting, som ingen andre gjorde, men at ‘ ikke længere er tilfældet. Yamamoto-gaffelen ser ud til at være det overlegne valg for Mac lige nu.
- Jeg bruger normalt Aquamacs, besluttede at brygge denne gang. Én mindre nit: For at få # -tasten skal du indstille den australske inputtype!
Svar
Emacs til Mac OS X
Emacs til Mac OS X giver OS X-binærfiler af korrekt GNU Emacs. Det er omtrent det samme, som du ville få ved at kompilere en GNU Emacs release tarball med ./configure --with-ns
. Webstedet giver opbygninger af stabile udgivelser og forprøver samt snapshots om natten. Alle disse builds er selvstændige, hvilket giver dig mulighed for sikkert at prøve pretests og snapshots.
Bemærk dog, at disse binære filer ikke understøtter nogle biblioteker, især GNU TLS og ImageMagick. Hvis du gerne vil bruge disse – førstnævnte er især vigtigt, hvis du gerne vil læse din mail i Emacs – skal du hente GNU Emacs fra Homebrew.
Emacs til OS X Modificeret
Ifølge webstedet Emacs til OS X Modified er simpelthen en standard build af GNU Emacs, baseret på ovenstående, med nogle ekstra pakker, og den nødvendige konfiguration for at aktivere alle disse pakker.
Med den bemærkelsesværdige undtagelse af ESS er alle disse pakker tilgængelige via Emacs “pakkearkiver til installation i alle Emacs. For eksempel kan du installere AUCTeX i GNU Emacs korrekt ved simpelthen at skrive M-x package-install RET auctex
og aktivere det.
Valget af pakker antyder, at det hovedsagelig er målrettet mod statistik og research, som vil arbejde igennem deres data med R og ESS, og udgiv derefter et papir med Org eller AUCTeX og LaTeX.
For andre brugere er denne distribution sandsynligvis af ringe værdi, da du skal installere yderligere pa ckages alligevel, og kan lige så godt bruge GNU Emacs korrekt med det samme.
Dette er den eneste distribution, som du selv kan oprette i GNU Emacs korrekt ved at installere yderligere Emacs-pakker og justere din init.el
i overensstemmelse hermed. De andre distributioner er patched og forked varianter af GNU Emacs.
Emacs Mac Port
Emacs Mac Port er en patch-sæt til GNU Emacs korrekt for bedre OS X-integration. Bemærk, at GNU Emacs selv også har indbygget OS X-understøttelse, men mangler OS X-specifikke tilføjelser, som dette patch-sæt giver. Især:
- Kernetekst til gengivelse af tekst, hvilket forbedrer tekstudseende og Unicode-understøttelse. Dette blev flettet ind i GNU Emacs korrekt og er en del af Emacs 24.4.
- Jævn rulning. GNU Emacs ruller ordentligt linievis, hvilket er meget laggy og hoppende med trackpads. Emacs Mac Port bruger pixelbaseret rulning som andre native OS X-applikationer, som føles meget glattere og er meget mere præcis. Det påvirker dog kun pegefeltets rulning, så hvis du ikke bruger musen, har du ikke brug for det.
- Bevægelser. Du kan klemme for at øge / formindske tekststørrelsen. Igen, hvis du ikke bruger musen, vil du ikke bemærke det, og det er uden tvivl bare en fin funktion.
- Understøttelse af Apple-begivenheder. Du kan sende og modtage Apple-begivenheder fra Emacs Lisp .
- Ordbogstjeneste. Tre-finger-aflytning søger på ordet under markøren i Apples ordboksapplikation, som i andre OS X-applikationer.
- Integration af tjenester. Du kan åbne en valgt fil i Finder fra genvejsmenuen i de kørende Emacs.
- Indbygget SVG-skærm ved hjælp af Webkit snarere end librsvg. Webkit har bedre SVG-support efter min viden, men hvem ser SVGer i Emacs?
Du vil bemærke, at de fleste af disse funktioner kun vedrører integration i OS X og ikke er vigtige for at bruge Emacs. Bortset fra det er Emacs Mac Port stort set som en standard GNU Emacs.
Nogle af dens funktioner vender tilbage til GNU Emacs, men andre vil aldrig blive slået sammen, da de er eksklusive til OS X og ikke er tilgængelige i det gratis alternative GNUStep, hvilket strider mod FSFs politik for ikke at understøtte proprietære operativsystemer over deres gratis alternativer. Hvis jeg ikke husker rigtigt, har forfatteren af dette patchset vist ringe interesse for at bringe funktionerne tilbage opstrøms, sandsynligvis af den tidligere grund.
Aquamacs
Aquamacs er en kraftigt patched gaffel af GNU Emacs. I modsætning til alle ovenstående er det “er ikke baseret på GNU Emacs, men har et uafhængigt kildetræ. Det synkroniseres dog regelmæssigt med Emacs opstrøms og følger nøje Emacs-udgivelser. Det hænger uundgåeligt bag GNU Emacs-bagagerummet.
Det er dog stærkt modificeret til at se ud og føles som et oprindeligt OS X-program. det understøtter og tilskynder til standard OS X-nøglebindinger, f.eks. Cmd + S for at gemme. Standard Emacs-bindinger er dog stadig stadig tilgængelige.
Da det er en gaffel, stærkt modificeret og med helt forskellige mål og principper, vil ingen af dens funktioner blive flettet med GNU Emacs: De fleste af disse ændringer modsætter sig GNU Emacs “ånd”, ideer og filosofi.
TL; DR (eller: Hvad skal Jeg vælger)
- Hvis du er statistiker eller forsker og ikke ønsker at konfigurere Emacs selv: Emacs til OS X ændret
- Hvis du vil have et oprindeligt OS X-program mere end alt andet: Aquamacs
- Hvis du vil have Emacs, men med som g ood OS X-understøttelse, som det kan være: Emacs Mac-port
- Hvis du bare vil have Emacs uden komplikationer : Emacs til Mac OS X
Min personlige rådgivning
Jeg har aldrig prøvet Emacs til OS X Modified eller Aquamacs, men jeg ser kun lidt brug i den tidligere (jeg er ingen statistiker og kan installere AUCTeX alene). Jeg vil også anbefale mod sidstnævnte: Det er en gaffel, og selvom det giver dig den bedste OS X-integration, hænger det uundgåeligt bagud og modtager mindre støtte fra Emacs-samfundet generelt. Mange pakker understøtter ikke Aquamacs, så hvis der er problemer, er der en god chance for, at du bliver alene som Aquamacs-bruger.
Jeg prøvede Emacs Mac Port, og mens du blid ruller, bevægelser og Apple-begivenheder er gode, jeg fandt ud af, at disse små fordele ikke er besværet værd at beholde en patched version af GNU Emacs. YMMV, selvfølgelig, og hvis du holder af god OS X-support, og hvis disse funktioner appellerer til dig, skal du helt sikkert prøve det.
I dag bruger jeg kun GNU Emacs snapshot-builds. Disse har rimelig god OS X-understøttelse og er langt den nemmeste at installere og bedst understøttet af samfundet.
Jeg fik dem tidligere fra Emacs til Mac OS X, men nu bruger jeg Homebrew, fordi det understøtter flere biblioteker, især GNU TLS til krypterede netværksforbindelser.
Alt i alt: Brug brew install emacs --HEAD --use-git-head --with-cocoa --with-gnutls --with-rsvg --with-imagemagick
:).
Kommentarer
- Nå – det er heller ikke så svært at bruge mac-porten. Fra github.com/railwaycat/emacs-mac-port :
brew tap railwaycat/emacsmacport
og derefterbrew install emacs-mac
- ” Mac-port ” var bestemt ikke de første Emacs med indbygget OSX GUI-understøttelse . I stedet blev det født lige omkring det tidspunkt, hvor Emacs flyttede fra den gamle ” Carbon Emacs ” til den nyere ” Emacs.app ” kode (dette skridt blev gjort dels fordi Apple formodentlig blev afskaffet af Apple, dels fordi ingen ville opretholde den kode, og dels fordi ” Emacs.app ” -koden kom med muligheden for at understøtte GNUstep. Den dag i dag er GNUstep-support stort set ubrugelig (tho it ‘ bruges lejlighedsvis til at spore og rette fejl på OSX-koden, mens du bruger et GNU / Linux-system).
- Fremragende opskrivning. Nogle af OSX-brugerne kan være interesserede i at vide, at Aquamacs har indbygget support til den oprindelige OSX-stavekontrol, som inkluderer listen over gemte ord, som brugeren tidligere har føjet til ordbogen. Efter min mening er det den eneste nøglefunktion i Aquamacs, der ikke kan duplikeres i andre Emacs-versioner uden at ændre kildekoden før bygning. Imidlertid foretrækker jeg aspell og viger væk fra at bruge musen – så OSX-stavekontrollen (mens den er meget smidig) er ikke en grund for mig at skifte til Aquamacs.
- Ansvarsfraskrivelse: Jeg bruger Linux, og jeg ‘ er ikke sikker på OSX, men jeg skriver e-mail i Emacs og har ikke brug for TLS; Jeg (eller rettere
mu4e
) kaldermsmtp
til afsendelse ogmbsync
til hentning af mine e-mails . - Lille nit: Kompilering fra kilde kræver
./configure --with-ns
, ikke--enable-ns
.
Svar
Et par faktiske rettelser om Aquamacs. Mens det opretholder sit eget kildetræ, flettes det meget regelmæssigt med Emacs, og stort set med det samme med hver Emacs-udgivelse. Aquamacs 3.1 kom ud den dag, Emacs 24.4 blev frigivet (og den omfattede alle Emacs 24.4-funktioner og en delmængde af dens bugs). Aquamacs har> 10.000 regelmæssige brugere, støttes aktivt.
Emacs Mac-porten opstod meget senere end Cocoa- og Nextstep-porten i Emacs; det betragtes som eksperimentelt, og den oprindelige forfatter fraråder omfordeling uden for sit patch-sæt. Som sådan vil support være meget mere begrænset end for nogen af de andre løsninger. Det er dog en interessant udviklingslinje, der i sidste ende vil give megen værdi til samfundet, hvis de vedtages af udviklere. Brugere bør dog betragte sig selv som “beta-testere” og bidrage tilbage med, hvad de kan med gode fejlrapporter og patches.
Værdien af Aquamacs ligger i filosofien “klar til at rulle”: LaTeX, EmacsSpeaksStatistics og Mac-integration fungerer ud af kassen. Ingen kompleks konfiguration nødvendig.
Kommentarer
- Emacs frigiver kun sjældent, så hvis Aquamacs kun fusionerer efter udgivelser, er sjælden. Jeg har dog opdateret mit svar for at fjerne den del. Selvom Aquamacs selv aktivt vedligeholdes og støttes, er samfundsstøtte ret sparsom. Få tredjepartspakker understøtter eksplicit Aquamacs. Faktisk understøtter mange pakker eksplicit kun GNU Emacs og ikke nogen gafler eller derivater, inklusive XEmacs eller Aquamacs.
- Har du en kilde til rådgivning fra Mac-portforfatterne til ikke at omfordele dele uden for deres patch set?
- @lunaryorn: Jeg tror, det var sandt på det tidspunkt, men ikke længere. I min redigering fjernede jeg den kommentar.
Svar
Jeg har prøvet alle ovenstående muligheder (endda hanen anbefalet af Reiner i en kommentar ovenfor) af ingen har fungeret godt for mig (pegefeltets rulleproblemer, hængninger osv.). Jeg er dog ganske tilfreds med Yamamoto Mitsuharus gaffel, som opretholdt af jernbanens github-side. Det er opdateret med hensyn til den officielle GNU-version. Du skal blot downloade .dmg
billedet her: https://github.com/railwaycat/emacs-mac-port/wiki/Downloads
Kommentarer
- Når du har lidt fritid, bedes du udvide dit svar og angive forskellene mellem denne særlige build og vanilje-build. På den måde bliver dit svar mere end bare en kommentar , og læseren er ikke forpligtet til at forlade dette svar og se sider som: github.com/ jernbanekat / emacs-mac-port / blob / master / README-mac
Svar
Jeg brugte Aquamacs-versionen indtil for nylig. Hovedårsagen til, at jeg foretrak Auquamacs-versionen, mens jeg brugte den på Mac, var, at jeg var i stand til at bruge Dragon Dictate med emacs med standardindstillingerne. Da jeg konfigurerede min opsætning, havde jeg problemer med dikteringen i den almindelige emacs-version. Bortset fra det og standardnøglebindingerne var der ikke meget forskel, som jeg interagerede med. Mine indstillinger indlæses på samme måde. Med tastebindingerne er det praktisk at få udklipsholderen til at kopiere, klippe, indsætte og fortryde ved hjælp af cmd-c, cmd-v, cmd-x, cmd-z, S-cmd-z bare af vane på mac, og at jeg var i stand til automatisk at gøre det med den ene hånd på mac-tastaturet, men du kan indstille dem i de almindelige emacs til alt hvad du vil, auquamacs er ikke nødvendigt for mange af disse mac-indstillinger.
Men sidste gang Jeg kontrollerede, at emacs i Auquamacs ikke var blevet opdateret i et år, og det så ud til at være bagud. Jeg modtog også nogle udløbne certifikatadvarsler. Jeg var ikke sikker på, om det stadig blev vedligeholdt. Det ser ikke ud til, at det er blevet opdateret på hjemmesiden. Jeg var i stand til at installere den almindelige Emacs til Mac-version med homebrew og opdatere min init-fil til indstillingerne for mac, der gjorde det muligt for diktaten at fungere.
Men jeg har brugt linuxmint for nylig, og jeg tror, jeg vil holde fast ved det. Mit system er meget mere støjsvage, hurtigere og glattere med Linux, og det er nemt at tilpasse udseendet på skrivebordet. Der var et par mindre ændringer, jeg foretog i emacs init-filen på Linux-versionen, men det er stort set det samme. Jeg har dog ikke været i stand til at finde en god løsning til dikteringen på Linux.Jeg ved ikke, at min maskine kan håndtere et andet operativsystem i en virtuel maskine kun til diktationssoftwaren. Diktationssoftwaren er også en ressourcehog, men det er et andet problem. Det ville være rart, hvis Dragon udgav en version af Diktat på Linux.