Welche Emacs-Version nutzt die Mac-GUI am besten? [geschlossen]

34

Unter Windows und Ubuntu verwende ich GNU Emacs, aber FSF bietet keine Binärdateien für den Mac

Ich habe eine anständige Version, die mit Snow Leopard geliefert wurde, aber nur im Bash-Terminal ausgeführt wird. Gibt es eine Version, die in einem eigenständigen Fenster ausgeführt wird und Mac-freundlicher ist?

Ich habe Emacs Cocoa von Macports heruntergeladen, aber es wurde nicht kompiliert.

justinhj
quelle

Antworten:

30

Ich habe Aquamacs ausprobiert, aber festgestellt, dass es zu schwer war, wie ein Mac zu sein. Dies ist wahrscheinlich gut, wenn Sie ein Mac-Benutzer sind, der Emacs noch nicht kennt.

Wenn Sie ein Emacs-Benutzer sind, der neu bei Macs ist (wie ich es vor ein paar Jahren war), werden Sie wahrscheinlich mit Mac-spezifischen Builds von Standard-Emacs besser zurechtkommen. Ich meins von Emacs für Mac OS X . Probieren Sie den Standard-Build auf der Homepage aus oder klicken Sie auf die Schaltfläche "Andere Versionen", um weitere Optionen zu erhalten. Ich benutze die neueste Pretest-Version seit 6-12 Monaten ohne Probleme.


Wenn Sie wirklich wollen studly und bauen Sie Ihre eigene Kopie, Blick auf die Hinweise auf die zu Emacs Wiki - Seite für Mac OS X . Beachten Sie insbesondere, dass Sie mit Optionen für nextstep und nicht für Kakao oder Kohlenstoff bauen möchten:

./configure --with-ns
make
make install
Doug Harris
quelle
Ich bin ein sehr neuer Mac-Benutzer und ein ziemlich alter Emacs-Benutzer, daher klingt es ideal, meine eigenen Sounds zu erstellen. Danke für den Tipp zu ns.
justinhj
In Emacs für Mac OS X ist es nicht bevorzugt, die Metataste auf Befehl zu setzen (ein Muss in keiner englischen Tastatur, da wir häufig die Alt-Taste verwenden). Außerdem gibt es überhaupt keine Dokumentation. Können Sie mir einige Informationen zur Lösung dieses Problems geben? Ich würde es gerne benutzen :) Danke.
volothamp
Gefunden von mir: superuser.com/questions/160150/...
volothamp
22

Dies ist ein älterer Thread, aber ich bin auf ihn gestoßen, als ich nach neuen Entwicklungen bei OSX-Emacs-Distributionen gesucht habe. Wenn Sie Homebrew verwenden , können Sie die neueste Version von Kakao-Emacs installieren:

brew install emacs --HEAD --cocoa --srgb

Beachten Sie, dass Sie Basar installiert haben müssen. Alternativ können Sie es mit vom Git-Spiegel installieren--use-git-head

Jerry C.
quelle
Das funktioniert nicht richtig. Emacs.app ist nicht installiert. Die richtige Befehlszeile lautet "brew install --cocoa --srgb emacs". Die Reihenfolge der Optionen ist wichtig.
Javadba
16

https://github.com/railwaycat/emacs-mac-port

Bin seit 5 Jahren ein Emacs-Benutzer und habe alle Mac-Ports ausprobiert. Dies ist bei weitem das Beste, was ich verwendet habe, sowohl unter der Haube als auch in der Erscheinung. Es bietet sogar flüssiges Pixel-Scrollen, Pinch-Zoom und einige raffinierte Mac-spezifische Optimierungen.

  • CG-Behandlung Sie können (während t) und (Shell-Befehl "sleep 100") beenden. Keine falsche Aktivierung der Menüleiste während dieser Auswertungen.

    • Emulation von 'select' ohne periodisches Polling Es wird keine CPU-Zeit benötigt, während der Lisp-Interpreter inaktiv ist und auf einige Ereignisse wartet, selbst bei Subprozessen oder Netzwerkverbindungen.

    • Ordnungsgemäße Beendigung Wenn Sie versuchen, sich abzumelden / herunterzufahren / neu zu starten, während ein Dateibesuchspuffer geändert und nicht gespeichert wurde, wird ein Popup-Fenster zur Bestätigung angezeigt. Wenn Sie die Beendigung von Emacs abbrechen (einschließlich Cg oder ESC), wird auch der gesamte Abmelde- / Herunterfahr- / Neustartprozess sofort abgebrochen (dh, Sie sehen sofort ein "abgebrochenes" Dialogfeld, anstatt danach ein "Zeitlimit"). Wenn Sie keine ungespeicherten Puffer, Shell-Puffer usw. haben, wird keine unnötige Bestätigung angezeigt.

    • Apple Eventhandling Apple Eventhandler können auf Lisp-Ebene definiert werden. Die oben beschriebene ordnungsgemäße Beendigung ist eine Instanz der Apple-Ereignisbehandlung auf Lisp-Ebene. Ein weiteres Beispiel ist der "Get URL" -Handler, mit dem wir den mit "mail-user-agent" angepassten Mailer aufrufen können, z.

    $ osascript -e 'sage der Anwendung "Emacs", dass sie den Standort "mailto: [email protected]" öffnen soll'

    Wenn Sie Emacs über die Mail.app-Voreinstellung als Standardmailer festlegen, richtet der Emacs-Mailer einen Entwurfspuffer ein, wenn Sie in einem Webbrowser auf einen mailto: -Link klicken.

    • DictionaryService-Unterstützung Sie können ein Wort unter dem Mauszeiger im ausgewählten Fenster suchen, indem Sie Befehl-Steuerung-D eingeben (oder unter Mac OS X 10.7 / 10.8 ein Trackpad mit drei Fingern zweimal oder einmal antippen).

    • Unabhängig von der Auflösung (10.4 - 10.6, 10.5 empfohlen) Die Skalierung wird im Framework-Scaled-Modus und nicht im (verschwommenen) Magnified-Modus für den Carbon-Port ausgeführt. Hinweis: Diese Art der Auflösungsunabhängigkeit ist unter Mac OS X 10.7 veraltet.

    • 64-Bit (10.5 und höher) Sie können eine 64-Bit-Binärdatei mit GUI-Unterstützung erstellen und ausführen, indem Sie bei configure CC = "gcc -arch x86_64" oder CC = "gcc -arch ppc64" angeben.

    • Einige kleinere visuelle Verbesserungen

      • Ausgerichtete Tastenbelegung in Menüs
      • Fortschrittsanzeige (entspricht Sanduhr) in der Titelleiste
      • Nicht verwendbare Elemente im Font-Bereich sind ausgeblendet. Versuchen Sie, Optionen -> Einblenden / Ausblenden -> Font-Bereich in der Menüleiste oder im RET-Modus des Mx-Mac-Font-Bereichs anzuzeigen.
      • Anzeige aktualisieren, während das Größenänderungssteuerelement (oder der Schieberegler im Schriftartenbedienfeld) gezogen wird
    • Die fullscreen' frame parameter, with all values supported: beiden Befehle ', fullwidth',fullheight' und maximized'. The fullboth frames, which don't have the title bar, still allow us to access the menu bar, the Dock, and the tool bars. The menu bar can also be activated viamenu-bar-open ', Control-F2' (if full keyboard access enabled), orCommand-Shift- /' (unter Mac OS X 10.5 und höher), auch für beide Frames, in denen die Menüleiste normalerweise ausgeblendet ist. Das Ändern der Schriftarten oder der internen Rahmenbreite in Vollbildern führt nicht zu einer unübersichtlichen Anzeige. In Umgebungen mit mehreren Monitoren können Sie Vollbild-Frames auf einen anderen Monitor verschieben, indem Sie die left' andoberen Frame-Parameter entsprechend einstellen . Das Anbringen / Entfernen externer Monitore sollte auch bei Vollbild-Frames funktionieren.

    • Der `sticky'-Frame-Parameter, mit dem wir bestimmte Frames für alle Spaces unter Mac OS X 10.5 und höher sichtbar halten können.
    • Die Funktion system-move-file-to-trash', which can be specified as a value ofLöschen durch Verschieben in den Papierkorb.
    • SVG-Bildanzeige. Dies kann über das WebKit-Framework erfolgen, sodass Sie kein Librsvg benötigen.
    • Mehrseitige TIFF-Bilder.
    • Die Funktion x-select-font' that provides modal font selection dialog in a compatible way with GTK+ and W32 ones. Note that a nonmodal counterpart has been available since Emacs 22 Carbon port viamac-font-panel-mode '.
    • Unicode-Zeichenanzeige, einschließlich Nicht-BMP-Zeichen.
    • Komplexes Textlayout und Textformung. Sie werden mit der Core Text- oder NS Text-Layout-Engine implementiert, sodass Sie libotf nicht benötigen.
    • Glyphenauswahl mit Variationsauswahl. Die meisten ideografischen Glyphen in Adobe-Japan1 sind über IVSes (Ideographic Variation Sequences) zugänglich, auch für die im Betriebssystem enthaltenen Hiragino-Schriftarten, die ab Mac OS X 10.6 keine UVS-Untertabelle in ihrer cmap-Tabelle enthalten.

    • Kann mit der ImageMagick-Unterstützung kompiliert werden. Auch ohne die ImageMagick-Bibliothek bietet der Mac-Port mithilfe des Image I / O-Frameworks ein Fallback, sodass Sie Bilder skalieren und drehen können.

    • Die Variable tool-bar-style' works like in GTK+. The values both-horiz ', text-image-horiz' are synonymous withboth'.
    • Pixelbasiertes Mausrad zum ruckelfreien Scrollen für neuere Mäuse / Trackpads.
    • Gestenereignisbehandlung für neuere Trackpads. Standardmäßig ist das Ein- und Ausblenden an die Skalierung der Textgröße gebunden. Mit der Umschalttaste schalten sie den Vollbildstatus des Frames ein / aus.
    • Senden von Apple-Ereignissen mit (a) synchroner Antwortverarbeitung. Die Unterstützung der ODB Editor Suite wurde als Beispiel hinzugefügt. (Nur mit QuickCursor getestet. Fügen Sie "org.gnu.Emacs" zu den Elementen von QCEditInChoices in QuickCursor.app/Contents/Info.plist hinzu. In QuickCursor 2.0 müssen Sie den Puffer nach dem Speichern beenden, um die Änderungen von wiederzugeben der ursprüngliche Textbereich.)
    • "Klicken Sie in die Bildlaufleiste, um: Zur angeklickten Stelle zu springen" in den Systemeinstellungen wird unterstützt. Durch Drücken der Optionstaste beim Klicken wird dieses Verhalten vorübergehend umgeschaltet.
    • Die Einstellung des Schwellenwerts für die Textglättung im Bereich Darstellung der Systemeinstellungen wird sofort übernommen.
    • Einige in den Systemeinstellungen aufgelistete Tastaturkürzel (insbesondere für die Tastaturnavigation) funktionieren genauso wie andere Anwendungen.
    • Wenn die Zwischenablage sowohl Text- als auch Bilddaten enthält, fügt yank den ersten ein und drückt beide in den Kill-Ring, sodass der zweite anschließend mit yank-pop eingefügt werden kann.
    • Verwenden Sie nicht ganzzahlige x-Positionen für die Anzeige von proportionalen Schriften mit Antialiasing. Sie können den Unterschied erkennen, indem Sie den Box-Cursor über Helvetica 12pt 'I' bewegen, dessen ideale Breite 3,33398 beträgt, die jedoch beispielsweise mit der abgerundeten Breite 3 angezeigt wird.
    • Auf Emacs-Infoknoten kann über das Suchfeld im Menü Hilfe unter Mac OS X 10.6 und höher zugegriffen werden.
    • Der Menüpunkt "Ausgewählte Datei in Emacs öffnen" wird unter Mac OS X 10.6 und höher standardmäßig in den Diensten oder im Kontextmenü anderer Anwendungen angezeigt, wenn der absolute Pfadname als Text ausgewählt ist.
    • Die umgekehrte Konvertierung in Kotoeri funktioniert auch ohne Auswahl. Das zweimalige Drücken der Eisu / Kana-Taste auf der JIS-Tastatur (oder der Strg-Umschalttaste -; / J / K auf der US-Tastatur) funktioniert ebenfalls.
    • Neue Funktion mac-file-alias-p', which is parallel to file-symlink-p '.
    • Experimentelle Unterstützung für die Barrierefreiheit in Bezug auf die benutzerdefinierte Ansicht für Emacs-Frames. Unter Mac OS X 10.7 muss "Text to Speech" unterstützt werden. Trotzdem gibt es mehrere Störungen.
    • Kann Farb-Bitmap-Schriftarten wie Apple Color Emoji anzeigen, wenn sie unter Mac OS X 10.7 oder höher kompiliert und ausgeführt werden. Unterstützt auch die Anzeige einiger Kombinationen von regionalen Anzeigesymbolen, z. B. U + 1F1EF, gefolgt von U + 1F1F5, als Nationalflaggen. Variation Selectors 15 (Textstil) und 16 (Emoji-Stil) werden ebenfalls unterstützt.
    • Neue Funktion "mac-start-animation", die Animationseffekte unter Mac OS 10.5 und höher über Core Animation bereitstellt. Sie können die Standardanimationen mit Pufferumschaltung durch horizontales Streichen / Wischen, Verlassen des Begrüßungsbildschirms durch Eingabe von "q" und der Menüoptionen "About Emacs" und "Preferences ..." im Anwendungsmenü (mit "Emacs" beschriftet) anzeigen. ) in der Menüleiste.
user1775655
quelle
Ich habe auch mit diesem Port hervorragende Ergebnisse erzielt, nachdem ich sowohl Aquamacs als auch "Emacs for OS X" für ungeeignet befunden habe - ich kann es nur empfehlen.
Aaron Miller
1
schön, das ist es wert, nur für das reibungslose Scrollen allein
huyz
Kann dieser Port mit Modifikatortasten im Aquamacs-Stil verwendet werden, z. B. Option für Meta und Befehl für Hyper / Super? Als ich es ausprobierte, hatte ich keine andere Wahl, als blitzsaubere Akzente und Charaktere zu setzen.
Glühbirne
@incandescentman ja kann es.
user1775655
Danke für diese Information! Da ich mit @huyz völlig einverstanden bin, frage ich mich nur, ob es einen ähnlichen Build für Linux gibt. Ich meine, ob es einen Build des Emacs mit flüssigem Scrollen für Linux gibt?
Avp
4

Naja ich benutze Vanille Emacs mit dem ns Patch aber mit diesen Einstellungen

(setq mac-command-modifier 'meta)
(setq mac-option-modifier nil)
(setq ns-function-modifier 'hyper)

;; keybinding to toggle full screen mode
(global-set-key (quote [M-f10]) (quote ns-toggle-fullscreen))

(add-to-list 'ido-ignore-files "\\.DS_Store")

;; Move to trash when deleting stuff
(setq delete-by-moving-to-trash t
      trash-directory "~/.Trash/emacs")

Ich habe sie von dem Typ von Emacs Rocks Github bekommen, glaube ich. Auf diese Weise kann ich ´ und andere Optionszeichen wie in jeder anderen Anwendung verwenden und habe auch eine bekanntere Platzierung des Metaschlüssels (ich habe eine Feststelltaste als Strg-Übrigens).

Ebenfalls

(setq x-select-enable-clipboard t)

So kann ich kopieren und in Emacs einfügen (dh ich cmd + c auf Chrom und Cy auf Emacs zum Einfügen und umgekehrt Cw cmd + v)

PuercoPop
quelle
2

Schauen Sie sich Aquamacs an , das sollte genau das sein, wonach Sie suchen.

8BitsOfGeek
quelle
2

Wenn Sie MacPorts installieren , können Sie einen anständigen Build von Emacs installieren und problemlos auf dem neuesten Stand halten. Dies hat den Vorteil, dass Sie bei Bedarf einfach auf eine Reihe anderer Pakete zugreifen können.

KeithB
quelle
2

macports bietet verschiedene Varianten von Emacs an:

emacs has the variants:
   gtk: Builds emacs as an X11 program with GTK+2 widgets
     * requires x11
   motif: Builds emacs as an X11 program with Motif widgets
     * requires x11
   universal: Build for multiple architectures
   x11: Builds emacs as a X11 program with Lucid widgets

Es gibt auch einen Kakao-Emacs:

emacs-app @23.1 (aqua, editors)
    The GNU Emacs text editor (Cocoa version)
David M
quelle
Dies ist der, der nicht für mich gebaut wurde. Ich werde sehen, ob ich die Fehler irgendwann veröffentlichen kann
justinhj
1

Da Sie auf Snow Leopard sind, wird die Emacs-App von MacPorts nicht kompiliert, die Emacs-App-Entwicklung jedoch!

Oro
quelle
0

Ich persönlich benutze Carbon Emacs, weil es das ist, das nicht mit nervigen Tabs verfälscht wurde und am ehesten dem Original ähnelt. http://www.emacswiki.org/emacs/CarbonEmacsPackage

Ein Tipp, wenn Sie Leerzeichen verwenden, ist es, den Wechsel zwischen Fenstern in etwas anderes als Strg-Pfeil zu ändern, da Sie jedes Mal, wenn Sie versuchen, in Emacs wortweise Tabulatoren zu verwenden, zu einem anderen Fenster gelangen, das ein wenig abnutzt Nach einer Weile.

Die Unterstützung von Schriftarten ist bei Carbon-Emacs etwas eingeschränkt, und ich bin noch nicht dazu gekommen, mich darum zu streiten.

Ghoti
quelle
-2

Nachdem ich EMACS jahrelang unter verschiedenen UNIX-, Linux-, FreeBSD-, OS / 2- und Windows-Betriebssystemen verwendet hatte, hörte ich endlich auf ... Ich habe stattdessen Smultron verwendet. Ich fand, dass die Cocoa-Version von EMACS sich nicht so gut in Mac OS integrieren ließ und sich für mich nicht wie normales EMACS anfühlte.

Der Großteil meiner Entwicklung wird heutzutage in spezialisierten IDEs (XCode, Unity oder Eclipse) durchgeführt, sodass ich EMACS normalerweise nicht vermisse. Andererseits habe ich es nie geschafft, EMACS als mein Betriebssystem zu verwenden, nur als Texteditor. :-)

Eddie ist ein weiterer anständiger Texteditor für freie Programmierer für OS X.

chrish
quelle