Slawomir Grochowski <[email protected]> writes:

> Currently, the checkbox summary types in column view ("X", "X/", and
> "X%") only summarize the direct children of a heading. I would like to
> be able to count checkboxes recursively across the subtree -- the same
> behavior is already present for checkbox statistics cookies
> (`org-checkbox-children-only-statistics') and TODO statistics cookies
> (`org-todo-children-only-statistics').
>
> This patch introduces a new user option:
> `org-columns-checkbox-children-only-statistics' (defaulting to t).
>
> When set to nil, "X", "X/", and "X%" count all checkboxes in the whole
> subtree. The naming follows the convention established recently in
> commit 437fd1151 ("org: Rename statistics scope options"), where
> `org-checkbox-hierarchical-statistics' and `org-hierarchical-todo-statistics'
> were renamed to describe their non-nil behavior explicitly.

That sounds ok, although I think that for column view in particular an
interesting alternative could be introducing *new* summary types with
recursive variants. That will provide a more granular control.
Something like rX, rX/, rX%.

But introducing a global toggle is already an improvement, so what I
said should not be a blocker to merge the existing patch.

> Regarding the manual, I considered adding this option there as well, but
> the column view section would benefit from some restructuring first to
> be more readable. To avoid scope creep and keep this patch small and
> focused, I left the Org manual untouched for now. I plan to improve
> and update that section in my upcoming patches concerning column view.

Ok.

One nit for the patch:

> +(defcustom org-columns-checkbox-children-only-statistics t
> +  "Non-nil means checkbox summary types only cover children of the heading.
> +The affected summary types are \"X\", \"X/\", and \"X%\".  When nil,
> +they count the checkboxes of the whole subtree instead."
> +  :group 'org-properties
> +  :package-version '(Org . "10.0")
> +  :type 'boolean)

May also add :safe to the new defcustom.

-- 
Ihor Radchenko // yantar92,
Org mode maintainer,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>

Reply via email to