Unless I'm misunderstanding how the configuration should work, adding the following to .doom.d/config.el should set the value of org-todo-keywords
(after! org
(setq org-todo-keywords
'((sequence "TODO(t)" "NEXT(n)" "WAIT(w@/!)" "|" "DONE(d!)" "CANC(c@)")))
...etc...
)
The value of org-todo-keywords should be sequence "TODO(t)" "NEXT(n)" "WAIT(w@/!)" "|" "DONE(d!)" "CANC(c@)" but remains as defined in .emacs.d/modules/lang/org/config.el...
'((sequence "[ ](t)" "[-](p)" "[?](m)" "|" "[X](d)")
(sequence "TODO(T)" "|" "DONE(D)")
(sequence "NEXT(n)" "ACTIVE(a)" "WAITING(w)" "LATER(l)" "|" "CANCELLED(c)"))
How should I go about setting my own value for org-todo-keywords?
Click to expand
Doom Doctor
Emacs v25.3.1
Doom v2.0.9 (5acd952c)
shell: /bin/zsh
Compiled with:
JPEG RSVG IMAGEMAGICK NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS
MODULES
uname -a:
Darwin Jacks-MBP.localdomain 17.5.0 Darwin Kernel Version 17.5.0: Mon Mar 5
22:24:32 PST 2018; root:xnu-4570.51.1~1/RELEASE_X86_64 x86_64
----
test-emacs
test-private-config
test-windows
test-fonts
test-gnutls
test-tls
Validated https://elpa.gnu.org
Validated https://melpa.org
Successfully rejected https://self-signed.badssl.com
Successfully rejected https://wrong.host.badssl.com/
test-tar
----
Attempt to load DOOM: failed (Cannot open load file No such file or
directory evil-collection-package-menu)
----
There were 1 issues!
I'm having this same problem. The strangest thing is, that this worked just fine a few days ago. And I haven't pulled the most recent changes from develop, so not sure what's changed.
This might be connected to https://github.com/hlissner/doom-emacs/issues/548 as it seems like the root cause would be the same
@syvanpera No changes were made to the :lang org module in the past 2 weeks that should affect this, on develop. Could you check your *Messages* to see if perhaps an unrelated error is preventing your conig from being evaluated?
@jackbaty I see you are currently using the master branch. Org-mode is effectively broken on master due to a combination of issues upstream and in Doom's org module. This and _many_ other issues have been fixed on develop, which are due to be merged into master relatively soon. I recommend you switch to it (also, pay mind to the changes in init.example.el; a few things have changed).
This is strange... I just tried again and now my todo-keywords work again. What gets saved when you reload the last session? I've been doing that lately a lot, but now I started a fresh session and they worked.
I see you are currently using the master branch
I'm pretty sure I've been running develop. I've done make upgrade make update and make just now and included the output of doom/info below. The prior details were generated using make doctor so maybe that reports differently?
todo-keywords are still "stuck" with the default set. I'll keep poking at it to see if I can help determine why. (I'm not even a blue belt so I probably won't be much help)
Thanks for looking into it!
Click to expand
- OS: darwin (x86_64-apple-darwin17.4.0)
- Emacs: 25.3.1 (Apr 05, 2018)
- Doom: 2.0.9 (develop https://github.com/hlissner/doom-emacs/commit/630188e27e04449eb27bd9dec27630b26a5f0d13)
- Graphic display: t (daemon: nil)
- System features: JPEG RSVG IMAGEMAGICK NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES
- Details:
```elisp
uname -a: Darwin Jacks-MBP.localdomain 17.5.0 Darwin Kernel Version 17.5.0: Mon Mar 5 22:24:32 PST 2018; root:xnu-4570.51.1~1/RELEASE_X86_64 x86_64
modules: (:feature (eval nil) (evil (+everywhere)) (lookup (+devdocs +docsets)) (services nil) (snippets nil) (syntax-checker nil) (version-control nil) (workspaces nil) :completion (ivy nil) :ui (doom-dashboard nil) (doom-modeline nil) (evil-goggles nil) (hl-todo nil) (nav-flash nil) (vi-tilde-fringe nil) (window-select nil) :tools (electric-indent nil) (eshell nil) (gist nil) (imenu nil) (impatient-mode nil) (macos nil) (make nil) (magit nil) (neotree nil) (password-store nil) (pdf nil) (rotate-text nil) (term nil) (tmux nil) (upload nil) :lang (data nil) (elixir nil) (emacs-lisp nil) (ess nil) (go nil) (javascript nil) (latex nil) (ledger nil) (lua nil) (markdown nil) (nix nil) (org (+attach +babel +capture +export +present +publish)) (php nil) (python nil) (rest nil) (ruby nil) (rust nil) (scala nil) (sh nil) (swift nil) (web nil) :app :config)
packages: (ace-link ace-window adaptive-wrap alchemist all-the-icons anaconda-mode async auctex auto-compile auto-yasnippet avy (centered-window :recipe (centered-window :fetcher github :repo anler/centered-window-mode)) cider clj-refactor coffee-mode command-log-mode company company-anaconda company-auctex company-dict company-go company-inf-ruby company-lua company-php company-racer company-restclient company-shell company-sourcekit company-statistics company-web counsel counsel-css counsel-dash counsel-projectile deft devdocs dired-k dockerfile-mode doom-themes dumb-jump editorconfig elixir-mode (emacs-snippets :recipe (emacs-snippets :fetcher github :repo hlissner/emacs-snippets :files (*))) emmet-mode ensime eslintd-fix ess ess-R-data-view ess-smart-equals evil evil-anzu evil-args evil-collection evil-commentary evil-easymotion evil-embrace evil-escape evil-exchange evil-goggles evil-indent-plus evil-ledger evil-magit evil-matchit evil-mc evil-multiedit evil-numbers evil-org evil-snipe evil-surround evil-textobj-anyblock evil-vimish-fold evil-visualstar (exec-path-from-shell :ignore nil) expand-region flycheck flycheck-cask flycheck-ledger flycheck-popup-tip flycheck-pos-tip flycheck-rust flyspell fringe-helper gist git-gutter-fringe git-link git-timemachine gitconfig-mode gitignore-mode go-eldoc go-guru go-mode gorepl-mode graphql-mode haml-mode helpful hide-mode-line highlight-indentation highlight-numbers highlight-quoted hl-todo htmlize hydra imenu-anywhere imenu-list impatient-mode inf-ruby ivy ivy-bibtex ivy-hydra ivy-rich ivy-xref js2-mode js2-refactor json-mode langtool ledger-mode less-css-mode lua-mode macrostep magit magithub makefile-executor markdown-mode markdown-toc mixed-pitch moonscript multi-term nav-flash neotree nix-mode nlinum nlinum-hl nlinum-relative nodejs-repl nose ob-go ob-mongo ob-rust ob-sql-mode ob-translate (org-bullets :recipe (org-bullets :fetcher github :repo Kaligule/org-bullets)) org-download org-journal org-plus-contrib org-tree-slide (osx-clipboard :ignore nil) overseer ox-pandoc ox-reveal pandoc-mode pass password-store pcre2el pdf-tools persistent-soft persp-mode php-boris (php-extras :recipe (php-extras :fetcher github :repo arnested/php-extras)) php-mode php-refactor-mode phpunit pip-requirements prodigy projectile pug-mode quelpa quickrun racer rainbow-delimiters rainbow-mode rake restclient rjsx-mode (rotate-text :recipe (rotate-text :fetcher github :repo debug-ito/rotate-text.el)) rspec-mode ruby-refactor rust-mode sass-mode sbt-mode scala-mode shackle shrink-path skewer-mode slime smart-forward smartparens smex solaire-mode ssh-deploy stylus-mode swift-mode swiper synosaurus tide toc-org toml-mode typescript-mode undo-tree use-package vi-tilde-fringe vimrc-mode visual-fill-column web-beautify web-mode wgrep which-key wordnut xref-js2 yaml-mode yard-mode yasnippet)
elc dirs: n/a
exec-path: (/usr/local/bin/ /usr/bin/ /bin/ /usr/sbin/ /sbin/ /Library/TeX/texbin/ /Users/jbaty/Library/Python/3.6/bin/ /Users/jbaty/.yarn/bin/ /usr/local/sbin/ /Users/jbaty/bin/ /usr/local/git/bin/ /Users/jbaty/go/bin/ /usr/local/Cellar/emacs-plus/25.3/libexec/emacs/25.3/x86_64-apple-darwin17.4.0/)
```
Your doom/info does show you're using develop. Odd that your Scratch that, I misremembered the commit id of master's HEAD!make doctor output showed: Doom v2.0.9 (5acd952c); 5acd952c is the HEAD of master.
In any case, this is odd.
M-x org-version report?Lastly, please try the following:
(add-hook! org-load
(setq org-todo-keywords
'((sequence "TODO(t)" "NEXT(n)" "WAIT(w@/!)" "|" "DONE(d!)" "CANC(c@)"))))
This isn't a proper solution, but if it works, that'll offer me some insight into the problem.
Thanks for the continued help with this.
I am not using a literate config nor am I loading an org file when launching. Org version is 9.1.9
I tried adding your snippet to my config (in several places, just in case) to no effect, sorry.
It might be easier for me to just adopt your todo-keywords :).
Also, I upgraded Emacs to 26.1 (was 25.3) just in case but no luck.
@jackbaty I had same issue and I just solve it.
First obvious thing is to add :append keyword to add-hook macro like this:
(add-hook! :append org-load
I am not elisp guru, but when you look at value of org-todo-keywords after setting it with code snippet provided by @hlissner without :append, +org|setup-ui (which is function defined in modules/lang/org/config.el and where org-todo-keywords are set by doom config) is called after user hook setting in .doom.d/config.el.
With :append it will be placed at the end and take over default settings.
And if your issue is still present after this tweak, look really deeply at your custom org-related def-package! directives. Or at least this was my case – I was loading org by mistake on Doom's startup.
Thanks for the tip. I'm afraid that putting including the add-hook snippet (with :append) at the end of my config.el does not seem to fix it for me. I am probably doing something completely wrong, but thank you for trying!
The odd thing is that any (after! org ...) block _should_ run after org-load-hook (that's why I initialize all of org's config on org-load-hook).
It is surprising that after! didn't work for you. Only two possibilities come to mind:
~/.doom.d/config.el isn't being evaluated for some reason. Perhaps you have a ~/.config/doom directory? Doom will ignore ~/.doom.d if it exists.If neither is the case, then it's back to the drawing board!
The odd thing is that any (after! org ...) block should run after org-load-hook
Indeed it does, at least for me.
Once I dealt with my dirty def-packages (I simply put them all into (after! org ...) – I don't mind that some of those functionalities will not be accessible before org loads), I can set org-todo-keywords just with setq in (after! org ... ) block again.
@AloisJanicek adding append helped me fixing the issue. I didn't work without that.
Another possibility has occurred to me: is org-todo-keywords set in ~/.emacs.d/.local/custom.el?
If you've used M-x customize or customize-set-value, those settings are saved into custom.el, and will have the highest precedence, over anything you set in ~/.doom.d.
I'll close this due to inactivity. Feel free to follow up or reopen this if you still have the problem.
Thanks for helping with this. Sorry for the lack of feedback. I just haven't had time to dig back in.
Most helpful comment
@jackbaty I had same issue and I just solve it.
First obvious thing is to add
:appendkeyword toadd-hookmacro like this:(add-hook! :append org-loadI am not elisp guru, but when you look at value of
org-todo-keywordsafter setting it with code snippet provided by @hlissner without:append,+org|setup-ui(which is function defined inmodules/lang/org/config.eland whereorg-todo-keywordsare set by doom config) is called after user hook setting in.doom.d/config.el.With
:appendit will be placed at the end and take over default settings.And if your issue is still present after this tweak, look really deeply at your custom org-related
def-package!directives. Or at least this was my case – I was loadingorgby mistake on Doom's startup.