org.nvim

Plain lists and checkboxes

Unordered bullets are -, + and indented *. Ordered bullets are 1. and 1). [@N] sets a counter. Description items look like - term :: text. Checkboxes are [ ], [-] (partial) and [X]. Lines inside example, src, export and verse blocks are never items (org-list-forbidden-blocks). With lists.allow_alphabetical, a., A., a) and A) are ordered bullets too and [@c] a counter; like Emacs, a list of more than 26 items is numbered instead. lists.ordered_item_terminator ("." or ")") keeps only one kind of ordered bullet. The other lists options (org-config) set the bullet a demoted item gets, two spaces after some bullets, extra sub-list indentation, circular item motion and the automatic rules.

<C-c><C-c>      On the first line of an item: toggle its checkbox and repair
                the list (numbers, bullets, sub-list indentation, parent
                checkboxes). A parent checkbox follows its children, so
                toggling it is refused ("Cannot toggle this checkbox"). A
                count 4 (C-u) adds or removes the checkbox, 16 (C-u C-u)
                sets [-]. Without a checkbox, it only repairs the list.
                With ORDERED: t, boxes after an unchecked one stay
                unchecked. On other lines of an item: nothing.
<C-Space>       Toggle checkboxes (org-toggle-checkbox): the item at the
<C-c><C-x><C-b> cursor, every item of the Visual selection (following the
                first one), or on a headline every item of its text. Items
                without a checkbox are left alone; with a count of 4
                (C-u) checkboxes are added or removed, 16 (C-u C-u) sets
                [-].
<C-c><C-x><C-r> Toggle a radio button: check this item, uncheck its
                siblings (org-toggle-radio-button). In a list preceded by
                #+attr_org: :radio t, <C-c><C-c> and <C-Space> do this.
:Org checkbox_radio_mode  Toggle org-list-checkbox-radio-mode in the
                buffer: <C-c><C-c> on an item then toggles it like a radio
                button in every list (<C-c><C-x><C-b> still toggles one
                checkbox, as in Emacs).
<S-Up/Down>     (ctx) On an item: previous / next item of the same level
                (org-previous-item / org-next-item).
<S-Right/Left>  (ctx) On an item: cycle the bullet style.
<C-c>-          (ctx) On an item: cycle the bullet style; elsewhere toggle
                items (org-structure).
<prefix>hb      Cycle the bullet style.
:Org beginning_of_item / end_of_item    Go to the start / end of the item
                (org-beginning-of-item, org-end-of-item; unbound, as in
                Emacs).
:Org beginning_of_item_list / end_of_item_list    Go to the first item /
                the end of the current (sub-)list.
:Org reset_checkbox_state_subtree    Uncheck every checkbox of the subtree
                and update its cookies (org-reset-checkbox-state-subtree).
<prefix>#       Update the statistics cookies of the current entry
<C-c>#          (org-update-statistics-cookies): on a headline with child
                entries, its TODO cookie; with a count (C-u), every cookie
                of the buffer.

Statistics cookies on a headline count its checkboxes, or its child TODO entries when it has no checkboxes. :COOKIE_DATA: todo|checkbox recursive overrides this. Checkbox cookies count direct children only; with lists.checkbox_hierarchical_statistics = false or COOKIE_DATA: recursive they count every box below them (items too).

Toggling checkbox_radio_mode fires the User autocmd OrgListCheckboxRadioMode (org-list-checkbox-radio-mode-hook), with data = { enabled, bufnr }.