Algunos datos sobre lo que intento conseguir
Estoy usando emacs dentro de terminal. Sé de la existencia de versiones de emacs para cacao (como GNU Emacs para OS X , Aquamacs y Puerto de Emacs para Mac ). Pero prefiero codificar dentro de la terminal.
Todo está bien en mi configuración, excepto el hecho de que a veces quiero abrir un archivo dentro de emacs desde Finder o cualquier otro software. Así que tengo que encontrar el proceso de ejecución de emacs en la terminal o crear uno nuevo y abrir la multa dentro de la ejecución de emacs.
Así que básicamente necesito crear un .app
para abrir archivos en el terminal emacs.
Tratando de conseguirlo
Según tengo entendido, open -a my_emacs_app /path/to/file
es lo mismo que abrir el archivo en la aplicación desde el finder. Por eso estoy probando my_emacs_app
utilizando open
comando.
Mi primer intento es crear una aplicación utilizando AppleScript. Aquí está el código que procesa los argumentos pasados:
on run argv
if (count of argv) > 0 then
-- get file path from argv
-- and log to logfile for testing purposes
return "defined"
else
-- no args means no file
-- log to logfile that we can't extract file path
-- from empty arguments
return "failed"
end if
end run
Y en realidad funciona cuando trato de ejecutarlo usando
$ osascript my_emacs_app.scpt /path/to/file
Abre el archivo y registra lo esperado en el archivo de registro.
Cuando lo ejecuto utilizando
$ osascript my_emacs_app.scpt
Registra en el archivo que no se han pasado argumentos. Así que estaba contento con ello. Pero recuerda que necesito un .app
envoltura. Así que estoy exportando este script como aplicación (y lo coloco dentro de /Applications/
carpeta). Y luego cuando intento
$ open -a my_emacs_app /path/to/file
Veo que la aplicación se ejecuta durante un corto tiempo y luego se cierra. Pero no pasa nada bueno. Es decir, el archivo no se abre en emacs y no se registra nada en el archivo de registro.
¿Alguien sabe cómo exportar tales scripts?