2010-08-17 3 views
11

Ich bin ein neuer iMac-Benutzer. Ich habe umfangreiche Erfahrung mit Linux auf einem PC. Ich habe die neueste Version von Emacs in den Ordner "Programme" heruntergeladen. Ich möchte Emacs über die Befehlszeile aufrufen. Der Standardpfad für Emacs ist jedoch/usr/bin/emacs. Was ist die beste Vorgehensweise, um die neuen Emacs dem Pfad hinzuzufügen? Ich bin versucht, ein ~/bin-Verzeichnis und eine Verknüpfung zu den neuen Emacs zu erstellen und ~/bin am Anfang meines Pfades hinzuzufügen. Dies ist, wie wir Dinge in unserer Software-Entwicklungsumgebung auf Linux-PCsEmacs auf OS X 10.6

+1

Als Nebenwirkung, nicht sicher, ob Sie sind uns bewusst, aber Sie können eine Teilmenge von emacs Verknüpfungen in so ziemlich jedem Standard-Cocoa-Anwendung Textfeld und Sie kann sie erweitern, indem sie zusätzliche Standard-Tastaturbelegungen definiert - http://www.gnufoo.org/macosx/ – JulesLt

Antwort

0

gemacht haben Das wird funktionieren. Wenn dies eine native Mac-Anwendung ist, wird die binäre tatsächlich unter dem Anwendungsverzeichnis (nicht die Aktivierung des binären) befindet: ... /Emacs.app/Contents/MacOS/Emacs

Da Sie kommen aus Linux, könnte Sie interessiert sein MacPorts. Dies ist eine große Sammlung von Paketen, die von Linux portiert wurden. Es ermöglicht die Installation und den Upgrade von Paketen über die Befehlszeile, die Verwaltung der Serververwaltung, alles, was Sie erwarten. Es enthält eine native Version von Emacs, die über die Befehlszeile aufgerufen werden kann.

9

Angenommen, Sie wären noch im Linux-Land, wäre nicht der kanonische Ort, um dies in /usr/local/bin setzen (und fügen Sie das auf Ihren Weg?) ... Ich würde dabei bleiben, wenn Sie diese Route gehen würde , aber das ist, wie ich meine Emacs-Setup:

  1. ich die neuesten plain/Vanille Emacs von emacsforosx.com
  2. ich ein emacs alias gemacht habe heruntergeladen haben, dass ich eine terminalbasierte anwerfen verwenden Version von Emacs, wenn ich die GUI-Version nicht ausführen möchte (oder kann):

    alias emacs='/Applications/Emacs.app/Contents/MacOS/Emacs -nw'

  3. Wenn Sie die GUI-Version von Emacs vom Terminal feuern wollen, können Sie einfach Folgendes eingeben (was AFAIK, ist ein Mac-ism, so würden Sie nicht kommen von Linux bekannt):

    $ open -a Emacs

6

Es gibt eine ganze Reihe von Informationen über emacs on OS X am emacs wiki.

~/bin oder /usr/local/bin wird gut funktionieren, als wird Ihre PATH manipulieren.

Angenommen, Sie verwenden Emacs.app, einfachste Methode ist die Verwendung von open -a /Applications/Emacs.app "[email protected]". open ist das Befehlszeilenäquivalent für einen Doppelklick auf etwas im Finder. Setze das in ein Shell-Skript, stecke es in deinen PATH und geh.

Die Installation emacs-app über MacPorts ist wahrscheinlich der einfachste Weg, um einen Cocoa Emacs zu erhalten und zu pflegen.

Sie können in Aquamacs suchen, die eine weitere Verfeinerung von Emacs für OS X ist. Die emacs wiki page on Aquamacs ist sehr hilfreich. Es hat auch eine Option, ein kleines Aquamacs-Skript zu Ihrem PATH hinzuzufügen, das eine Datei in der Aquamacs-GUI öffnet.

10

Der beste Weg ist Homebrew zu verwenden und

brew install emacs --cocoa 

so haben Sie eine einfache Emacs-Installation zu aktualisieren.Der Cocoa stellt sicher, dass Ihre Mac-Tastatur vor der Emacs funktioniert. Machen Sie den binären Lauf beim Start als Daemon (weil es nicht sehr schnell anläuft), zum Beispiel:

/usr/local/Cellar/emacs/23.2/Emacs.app/Contents/MacOS/Emacs --daemon 

und ein Skript zum emacsclient Befehl machen und speicherte es auf/ist/emacs-Datei (nicht vergessen Sie es ausführbar machen):

#!/bin/bash 
exec /Applications/Emacs.app/Contents/MacOS/bin/emacsclient -n -c "[email protected]" 

so, wenn Sie bei bash „emacs something.txt“ feuern die bereits laufenden emacs-Daemon öffnet es sofort. Sie können es auch erweitern, um Emacs zu öffnen, wenn der Daemon nicht läuft!

Ich habe es auf der neuesten Emacs 23.2 getestet, einige Funktionen sind nicht auf frühen Versionen vorhanden.

+1

Sie sollten wirklich keine zufälligen Sachen in '/ bin' werfen - das Richtige, um es zu tun, ist es entweder früher hineinzulegen deinen Weg oder einfach machen Aliase für diese Dinge. Ich benutze Emacs.app aus dem Keller als normale, doppelt anklickbare App. – Dustin

+0

Aber wenn Sie Bash verwenden, um eine zufällige Datei mit Emacs zu bearbeiten, öffnet es einen anderen Emacs. Mein Emacs-Skript befindet sich tatsächlich auf meiner ~/bin. Manchmal müssen Sie den Bin manuell auf on setzen: make EMACS = , wenn er von der tatsächlichen Bin-Datei abhängt. 99% der Zeit werden Sie den Unterschied nicht bemerken. –

+2

Ich persönlich denke nicht, dass Homebrew der einfachste Weg ist, um Kakao-Emacs zu installieren, wenn Sie eine vorgefertigte .dmg-Datei von http://emacsformacosx.com/builds herunterladen und sie wie jede andere OS X-Anwendung in Ihre Anwendungen ziehen können. –

1

ich ein Shell-Skript namens Emacs in meinem ~/bin-Verzeichnis erstellen enthält:

open -a Emacs "[email protected]" 

Offensichtlich ~/bin muss vor/usr/bin in meinem PATH sein, die ich gesetzt in ~/.profile damit es die vorinstallierte Emacs-Binärdatei überschattet.

Ich erstelle auch einen Symlink über ln -s /Applications/Emacs.app/Contents/MacOS/bin/emacsclient ~/bin/emacsclient, so dass dies auch die vorinstallierten Emacsclient-Binärdatei Schatten.

Für zusätzliche Zustimmung, erstelle ich einen Alias ​​ec = 'emacsclient -a Emacs-n' und include (Server-Start) in meine Emacs Init-Skripte. Dadurch kann ich eine Datei von der Befehlszeile aus mit dem Dateinamen ec öffnen, unabhängig davon, ob Emacs bereits läuft oder nicht.

Noch ein Tipp: Wenn Sie die Emacs über Applications oder Open starten, erbt Emacs nicht den gleichen Pfad wie in Ihrer Terminalumgebung, also habe ich es als sehr nützlich empfunden, folgendes in meiner .profile auszuführen mein Weg Einstellung der PATH geerbt Kakao-Anwendungen ändern:

defaults write ${HOME}/.MacOSX/environment PATH "$PATH"