emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] [PATCH] org-attach: Use relative path for git annex


From: Erik Hetzner
Subject: [O] [PATCH] org-attach: Use relative path for git annex
Date: Fri, 26 Feb 2016 12:44:46 -0800
User-agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (Gojō) APEL/10.8 EasyPG/1.0.0 Emacs/25.1.50 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO)

* lisp/org-attach.el (org-attach-annex-get-maybe): Use relative path as
  argument for git annex. Fixes error in test with version 3 of git
  annex.
---
 lisp/org-attach.el | 33 +++++++++++++++++----------------
 1 file changed, 17 insertions(+), 16 deletions(-)

diff --git a/lisp/org-attach.el b/lisp/org-attach.el
index ebea435..cf8a1ca 100644
--- a/lisp/org-attach.el
+++ b/lisp/org-attach.el
@@ -299,22 +299,23 @@ the ATTACH_DIR property) their own attachment directory."
 (defun org-attach-annex-get-maybe (path)
   "Call git annex get PATH (via shell) if using git annex.
 Signals an error if the file content is not available and it was not 
retrieved."
-  (when (and (org-attach-use-annex)
-            (not
-             (string-equal
-              "found"
-              (shell-command-to-string
-               (format "git annex find --format=found --in=here %s"
-                       (shell-quote-argument path))))))
-    (let ((should-get
-          (if (eq org-attach-annex-auto-get 'ask)
-              (y-or-n-p (format "Run git annex get %s? " path))
-            org-attach-annex-auto-get)))
-      (if should-get
-         (progn (message "Running git annex get \"%s\"." path)
-                (call-process "git" nil nil nil "annex" "get" path))
-       (error "File %s stored in git annex but it is not available, and was 
not retrieved"
-              path)))))
+  (let ((path-relative (file-relative-name path)))
+    (when (and (org-attach-use-annex)
+              (not
+               (string-equal
+                "found"
+                (shell-command-to-string
+                 (format "git annex find --format=found --in=here %s"
+                         (shell-quote-argument path-relative))))))
+      (let ((should-get
+            (if (eq org-attach-annex-auto-get 'ask)
+                (y-or-n-p (format "Run git annex get %s? " path-relative))
+              org-attach-annex-auto-get)))
+       (if should-get
+           (progn (message "Running git annex get \"%s\"." path-relative)
+                  (call-process "git" nil nil nil "annex" "get" path-relative))
+         (error "File %s stored in git annex but it is not available, and was 
not retrieved"
+                path))))))

 (defun org-attach-commit ()
   "Commit changes to git if `org-attach-directory' is properly initialized.
--
2.5.0



reply via email to

[Prev in Thread] Current Thread [Next in Thread]