* Multiple agenda buffers at git@github.com:7max/org-mode.git @ 2012-01-25 21:45 Max Mikhanosha 2012-01-26 9:50 ` Carsten Dominik 0 siblings, 1 reply; 6+ messages in thread From: Max Mikhanosha @ 2012-01-25 21:45 UTC (permalink / raw) To: emacs-orgmode; +Cc: Carsten Dominik I had put my initial implementation of multiple agenda buffers and sticky agenda support on git@github.com:7max/org-mode.git branch multiple-agenda-buffers. To enable, use M-x org-toggle-sticky-agenda In order to take full advantage of the sticky agenda, you need to give your various agendas different buffer names, you can do it by including `org-agenda-buffer-name' into the list of bound variables in `org-agenda-custom-commands' For example: (setq org-agenda-custom-commands '(("a" "Agenda and NEXT (priority)" ((agenda "" ((org-agenda-span 'day))) (tags-todo "/!NEXT" ((org-agenda-overriding-header "Next Tasks") (org-agenda-tags-todo-honor-ignore-options t) (org-agenda-todo-ignore-scheduled t) (org-agenda-todo-ignore-deadlines t) (org-tags-match-list-sublevels t) (org-agenda-sorting-strategy '(priority-down category-keep))))) ((org-agenda-buffer-name "*Agenda*"))) ("t" "TODO entries" todo "" ((org-agenda-buffer-name "*Todo List*"))))) When sticky agenda is enabled, most of org-agenda Emacs variables become buffer local, and org-agenda-quit is changed to bury the buffer instead of killing it. Correspondingly org-agenda will show previously buried buffer if it exists, instead of re-generating it. This allows user to have many "mini-agendas" and switch between them rapidly I would appreciate any bug-reports about things not working, and of course patches or fixes for them. The most likely cause of any breakage is that `org-agenda-local-vars' list needs adjusting and/or fixing. Regards Max ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Multiple agenda buffers at git@github.com:7max/org-mode.git 2012-01-25 21:45 Multiple agenda buffers at git@github.com:7max/org-mode.git Max Mikhanosha @ 2012-01-26 9:50 ` Carsten Dominik 2012-01-26 11:17 ` Max Mikhanosha 0 siblings, 1 reply; 6+ messages in thread From: Carsten Dominik @ 2012-01-26 9:50 UTC (permalink / raw) To: Max Mikhanosha; +Cc: emacs-orgmode Hi Max, how did you select the variables that should become buffer-local? You might have too many in your list, for example org-last-heading-marker... Cheers - Carsten On 25.1.2012, at 21:45, Max Mikhanosha wrote: > I had put my initial implementation of multiple agenda buffers and > sticky agenda support on git@github.com:7max/org-mode.git branch > multiple-agenda-buffers. > > To enable, use M-x org-toggle-sticky-agenda > > In order to take full advantage of the sticky agenda, you need to give > your various agendas different buffer names, you can do it by > including `org-agenda-buffer-name' into the list of bound variables in > `org-agenda-custom-commands' > > For example: > > (setq org-agenda-custom-commands > '(("a" "Agenda and NEXT (priority)" > ((agenda "" > ((org-agenda-span 'day))) > (tags-todo "/!NEXT" > ((org-agenda-overriding-header "Next Tasks") > (org-agenda-tags-todo-honor-ignore-options t) > (org-agenda-todo-ignore-scheduled t) > (org-agenda-todo-ignore-deadlines t) > (org-tags-match-list-sublevels t) > (org-agenda-sorting-strategy > '(priority-down category-keep))))) > ((org-agenda-buffer-name "*Agenda*"))) > ("t" "TODO entries" > todo "" > ((org-agenda-buffer-name "*Todo List*"))))) > > > When sticky agenda is enabled, most of org-agenda Emacs variables > become buffer local, and org-agenda-quit is changed to bury the buffer > instead of killing it. Correspondingly org-agenda will show previously > buried buffer if it exists, instead of re-generating it. > > This allows user to have many "mini-agendas" and switch between them > rapidly > > I would appreciate any bug-reports about things not working, and of > course patches or fixes for them. The most likely cause of any > breakage is that `org-agenda-local-vars' list needs adjusting and/or > fixing. > > Regards > Max ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Multiple agenda buffers at git@github.com:7max/org-mode.git 2012-01-26 9:50 ` Carsten Dominik @ 2012-01-26 11:17 ` Max Mikhanosha 2012-01-26 11:35 ` Carsten Dominik 2012-01-26 11:39 ` Max Mikhanosha 0 siblings, 2 replies; 6+ messages in thread From: Max Mikhanosha @ 2012-01-26 11:17 UTC (permalink / raw) Cc: emacs-orgmode I realize that I may have too many, my initial approach was to start with some obvious one, then test and keep adding to the list. But the bugs that shows up are hard to reproduce, and subtle, and it was slow going, and I was sure I'm missing some. So I went the other direction, and made a list of vars by grepping org-agenda.el for "(defvar ....", and tested again, and it was easier to eliminate the variables from the list, since any variables that caused problems usually throw error (due to global value being NIL), instead of doing something subtly wrong that is hard to notice. At Thu, 26 Jan 2012 09:50:22 +0000, Carsten Dominik wrote: > > Hi Max, > > how did you select the variables that should become buffer-local? > You might have too many in your list, for example org-last-heading-marker... > > Cheers > > - Carsten > > On 25.1.2012, at 21:45, Max Mikhanosha wrote: > > > I had put my initial implementation of multiple agenda buffers and > > sticky agenda support on git@github.com:7max/org-mode.git branch > > multiple-agenda-buffers. > > > > To enable, use M-x org-toggle-sticky-agenda > > > > In order to take full advantage of the sticky agenda, you need to give > > your various agendas different buffer names, you can do it by > > including `org-agenda-buffer-name' into the list of bound variables in > > `org-agenda-custom-commands' > > > > For example: > > > > (setq org-agenda-custom-commands > > '(("a" "Agenda and NEXT (priority)" > > ((agenda "" > > ((org-agenda-span 'day))) > > (tags-todo "/!NEXT" > > ((org-agenda-overriding-header "Next Tasks") > > (org-agenda-tags-todo-honor-ignore-options t) > > (org-agenda-todo-ignore-scheduled t) > > (org-agenda-todo-ignore-deadlines t) > > (org-tags-match-list-sublevels t) > > (org-agenda-sorting-strategy > > '(priority-down category-keep))))) > > ((org-agenda-buffer-name "*Agenda*"))) > > ("t" "TODO entries" > > todo "" > > ((org-agenda-buffer-name "*Todo List*"))))) > > > > > > When sticky agenda is enabled, most of org-agenda Emacs variables > > become buffer local, and org-agenda-quit is changed to bury the buffer > > instead of killing it. Correspondingly org-agenda will show previously > > buried buffer if it exists, instead of re-generating it. > > > > This allows user to have many "mini-agendas" and switch between them > > rapidly > > > > I would appreciate any bug-reports about things not working, and of > > course patches or fixes for them. The most likely cause of any > > breakage is that `org-agenda-local-vars' list needs adjusting and/or > > fixing. > > > > Regards > > Max > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Multiple agenda buffers at git@github.com:7max/org-mode.git 2012-01-26 11:17 ` Max Mikhanosha @ 2012-01-26 11:35 ` Carsten Dominik 2012-01-26 11:39 ` Max Mikhanosha 1 sibling, 0 replies; 6+ messages in thread From: Carsten Dominik @ 2012-01-26 11:35 UTC (permalink / raw) To: Max Mikhanosha; +Cc: emacs-orgmode On 26.1.2012, at 11:17, Max Mikhanosha wrote: > I realize that I may have too many, my initial approach was to start > with some obvious one, then test and keep adding to the list. > > But the bugs that shows up are hard to reproduce, and subtle, and it > was slow going, and I was sure I'm missing some. > > So I went the other direction, and made a list of vars by grepping > org-agenda.el for "(defvar ....", and tested again, and it was easier > to eliminate the variables from the list, since any variables that > caused problems usually throw error (due to global value being NIL), > instead of doing something subtly wrong that is hard to notice. OK, I will go through that list... - Carsten > > At Thu, 26 Jan 2012 09:50:22 +0000, Carsten Dominik wrote: >> >> Hi Max, >> >> how did you select the variables that should become buffer-local? >> You might have too many in your list, for example org-last-heading-marker... >> >> Cheers >> >> - Carsten >> >> On 25.1.2012, at 21:45, Max Mikhanosha wrote: >> >>> I had put my initial implementation of multiple agenda buffers and >>> sticky agenda support on git@github.com:7max/org-mode.git branch >>> multiple-agenda-buffers. >>> >>> To enable, use M-x org-toggle-sticky-agenda >>> >>> In order to take full advantage of the sticky agenda, you need to give >>> your various agendas different buffer names, you can do it by >>> including `org-agenda-buffer-name' into the list of bound variables in >>> `org-agenda-custom-commands' >>> >>> For example: >>> >>> (setq org-agenda-custom-commands >>> '(("a" "Agenda and NEXT (priority)" >>> ((agenda "" >>> ((org-agenda-span 'day))) >>> (tags-todo "/!NEXT" >>> ((org-agenda-overriding-header "Next Tasks") >>> (org-agenda-tags-todo-honor-ignore-options t) >>> (org-agenda-todo-ignore-scheduled t) >>> (org-agenda-todo-ignore-deadlines t) >>> (org-tags-match-list-sublevels t) >>> (org-agenda-sorting-strategy >>> '(priority-down category-keep))))) >>> ((org-agenda-buffer-name "*Agenda*"))) >>> ("t" "TODO entries" >>> todo "" >>> ((org-agenda-buffer-name "*Todo List*"))))) >>> >>> >>> When sticky agenda is enabled, most of org-agenda Emacs variables >>> become buffer local, and org-agenda-quit is changed to bury the buffer >>> instead of killing it. Correspondingly org-agenda will show previously >>> buried buffer if it exists, instead of re-generating it. >>> >>> This allows user to have many "mini-agendas" and switch between them >>> rapidly >>> >>> I would appreciate any bug-reports about things not working, and of >>> course patches or fixes for them. The most likely cause of any >>> breakage is that `org-agenda-local-vars' list needs adjusting and/or >>> fixing. >>> >>> Regards >>> Max >> > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Multiple agenda buffers at git@github.com:7max/org-mode.git 2012-01-26 11:17 ` Max Mikhanosha 2012-01-26 11:35 ` Carsten Dominik @ 2012-01-26 11:39 ` Max Mikhanosha 2012-01-26 15:10 ` Max Mikhanosha 1 sibling, 1 reply; 6+ messages in thread From: Max Mikhanosha @ 2012-01-26 11:39 UTC (permalink / raw) To: emacs-orgmode; +Cc: Carsten Dominik I had committed a change that activates local variables, only if org-agenda-sticky is turned on, hopefully making it completely safe to test for people.. Now if something is screwed up, and you are in a hurry, you can turn sticky agenda off and get on with normal org-mode usage, and then send bug report later. At Thu, 26 Jan 2012 06:17:45 -0500, Max Mikhanosha wrote: > > I realize that I may have too many, my initial approach was to start > with some obvious one, then test and keep adding to the list. > > But the bugs that shows up are hard to reproduce, and subtle, and it > was slow going, and I was sure I'm missing some. > > So I went the other direction, and made a list of vars by grepping > org-agenda.el for "(defvar ....", and tested again, and it was easier > to eliminate the variables from the list, since any variables that > caused problems usually throw error (due to global value being NIL), > instead of doing something subtly wrong that is hard to notice. > > At Thu, 26 Jan 2012 09:50:22 +0000, Carsten Dominik wrote: > > > > Hi Max, > > > > how did you select the variables that should become buffer-local? > > You might have too many in your list, for example org-last-heading-marker... > > > > Cheers > > > > - Carsten > > > > On 25.1.2012, at 21:45, Max Mikhanosha wrote: > > > > > I had put my initial implementation of multiple agenda buffers and > > > sticky agenda support on git@github.com:7max/org-mode.git branch > > > multiple-agenda-buffers. > > > > > > To enable, use M-x org-toggle-sticky-agenda > > > > > > In order to take full advantage of the sticky agenda, you need to give > > > your various agendas different buffer names, you can do it by > > > including `org-agenda-buffer-name' into the list of bound variables in > > > `org-agenda-custom-commands' > > > > > > For example: > > > > > > (setq org-agenda-custom-commands > > > '(("a" "Agenda and NEXT (priority)" > > > ((agenda "" > > > ((org-agenda-span 'day))) > > > (tags-todo "/!NEXT" > > > ((org-agenda-overriding-header "Next Tasks") > > > (org-agenda-tags-todo-honor-ignore-options t) > > > (org-agenda-todo-ignore-scheduled t) > > > (org-agenda-todo-ignore-deadlines t) > > > (org-tags-match-list-sublevels t) > > > (org-agenda-sorting-strategy > > > '(priority-down category-keep))))) > > > ((org-agenda-buffer-name "*Agenda*"))) > > > ("t" "TODO entries" > > > todo "" > > > ((org-agenda-buffer-name "*Todo List*"))))) > > > > > > > > > When sticky agenda is enabled, most of org-agenda Emacs variables > > > become buffer local, and org-agenda-quit is changed to bury the buffer > > > instead of killing it. Correspondingly org-agenda will show previously > > > buried buffer if it exists, instead of re-generating it. > > > > > > This allows user to have many "mini-agendas" and switch between them > > > rapidly > > > > > > I would appreciate any bug-reports about things not working, and of > > > course patches or fixes for them. The most likely cause of any > > > breakage is that `org-agenda-local-vars' list needs adjusting and/or > > > fixing. > > > > > > Regards > > > Max > > > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Multiple agenda buffers at git@github.com:7max/org-mode.git 2012-01-26 11:39 ` Max Mikhanosha @ 2012-01-26 15:10 ` Max Mikhanosha 0 siblings, 0 replies; 6+ messages in thread From: Max Mikhanosha @ 2012-01-26 15:10 UTC (permalink / raw) To: emacs-orgmode; +Cc: Carsten Dominik At Thu, 26 Jan 2012 06:39:45 -0500, Found that switching to weekly/daily view was broken, and committed removal of org-agenda-overriding-restriction and org-agenda-overriding-arguments from the local var list. Max Mikhanosha wrote: > > I had committed a change that activates local variables, only if > org-agenda-sticky is turned on, hopefully making it completely safe to > test for people.. > > Now if something is screwed up, and you are in a hurry, you can turn > sticky agenda off and get on with normal org-mode usage, and then send > bug report later. > > At Thu, 26 Jan 2012 06:17:45 -0500, > Max Mikhanosha wrote: > > > > I realize that I may have too many, my initial approach was to start > > with some obvious one, then test and keep adding to the list. > > > > But the bugs that shows up are hard to reproduce, and subtle, and it > > was slow going, and I was sure I'm missing some. > > > > So I went the other direction, and made a list of vars by grepping > > org-agenda.el for "(defvar ....", and tested again, and it was easier > > to eliminate the variables from the list, since any variables that > > caused problems usually throw error (due to global value being NIL), > > instead of doing something subtly wrong that is hard to notice. > > > > At Thu, 26 Jan 2012 09:50:22 +0000, Carsten Dominik wrote: > > > > > > Hi Max, > > > > > > how did you select the variables that should become buffer-local? > > > You might have too many in your list, for example org-last-heading-marker... > > > > > > Cheers > > > > > > - Carsten > > > > > > On 25.1.2012, at 21:45, Max Mikhanosha wrote: > > > > > > > I had put my initial implementation of multiple agenda buffers and > > > > sticky agenda support on git@github.com:7max/org-mode.git branch > > > > multiple-agenda-buffers. > > > > > > > > To enable, use M-x org-toggle-sticky-agenda > > > > > > > > In order to take full advantage of the sticky agenda, you need to give > > > > your various agendas different buffer names, you can do it by > > > > including `org-agenda-buffer-name' into the list of bound variables in > > > > `org-agenda-custom-commands' > > > > > > > > For example: > > > > > > > > (setq org-agenda-custom-commands > > > > '(("a" "Agenda and NEXT (priority)" > > > > ((agenda "" > > > > ((org-agenda-span 'day))) > > > > (tags-todo "/!NEXT" > > > > ((org-agenda-overriding-header "Next Tasks") > > > > (org-agenda-tags-todo-honor-ignore-options t) > > > > (org-agenda-todo-ignore-scheduled t) > > > > (org-agenda-todo-ignore-deadlines t) > > > > (org-tags-match-list-sublevels t) > > > > (org-agenda-sorting-strategy > > > > '(priority-down category-keep))))) > > > > ((org-agenda-buffer-name "*Agenda*"))) > > > > ("t" "TODO entries" > > > > todo "" > > > > ((org-agenda-buffer-name "*Todo List*"))))) > > > > > > > > > > > > When sticky agenda is enabled, most of org-agenda Emacs variables > > > > become buffer local, and org-agenda-quit is changed to bury the buffer > > > > instead of killing it. Correspondingly org-agenda will show previously > > > > buried buffer if it exists, instead of re-generating it. > > > > > > > > This allows user to have many "mini-agendas" and switch between them > > > > rapidly > > > > > > > > I would appreciate any bug-reports about things not working, and of > > > > course patches or fixes for them. The most likely cause of any > > > > breakage is that `org-agenda-local-vars' list needs adjusting and/or > > > > fixing. > > > > > > > > Regards > > > > Max > > > > > > ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-01-26 15:10 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-01-25 21:45 Multiple agenda buffers at git@github.com:7max/org-mode.git Max Mikhanosha 2012-01-26 9:50 ` Carsten Dominik 2012-01-26 11:17 ` Max Mikhanosha 2012-01-26 11:35 ` Carsten Dominik 2012-01-26 11:39 ` Max Mikhanosha 2012-01-26 15:10 ` Max Mikhanosha
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).