Estoy tratando de modificar la función dired-find-file
en emacs en Windows XP para que cuando abra (diga) un archivo pdf de dired active una copia de Acrobat Reader y abra esa archivar con él, en lugar de abrirlo dentro de emacs. Pero no puedo averiguar qué variante usar en shell-command/call-process
. Esto es lo que tengo hasta ahora:Apertura de archivos con la aplicación predeterminada de Windows desde emacs
(defadvice dired-find-file (around dired-find-file-external (filename &optional wildcards))
"Open non-text files with an appropriate external program."
(if (string= ".pdf" (substring filename (- (length filename) 4))) ; obviously I'll replace this with something more general/robust
(shell-command filename) ;; what should go here?
(ad-do-it)))
(ad-activate 'dired-find-file)
Sé que podría difícil que el código para iniciar Acrobat Reader, dándole la ubicación del archivo .exe. Pero prefiero tener algo que requiera menos búsqueda de mí y que no se rompa cuando las aplicaciones predeterminadas se muevan/cambien. ¿Qué debería usar?
No está interesado en eval-after-load, pero +1 para w32-shell-execute: es claramente la forma correcta de hacerlo. –
"\" debería ser "\\" – Yoo