2010-08-17 36 views
11

Sono un nuovo utente di iMac. Ho una vasta esperienza con Linux su un PC. Ho scaricato l'ultima versione di emacs nella cartella Applicazioni. Voglio invocare emacs dalla riga di comando. Tuttavia, il percorso predefinito per emacs è/usr/bin/emacs. qual è la migliore pratica per aggiungere il nuovo emacs al percorso? Sono tentato di creare una directory ~/bin e un collegamento al nuovo emacs e aggiungere ~/bin all'inizio del mio percorso. Ecco come abbiamo fatto le cose nel nostro ambiente di sviluppo software su PC linuxemacs su OS X 10.6

+1

per inciso, non so se siete a conoscenza, ma è possibile utilizzare un sottoinsieme di emacs scorciatoie in praticamente qualsiasi casella di testo standard di cacao app, e si può estenderli ulteriormente definendo ulteriori keybindings standard - http://www.gnufoo.org/macosx/ – JulesLt

risposta

0

Che funzionerà. Se questo è un applicazione per Mac nativa, il binario si trova effettivamente sotto la directory dell'applicazione (non la capitalizzazione del binario): ... /Emacs.app/Contents/MacOS/Emacs

Dal momento che si sono provenienti da linux, potresti essere interessato a MacPorts. Questa è una vasta raccolta di pacchetti portati da Linux. Permette l'installazione e l'aggiornamento dei pacchetti dalla riga di comando, la gestione delle dipendenze, tutto ciò che ci si aspetterebbe. Include una versione nativa di Emacs, che può essere richiamata dalla riga di comando.

9

Supponendo che tu fossi ancora in linux land, non sarebbe il posto canonico per metterlo in /usr/local/bin (e aggiungerlo al tuo percorso?) ... Mi piacerebbe restare con quello, se tu dovessi seguire quella strada , ma questo è il modo che ho il mio setup emacs:

  1. ho scaricato le ultime Emacs pianura/vaniglia da emacsforosx.com
  2. ho fatto un emacs alias che uso di accendere una base terminale versione di emacs quando non voglio (o non posso) eseguire la versione della GUI, in questo modo:

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

  3. Se si vuole accendere la versione GUI di Emacs dal terminale, si può semplicemente digitare il seguente (che, per quanto ne so, è un Mac-ismo, in modo che non avrebbe saputo che venendo da linux):

    $ open -a Emacs

6

C'è una grande quantità di informazioni sulla emacs on OS X al emacs wiki.

~/bin o /usr/local/bin funzionerà correttamente, così come si manipola il tuo PATH.

Supponendo che si utilizzi Emacs.app, la cosa più semplice da fare è utilizzare open -a /Applications/Emacs.app "[email protected]". open equivale alla riga di comando di fare doppio clic su qualcosa nel Finder. Metti questo in uno script di shell, incollalo nel tuo PERCORSO e vai.

L'installazione di emacs-app tramite MacPorts è probabilmente il modo più semplice per ottenere e mantenere un emac di Cocoa.

Si potrebbe voler esaminare Aquamacs che è un ulteriore raffinamento di emacs per OS X. Il emacs wiki page on Aquamacs è molto utile. Ha anche la possibilità di aggiungere un piccolo script aquamacs al PATH che aprirà un file nella GUI di aquamacs.

10

Il modo migliore è quello di utilizzare Homebrew e utilizzare

brew install emacs --cocoa 

modo da avere un facile da aggiornare l'installazione emacs.Il Cocoa si assicurerà che il tuo mac keybinding funzioni prima di emacs. Far funzionare il binario in fase di avvio come demone (perché si avvia non molto veloce), per esempio:

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

E fare uno script al comando emacsclient e salvato file/bin/emacs (non fare dimenticare di renderlo eseguibile):

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

così quando si accende a bash "emacs something.txt" l'emacs già in esecuzione il demone si apre immediatamente. Puoi anche estenderlo per aprire Emacs se il demone non è in esecuzione!

L'ho provato sull'ultima versione 23.2 di emacs, alcune funzionalità non sono presenti nelle prime versioni.

+1

In realtà non dovresti gettare cose a caso in '/ bin' - La cosa giusta da fare è metterla prima in il tuo percorso o semplicemente fai alias per queste cose. Uso Emacs.app fuori dalla cantina come una normale app a doppio clic. – Dustin

+0

Ma se si usa bash per modificare un file casuale con emacs si apre un altro Emacs. Il mio script emacs è in realtà sul mio ~/bin. A volte è necessario impostare manualmente il raccoglitore su on: make EMACS = se dipende dal file bin attuale. Il 99% delle volte non noterai la differenza. –

+2

Personalmente non penso che homebrew sia il modo più semplice per installare cacao emacs quando puoi scaricare un file .dmg precompilato da http://emacsformacosx.com/builds e trascinarlo nelle tue applicazioni come qualsiasi altra applicazione OS X. –

1

creo uno script di shell chiamato emacs nella mia directory ~/bin contiene:

open -a Emacs "[email protected]" 

Ovviamente, ~/bin deve essere prima di/usr/bin nel mio percorso, che ho impostato in ~/.profile in modo che ombreggia il binario emacs preinstallato.

Inoltre, creo un collegamento simbolico tramite ln -s /Applications/Emacs.app/Contents/MacOS/bin/emacsclient ~/bin/emacsclient in modo da ombreggiare anche il file binario emacsclient preinstallato.

Per ulteriore connivenza, creo un alias ec = 'emacsclient -a emacs -n' e includo (server-start) nei miei script di init di emacs. Questo mi consente di aprire un file dalla riga di comando usando ec filename, indipendentemente dal fatto che emacs sia o non sia già in esecuzione.

Un altro consiglio: quando si avvia emacs tramite Applicazioni o si apre, emacs non eredita lo stesso percorso che si ha nel proprio ambiente terminale, quindi una cosa che ho trovato molto utile è eseguire quanto segue nel mio .profile dopo impostando il mio percorso per modificare il percorso ereditato applicazioni di cacao:

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