0
0
Fork 1
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-07-16 11:16:27 +00:00

org-insert-link: Use ido when inserting links

org.el (org-insert-link): Remove a list within the list of link
creation that causes a bug when using ido.  Remove the hard coded
iswitch and ido switches.

(org-iread-file-name): Create a function that can use
ido-read-file-name if flagged as ok.

(org-file-complete-link): Reference org-iread-file-name.
This commit is contained in:
Tony Day 2012-10-12 14:39:53 +11:00 committed by Nicolas Goaziou
parent 56470de26d
commit 7f096ad379

View file

@ -9317,18 +9317,15 @@ Use TAB to complete link prefixes, then RET for type-specific completion support
(unwind-protect
(progn
(setq link
(let ((org-completion-use-ido nil)
(org-completion-use-iswitchb nil))
(org-completing-read
"Link: "
(append
(mapcar (lambda (x) (list (concat x ":")))
all-prefixes)
(mapcar 'car org-stored-links)
(mapcar 'cadr org-stored-links))
nil nil nil
'tmphist
(caar org-stored-links))))
(org-completing-read
"Link: "
(append
(mapcar (lambda (x) (concat x ":"))
all-prefixes)
(mapcar 'car org-stored-links))
nil nil nil
'tmphist
(caar org-stored-links)))
(if (not (string-match "\\S-" link))
(error "No link selected"))
(mapc (lambda(l)
@ -9422,7 +9419,7 @@ Use TAB to complete link prefixes, then RET for type-specific completion support
(defun org-file-complete-link (&optional arg)
"Create a file link using completion."
(let (file link)
(setq file (read-file-name "File: "))
(setq file (org-iread-file-name "File: "))
(let ((pwd (file-name-as-directory (expand-file-name ".")))
(pwd1 (file-name-as-directory (abbreviate-file-name
(expand-file-name ".")))))
@ -9440,6 +9437,19 @@ Use TAB to complete link prefixes, then RET for type-specific completion support
(t (setq link (concat "file:" file)))))
link))
(defun org-iread-file-name (&rest args)
"Read-file-name using `ido-mode' speedup if available.
ARGS are arguments that may be passed to `ido-read-file-name' or `read-file-name'.
See `read-file-name' for a description of parameters."
(org-without-partial-completion
(if (and org-completion-use-ido
(fboundp 'ido-read-file-name)
(boundp 'ido-mode) ido-mode
(listp (second args)))
(let ((ido-enter-matching-directory nil))
(apply 'ido-read-file-name args))
(apply 'read-file-name args))))
(defun org-completing-read (&rest args)
"Completing-read with SPACE being a normal character."
(let ((enable-recursive-minibuffers t)