emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] [PATCH] - Fix org-fast-tag-selection


From: Nick Dokos
Subject: Re: [O] [PATCH] - Fix org-fast-tag-selection
Date: Tue, 03 Apr 2012 09:45:53 -0400

Noorul Islam K M <address@hidden> wrote:

> 
> Hello all,
> 
> I have the following setup similar to Bernt Hansen.
> 
> (setq org-tag-alist (quote ((:startgroup)
>                             ("@errand" . ?e)
>                             ("@office" . ?o)
>                             ("@home" . ?h)
>                             (:endgroup)
>                             ("PHONE" . ?p)
>                             ("WAITING" . ?w)
>                             ("HOME" . ?H)
>                             ("CANCELLED" . ?c)
>                             ("NOTE" . ?n)
>                             ("ORG" . ?O))))
> 
> New when I try to add a new tag with the key press "C-c C-q TAB" from a
> heading, I get following backtrace.
> 
> Debugger entered--Lisp error: (wrong-type-argument stringp :endgroup)
>   string-match("" :endgroup)
>   ido-read-internal(list "Tag: " nil nil nil nil)
>   ido-completing-read("Tag: " (#("REFILE" 0 6 (inherited t)) :startgroup 
> "@errand" "@office" "@home" :endgroup "PHONE" "WAITING" "HOME" "CANCELLED" 
> "NOTE" "ORG"))
>   apply(ido-completing-read "Tag: " (#("REFILE" 0 6 (inherited t)) 
> :startgroup "@errand" "@office" "@home" :endgroup "PHONE" "WAITING" "HOME" 
> "CANCELLED" "NOTE" "ORG") nil)
>   org-icompleting-read("Tag: " (#("REFILE" 0 6 (inherited t)) :startgroup 
> "@errand" "@office" "@home" :endgroup "PHONE" "WAITING" "HOME" "CANCELLED" 
> "NOTE" "ORG"))
>   org-fast-tag-selection(nil (#("REFILE" 0 6 (inherited t))) ((:startgroup) 
> ("@errand" . 101) ("@office" . 111) ("@home" . 104) (:endgroup) ("PHONE" . 
> 112) ("WAITING" . 119) ("HOME" . 72) ("CANCELLED" . 99) ("NOTE" . 110) ("ORG" 
> . 79) (#("REFILE" 0 6 (inherited t)))) nil)
>   org-set-tags(nil nil)
>   org-set-tags-command(nil)
>   call-interactively(org-set-tags-command nil nil)
> 
> I think I nailed down the problem and fixed it in the attached patch.
> 

Why did the :endgroup fail and not the :startgroup?

Nick

> Changelog:
> 
> * lisp/org.el (org-fast-tag-selection): Remove non-string object from 
> org-tag-alist.
> 
> Thanks and Regards
> Noorul
> 
> diff --git a/lisp/org.el b/lisp/org.el
> index 8ffb6c8..2df860e 100644
> --- a/lisp/org.el
> +++ b/lisp/org.el
> @@ -13756,7 +13756,10 @@ Returns the new tags string, or nil to not change 
> the current settings."
>                                (append (or buffer-tags
>                                            (with-current-buffer buf
>                                              (mapcar 'car 
> (org-get-buffer-tags))))
> -                                      (mapcar 'car table)))))
> +                                      (delq nil 
> +                                            (mapcar (lambda (x) 
> +                                                      (if (stringp 
> +                                                           (car x)) x)) 
> table))))))
>                   (quit (setq tg "")))
>                 (when (string-match "\\S-" tg)
>                   (add-to-list 'buffer-tags (list tg))



reply via email to

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