Pārlūkot izejas kodu

Stop iswitchb tag completion from including virtual files

Tassilo Horn writes:

> When I want to set a tag using `C-c C-q TAB' I get a iswitchb completion
> prompt, cause org-completion-use-iswitchb is t.  I also use iswitchb's
> virtual files feature (iswitchb-use-virtual-buffers set to t), which
> includes files that aren't opened in a buffer, but are in the recentf
> list.  This is a cool thing when switching buffers (I barely use C-x C-f
> anymore and switch to the virtual buffer instead), but totally useless
> and annoying for tab completion in org.
>
> So when completing anything (files/tags/...) in org with iswitchb,
> switchb-use-virtual-buffers should be let-bound to nil before.
Carsten Dominik 15 gadi atpakaļ
vecāks
revīzija
c125359a9b
2 mainītis faili ar 6 papildinājumiem un 3 dzēšanām
  1. 2 0
      lisp/ChangeLog
  2. 4 3
      lisp/org.el

+ 2 - 0
lisp/ChangeLog

@@ -4,6 +4,8 @@
 	implement a link with index zero.
 	(org-cycle-show-empty-lines): Not keep empty line under header
 	hidden.
+	(org-iswitchb-completing-read): Bind `switchb-use-virtual-buffers'
+	to nil for special completion.
 
 	* org-agenda.el (org-agenda-open-link): Pass the prefix to
 	`org-offer-links-in-entry'.

+ 4 - 3
lisp/org.el

@@ -7706,9 +7706,10 @@ Use TAB to complete link prefixes, then RET for type-specific completion support
   "Use iswitch as a completing-read replacement to choose from choices.
 PROMPT is a string to prompt with.  CHOICES is a list of strings to choose
 from."
-  (let ((iswitchb-make-buflist-hook
-         (lambda ()
-           (setq iswitchb-temp-buflist choices))))
+  (let* ((switchb-use-virtual-buffers nil)
+	 (iswitchb-make-buflist-hook
+	  (lambda ()
+	    (setq iswitchb-temp-buflist choices))))
     (iswitchb-read-buffer prompt)))
 
 (defun org-icompleting-read (&rest args)