doing 2.0.5.pre → 2.0.9.pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,151 +1,203 @@
1
- #compdef doing
2
-
3
- local ret=1 state
1
+ compdef _doing doing
2
+
3
+ function _doing() {
4
+ local line state
5
+
6
+ function _commands {
7
+ local -a commands
8
+
9
+ commands=(
10
+ 'add_section:Add a new section to the "doing" file'
11
+ 'again:Repeat last entry as new entry'
12
+ 'resume:Repeat last entry as new entry'
13
+ 'archive:Move entries between sections'
14
+ 'move:Move entries between sections'
15
+ 'autotag:Autotag last entry or filtered entries'
16
+ 'cancel:End last X entries with no time tracked'
17
+ 'choose:Select a section to display from a menu'
18
+ 'colors:List available color variables for configuration templates and views'
19
+ 'config:Edit the configuration file or output a value from it'
20
+ 'done:Add a completed item with @done(date)'
21
+ 'did:Add a completed item with @done(date)'
22
+ 'finish:Mark last X entries as @done'
23
+ 'grep:Search for entries'
24
+ 'search:Search for entries'
25
+ 'help:Shows a list of commands or help for one command'
26
+ 'import:Import entries from an external source'
27
+ 'last:Show the last entry'
28
+ 'later:Add an item to the Later section'
29
+ 'mark:Mark last entry as flagged'
30
+ 'flag:Mark last entry as flagged'
31
+ 'meanwhile:Finish any running @meanwhile tasks and optionally create a new one'
32
+ 'note:Add a note to the last entry'
33
+ 'now:Add an entry'
34
+ 'next:Add an entry'
35
+ 'on:List entries for a date'
36
+ 'open:Open the "doing" file in an editor'
37
+ 'plugins:List installed plugins'
38
+ 'recent:List recent entries'
39
+ 'reset:Reset the start time of an entry'
40
+ 'begin:Reset the start time of an entry'
41
+ 'rotate:Move entries to archive file'
42
+ 'sections:List sections'
43
+ 'select:Display an interactive menu to perform operations'
44
+ 'show:List all entries'
45
+ 'since:List entries since a date'
46
+ 'tag:Add tag(s) to last entry'
47
+ 'template:Output HTML'
48
+ 'test:Test Stuff'
49
+ 'today:List entries from today'
50
+ 'undo:Undo the last change to the doing_file'
51
+ 'view:Display a user-created view'
52
+ 'views:List available custom views'
53
+ 'wiki:Output a tag wiki'
54
+ 'yesterday:List entries from yesterday'
55
+ )
56
+ _describe 'command' commands
57
+ }
4
58
 
5
- _arguments \
6
- ':subcommand:->subcommand' \
7
- '*::options:->options' && ret=0
59
+ _arguments -C "1: :_commands" "*::arg:->args"
8
60
 
9
- case $state in
10
- subcommand)
11
- local -a subcommands
12
- subcommands=(
13
- 'help:Shows a list of commands or help for one command'
14
- 'now:Add an entry'
15
- 'note:Add a note to the last entry'
16
- 'meanwhile:Finish any running @meanwhile tasks and optionally create a new one'
17
- 'later:Add an item to the Later section'
18
- 'done:Add a completed item with @done(date). No argument finishes last entry.'
19
- 'finish:Mark last X entries as @done'
20
- 'tag:Tag last entry'
21
- 'mark:Mark last entry as highlighted'
22
- 'show:List all entries'
23
- 'grep:Search for entries'
24
- 'recent:List recent entries'
25
- 'today:List entries from today'
26
- 'yesterday:List entries from yesterday'
27
- 'last:Show the last entry'
28
- 'sections:List sections'
29
- 'choose:Select a section to display from a menu'
30
- 'add_section:Add a new section to the "doing" file'
31
- 'view:Display a user-created view'
32
- 'views:List available custom views'
33
- 'archive:Move entries in between sections'
34
- 'open:Open the "doing" file in an editor'
35
- 'config:Edit the configuration file'
36
- 'undo:Undo the last change to the doing_file'
37
- )
38
- _describe -t subcommands 'doing subcommand' subcommands && ret=0
39
- ;;
40
61
 
41
- options)
42
- age=({-a,--age=}"[Age (oldest/newest) (default: newest)]")
43
- app=({-a,--app=}"[Edit entry with specified app (default: none)")
44
- archive=({-a,--archive}"[Archive previous @meanwhile entry]")
45
- back="--back=[Backdate start time (4pm|20m|2h|yesterday noon) (default: none)]"
46
- boolean=({-b,--boolean=}"[Tag boolean (AND,OR,NONE) (default: OR)]")
47
- bool=({-b,--bool=}"[Tag boolean (default: AND)]")
48
- count=({-c,--count=}"[How many recent entries to tag (default: 1)]")
49
- count=({-c,--count=}"[Max count to show (default: 0)]")
50
- date=({-d,--date}"[Include date (default: enabled)]")
51
- editor=( {-e,--editor}"[Edit entry with $EDITOR]")
52
- finish=({-f,--finish_last}"[Timed entry, marks last entry in section as @done]")
53
- file=({-f,--file=}"[Specify alternate doing file (default: none)]")
54
- noarchive="--no-archive[Don't archive previous @meanwhile entry]"
55
- nodate="--no-date[Don't include date]"
56
- noeditor="--no-editor[Don't edit entry with $EDITOR]"
57
- note=({-n,--note=}"[Note (default: none)]")
58
- notimes="--no-times[Don't show time intervals on @done tasks.]"
59
- nototals="--no-totals[Don't show intervals with totals at the end of output]"
60
- output=({-o,--output=}"[Output to export format (csv|html) (default: none)]")
61
- remove=({-r,--remove}"[Replace/Remove last entry's note]")
62
- section=({-s,--section=}"[Section (default: Currently)]")
63
- sort=({-s,--sort=}"[Sort order (asc/desc) (default: asc)]")
64
- times=({-t,--times}"[Show time intervals on @done tasks (default: enabled)]")
65
- took=({-t,--took=}"[Set completion date to start date plus XX(mhd) or (HH:MM) (default: none)]")
66
- totals="--totals[Show intervals with totals at the end of output]"
67
62
 
68
- case $words[1] in
69
- now)
70
- args=( $back $noeditor $editor $note $section $finish )
63
+ case $line[1] in
64
+ add_section)
65
+ args=( )
71
66
  ;;
72
-
73
- note)
74
- args=( $section $editor $remove )
67
+ again)
68
+ args=( "(--bool=)--bool=}[Boolean used to combine multiple tags]" {-e,--editor}"[Edit duplicated entry with vim before adding]" {-i,--interactive}"[Select item to resume from a menu of matching entries]" "(--in=)--in=}[Add new entry to section]" {-n,--note=}"[Note]" {-s,--section=}"[Get last entry from a specific section]" "(--search=)--search=}[Repeat last entry matching search]" "(--tag=)--tag=}[Repeat last entry matching tags]" )
75
69
  ;;
76
-
77
- meanwhile)
78
- args=( $back $noeditor $editor $note $section $archive $noarchive )
70
+ resume)
71
+ args=( "(--bool=)--bool=}[Boolean used to combine multiple tags]" {-e,--editor}"[Edit duplicated entry with vim before adding]" {-i,--interactive}"[Select item to resume from a menu of matching entries]" "(--in=)--in=}[Add new entry to section]" {-n,--note=}"[Note]" {-s,--section=}"[Get last entry from a specific section]" "(--search=)--search=}[Repeat last entry matching search]" "(--tag=)--tag=}[Repeat last entry matching tags]" )
79
72
  ;;
80
-
81
- later)
82
- args=( $back $noeditor $editor $note $app )
73
+ archive)
74
+ args=( "(--before=)--before=}[Archive entries older than date]" "(--bool=)--bool=}[Tag boolean]" {-k,--keep=}"[How many items to keep]" "(--label)--label}[Label moved items with @from(SECTION_NAME)]" "(--search=)--search=}[Search filter]" {-t,--to=}"[Move entries to]" "(--tag=)--tag=}[Tag filter]" )
83
75
  ;;
84
-
85
- done)
86
- args=( $back $took $section $remove $date $nodate $archive $editor $noeditor )
76
+ move)
77
+ args=( "(--before=)--before=}[Archive entries older than date]" "(--bool=)--bool=}[Tag boolean]" {-k,--keep=}"[How many items to keep]" "(--label)--label}[Label moved items with @from(SECTION_NAME)]" "(--search=)--search=}[Search filter]" {-t,--to=}"[Move entries to]" "(--tag=)--tag=}[Tag filter]" )
87
78
  ;;
88
-
89
- finish)
90
- args=( $back $took $section $date $nodate $archive $editor $noeditor )
79
+ autotag)
80
+ args=( "(--bool=)--bool=}[Boolean]" {-c,--count=}"[How many recent entries to autotag]" "(--force)--force}[Dont ask permission to autotag all entries when count is 0t ask permission to autotag all entries when count is 0]" {-i,--interactive}"[Select item(s) to tag from a menu of matching entries]" {-s,--section=}"[Section]" "(--search=)--search=}[Autotag entries matching search filter]" "(--tag=)--tag=}[Autotag the last X entries containing TAG]" {-u,--unfinished}"[Autotag last entry]" )
91
81
  ;;
92
-
93
- tag)
94
- args=( $section $count $date $remove )
82
+ cancel)
83
+ args=( {-a,--archive}"[Archive entries]" "(--bool=)--bool=}[Boolean]" {-i,--interactive}"[Select item(s) to cancel from a menu of matching entries]" {-s,--section=}"[Section]" "(--tag=)--tag=}[Cancel the last X entries containing TAG]" {-u,--unfinished}"[Cancel last entry]" )
95
84
  ;;
96
-
97
- mark)
98
- args=( $section $remove )
85
+ choose)
86
+ args=( )
99
87
  ;;
100
-
101
- show)
102
- args=( $boolean $count $age $sort $output $times $notimes $totals $nototals )
88
+ colors)
89
+ args=( )
103
90
  ;;
104
-
105
- grep)
106
- args=( $section $output $times $notimes $totals $nototals )
91
+ config)
92
+ args=( {-d,--dump}"[Show a config key value based on arguments]" {-e,--editor=}"[Editor to use]" {-o,--output=}"[Format for --dump]" {-u,--update}"[Update config file with missing configuration options]" )
107
93
  ;;
108
-
109
- recent)
110
- args=( $section $times $notimes $totals $nototals )
94
+ done)
95
+ args=( {-a,--archive}"[Immediately archive the entry]" "(--at=)--at=}[Set finish date to specific date/time]" {-b,--back=}"[Backdate start date by interval [4pm|20m|2h|yesterday noon]]" "(--date)--date}[Include date]" {-e,--editor}"[Edit entry with vim]" {-n,--note=}"[Include a note]" {-r,--remove}"[Remove @done tag]" {-s,--section=}"[Section]" {-t,--took=}"[Set completion date to start date plus interval]" {-u,--unfinished}"[Finish last entry not already marked @done]" )
111
96
  ;;
112
-
113
- today)
114
- args=( $output $times $notimes $totals $nototals )
97
+ did)
98
+ args=( {-a,--archive}"[Immediately archive the entry]" "(--at=)--at=}[Set finish date to specific date/time]" {-b,--back=}"[Backdate start date by interval [4pm|20m|2h|yesterday noon]]" "(--date)--date}[Include date]" {-e,--editor}"[Edit entry with vim]" {-n,--note=}"[Include a note]" {-r,--remove}"[Remove @done tag]" {-s,--section=}"[Section]" {-t,--took=}"[Set completion date to start date plus interval]" {-u,--unfinished}"[Finish last entry not already marked @done]" )
115
99
  ;;
116
-
117
- yesterday)
118
- args=( $output $times $notimes $totals $nototals )
100
+ finish)
101
+ args=( {-a,--archive}"[Archive entries]" "(--at=)--at=}[Set finish date to specific date/time]" "(--auto)--auto}[Auto-generate finish dates from next entrys start times start time]" {-b,--back=}"[Backdate completed date to date string [4pm|20m|2h|yesterday noon]]" "(--bool=)--bool=}[Boolean]" "(--date)--date}[Include date]" {-i,--interactive}"[Select item(s) to finish from a menu of matching entries]" {-r,--remove}"[Remove done tag]" {-s,--section=}"[Section]" "(--search=)--search=}[Finish the last X entries matching search filter]" {-t,--took=}"[Set the completed date to the start date plus XX[hmd]]" "(--tag=)--tag=}[Finish the last X entries containing TAG]" {-u,--unfinished}"[Finish last entry]" )
119
102
  ;;
120
-
121
- view)
122
- args=( $section $count $output $times $notimes $totals $nototals )
103
+ grep)
104
+ args=( "(--after=)--after=}[Constrain search to entries newer than date]" "(--before=)--before=}[Constrain search to entries older than date]" {-i,--interactive}"[Display an interactive menu of results to perform further operations]" {-o,--output=}"[Output to export format]" "(--only_timed)--only_timed}[Only show items with recorded time intervals]" {-s,--section=}"[Section]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show intervals with totals at the end of output]" )
123
105
  ;;
124
-
125
- archive)
126
- args=( $keep $to $bool )
106
+ search)
107
+ args=( "(--after=)--after=}[Constrain search to entries newer than date]" "(--before=)--before=}[Constrain search to entries older than date]" {-i,--interactive}"[Display an interactive menu of results to perform further operations]" {-o,--output=}"[Output to export format]" "(--only_timed)--only_timed}[Only show items with recorded time intervals]" {-s,--section=}"[Section]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show intervals with totals at the end of output]" )
127
108
  ;;
128
-
129
- open)
130
- args=(
131
- "-a [open with app name (default:none)"
132
- "-b [open with app bundle id (default: none)"
133
- "-e [open with $EDITOR]"
134
- )
109
+ help)
110
+ args=( )
135
111
  ;;
136
-
137
- config)
138
- args=( $editor )
112
+ import)
113
+ args=( "(--after=)--after=}[Import entries newer than date]" "(--autotag)--autotag}[Autotag entries]" "(--before=)--before=}[Import entries older than date]" {-f,--from=}"[Date range to import]" "(--only_timed)--only_timed}[Only import items with recorded time intervals]" "(--overlap)--overlap}[Allow entries that overlap existing times]" "(--prefix=)--prefix=}[Prefix entries with]" {-s,--section=}"[Target section]" "(--search=)--search=}[Only import items matching search]" "(--tag=)--tag=}[Tag all imported entries]" "(--type=)--type=}[Import type]" )
139
114
  ;;
140
-
141
- undo)
142
- args=( $file )
115
+ last)
116
+ args=( "(--bool=)--bool=}[Tag boolean]" {-e,--editor}"[Edit entry with vim]" {-s,--section=}"[Specify a section]" "(--search=)--search=}[Search filter]" "(--tag=)--tag=}[Tag filter]" )
143
117
  ;;
118
+ later)
119
+ args=( {-b,--back=}"[Backdate start time to date string [4pm|20m|2h|yesterday noon]]" {-e,--editor}"[Edit entry with vim]" {-n,--note=}"[Note]" )
120
+ ;;
121
+ mark)
122
+ args=( "(--bool=)--bool=}[Boolean]" {-c,--count=}"[How many recent entries to tag]" {-d,--date}"[Include current date/time with tag]" "(--force)--force}[Dont ask permission to flag all entries when count is 0t ask permission to flag all entries when count is 0]" {-i,--interactive}"[Select item(s) to flag from a menu of matching entries]" {-r,--remove}"[Remove flag]" {-s,--section=}"[Section]" "(--search=)--search=}[Flag the last entry matching search filter]" "(--tag=)--tag=}[Flag the last entry containing TAG]" {-u,--unfinished}"[Flag last entry]" )
123
+ ;;
124
+ flag)
125
+ args=( "(--bool=)--bool=}[Boolean]" {-c,--count=}"[How many recent entries to tag]" {-d,--date}"[Include current date/time with tag]" "(--force)--force}[Dont ask permission to flag all entries when count is 0t ask permission to flag all entries when count is 0]" {-i,--interactive}"[Select item(s) to flag from a menu of matching entries]" {-r,--remove}"[Remove flag]" {-s,--section=}"[Section]" "(--search=)--search=}[Flag the last entry matching search filter]" "(--tag=)--tag=}[Flag the last entry containing TAG]" {-u,--unfinished}"[Flag last entry]" )
126
+ ;;
127
+ meanwhile)
128
+ args=( {-a,--archive}"[Archive previous @meanwhile entry]" {-b,--back=}"[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]" {-e,--editor}"[Edit entry with vim]" {-n,--note=}"[Note]" {-s,--section=}"[Section]" )
129
+ ;;
130
+ note)
131
+ args=( "(--bool=)--bool=}[Boolean]" {-e,--editor}"[Edit entry with vim]" {-i,--interactive}"[Select item for new note from a menu of matching entries]" {-r,--remove}"[Replace/Remove last entrys notes note]" {-s,--section=}"[Section]" "(--search=)--search=}[Add/remove note from last entry matching search filter]" "(--tag=)--tag=}[Add/remove note from last entry matching tag]" )
132
+ ;;
133
+ now)
134
+ args=( {-b,--back=}"[Backdate start time [4pm|20m|2h|yesterday noon]]" {-e,--editor}"[Edit entry with vim]" {-f,--finish_last}"[Timed entry]" {-n,--note=}"[Include a note]" {-s,--section=}"[Section]" )
135
+ ;;
136
+ next)
137
+ args=( {-b,--back=}"[Backdate start time [4pm|20m|2h|yesterday noon]]" {-e,--editor}"[Edit entry with vim]" {-f,--finish_last}"[Timed entry]" {-n,--note=}"[Include a note]" {-s,--section=}"[Section]" )
138
+ ;;
139
+ on)
140
+ args=( {-o,--output=}"[Output to export format]" {-s,--section=}"[Section]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show time totals at the end of output]" )
141
+ ;;
142
+ open)
143
+ args=( {-a,--app=}"[Open with app name]" {-b,--bundle_id=}"[Open with app bundle id]" )
144
+ ;;
145
+ plugins)
146
+ args=( {-c,--column}"[List in single column for completion]" {-t,--type=}"[List plugins of type]" )
147
+ ;;
148
+ recent)
149
+ args=( {-i,--interactive}"[Select from a menu of matching entries to perform additional operations]" {-s,--section=}"[Section]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show intervals with totals at the end of output]" )
150
+ ;;
151
+ reset)
152
+ args=( "(--bool=)--bool=}[Boolean]" {-i,--interactive}"[Select from a menu of matching entries]" {-r,--resume}"[Resume entry]" {-s,--section=}"[Set the start date of an item to now]" "(--search=)--search=}[Reset last entry matching search filter]" "(--tag=)--tag=}[Reset last entry matching tag]" )
153
+ ;;
154
+ begin)
155
+ args=( "(--bool=)--bool=}[Boolean]" {-i,--interactive}"[Select from a menu of matching entries]" {-r,--resume}"[Resume entry]" {-s,--section=}"[Set the start date of an item to now]" "(--search=)--search=}[Reset last entry matching search filter]" "(--tag=)--tag=}[Reset last entry matching tag]" )
156
+ ;;
157
+ rotate)
158
+ args=( "(--before=)--before=}[Rotate entries older than date]" "(--bool=)--bool=}[Tag boolean]" {-k,--keep=}"[How many items to keep in each section]" {-s,--section=}"[Section to rotate]" "(--search=)--search=}[Search filter]" "(--tag=)--tag=}[Tag filter]" )
159
+ ;;
160
+ sections)
161
+ args=( {-c,--column}"[List in single column]" )
162
+ ;;
163
+ select)
164
+ args=( {-a,--archive}"[Archive selected items]" "(--resume)--resume}[Copy selection as a new entry with current time and no @done tag]" {-c,--cancel}"[Cancel selected items]" {-d,--delete}"[Delete selected items]" {-e,--editor}"[Edit selected item(s)]" {-f,--finish}"[Add @done with current time to selected item(s)]" "(--flag)--flag}[Add flag to selected item(s)]" "(--force)--force}[Perform action without confirmation]" {-m,--move=}"[Move selected items to section]" "(--menu)--menu}[Use --no-menu to skip the interactive menu]" {-o,--output=}"[Output entries to format]" "(--search=)--search=}[Initial search query for filtering]" {-r,--remove}"[Reverse -c]" {-s,--section=}"[Select from a specific section]" "(--save_to=)--save_to=}[Save selected entries to file using --output format]" {-t,--tag=}"[Tag selected entries]" )
165
+ ;;
166
+ show)
167
+ args=( {-a,--age=}"[Age]" "(--after=)--after=}[View entries newer than date]" {-b,--bool=}"[Tag boolean]" "(--before=)--before=}[View entries older than date]" {-c,--count=}"[Max count to show]" {-f,--from=}"[Date range to show]" {-i,--interactive}"[Select from a menu of matching entries to perform additional operations]" {-o,--output=}"[Output to export format]" "(--only_timed)--only_timed}[Only show items with recorded time intervals]" {-s,--sort=}"[Sort order]" "(--search=)--search=}[Search filter]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag=)--tag=}[Tag filter]" "(--tag_order=)--tag_order=}[Tag sort direction]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show intervals with totals at the end of output]" )
168
+ ;;
169
+ since)
170
+ args=( {-o,--output=}"[Output to export format]" {-s,--section=}"[Section]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show time totals at the end of output]" )
171
+ ;;
172
+ tag)
173
+ args=( {-a,--autotag}"[Autotag entries based on autotag configuration in ~/]" "(--bool=)--bool=}[Boolean]" {-c,--count=}"[How many recent entries to tag]" {-d,--date}"[Include current date/time with tag]" "(--force)--force}[Dont ask permission to tag all entries when count is 0t ask permission to tag all entries when count is 0]" {-i,--interactive}"[Select item(s) to tag from a menu of matching entries]" {-r,--remove}"[Remove given tag(s)]" "(--regex)--regex}[Interpret tag string as regular expression]" "(--rename=)--rename=}[Replace existing tag with tag argument]" {-s,--section=}"[Section]" "(--search=)--search=}[Tag entries matching search filter]" "(--tag=)--tag=}[Tag the last X entries containing TAG]" {-u,--unfinished}"[Tag last entry]" )
174
+ ;;
175
+ template)
176
+ args=( {-l,--list}"[List all available templates]" )
177
+ ;;
178
+ test)
179
+ args=( )
180
+ ;;
181
+ today)
182
+ args=( "(--after=)--after=}[View entries after specified time]" "(--before=)--before=}[View entries before specified time]" {-o,--output=}"[Output to export format]" {-s,--section=}"[Specify a section]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show time totals at the end of output]" )
183
+ ;;
184
+ undo)
185
+ args=( {-f,--file=}"[Specify alternate doing file]" )
186
+ ;;
187
+ view)
188
+ args=( "(--after=)--after=}[View entries newer than date]" {-b,--bool=}"[Tag boolean]" "(--before=)--before=}[View entries older than date]" {-c,--count=}"[Count to display]" "(--color)--color}[Include colors in output]" {-i,--interactive}"[Select from a menu of matching entries to perform additional operations]" {-o,--output=}"[Output to export format]" "(--only_timed)--only_timed}[Only show items with recorded time intervals]" {-s,--section=}"[Section]" "(--search=)--search=}[Search filter]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag=)--tag=}[Tag filter]" "(--tag_order=)--tag_order=}[Tag sort direction]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show intervals with totals at the end of output]" )
189
+ ;;
190
+ views)
191
+ args=( {-c,--column}"[List in single column]" )
192
+ ;;
193
+ wiki)
194
+ args=( "(--after=)--after=}[Include entries newer than date]" {-b,--bool=}"[Tag boolean]" "(--before=)--before=}[Include entries older than date]" {-f,--from=}"[Date range to include]" "(--only_timed)--only_timed}[Only show items with recorded time intervals]" {-s,--section=}"[Section to rotate]" "(--search=)--search=}[Search filter]" "(--tag=)--tag=}[Tag filter]" )
195
+ ;;
196
+ yesterday)
197
+ args=( "(--after=)--after=}[View entries after specified time]" "(--before=)--before=}[View entries before specified time]" {-o,--output=}"[Output to export format]" {-s,--section=}"[Specify a section]" {-t,--times}"[Show time intervals on @done tasks]" "(--tag_order=)--tag_order=}[Tag sort direction]" "(--tag_sort=)--tag_sort=}[Sort tags by]" "(--totals)--totals}[Show time totals at the end of output]" )
198
+ ;;
199
+ esac
144
200
 
145
- esac
146
-
147
- _arguments $args && ret=0
148
- ;;
149
- esac
201
+ _arguments -s $args
202
+ }
150
203
 
151
- return ret
@@ -1,9 +1,9 @@
1
1
  _doing_again() {
2
2
 
3
3
  if [[ "$token" == --* ]]; then
4
- COMPREPLY=( $( compgen -W '--bool --editor --in --note --section --search --tag' -- $token ) )
4
+ COMPREPLY=( $( compgen -W '--bool --editor --interactive --in --note --section --search --tag' -- $token ) )
5
5
  elif [[ "$token" == -* ]]; then
6
- COMPREPLY=( $( compgen -W '-e -n -s --bool --editor --in --note --section --search --tag' -- $token ) )
6
+ COMPREPLY=( $( compgen -W '-e -i -n -s --bool --editor --interactive --in --note --section --search --tag' -- $token ) )
7
7
 
8
8
  fi
9
9
  }
@@ -38,12 +38,22 @@ IFS="$OLD_IFS"
38
38
  fi
39
39
  }
40
40
 
41
+ _doing_autotag() {
42
+
43
+ if [[ "$token" == --* ]]; then
44
+ COMPREPLY=( $( compgen -W '--bool --count --force --interactive --section --search --tag --unfinished' -- $token ) )
45
+ elif [[ "$token" == -* ]]; then
46
+ COMPREPLY=( $( compgen -W '-c -i -s -u --bool --count --force --interactive --section --search --tag --unfinished' -- $token ) )
47
+
48
+ fi
49
+ }
50
+
41
51
  _doing_cancel() {
42
52
 
43
53
  if [[ "$token" == --* ]]; then
44
- COMPREPLY=( $( compgen -W '--archive --bool --section --tag --unfinished' -- $token ) )
54
+ COMPREPLY=( $( compgen -W '--archive --bool --interactive --section --tag --unfinished' -- $token ) )
45
55
  elif [[ "$token" == -* ]]; then
46
- COMPREPLY=( $( compgen -W '-a -s -u --archive --bool --section --tag --unfinished' -- $token ) )
56
+ COMPREPLY=( $( compgen -W '-a -i -s -u --archive --bool --interactive --section --tag --unfinished' -- $token ) )
47
57
 
48
58
  fi
49
59
  }
@@ -51,9 +61,9 @@ _doing_cancel() {
51
61
  _doing_config() {
52
62
 
53
63
  if [[ "$token" == --* ]]; then
54
- COMPREPLY=( $( compgen -W '--editor --update' -- $token ) )
64
+ COMPREPLY=( $( compgen -W '--dump --editor --output --update' -- $token ) )
55
65
  elif [[ "$token" == -* ]]; then
56
- COMPREPLY=( $( compgen -W '-e -u --editor --update' -- $token ) )
66
+ COMPREPLY=( $( compgen -W '-d -e -o -u --dump --editor --output --update' -- $token ) )
57
67
 
58
68
  fi
59
69
  }
@@ -61,9 +71,9 @@ _doing_config() {
61
71
  _doing_done() {
62
72
 
63
73
  if [[ "$token" == --* ]]; then
64
- COMPREPLY=( $( compgen -W '--archive --at --back --date --editor --remove --section --took' -- $token ) )
74
+ COMPREPLY=( $( compgen -W '--archive --at --back --date --editor --note --remove --section --took --unfinished' -- $token ) )
65
75
  elif [[ "$token" == -* ]]; then
66
- COMPREPLY=( $( compgen -W '-a -b -e -r -s -t --archive --at --back --date --editor --remove --section --took' -- $token ) )
76
+ COMPREPLY=( $( compgen -W '-a -b -e -n -r -s -t -u --archive --at --back --date --editor --note --remove --section --took --unfinished' -- $token ) )
67
77
 
68
78
  fi
69
79
  }
@@ -71,9 +81,9 @@ _doing_done() {
71
81
  _doing_finish() {
72
82
 
73
83
  if [[ "$token" == --* ]]; then
74
- COMPREPLY=( $( compgen -W '--archive --at --auto --back --bool --date --section --search --took --tag --unfinished' -- $token ) )
84
+ COMPREPLY=( $( compgen -W '--archive --at --auto --back --bool --date --interactive --remove --section --search --took --tag --unfinished' -- $token ) )
75
85
  elif [[ "$token" == -* ]]; then
76
- COMPREPLY=( $( compgen -W '-a -b -s -t -u --archive --at --auto --back --bool --date --section --search --took --tag --unfinished' -- $token ) )
86
+ COMPREPLY=( $( compgen -W '-a -b -i -r -s -t -u --archive --at --auto --back --bool --date --interactive --remove --section --search --took --tag --unfinished' -- $token ) )
77
87
 
78
88
  fi
79
89
  }
@@ -131,9 +141,9 @@ _doing_later() {
131
141
  _doing_mark() {
132
142
 
133
143
  if [[ "$token" == --* ]]; then
134
- COMPREPLY=( $( compgen -W '--remove --section --unfinished' -- $token ) )
144
+ COMPREPLY=( $( compgen -W '--bool --count --date --force --interactive --remove --section --search --tag --unfinished' -- $token ) )
135
145
  elif [[ "$token" == -* ]]; then
136
- COMPREPLY=( $( compgen -W '-r -s -u --remove --section --unfinished' -- $token ) )
146
+ COMPREPLY=( $( compgen -W '-c -d -i -r -s -u --bool --count --date --force --interactive --remove --section --search --tag --unfinished' -- $token ) )
137
147
 
138
148
  fi
139
149
  }
@@ -151,9 +161,9 @@ _doing_meanwhile() {
151
161
  _doing_note() {
152
162
 
153
163
  if [[ "$token" == --* ]]; then
154
- COMPREPLY=( $( compgen -W '--editor --remove --section' -- $token ) )
164
+ COMPREPLY=( $( compgen -W '--bool --editor --interactive --remove --section --search --tag' -- $token ) )
155
165
  elif [[ "$token" == -* ]]; then
156
- COMPREPLY=( $( compgen -W '-e -r -s --editor --remove --section' -- $token ) )
166
+ COMPREPLY=( $( compgen -W '-e -i -r -s --bool --editor --interactive --remove --section --search --tag' -- $token ) )
157
167
 
158
168
  fi
159
169
  }
@@ -181,9 +191,9 @@ _doing_on() {
181
191
  _doing_open() {
182
192
 
183
193
  if [[ "$token" == --* ]]; then
184
- COMPREPLY=( $( compgen -W '--app --bundle_id --editor' -- $token ) )
194
+ COMPREPLY=( $( compgen -W '--app --bundle_id' -- $token ) )
185
195
  elif [[ "$token" == -* ]]; then
186
- COMPREPLY=( $( compgen -W '-a -b -e --app --bundle_id --editor' -- $token ) )
196
+ COMPREPLY=( $( compgen -W '-a -b --app --bundle_id' -- $token ) )
187
197
 
188
198
  fi
189
199
  }
@@ -201,9 +211,19 @@ _doing_plugins() {
201
211
  _doing_recent() {
202
212
 
203
213
  if [[ "$token" == --* ]]; then
204
- COMPREPLY=( $( compgen -W '--section --times --tag_sort --totals' -- $token ) )
214
+ COMPREPLY=( $( compgen -W '--interactive --section --times --tag_sort --totals' -- $token ) )
205
215
  elif [[ "$token" == -* ]]; then
206
- COMPREPLY=( $( compgen -W '-s -t --section --times --tag_sort --totals' -- $token ) )
216
+ COMPREPLY=( $( compgen -W '-i -s -t --interactive --section --times --tag_sort --totals' -- $token ) )
217
+
218
+ fi
219
+ }
220
+
221
+ _doing_reset() {
222
+
223
+ if [[ "$token" == --* ]]; then
224
+ COMPREPLY=( $( compgen -W '--bool --interactive --resume --section --search --tag' -- $token ) )
225
+ elif [[ "$token" == -* ]]; then
226
+ COMPREPLY=( $( compgen -W '-i -r -s --bool --interactive --resume --section --search --tag' -- $token ) )
207
227
 
208
228
  fi
209
229
  }
@@ -231,9 +251,9 @@ _doing_sections() {
231
251
  _doing_select() {
232
252
 
233
253
  if [[ "$token" == --* ]]; then
234
- COMPREPLY=( $( compgen -W '--archive --cancel --delete --editor --finish --flag --force --move --menu --output --query --remove --section --save_to --tag' -- $token ) )
254
+ COMPREPLY=( $( compgen -W '--archive --resume --cancel --delete --editor --finish --flag --force --move --menu --output --search --remove --section --save_to --tag' -- $token ) )
235
255
  elif [[ "$token" == -* ]]; then
236
- COMPREPLY=( $( compgen -W '-a -c -d -e -f -m -o -q -r -s -t --archive --cancel --delete --editor --finish --flag --force --move --menu --output --query --remove --section --save_to --tag' -- $token ) )
256
+ COMPREPLY=( $( compgen -W '-a -c -d -e -f -m -o -r -s -t --archive --resume --cancel --delete --editor --finish --flag --force --move --menu --output --search --remove --section --save_to --tag' -- $token ) )
237
257
 
238
258
  fi
239
259
  }
@@ -246,9 +266,9 @@ local words=$(doing sections)
246
266
  IFS="$OLD_IFS"
247
267
 
248
268
  if [[ "$token" == --* ]]; then
249
- COMPREPLY=( $( compgen -W '--age --after --bool --before --count --from --output --only_timed --sort --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
269
+ COMPREPLY=( $( compgen -W '--age --after --bool --before --count --from --interactive --output --only_timed --sort --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
250
270
  elif [[ "$token" == -* ]]; then
251
- COMPREPLY=( $( compgen -W '-a -b -c -f -o -s -t --age --after --bool --before --count --from --output --only_timed --sort --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
271
+ COMPREPLY=( $( compgen -W '-a -b -c -f -i -o -s -t --age --after --bool --before --count --from --interactive --output --only_timed --sort --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
252
272
  else
253
273
  local nocasematchWasOff=0
254
274
  shopt nocasematch >/dev/null || nocasematchWasOff=1
@@ -281,9 +301,9 @@ _doing_since() {
281
301
  _doing_tag() {
282
302
 
283
303
  if [[ "$token" == --* ]]; then
284
- COMPREPLY=( $( compgen -W '--autotag --bool --count --date --force --remove --regex --rename --section --search --tag --unfinished' -- $token ) )
304
+ COMPREPLY=( $( compgen -W '--autotag --bool --count --date --force --interactive --remove --regex --rename --section --search --tag --unfinished' -- $token ) )
285
305
  elif [[ "$token" == -* ]]; then
286
- COMPREPLY=( $( compgen -W '-a -c -d -r -s -u --autotag --bool --count --date --force --remove --regex --rename --section --search --tag --unfinished' -- $token ) )
306
+ COMPREPLY=( $( compgen -W '-a -c -d -i -r -s -u --autotag --bool --count --date --force --interactive --remove --regex --rename --section --search --tag --unfinished' -- $token ) )
287
307
 
288
308
  fi
289
309
  }
@@ -326,9 +346,9 @@ local words=$(doing views)
326
346
  IFS="$OLD_IFS"
327
347
 
328
348
  if [[ "$token" == --* ]]; then
329
- COMPREPLY=( $( compgen -W '--after --bool --before --count --color --output --only_timed --section --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
349
+ COMPREPLY=( $( compgen -W '--after --bool --before --count --color --interactive --output --only_timed --section --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
330
350
  elif [[ "$token" == -* ]]; then
331
- COMPREPLY=( $( compgen -W '-b -c -o -s -t --after --bool --before --count --color --output --only_timed --section --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
351
+ COMPREPLY=( $( compgen -W '-b -c -i -o -s -t --after --bool --before --count --color --interactive --output --only_timed --section --search --times --tag --tag_order --tag_sort --totals' -- $token ) )
332
352
  else
333
353
  local nocasematchWasOff=0
334
354
  shopt nocasematch >/dev/null || nocasematchWasOff=1
@@ -358,6 +378,16 @@ _doing_views() {
358
378
  fi
359
379
  }
360
380
 
381
+ _doing_wiki() {
382
+
383
+ if [[ "$token" == --* ]]; then
384
+ COMPREPLY=( $( compgen -W '--after --bool --before --from --only_timed --section --search --tag' -- $token ) )
385
+ elif [[ "$token" == -* ]]; then
386
+ COMPREPLY=( $( compgen -W '-b -f -s --after --bool --before --from --only_timed --section --search --tag' -- $token ) )
387
+
388
+ fi
389
+ }
390
+
361
391
  _doing_yesterday() {
362
392
 
363
393
  if [[ "$token" == --* ]]; then
@@ -374,7 +404,8 @@ _doing()
374
404
  local token=${COMP_WORDS[$COMP_CWORD]}
375
405
 
376
406
  if [[ $last =~ (again|resume) ]]; then _doing_again
377
- elif [[ $last =~ (archive) ]]; then _doing_archive
407
+ elif [[ $last =~ (archive|move) ]]; then _doing_archive
408
+ elif [[ $last =~ (autotag) ]]; then _doing_autotag
378
409
  elif [[ $last =~ (cancel) ]]; then _doing_cancel
379
410
  elif [[ $last =~ (config) ]]; then _doing_config
380
411
  elif [[ $last =~ (done|did) ]]; then _doing_done
@@ -392,6 +423,7 @@ _doing()
392
423
  elif [[ $last =~ (open) ]]; then _doing_open
393
424
  elif [[ $last =~ (plugins) ]]; then _doing_plugins
394
425
  elif [[ $last =~ (recent) ]]; then _doing_recent
426
+ elif [[ $last =~ (reset|begin) ]]; then _doing_reset
395
427
  elif [[ $last =~ (rotate) ]]; then _doing_rotate
396
428
  elif [[ $last =~ (sections) ]]; then _doing_sections
397
429
  elif [[ $last =~ (select) ]]; then _doing_select
@@ -403,6 +435,7 @@ _doing()
403
435
  elif [[ $last =~ (undo) ]]; then _doing_undo
404
436
  elif [[ $last =~ (view) ]]; then _doing_view
405
437
  elif [[ $last =~ (views) ]]; then _doing_views
438
+ elif [[ $last =~ (wiki) ]]; then _doing_wiki
406
439
  elif [[ $last =~ (yesterday) ]]; then _doing_yesterday
407
440
  else
408
441
  OLD_IFS="$IFS"