Abrir archivo adjunto de correo con programas estándar de Unix

2

Utilizo emacs como mi editor de texto estándar. Cuando alguien me envía un archivo adjunto de correo que contiene texto (por ejemplo, un archivo LaTeX *.tex ), Mail no sabe cómo abrirlo y me pide que seleccione una Aplicación para abrir. Aparecerá una ventana del Finder con una lista de todas las aplicaciones instaladas, algunas de las cuales son editores de texto, por ejemplo. TextEdit.

El programa emacs vive en /usr/bin/emacs , pero el directorio /usr no está visible de forma predeterminada en el Finder. Después de algunas búsquedas en Google, encontré que al ejecutar un

sudo chflags nohidden /usr

hará que el directorio /usr sea visible en el Finder. Luego puedo navegar a /usr/bin y ver emacs en ese directorio, pero está en gris y no se puede seleccionar.

¿Cómo selecciono una no Aplicaciones (es decir, / usr / bin / emacs, / usr / bin / vim , / usr / bin / gs, etc.) ¿Qué programa utilizará para abrir archivos adjuntos de correo?

    
pregunta cm2 21.12.2011 - 19:49

3 respuestas

2

Está bien, así que puedes hacerlo para cualquier programa de Unix para el que quieras crear un contenedor.

Cree una aplicación de Automator con una sola acción: Ejecutar AppleScript.

Haz que ejecute el siguiente script:

on run {input, parameters}
        set x to "/usr/bin/vim " & quoted form of POSIX path of input
    tell application "Terminal"
        activate
        do script x
    end tell
end run

Si realmente quieres usar algún otro editor en lugar de vim, puedes reemplazar /usr/bin/vim en la segunda línea del script con la ruta a cualquier comando que estés intentando usar para abrir archivos desde Mail.

    
respondido por el Daniel 21.12.2011 - 22:31
2

No puede, ya que el proceso está controlado por LaunchServices

Cuando una aplicación por ej. Mail.app desea abrir un documento que inicia (o reinicia) la aplicación que lo lee y envía información al documento por parte de Apple Events como se describe en Operaciones abiertas

por lo tanto, los manejadores tienen que reconocer estos Eventos de Apple que son gestionados por las bibliotecas Cocoa o Carbon.

Por lo tanto, para usar emacs, vi, etc, necesitas usar uno envuelto como una aplicación, por ejemplo. Aquamacs, versión de cacao o carbono de emacs, MacVim, etc.

Otra forma de pensar sobre esto es si no hay un terminal abierto, ¿cómo escribiría el comando Unix a la GUI?

    
respondido por el Mark 21.12.2011 - 21:42
1

Dependiendo de cómo haya instalado emacs, es probable que ya haya venido con Emacs.app. Entonces podría simplemente copiar (o vincular) esto al directorio / Aplicaciones. En mi caso (una instalación de Homebrew) esto hará:

cp -R /usr/local/Cellar/emacs/23.2/Emacs.app /Applications/

o

ln -s /usr/local/Cellar/emacs/23.2/Emacs.app /Applications/

Emacs.app se puede usar en cualquier cuadro de diálogo "Abrir con ..." de Mac OS X.

    
respondido por el Asmus 23.12.2011 - 14:50

Lea otras preguntas en las etiquetas