Thx so much guys for the great answers Kaushal Modi: cousel-org-tag is fantastic and works very well for me John: i did try helm with (mapcar 'car 'org-tag-persistent-alist ) but it gave me an error: cons: Wrong type argument: sequencep, org-tag-persistent-alist the code i used: (defun helm-tagger () (interactive) (helm :sources `((name . "HELM tag setter") (candidates . ,(mapcar 'car 'org-tag-persistent-alist )) (action . (lambda (candidate) (org-set-tags-to (helm-marked-candidates))))))) to be honest cousel-org-tag works really well but if anyone else is interested in the helm part ive posted the error kind regards Z On Tue, May 31, 2016 at 6:40 AM, Kaushal Modi wrote: > > > On Mon, May 30, 2016, 11:18 PM Xebar Saram wrote: > >> thx so much john! >> >> is there a way where the function can auto read all the tags from >> "org-tag-persistent-alist " instead of manfully adding to the function each >> time a new tag is added? >> >> best >> >> Z >> > > If you use the ivy-family of list completion, check out the counsel > package, and the cousel-org-tag function in there. > >> -- > > -- > Kaushal Modi >