Instalé emacs en mi MacBook Air con Mac OS X 10.6.5 desde este sitiohttp://emacsformacosx.com/. Creo que esto es lo que solía llamarse cacao emacs. Lo arrastré a mi carpeta de Aplicaciones y funciona bien cuando lo ejecuto desde allí. Quiero poder ejecutarlo desde la Terminal. Después de buscar en Google, lo intenté open -a /Application/Emacs.app foo.txt
(foo.txt era un archivo existente). Tengo dos ventanas de emacs: una con pantalla de bienvenida y otra con foo.txt cargado. Probé algunas aplicaciones en el directorio /Aplicaciones y no parecían comportarse así. Lo instalé usando mi propia cuenta (una cuenta de administrador), así que después de hacerlo ls -l
noté /Application
que el propietario y el grupo eran diferentes de las otras entradas en esta carpeta. Cambié recursivamente el propietario y el grupo a root y wheel, como los demás, pero esto no ayudó. Lo único que parece gracioso ahora es que ls -l muestra un carácter @ que tiene algo que ver con atributos extendidos, pero no sé cómo verificarlos.
¿Alguna sugerencia sobre qué comprobar a continuación?
¿Usar el comando abrir es el único para ejecutar el programa? ¿Puedo simular lo que hace usando un script de shell?
Respuesta1
No entiendes cómo open
funciona: con tu comando open /Application/Emacs.app foo.txt
le dices open
que abra dos archivos, a saber, Emacs y el archivo txt, pero estas son dos operaciones diferentes: primero, se iniciará emacs y luego foo.txt
se cargará con el programa predeterminado para .txt
archivos, que es aparentemente Emacs en su caso.
Siempre que Emacs sea el valor predeterminado para este tipo de archivo, simplemente usarlo open foo.txt
abriría el archivo en Emacs, pero si no es el valor predeterminado, tendría que usarlo open foo.txt -a /Applications/Emacs.app
(el -a
interruptor le dice a abrir qué aplicación usar) o tal vez podría entregarlo. como parámetro con la --args
opción como esta: open /Applications/Emacs.app --args foo.txt
.
Respuesta2
En realidad, esto es un poco extraño; para mi instalación (que hice con homebrew), abra -a Emacs file.txt funciona bien... ¿tal vez debería reconstruir su base de datos LaunchServices? Pero de todos modos, deberías poder llamar al ejecutable directamente con
/Applications/Emacs.app/Contents/MacOS/Emacs file.txt