Emacs associations fichier / spectateur org-mode
Question
Dans un fichier org-mode Emacs, lorsque je clique sur un PDF le fichier s'ouvre dans une visionneuse PDF. De même, lorsque je clique sur une URL, il ouvre dans un navigateur Web. Mais quand je clique sur un chemin vers un fichier d'image, le flux d'octets ouvre sous forme de texte dans l'éditeur. Comment puis-je configurer Emacs / org-mode pour ouvrir des images avec une application spécifique, par exemple un éditeur d'image ou d'un navigateur?
La solution
En mode org, c'est org-file-apps
que le contrôle quoi faire en cliquant sur une URL comme texte.
Il est configuré par défaut:
((auto-mode . emacs)
("\\.mm\\'" . default)
("\\.x?html?\\'" . default)
("\\.pdf\\'" . default))
Comme dit dans org-file-apps aide: auto-mode
correspond aux fichiers qui sont abondés par une entrée dans auto-mode-alist
, de sorte que tous les fichiers Emacs sait comment gérer. En utilisant cette commande avec emacs
ouvrira la plupart des fichiers dans Emacs.
Vous pouvez avoir une extension de fichier d'image configuré en mode auto-mode-alist. Vous pouvez remplacer ce alist en faisant quelque chose comme ça dans votre .emacs (par exemple, pour les fichiers .png):
(add-hook 'org-mode-hook
'(lambda ()
(setq org-file-apps
(append '(
("\\.png\\'" . default)
) org-file-apps ))))
Avec ce code, lorsque je clique sur un lien comme celui-ci:
file:///e:/jrx/emacs/image.png
Il ouvre les emacs en dehors du fichier, en utilisant le programme OS par défaut associé à cette extension de fichier.
Vous n'avez pas à changer org-file-apps-defaults-windowsnt
, org-file-apps-defaults-gnu
ou org-file-apps-defaults-macosx
d'utiliser le programme par défaut du système d'exploitation associé à l'extension du fichier.
Autres conseils
Cela dépend un peu de ce système d'exploitation que vous utilisez, mais il devrait être configurable avec org-file-apps
.
- Sur OS X, j'utiliser
open
(ouopen -a Application.app
) pour les fichiers d'ouverture automagiquement - Sous Linux / BSD, etc, j'utiliser
xdg-open
(un peu difficile à installer, tho) - Sur les fenêtres, je suppose que j'utiliser
open
(dans la console)
Regardez les variables org-file-apps-defaults-windowsnt
, org-file-apps-defaults-gnu
ou org-file-apps-defaults-macosx
selon votre Plattform.