To exclude a file from a directory of org files, just remove it:
(remove "/path/to/file" org-agenda-files)
Here is my custom command for excluding everything from ~/Dropbox/org/work.org:
;; Show all todos and everything due today, except work related tasks.
((agenda "" (
I have a solution that worked for me, after some trial and error. Please bear with me as this is my first time answering a question on StackExchange.
I also had Org agenda break with the error message Symbol's value as variable is void: org-tag-group-re. For me, this occurred while trying to install org-drill.
For context, I'm running Emacs 26.3 on MacOS ...
I ended up with the code below. I guess it can be shorten/optimized (it's a bit slow) but it does the job.
(defface busy-1 '((t :foreground "black" :background "#eceff1")) "")
(defface busy-2 '((t :foreground "black" :background "#cfd8dc")) "")
(defface busy-3 '((t :foreground "black" :background "#b0bec5")) "")
(defface busy-4 '((t :foreground "black" :...
Generally the values inside org-agenda-custom-commands are hard-coded so you have no chance to prompt for input. But one of the choices for an entry type in org-agenda-custom-commands is a user defined function, which will be called with a single argument. So first define a function that prompts for a value of the WITH property and runs org-tags-view on ...
You can do this either with tags or with properties. Assuming an org file that looks like this:
* headline 1 :tag1:
* headline 2 :tag2:
* headline 3
Then C-c a m WITH="hello" RET will get you an agenda
containing 'headline 1' (assuming that you're using C-...
What you want to do is probably possible with Emacs, if you put enough time and energy into it. However, as you say are new to both Emacs and Org, that could be a frustrating experience and put you off both Emacs and Org. Therefore I would suggest that you try to use tags to achieve what you want. This should work pretty much out of the box. If you ...
Since habits are scheduled, you can just do this: (setq org-agenda-todo-ignore-scheduled 'all) and now they should be hidden. There are also a few other options like this to filter for different things:
It depends on what you're expecting out of it. On a given date agenda, pressing M will show you all the relevant info about moon ephemerides.
If you want it inside your, say, daily agenda you'll have to add them as sexps in any of your agenda files. Note that there shouldn't be any subtree indentation before %%
* Moon phases
If this is really an appointment reminder, rather than a scheduled task, then the easiest thing to do is to forego the SCHEDULED: marker and just have the three timestamps listed (I like putting the timestamps on different lines, but you can put them on a single line if you want):
* stuff to do
<Monday 4/5/2020 +1w>
<Wed 6/5/2020 +1w>
One idea would be to create a custom function that tests for specified days of the week. The following example is hard-coded to return t for Monday (i.e., 1), Wednesday (i.e., 3) and Friday (i.e., 5).
This can be used in an org-mode file such as:
* My Task
SCHEDULED: <%%(diary-monday-wednesday-friday date)>
Or, it can be used in a diary file and ...
You can use file variables (or in this case, a pseudo-variable) to do something when you open a particular file. Add something like this at the bottom of the file:
# Local Variables:
# eval: (progn (org-agenda-list) (split-window-below))
In order to avoid confirmation questions, you'll also have to set a couple of variables in your init file:
Perhaps this answer will help future Doom Emacs users who run into this problem.
I think it had to do with the order in which multiple configuration files are loaded. My solution was to put the following in config.el:
(setq org-agenda-files '("~/org/inbox.org"