2016-05-03 17 views
0

Ich möchte in der Lage sein, den Dateipfad eines Links im Emacs-Org-Modus als Zeichenfolge abrufen, die ich dann auf verschiedene Arten analysieren und zu org-open-file zurückkehren konnte. So würde zum Beispiel die Verbindung [[file:/path/to/file.org]][link text] die Zeichenfolge /path/to/file.org zurückgeben. Ich wette, das ist grundlegende elisp, aber ich bin neu zu elisp.Dateipfad als String im Org-Modus

Antwort

0

Sie können auf diese Informationen von der Org element API zugreifen. Hier ist ein Beispiel, das den Pfad erhält und in einem Dired-Puffer öffnet.

(defun km/org-link-dired-jump() 
    "Open Dired for directory of file link at point." 
    (interactive) 
    (let ((el (org-element-lineage (org-element-context) '(link) t))) 
    (unless (and el (equal (org-element-property :type el) "file")) 
     (user-error "Not on file link")) 
    (dired-jump 'other-window 
       (expand-file-name (org-element-property :path el))))) 

(Dies ist abhängig von Org-Version 8.3 oder höher.)

+0

Dank, das ist hilfreich. – mclear