I found the issue, and it's a more subtle one. I've set a bug to emacs list in case they think it's a documentation or fixable bug. What happens is this:
- The custom value setting for org options do not take effect until *after* the relevant lisp code has been executed once. This means: - If you start emacs and immediately go into *scratch* and print org-habit-show-today-all you get an error because that variable has not yet been bound. : Debugger entered--Lisp error: (void-variable org-habit-show-all-today) : (print org-habit-show-all-today) : eval((print org-habit-show-all-today) nil) : eval-last-sexp-1(t) : eval-last-sexp(t) : eval-print-last-sexp() : call-interactively(eval-print-last-sexp nil nil) - If you start emacs and immediately go into options->config for org-habit, the org-habit-show-today-all will indicate that it has been set outside of the customization system when the intended value is "t". When the intended value is "nil" there is no indicated problem. - If you start emacs and put a buffer into org mode, the (print org-habit-show-all) will show the customized value, and the options->config will also show the customized value. I think that this is either a documentation bug, where this behavior needs explaining, or a bug in customize. As a naive user of customize I would expect that going to the org-habit group would automatically trigger applying the org-habit customizations. Opening an org-mode buffer has this effect. But, perhaps there is some flag somewhere well hidden in the documentation for customization groups that needs to be set to indicate this. R Horn rjh...@alum.mit.edu