emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] Bug found (but don't know to fix)


From: Carsten Dominik
Subject: Re: [Orgmode] Bug found (but don't know to fix)
Date: Wed, 21 May 2008 19:16:42 +0200


On May 21, 2008, at 4:25 PM, Wanrong Lin wrote:

Hi, Carsten,

Thanks a lot for the patch. I tried it, but it does not work. I traced into the "org-open-at-point" function and found the patch is not executed because the condition *"(stringp cmd)" *is not satisfied, as "cmd" is a list "(w32-shell-execute "open" file)". This function seems a little bit too complicated for me to sort out, would you mind taking another look into it, or giving some suggestion on how to fix it? Thank you.

Hi Wanrong,

How about this patch then:

diff --git a/lisp/org.el b/lisp/org.el
index 9094204..4e2aa58 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -7385,7 +7385,9 @@ If the file does not exist, an error is thrown."
        (setq cmd (replace-match "%s" t t cmd)))
       (while (string-match "%s" cmd)
        (setq cmd (replace-match
-                  (save-match-data (shell-quote-argument file))
+                  (save-match-data
+                    (shell-quote-argument
+                     (convert-standard-filename file)))
                   t t cmd)))
       (save-window-excursion
        (start-process-shell-command cmd nil cmd)
@@ -7398,7 +7400,8 @@ If the file does not exist, an error is thrown."
       (if line (goto-line line)
        (if search (org-link-search search))))
      ((consp cmd)
-      (eval cmd))
+      (let ((file (convert-standard-filename file)))
+       (eval cmd)))
      (t (funcall (cdr (assq 'file org-link-frame-setup)) file)))
     (and (org-mode-p) (eq old-mode 'org-mode)
         (or (not (equal old-buffer (current-buffer)))






reply via email to

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