Hi Gustav, currently, the remove functionality can also be accessed by C-u /. If we want to provide a dedicated hotkey, then the following definition will do it:
(add-hook 'org-agenda-mode-hook (lambda() (local-set-key (kbd "\") '(lambda() (interactive) (org-agenda-filter-by-tag nil nil 'exclude)))) 'append) I would prefer to remove this function because it doesn’t add functionality. Keeping it around just adds another potential source of bugs. Best, Viktor > Am 28.01.2016 um 09:27 schrieb Gustav Wikström <gus...@whil.se>: > > Hi Kyle, Viktor and the group, > > I'd say it's a naming-problem. What, really, is the purpose of the function? > Because applying the proposed change essentially makes the function identical > to the function it calls. Right? And that function is still available for the > user, so a "refinement" can be done without the > org-agenda-filter-by-tag-refine (bound to backslash (\) ) function. As of > now, using the function to exclude tags in the agenda provides a direct > access to that functionality, instead of calling org-agenda-filter-by-tag > (bound to slash (/) ) plus pushing the minus key (-) to switch from filter to > exclude. > > If you want to make any change, I'd suggest to instead change the name of > org-agenda-filter-by-tag-refine to org-agenda-filter-by-tag-exclude and to > leave the code within the function as is (well.. maybe change 'refine to > 'exclude with the same argument as to the function name change). > > Best Regards > Gustav > > -----Original Message----- > From: Kyle Meyer [mailto:k...@kyleam.com] > Sent: Tuesday, January 12, 2016 07:19 > To: Viktor Rosenfeld <v.rosenf...@gmx.de> > Cc: emacs-orgmode@gnu.org; Gustav Wikström <gus...@whil.se> > Subject: Re: org-agenda-filter-by-tag-refine defaults to exclude > > Hi Viktor, > > Viktor Rosenfeld <v.rosenf...@gmx.de> writes: > >> Hi, >> >> I noticed that org-agenda-filter-by-tag-refine started to exclude >> selected tags by default recently because the 'refine in the call to >> org-agenda-filter-by-tag is interpreted as an exclude flag. > > This seems to have been introduced by 6c6ae99 (org-agenda: Filtering in the > agenda on grouptags, 2015-01-24). > >> The attached patch fixes this. >> >> However, it seems that the function is superfluous because >> org-agenda-filter-by-tag can filter on multiple tags as well if called >> multiple times (that used not to be the case earlier). So maybe it >> should be deprecated and removed? > > I agree. Gustav, does that make sense given your changes in 6c6ae99? > >> diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el index >> d91b64d..21928de 100644 >> --- a/lisp/org-agenda.el >> +++ b/lisp/org-agenda.el >> @@ -7580,7 +7580,7 @@ to switch between filtering and excluding." >> (defun org-agenda-filter-by-tag-refine (arg &optional char) >> "Refine the current filter. See `org-agenda-filter-by-tag'." >> (interactive "P") >> - (org-agenda-filter-by-tag arg char 'refine)) >> + (org-agenda-filter-by-tag arg char)) > >> (defun org-agenda-filter-make-matcher (filter type &optional expand) >> "Create the form that tests a line for agenda filter. Optional > > > -- > Kyle
signature.asc
Description: Message signed with OpenPGP using GPGMail