Carsten Dominik <address@hidden> writes:
Hi Sam,
if you get this to wrok correctly with outline-path-completion,
that would make me consider to put in some time to make Org more
ido compatible.
- Carsten
Hi,
I tried changing completing-reads in org-mode so that they will use
ido-mode speedups when ido-mode is available and has been set by the
user's global configuration.
There is one difference between ido-completing-read and completing-
read,
namely the second argument must be a list in ido-completing-read,
rather
than the more general options in regular completing-read so this
limitation is also considered when deciding which completing read
function to use. All completing reads are now handled through the
following simple function.
(defun org-ido-completing-read (&rest args)
"Completing-read using `ido-mode' speedups if available"
(if (and ido-mode (listp (second args)))
(apply 'ido-completing-read args)
(apply 'completing-read args)))
This does mean that for some of the fancier org-mode completing reads
(like in `org-refile') ido-completing-read will not be used.
Since the changes span many files, I posted them up here as a whole
repository rather than just attaching patches.
http://github.com/eschulte/org-mode/tree/master
I haven't tested this exhaustively, but it works in every case I've
tried, and when used the ido-mode speedups are very nice.
Cheers -- Eric
On Nov 10, 2008, at 3:11 AM, Samuel Wales wrote:
For those who don't know, flex matching in ido is really
something else. Just a few characters uniquely specify a
target.
For those who want to experiment with ido's flex matching
for org-refile, here is how I did it.
1. In org.el's org-refile-get-location, substitute
ido-completing-read for completing-read.
2. M-C-x.
3. Settings.
;;these enable ido for other stuff
(ido-mode 1)
(ido-everywhere 1)
(setf ido-confirm-unique-completion t)
(setf ido-enable-flex-matching t)
;;season to taste. for me, this is fast.
(setq org-refile-targets '((org-agenda-files . (:maxlevel . 2))))
;;i didn't get it to work with this as t, but it probably is
;;pretty easy. this is the next thing that should be done.
(setf org-refile-use-outline-path nil)
4. Get into an org file.
5. Call org-refile.
By the way, this should also work for headline jumping and
any other part of org that uses completing-read. See
http://www.emacswiki.org/emacs/InteractivelyDoThings for
background.
Anybody who wants to take this over is welcome.
--
For financial gain, professional myalgic encephalomyelitis deniers
are
knowingly causing further suffering and death by opposing biomedical
research into this fast-spreading serious disease. Care about the
world? Learn and get active:
http://www.meactionuk.org.uk/What_Is_ME_What_Is_CFS.htm
_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode
_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode