2010-10-20 7 views
20

Wenn ich in einer Emacs-Organisationsmodusdatei auf ein PDF klicke, wird die Datei in einem PDF-Viewer geöffnet. Wenn ich auf eine URL klicke, wird sie in einem Webbrowser geöffnet. Wenn ich jedoch auf einen Pfad zu einer Bilddatei klicke, wird der Byte-Stream als Text im Editor geöffnet. Wie konfiguriere ich den Emacs/org-Modus, um Bilder mit einer bestimmten Anwendung, z. B. einem Bildeditor oder einem Browser, zu öffnen?Emacs org-mode Datei-/Viewer-Verknüpfungen

+0

'F1 v org-datei-apps' – jfs

+0

FYI, Emacs ist (in der Theorie) in der Lage, Bilder selbst anzuzeigen. http://www.gnu.org/s/emacs/manual/html_node/elisp/Images.html – phils

+0

@phils versuchen 'org-display-inline-images ' –

Antwort

15

Im Organisationsmodus ist dies org-file-apps, die steuern, was zu tun ist, wenn Sie auf einen URL-ähnlichen Text klicken.

((auto-mode . emacs) 
("\\.mm\\'" . default) 
("\\.x?html?\\'" . default) 
("\\.pdf\\'" . default)) 

Wie gesagt in org-Datei-apps Hilfe:

Es wird standardmäßig konfiguriert auto-mode Matches Dateien, die in auto-mode-alist von jedem Eintrag abgestimmt sind, so dass alle Dateien Emacs wissen, wie zu handhaben. Wenn Sie dies mit dem Befehl emacs verwenden, werden die meisten Dateien in Emacs geöffnet.

Möglicherweise ist die Bilddateierweiterung in Auto-Modus-Alist konfiguriert. Sie könnten diese alist aufheben, indem Sie so etwas wie dies in Ihrem .emacs (zum Beispiel für PNG-Dateien) zu tun:

(add-hook 'org-mode-hook 
     '(lambda() 
      (setq org-file-apps 
        (append '(
          ("\\.png\\'" . default) 
          ) org-file-apps)))) 

Mit diesem Code, wenn ich auf einen Link wie folgt klicken:

file:///e:/jrx/emacs/image.png 

Es öffnet die Datei außerhalb von emacs und verwendet das Standard-Betriebssystemprogramm, das dieser Dateierweiterung zugeordnet ist.

Sie müssen org-file-apps-defaults-windowsnt, org-file-apps-defaults-gnu oder nicht ändern, um das OS-Standardprogramm zu verwenden, das der Dateierweiterung zugeordnet ist.

+2

Mit' append' zusammen mit 'add-hook' org- mode-hook' scheint an die Liste anzuhängen, wenn der Org-Modus aufgerufen wird. Dies kann die Liste mit "\\. Png \\ '" überfluten. Standard ". Sie können besser ein 'add-to-list'-Konstrukt wie in http://stackoverflow.com/a/8836108/789593 verwenden. –

2

Es hängt ein wenig davon ab, welches Betriebssystem Sie verwenden, aber es sollte mit org-file-apps konfigurierbar sein.

  • Unter OS X, würde ich open (oder open -a Application.app) verwenden für Dateien automatisch
  • Unter Linux/BSD etc öffnen, ich xdg-open (ein bisschen schwierig zu installieren, tho)
  • Unter Windows verwenden würde, ich glaube, ich würde org-file-apps-defaults-windowsnt, org-file-apps-defaults-gnu oder org-file-apps-defaults-macosx an den Variablen open (in der Konsole)

Schauen Sie verwenden je nach Plattform.