Hi Ihor, > ... > Note that you are using %^G, while implies (see org-capture-templates > docstring): > > %^G Prompt for tags, with completion on all tags in all agenda files. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Thank you so much for the help. You are absolutely right! > Only the capture template is actually loaded. However, providing tag > completion for %^G requires Org to scan all the agenda files for > possible tags. Hence, agenda files must be opened and examined. This is an oversight and misunderstanding by me. Really appreciate your explanation. > The reason why the capture target buffer and the agenda file buffers are > not closed is efficiency. Opening all the agenda files may take > considerable amount of time and hence it is generally better to keep > them open for future use. We might change it in future or provide an > option to close the opened files if there is enough interest. Feel free > to write a feature request - we will judge the number of user responses > to the request. Currently, I'm happy with this behavior. I'll learn how to submit a feature request anyway in case in the future I feel a need to. After your first reply earlier, I came to realize that the pop-up buffer in which I am able to select a template is indeed some kind of agenda view/mode. This can be confirmed by looking up the source code. So my original problem indeed had sth to do with agenda, not `org-capture'. Then I found my setting of `org-agenda-files' was indeed wrong: Sth like: (setq org-agenda-files ("~/projects/org/agenda.org")) ;; ^^^^^^^^^^^^^^^^^^^^^^^^^^ empty file at the moment will actually make the whole ~/projects/org directory as the agenda source, hence all the files under it will be loaded once agenda function is activated. I did that, again, because I misunderstood the manual. I should use a list for agenda files or a plain text file in which I specify agenda files, one per line. Hope all the information in this thread will help whoever runs into the same issue as I did. Best, Noel On Mon, Jul 18, 2022 at 11:24 AM Ihor Radchenko <yanta...@gmail.com> wrote: > > Noel Errenil <errelinaa...@gmail.com> writes: > > > ... > > Then, I fire `org-capture', captur a note and `C-c C-c' to save the captured > > content. > > > > Suddenly all the files under ~/projects/org will be loaded into the buffer > > list, which confuses me so much. Those that have nothing to do with > > capturing or capture-templates are loaded into Emacs, which makes > > little sense to me. > > ... > > Currently I have `org-directory' set to `~/projects/org'. My > > `org-capture' config is as follows: > > ... > > org-default-notes-file (concat org-directory "/notes.org"))) > > ... > > ("td" "With Dealines" entry ; todos->deadline > > (file+headline "tasks.org" "Deadlines") > > "* TODO %? %^G\nDEADLINE: %T" :kill-buffer t :prepend t) > > Note that you are using %^G, while implies (see org-capture-templates > docstring): > > %^G Prompt for tags, with completion on all tags in all agenda > files. > > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > > I just expect that only the capture template will be loaded during capturing > > and the template buffer should be killed (as config-ed) after capturing. > > Only the capture template is actually loaded. However, providing tag > completion for %^G requires Org to scan all the agenda files for > possible tags. Hence, agenda files must be opened and examined. > > The reason why the capture target buffer and the agenda file buffers are > not closed is efficiency. Opening all the agenda files may take > considerable amount of time and hence it is generally better to keep > them open for future use. We might change it in future or provide an > option to close the opened files if there is enough interest. Feel free > to write a feature request - we will judge the number of user responses > to the request. > > > What am I doing wrong? Any advice? Thank you so much in advance. > > You may either not use global tag completion (use %^g instead %^G in > your templates) or advice org-capture to close the opened files. > > Best, > Ihor