-
Notifications
You must be signed in to change notification settings - Fork 620
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Optionally disable autoupdate of parent checkbox #954
Comments
Nice attitude. In your case, it seems to be a boolean variable close to
A boolean variable is ok. My estimate: 2h for the feature and 2h for the tests. Thanks for your will to contribute. |
vimwiki#954) taskwiki integrates vimwiki with taskwarrior, and in doing so changes the semantics of checkboxes a bit: * [ ] Install Taskwiki | pending task * [X] Install Taskwiki | completed task * [D] Install Taskwiki | deleted task * [S] Install Taskwiki | started task * [W] Install Taskwiki | waiting task It's still desirable for vimwiki to automatically insert `* [ ]` on `i_<CR>`, `o` and `O` and to syntax highlight all these five as checkboxes, so I have this in my .vimrc: let g:vimwiki_listsym_rejected = 'D' let g:vimwiki_listsyms = ' WSX' but it results in undesirable behaviour with task hierarchies: when I add a new subtask (using `i_<CR>`, `o` or `O`) or mark a subtask done, the parent's checkbox is updated to reflect its overall completion, to one of ` `, `W`, `S` or `X`, depending on subtasks completion. This makes little sense in taskwiki. One usually doesn't want to touch the "parent" task in taskwarrior until the "subtasks" are done. Setting let g:vimwiki_listsym_rejected = 'W' let g:vimwiki_listsyms = ' SX' results in slightly less illogical behaviour, but it still assumes that (1) all subtasks are visible (not necessarily true in taskwiki) and (2) that it's a parent/subtask relationship, not a dependency relationship (not true in taskwarrior, questionable in taskwiki). This commit adds an option to disable this behaviour.
vimwiki#954) taskwiki integrates vimwiki with taskwarrior, and in doing so changes the semantics of checkboxes a bit: * [ ] Install Taskwiki | pending task * [X] Install Taskwiki | completed task * [D] Install Taskwiki | deleted task * [S] Install Taskwiki | started task * [W] Install Taskwiki | waiting task It's still desirable for vimwiki to automatically insert `* [ ]` on `i_<CR>`, `o` and `O` and to syntax highlight all these five as checkboxes, so I have this in my .vimrc: let g:vimwiki_listsym_rejected = 'D' let g:vimwiki_listsyms = ' WSX' but it results in undesirable behaviour with task hierarchies: when I add a new subtask (using `i_<CR>`, `o` or `O`) or mark a subtask done, the parent's checkbox is updated to reflect its overall completion, to one of ` `, `W`, `S` or `X`, depending on subtasks completion. This makes little sense in taskwiki. One usually doesn't want to touch the "parent" task in taskwarrior until the "subtasks" are done. Setting let g:vimwiki_listsym_rejected = 'W' let g:vimwiki_listsyms = ' SX' results in slightly less illogical behaviour, but it still assumes that (1) all subtasks are visible (not necessarily true in taskwiki) and (2) that it's a parent/subtask relationship, not a dependency relationship (not true in taskwarrior, questionable in taskwiki). This commit adds an option to disable this behaviour.
vimwiki#954) taskwiki integrates vimwiki with taskwarrior, and in doing so changes the semantics of checkboxes a bit: * [ ] Install Taskwiki | pending task * [X] Install Taskwiki | completed task * [D] Install Taskwiki | deleted task * [S] Install Taskwiki | started task * [W] Install Taskwiki | waiting task It's still desirable for vimwiki to automatically insert `* [ ]` on `i_<CR>`, `o` and `O` and to syntax highlight all these five as checkboxes, so I have this in my .vimrc: let g:vimwiki_listsym_rejected = 'D' let g:vimwiki_listsyms = ' WSX' but it results in undesirable behaviour with task hierarchies: when I add a new subtask (using `i_<CR>`, `o` or `O`) or mark a subtask done, the parent's checkbox is updated to reflect its overall completion, to one of ` `, `W`, `S` or `X`, depending on subtasks completion. This makes little sense in taskwiki. One usually doesn't want to touch the "parent" task in taskwarrior until the "subtasks" are done. Setting let g:vimwiki_listsym_rejected = 'W' let g:vimwiki_listsyms = ' SX' results in slightly less illogical behaviour, but it still assumes that (1) all subtasks are visible (not necessarily true in taskwiki) and (2) that it's a parent/subtask relationship, not a dependency relationship (not true in taskwarrior, questionable in taskwiki). This commit adds an option to disable this behaviour.
#954) taskwiki integrates vimwiki with taskwarrior, and in doing so changes the semantics of checkboxes a bit: * [ ] Install Taskwiki | pending task * [X] Install Taskwiki | completed task * [D] Install Taskwiki | deleted task * [S] Install Taskwiki | started task * [W] Install Taskwiki | waiting task It's still desirable for vimwiki to automatically insert `* [ ]` on `i_<CR>`, `o` and `O` and to syntax highlight all these five as checkboxes, so I have this in my .vimrc: let g:vimwiki_listsym_rejected = 'D' let g:vimwiki_listsyms = ' WSX' but it results in undesirable behaviour with task hierarchies: when I add a new subtask (using `i_<CR>`, `o` or `O`) or mark a subtask done, the parent's checkbox is updated to reflect its overall completion, to one of ` `, `W`, `S` or `X`, depending on subtasks completion. This makes little sense in taskwiki. One usually doesn't want to touch the "parent" task in taskwarrior until the "subtasks" are done. Setting let g:vimwiki_listsym_rejected = 'W' let g:vimwiki_listsyms = ' SX' results in slightly less illogical behaviour, but it still assumes that (1) all subtasks are visible (not necessarily true in taskwiki) and (2) that it's a parent/subtask relationship, not a dependency relationship (not true in taskwarrior, questionable in taskwiki). This commit adds an option to disable this behaviour.
vimwiki#954) taskwiki integrates vimwiki with taskwarrior, and in doing so changes the semantics of checkboxes a bit: * [ ] Install Taskwiki | pending task * [X] Install Taskwiki | completed task * [D] Install Taskwiki | deleted task * [S] Install Taskwiki | started task * [W] Install Taskwiki | waiting task It's still desirable for vimwiki to automatically insert `* [ ]` on `i_<CR>`, `o` and `O` and to syntax highlight all these five as checkboxes, so I have this in my .vimrc: let g:vimwiki_listsym_rejected = 'D' let g:vimwiki_listsyms = ' WSX' but it results in undesirable behaviour with task hierarchies: when I add a new subtask (using `i_<CR>`, `o` or `O`) or mark a subtask done, the parent's checkbox is updated to reflect its overall completion, to one of ` `, `W`, `S` or `X`, depending on subtasks completion. This makes little sense in taskwiki. One usually doesn't want to touch the "parent" task in taskwarrior until the "subtasks" are done. Setting let g:vimwiki_listsym_rejected = 'W' let g:vimwiki_listsyms = ' SX' results in slightly less illogical behaviour, but it still assumes that (1) all subtasks are visible (not necessarily true in taskwiki) and (2) that it's a parent/subtask relationship, not a dependency relationship (not true in taskwarrior, questionable in taskwiki). This commit adds an option to disable this behaviour.
This was merged in #1041 |
vimwiki#954) taskwiki integrates vimwiki with taskwarrior, and in doing so changes the semantics of checkboxes a bit: * [ ] Install Taskwiki | pending task * [X] Install Taskwiki | completed task * [D] Install Taskwiki | deleted task * [S] Install Taskwiki | started task * [W] Install Taskwiki | waiting task It's still desirable for vimwiki to automatically insert `* [ ]` on `i_<CR>`, `o` and `O` and to syntax highlight all these five as checkboxes, so I have this in my .vimrc: let g:vimwiki_listsym_rejected = 'D' let g:vimwiki_listsyms = ' WSX' but it results in undesirable behaviour with task hierarchies: when I add a new subtask (using `i_<CR>`, `o` or `O`) or mark a subtask done, the parent's checkbox is updated to reflect its overall completion, to one of ` `, `W`, `S` or `X`, depending on subtasks completion. This makes little sense in taskwiki. One usually doesn't want to touch the "parent" task in taskwarrior until the "subtasks" are done. Setting let g:vimwiki_listsym_rejected = 'W' let g:vimwiki_listsyms = ' SX' results in slightly less illogical behaviour, but it still assumes that (1) all subtasks are visible (not necessarily true in taskwiki) and (2) that it's a parent/subtask relationship, not a dependency relationship (not true in taskwarrior, questionable in taskwiki). This commit adds an option to disable this behaviour.
taskwiki integrates vimwiki with taskwarrior, and in doing so changes the semantics of checkboxes a bit:
It's still desirable for vimwiki to automatically insert
* [ ]
oni_<CR>
,o
andO
and to syntax highlight all these five as checkboxes, so I have this in my .vimrc:but it results in undesirable behaviour with task hierarchies: when I add a new subtask (using
,
i_<CR>
,o
orO
)or mark a subtask done, the parent's checkbox is updated to reflect its overall completion, to one of
W
,S
orX
, depending on subtasks completion. This makes little sense in taskwiki. One usually doesn't want to touch the "parent" task in taskwarrior until the "subtasks" are done. Settingresults in slightly less illogical behaviour, but it still assumes that (1) all subtasks are visible (not necessarily true in taskwiki) and (2) that it's a parent/subtask relationship, not a dependency relationship (not true in taskwarrior, questionable in taskwiki).
It would be awesome if this auto updating of parent task state could be disabled somehow. The other option is for taskwiki to provide its own mappings for these operations, but that seems like unnecessary code duplication to me.
I am open to trying to implement this myself, but I feel like such a feature should be discussed first. I'm also not sure if this should be a user-configured thing or if vimwiki should somehow detect (or be told by) taskwiki and disable it automatically.
The text was updated successfully, but these errors were encountered: