doing 2.1.19 → 2.1.24
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardoc/checksums +19 -16
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/CHANGELOG.md +70 -0
- data/Gemfile.lock +11 -11
- data/README.md +1 -1
- data/Rakefile +12 -4
- data/bin/doing +297 -234
- data/docs/doc/Array.html +7 -30
- data/docs/doc/BooleanTermParser/Clause.html +3 -3
- data/docs/doc/BooleanTermParser/Operator.html +3 -3
- data/docs/doc/BooleanTermParser/Query.html +3 -3
- data/docs/doc/BooleanTermParser/QueryParser.html +3 -3
- data/docs/doc/BooleanTermParser/QueryTransformer.html +3 -3
- data/docs/doc/BooleanTermParser.html +3 -3
- data/docs/doc/Doing/Color.html +3 -3
- data/docs/doc/Doing/Completion.html +3 -3
- data/docs/doc/Doing/Configuration.html +6 -5
- data/docs/doc/Doing/Errors/DoingNoTraceError.html +3 -3
- data/docs/doc/Doing/Errors/DoingRuntimeError.html +3 -3
- data/docs/doc/Doing/Errors/DoingStandardError.html +3 -3
- data/docs/doc/Doing/Errors/EmptyInput.html +3 -3
- data/docs/doc/Doing/Errors/NoResults.html +3 -3
- data/docs/doc/Doing/Errors/PluginException.html +3 -3
- data/docs/doc/Doing/Errors/UserCancelled.html +3 -3
- data/docs/doc/Doing/Errors/WrongCommand.html +3 -3
- data/docs/doc/Doing/Errors.html +3 -3
- data/docs/doc/Doing/Hooks.html +3 -3
- data/docs/doc/Doing/Item.html +3 -3
- data/docs/doc/Doing/Items.html +3 -3
- data/docs/doc/Doing/LogAdapter.html +3 -3
- data/docs/doc/Doing/Note.html +3 -3
- data/docs/doc/Doing/Pager.html +3 -3
- data/docs/doc/Doing/Plugins.html +3 -3
- data/docs/doc/Doing/Prompt.html +7 -7
- data/docs/doc/Doing/Section.html +3 -3
- data/docs/doc/Doing/TemplateString.html +4 -4
- data/docs/doc/Doing/Types.html +201 -0
- data/docs/doc/Doing/Util/Backup.html +3 -3
- data/docs/doc/Doing/Util.html +4 -7
- data/docs/doc/Doing/WWID.html +66 -8
- data/docs/doc/Doing.html +6 -6
- data/docs/doc/GLI/Commands/Help.html +185 -0
- data/docs/doc/GLI/Commands/MarkdownDocumentListener.html +3 -3
- data/docs/doc/GLI/Commands.html +7 -5
- data/docs/doc/GLI.html +6 -4
- data/docs/doc/Hash.html +80 -16
- data/docs/doc/Numeric.html +3 -3
- data/docs/doc/PhraseParser/Operator.html +3 -3
- data/docs/doc/PhraseParser/PhraseClause.html +3 -3
- data/docs/doc/PhraseParser/Query.html +3 -3
- data/docs/doc/PhraseParser/QueryParser.html +3 -3
- data/docs/doc/PhraseParser/QueryTransformer.html +3 -3
- data/docs/doc/PhraseParser/TermClause.html +3 -3
- data/docs/doc/PhraseParser.html +3 -3
- data/docs/doc/Status.html +3 -3
- data/docs/doc/String.html +195 -26
- data/docs/doc/Symbol.html +3 -3
- data/docs/doc/Time.html +3 -3
- data/docs/doc/_index.html +22 -8
- data/docs/doc/class_list.html +1 -1
- data/docs/doc/file.README.html +4 -4
- data/docs/doc/frames.html +1 -1
- data/docs/doc/index.html +4 -4
- data/docs/doc/method_list.html +334 -270
- data/docs/doc/top-level-namespace.html +3 -3
- data/docs/index.md +1 -1
- data/doing.gemspec +1 -1
- data/doing.rdoc +173 -15
- data/lib/completion/_doing.zsh +20 -20
- data/lib/completion/doing.bash +37 -26
- data/lib/completion/doing.fish +116 -17
- data/lib/doing/array.rb +5 -4
- data/lib/doing/array_chronify.rb +4 -3
- data/lib/doing/changelog/change.rb +115 -0
- data/lib/doing/changelog/changes.rb +73 -0
- data/lib/doing/changelog/entry.rb +21 -0
- data/lib/doing/changelog/version.rb +97 -0
- data/lib/doing/changelog.rb +6 -0
- data/lib/doing/completion/fish_completion.rb +82 -12
- data/lib/doing/configuration.rb +17 -8
- data/lib/doing/hash.rb +25 -6
- data/lib/doing/help_monkey_patch.rb +31 -0
- data/lib/doing/hooks.rb +5 -1
- data/lib/doing/item.rb +10 -25
- data/lib/doing/items.rb +3 -1
- data/lib/doing/log_adapter.rb +1 -1
- data/lib/doing/pager.rb +2 -2
- data/lib/doing/plugins/export/dayone_export.rb +1 -1
- data/lib/doing/plugins/export/markdown_export.rb +1 -1
- data/lib/doing/plugins/export/template_export.rb +9 -3
- data/lib/doing/prompt.rb +4 -2
- data/lib/doing/string.rb +40 -11
- data/lib/doing/string_chronify.rb +56 -18
- data/lib/doing/template_string.rb +7 -0
- data/lib/doing/types.rb +25 -0
- data/lib/doing/util.rb +2 -1
- data/lib/doing/version.rb +1 -1
- data/lib/doing/wwid.rb +91 -67
- data/lib/doing.rb +2 -0
- data/lib/examples/commands/later.rb +32 -0
- data/lib/helpers/threaded_tests.rb +286 -0
- metadata +17 -6
data/lib/completion/doing.bash
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
_doing_again() {
|
2
2
|
|
3
3
|
if [[ "$token" == --* ]]; then
|
4
|
-
COMPREPLY=( $( compgen -W '--ask --bool --case --editor --interactive --in --note --not --section --search --tag --val --exact' -- $token ) )
|
4
|
+
COMPREPLY=( $( compgen -W '--ask --started --bool --case --editor --interactive --in --note --not --section --search --tag --val --exact' -- $token ) )
|
5
5
|
elif [[ "$token" == -* ]]; then
|
6
|
-
COMPREPLY=( $( compgen -W '-e -i -n -s -x --ask --bool --case --editor --interactive --in --note --not --section --search --tag --val --exact' -- $token ) )
|
6
|
+
COMPREPLY=( $( compgen -W '-e -i -n -s -x --ask --started --bool --case --editor --interactive --in --note --not --section --search --tag --val --exact' -- $token ) )
|
7
7
|
|
8
8
|
fi
|
9
9
|
}
|
@@ -58,6 +58,16 @@ _doing_cancel() {
|
|
58
58
|
fi
|
59
59
|
}
|
60
60
|
|
61
|
+
_doing_changes() {
|
62
|
+
|
63
|
+
if [[ "$token" == --* ]]; then
|
64
|
+
COMPREPLY=( $( compgen -W '--all --lookup --search' -- $token ) )
|
65
|
+
elif [[ "$token" == -* ]]; then
|
66
|
+
COMPREPLY=( $( compgen -W '-a -l -s --all --lookup --search' -- $token ) )
|
67
|
+
|
68
|
+
fi
|
69
|
+
}
|
70
|
+
|
61
71
|
_doing_completion() {
|
62
72
|
|
63
73
|
if [[ "$token" == --* ]]; then
|
@@ -91,9 +101,9 @@ _doing_done() {
|
|
91
101
|
_doing_finish() {
|
92
102
|
|
93
103
|
if [[ "$token" == --* ]]; then
|
94
|
-
COMPREPLY=( $( compgen -W '--archive --
|
104
|
+
COMPREPLY=( $( compgen -W '--archive --finished --auto --started --bool --case --date --interactive --not --remove --section --search --for --tag --unfinished --val --exact' -- $token ) )
|
95
105
|
elif [[ "$token" == -* ]]; then
|
96
|
-
COMPREPLY=( $( compgen -W '-a -
|
106
|
+
COMPREPLY=( $( compgen -W '-a -i -r -s -u -x --archive --finished --auto --started --bool --case --date --interactive --not --remove --section --search --for --tag --unfinished --val --exact' -- $token ) )
|
97
107
|
|
98
108
|
fi
|
99
109
|
}
|
@@ -101,9 +111,9 @@ _doing_finish() {
|
|
101
111
|
_doing_grep() {
|
102
112
|
|
103
113
|
if [[ "$token" == --* ]]; then
|
104
|
-
COMPREPLY=( $( compgen -W '--after --before --bool --case --delete --duration --editor --from --hilite --interactive --not --output --only_timed --section --times --tag_sort --totals --val --exact' -- $token ) )
|
114
|
+
COMPREPLY=( $( compgen -W '--after --before --bool --case --config_template --delete --duration --editor --from --hilite --interactive --not --output --only_timed --section --times --tag_sort --template --totals --val --exact' -- $token ) )
|
105
115
|
elif [[ "$token" == -* ]]; then
|
106
|
-
COMPREPLY=( $( compgen -W '-d -e -h -i -o -s -t -x --after --before --bool --case --delete --duration --editor --from --hilite --interactive --not --output --only_timed --section --times --tag_sort --totals --val --exact' -- $token ) )
|
116
|
+
COMPREPLY=( $( compgen -W '-d -e -h -i -o -s -t -x --after --before --bool --case --config_template --delete --duration --editor --from --hilite --interactive --not --output --only_timed --section --times --tag_sort --template --totals --val --exact' -- $token ) )
|
107
117
|
|
108
118
|
fi
|
109
119
|
}
|
@@ -131,9 +141,9 @@ _doing_import() {
|
|
131
141
|
_doing_last() {
|
132
142
|
|
133
143
|
if [[ "$token" == --* ]]; then
|
134
|
-
COMPREPLY=( $( compgen -W '--bool --case --delete --duration --editor --hilite --not --section --search --tag --val --exact' -- $token ) )
|
144
|
+
COMPREPLY=( $( compgen -W '--bool --case --config_template --delete --duration --editor --hilite --not --section --search --tag --template --val --exact' -- $token ) )
|
135
145
|
elif [[ "$token" == -* ]]; then
|
136
|
-
COMPREPLY=( $( compgen -W '-d -e -h -s -x --bool --case --delete --duration --editor --hilite --not --section --search --tag --val --exact' -- $token ) )
|
146
|
+
COMPREPLY=( $( compgen -W '-d -e -h -s -x --bool --case --config_template --delete --duration --editor --hilite --not --section --search --tag --template --val --exact' -- $token ) )
|
137
147
|
|
138
148
|
fi
|
139
149
|
}
|
@@ -141,9 +151,9 @@ _doing_last() {
|
|
141
151
|
_doing_later() {
|
142
152
|
|
143
153
|
if [[ "$token" == --* ]]; then
|
144
|
-
COMPREPLY=( $( compgen -W '--ask --
|
154
|
+
COMPREPLY=( $( compgen -W '--ask --started --editor --note' -- $token ) )
|
145
155
|
elif [[ "$token" == -* ]]; then
|
146
|
-
COMPREPLY=( $( compgen -W '-
|
156
|
+
COMPREPLY=( $( compgen -W '-e -n --ask --started --editor --note' -- $token ) )
|
147
157
|
|
148
158
|
fi
|
149
159
|
}
|
@@ -161,9 +171,9 @@ _doing_mark() {
|
|
161
171
|
_doing_meanwhile() {
|
162
172
|
|
163
173
|
if [[ "$token" == --* ]]; then
|
164
|
-
COMPREPLY=( $( compgen -W '--archive --ask --
|
174
|
+
COMPREPLY=( $( compgen -W '--archive --ask --started --editor --note --section' -- $token ) )
|
165
175
|
elif [[ "$token" == -* ]]; then
|
166
|
-
COMPREPLY=( $( compgen -W '-a -
|
176
|
+
COMPREPLY=( $( compgen -W '-a -e -n -s --archive --ask --started --editor --note --section' -- $token ) )
|
167
177
|
|
168
178
|
fi
|
169
179
|
}
|
@@ -191,9 +201,9 @@ _doing_now() {
|
|
191
201
|
_doing_on() {
|
192
202
|
|
193
203
|
if [[ "$token" == --* ]]; then
|
194
|
-
COMPREPLY=( $( compgen -W '--duration --output --section --times --tag_sort --totals' -- $token ) )
|
204
|
+
COMPREPLY=( $( compgen -W '--config_template --duration --output --section --times --tag_sort --template --totals' -- $token ) )
|
195
205
|
elif [[ "$token" == -* ]]; then
|
196
|
-
COMPREPLY=( $( compgen -W '-o -s -t --duration --output --section --times --tag_sort --totals' -- $token ) )
|
206
|
+
COMPREPLY=( $( compgen -W '-o -s -t --config_template --duration --output --section --times --tag_sort --template --totals' -- $token ) )
|
197
207
|
|
198
208
|
fi
|
199
209
|
}
|
@@ -221,9 +231,9 @@ _doing_plugins() {
|
|
221
231
|
_doing_recent() {
|
222
232
|
|
223
233
|
if [[ "$token" == --* ]]; then
|
224
|
-
COMPREPLY=( $( compgen -W '--duration --interactive --section --times --tag_sort --totals' -- $token ) )
|
234
|
+
COMPREPLY=( $( compgen -W '--config_template --duration --interactive --section --times --tag_sort --template --totals' -- $token ) )
|
225
235
|
elif [[ "$token" == -* ]]; then
|
226
|
-
COMPREPLY=( $( compgen -W '-i -s -t --duration --interactive --section --times --tag_sort --totals' -- $token ) )
|
236
|
+
COMPREPLY=( $( compgen -W '-i -s -t --config_template --duration --interactive --section --times --tag_sort --template --totals' -- $token ) )
|
227
237
|
|
228
238
|
fi
|
229
239
|
}
|
@@ -276,9 +286,9 @@ local words=$(doing sections)
|
|
276
286
|
IFS="$OLD_IFS"
|
277
287
|
|
278
288
|
if [[ "$token" == --* ]]; then
|
279
|
-
COMPREPLY=( $( compgen -W '--age --after --bool --before --count --case --duration --from --hilite --interactive --menu --not --output --only_timed --sort --search --times --tag --tag_order --tag_sort --totals --val --exact' -- $token ) )
|
289
|
+
COMPREPLY=( $( compgen -W '--age --after --bool --before --count --case --config_template --duration --from --hilite --interactive --menu --not --output --only_timed --sort --search --times --tag --tag_order --tag_sort --template --totals --val --exact' -- $token ) )
|
280
290
|
elif [[ "$token" == -* ]]; then
|
281
|
-
COMPREPLY=( $( compgen -W '-a -b -c -h -i -m -o -s -t -x --age --after --bool --before --count --case --duration --from --hilite --interactive --menu --not --output --only_timed --sort --search --times --tag --tag_order --tag_sort --totals --val --exact' -- $token ) )
|
291
|
+
COMPREPLY=( $( compgen -W '-a -b -c -h -i -m -o -s -t -x --age --after --bool --before --count --case --config_template --duration --from --hilite --interactive --menu --not --output --only_timed --sort --search --times --tag --tag_order --tag_sort --template --totals --val --exact' -- $token ) )
|
282
292
|
else
|
283
293
|
local nocasematchWasOff=0
|
284
294
|
shopt nocasematch >/dev/null || nocasematchWasOff=1
|
@@ -301,9 +311,9 @@ IFS="$OLD_IFS"
|
|
301
311
|
_doing_since() {
|
302
312
|
|
303
313
|
if [[ "$token" == --* ]]; then
|
304
|
-
COMPREPLY=( $( compgen -W '--duration --output --section --times --tag_sort --totals' -- $token ) )
|
314
|
+
COMPREPLY=( $( compgen -W '--config_template --duration --output --section --times --tag_sort --template --totals' -- $token ) )
|
305
315
|
elif [[ "$token" == -* ]]; then
|
306
|
-
COMPREPLY=( $( compgen -W '-o -s -t --duration --output --section --times --tag_sort --totals' -- $token ) )
|
316
|
+
COMPREPLY=( $( compgen -W '-o -s -t --config_template --duration --output --section --times --tag_sort --template --totals' -- $token ) )
|
307
317
|
|
308
318
|
fi
|
309
319
|
}
|
@@ -331,9 +341,9 @@ _doing_tag_dir() {
|
|
331
341
|
_doing_tags() {
|
332
342
|
|
333
343
|
if [[ "$token" == --* ]]; then
|
334
|
-
COMPREPLY=( $( compgen -W '--bool --counts --case --interactive --not --order --section --search --sort --tag --val --exact' -- $token ) )
|
344
|
+
COMPREPLY=( $( compgen -W '--bool --counts --case --interactive --line --not --order --section --search --sort --tag --val --exact' -- $token ) )
|
335
345
|
elif [[ "$token" == -* ]]; then
|
336
|
-
COMPREPLY=( $( compgen -W '-c -i -o -s -x --bool --counts --case --interactive --not --order --section --search --sort --tag --val --exact' -- $token ) )
|
346
|
+
COMPREPLY=( $( compgen -W '-c -i -l -o -s -x --bool --counts --case --interactive --line --not --order --section --search --sort --tag --val --exact' -- $token ) )
|
337
347
|
|
338
348
|
fi
|
339
349
|
}
|
@@ -351,9 +361,9 @@ _doing_template() {
|
|
351
361
|
_doing_today() {
|
352
362
|
|
353
363
|
if [[ "$token" == --* ]]; then
|
354
|
-
COMPREPLY=( $( compgen -W '--after --before --duration --from --output --section --times --tag_sort --totals' -- $token ) )
|
364
|
+
COMPREPLY=( $( compgen -W '--after --before --config_template --duration --from --output --section --times --tag_sort --template --totals' -- $token ) )
|
355
365
|
elif [[ "$token" == -* ]]; then
|
356
|
-
COMPREPLY=( $( compgen -W '-o -s -t --after --before --duration --from --output --section --times --tag_sort --totals' -- $token ) )
|
366
|
+
COMPREPLY=( $( compgen -W '-o -s -t --after --before --config_template --duration --from --output --section --times --tag_sort --template --totals' -- $token ) )
|
357
367
|
|
358
368
|
fi
|
359
369
|
}
|
@@ -421,9 +431,9 @@ _doing_wiki() {
|
|
421
431
|
_doing_yesterday() {
|
422
432
|
|
423
433
|
if [[ "$token" == --* ]]; then
|
424
|
-
COMPREPLY=( $( compgen -W '--after --before --duration --from --output --section --times --tag_order --tag_sort --totals' -- $token ) )
|
434
|
+
COMPREPLY=( $( compgen -W '--after --before --config_template --duration --from --output --section --times --tag_order --tag_sort --template --totals' -- $token ) )
|
425
435
|
elif [[ "$token" == -* ]]; then
|
426
|
-
COMPREPLY=( $( compgen -W '-o -s -t --after --before --duration --from --output --section --times --tag_order --tag_sort --totals' -- $token ) )
|
436
|
+
COMPREPLY=( $( compgen -W '-o -s -t --after --before --config_template --duration --from --output --section --times --tag_order --tag_sort --template --totals' -- $token ) )
|
427
437
|
|
428
438
|
fi
|
429
439
|
}
|
@@ -437,6 +447,7 @@ _doing()
|
|
437
447
|
elif [[ $last =~ (archive|move) ]]; then _doing_archive
|
438
448
|
elif [[ $last =~ (autotag) ]]; then _doing_autotag
|
439
449
|
elif [[ $last =~ (cancel) ]]; then _doing_cancel
|
450
|
+
elif [[ $last =~ (changes|changelog) ]]; then _doing_changes
|
440
451
|
elif [[ $last =~ (completion) ]]; then _doing_completion
|
441
452
|
elif [[ $last =~ (config) ]]; then _doing_config
|
442
453
|
elif [[ $last =~ (done|did) ]]; then _doing_done
|
data/lib/completion/doing.fish
CHANGED
@@ -23,28 +23,97 @@ function __fish_doing_using_command
|
|
23
23
|
and return 0
|
24
24
|
end
|
25
25
|
|
26
|
+
function __fish_doing_cache_timer_expired
|
27
|
+
set -l timer __fish_doing_cache_timer_$argv[1]
|
28
|
+
if not set -q $timer
|
29
|
+
set -g $timer (date '+%s')
|
30
|
+
end
|
31
|
+
|
32
|
+
if test (math (date '+%s') - $$timer) -gt $argv[2]
|
33
|
+
set -g $timer (date '+%s')
|
34
|
+
return 1
|
35
|
+
end
|
36
|
+
|
37
|
+
return 0
|
38
|
+
end
|
39
|
+
|
40
|
+
function __fish_doing_subcommands
|
41
|
+
if not set -q __fish_doing_subcommands_cache
|
42
|
+
or __fish_doing_cache_timer_expired subcommands 86400
|
43
|
+
set -g -a __fish_doing_subcommands_cache (doing help -c)
|
44
|
+
end
|
45
|
+
printf '%s
|
46
|
+
' $__fish_doing_subcommands_cache
|
47
|
+
end
|
48
|
+
|
26
49
|
function __fish_doing_complete_sections
|
27
|
-
|
50
|
+
if not set -q __fish_doing_sections_cache
|
51
|
+
or __fish_doing_cache_timer_expired sections 3600
|
52
|
+
set -g -a __fish_doing_sections_cache (doing sections -c)
|
53
|
+
end
|
54
|
+
printf '%s
|
55
|
+
' $__fish_doing_sections_cache
|
56
|
+
__fish_doing_complete_show_tag
|
28
57
|
end
|
29
58
|
|
30
59
|
function __fish_doing_complete_views
|
31
|
-
|
60
|
+
if not set -q __fish_doing_views_cache
|
61
|
+
or __fish_doing_cache_timer_expired views 3600
|
62
|
+
set -g -a __fish_doing_views_cache (doing views -c)
|
63
|
+
end
|
64
|
+
printf '%s
|
65
|
+
' $__fish_doing_views_cache
|
32
66
|
end
|
33
67
|
|
34
|
-
function
|
35
|
-
|
68
|
+
function __fish_doing_export_plugin
|
69
|
+
if not set -q __fish_doing_export_plugin_cache
|
70
|
+
or __fish_doing_cache_timer_expired export_plugins 3600
|
71
|
+
set -g -a __fish_doing_export_plugin_cache (doing plugins --type export -c)
|
72
|
+
end
|
73
|
+
printf '%s
|
74
|
+
' $__fish_doing_export_plugin_cache
|
75
|
+
end
|
76
|
+
|
77
|
+
function __fish_doing_import_plugin
|
78
|
+
if not set -q __fish_doing_import_plugin_cache
|
79
|
+
or __fish_doing_cache_timer_expired import_plugins 3600
|
80
|
+
set -g -a __fish_doing_import_plugin_cache (doing plugins --type import -c)
|
81
|
+
end
|
82
|
+
printf '%s
|
83
|
+
' $__fish_doing_import_plugin_cache
|
84
|
+
end
|
85
|
+
|
86
|
+
function __fish_doing_complete_template
|
87
|
+
if not set -q __fish_doing_template_cache
|
88
|
+
or __fish_doing_cache_timer_expired template 3600
|
89
|
+
set -g -a __fish_doing_template_cache (doing template -c)
|
90
|
+
end
|
91
|
+
printf '%s
|
92
|
+
' $__fish_doing_template_cache
|
36
93
|
end
|
37
94
|
|
38
|
-
function
|
39
|
-
|
95
|
+
function __fish_doing_complete_tag
|
96
|
+
if not set -q __fish_doing_tag_cache
|
97
|
+
or __fish_doing_cache_timer_expired tags 60
|
98
|
+
set -g -a __fish_doing_tag_cache (doing tags)
|
99
|
+
end
|
100
|
+
printf '%s
|
101
|
+
' $__fish_doing_tag_cache
|
40
102
|
end
|
41
103
|
|
42
|
-
function
|
43
|
-
|
104
|
+
function __fish_doing_complete_show_tag
|
105
|
+
if not set -q __fish_doing_tag_cache
|
106
|
+
or __fish_doing_cache_timer_expired tags 60
|
107
|
+
set -g -a __fish_doing_tag_cache (doing tags)
|
108
|
+
end
|
109
|
+
printf '@%s
|
110
|
+
' $__fish_doing_tag_cache
|
44
111
|
end
|
45
112
|
|
46
|
-
function
|
47
|
-
doing
|
113
|
+
function __fish_doing_complete_args
|
114
|
+
for cmd in (doing commands_accepting -c $argv[1])
|
115
|
+
complete -x -c doing -l $argv[1] -n "__fish_doing_using_command $cmd" -a "(__fish_doing_complete_$argv[1])"
|
116
|
+
end
|
48
117
|
end
|
49
118
|
|
50
119
|
complete -c doing -f
|
@@ -54,15 +123,24 @@ complete -f -c doing -n '__fish_doing_using_command show' -a '(__fish_doing_comp
|
|
54
123
|
complete -f -c doing -n '__fish_doing_using_command view' -a '(__fish_doing_complete_views)'
|
55
124
|
complete -f -c doing -n '__fish_doing_using_command template' -a '(__fish_doing_complete_templates)'
|
56
125
|
complete -f -c doing -s t -l type -x -n '__fish_doing_using_command import' -a '(__fish_doing_import_plugins)'
|
126
|
+
complete -f -c doing -n '__fish_doing_using_command help' -a '(__fish_doing_subcommands)'
|
127
|
+
|
128
|
+
# complete -xc doing -n '__fish_seen_subcommand_from help; and not __fish_seen_subcommand_from (doing help -c)' -a "(doing help -c)"
|
129
|
+
|
130
|
+
function __fish_doing_complete_args
|
131
|
+
for cmd in (doing commands_accepting -c $argv[1])
|
132
|
+
complete -x -c doing -l $argv[1] -n "__fish_doing_using_command $cmd" -a "(__fish_doing_complete_$argv[1])"
|
133
|
+
end
|
134
|
+
end
|
57
135
|
|
58
|
-
|
136
|
+
__fish_doing_complete_args tag
|
59
137
|
|
60
138
|
complete -xc doing -n '__fish_doing_needs_command' -a 'add_section' -d Add\ a\ new\ section\ to\ the\ \"doing\"\ file
|
61
139
|
complete -xc doing -n '__fish_doing_needs_command' -a 'again resume' -d Repeat\ last\ entry\ as\ new\ entry
|
62
140
|
complete -xc doing -n '__fish_doing_needs_command' -a 'archive move' -d Move\ entries\ between\ sections
|
63
141
|
complete -xc doing -n '__fish_doing_needs_command' -a 'autotag' -d Autotag\ last\ entry\ or\ filtered\ entries
|
64
142
|
complete -xc doing -n '__fish_doing_needs_command' -a 'cancel' -d End\ last\ X\ entries\ with\ no\ time\ tracked
|
65
|
-
complete -xc doing -n '__fish_doing_needs_command' -a 'changelog
|
143
|
+
complete -xc doing -n '__fish_doing_needs_command' -a 'changes changelog' -d List\ recent\ changes\ in\ Doing
|
66
144
|
complete -xc doing -n '__fish_doing_needs_command' -a 'choose' -d Select\ a\ section\ to\ display\ from\ a\ menu
|
67
145
|
complete -xc doing -n '__fish_doing_needs_command' -a 'colors' -d List\ available\ color\ variables\ for\ configuration\ templates\ and\ views
|
68
146
|
complete -xc doing -n '__fish_doing_needs_command' -a 'completion' -d Generate\ shell\ completion\ scripts
|
@@ -100,6 +178,7 @@ complete -xc doing -n '__fish_doing_needs_command' -a 'views' -d List\ available
|
|
100
178
|
complete -xc doing -n '__fish_doing_needs_command' -a 'wiki' -d Output\ a\ tag\ wiki
|
101
179
|
complete -xc doing -n '__fish_doing_needs_command' -a 'yesterday' -d List\ entries\ from\ yesterday
|
102
180
|
complete -c doing -l ask -f -n '__fish_doing_using_command again resume' -d Prompt\ for\ note\ via\ multi-line\ input
|
181
|
+
complete -c doing -l started -f -r -n '__fish_doing_using_command again resume' -d Backdate\ start\ date\ by\ interval\ or\ set\ to\ time\ \[4pm\|20m\|2h\|\"yesterday\ noon\"\]
|
103
182
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command again resume' -d Boolean\ used\ to\ combine\ multiple\ tags
|
104
183
|
complete -c doing -l case -f -r -n '__fish_doing_using_command again resume' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
105
184
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command again resume' -d Edit\ duplicated\ entry\ with\ vim\ before\ adding
|
@@ -142,6 +221,9 @@ complete -c doing -l tag -f -r -n '__fish_doing_using_command cancel' -d Cancel
|
|
142
221
|
complete -c doing -l unfinished -s u -f -n '__fish_doing_using_command cancel' -d Cancel\ last\ entry
|
143
222
|
complete -c doing -l val -f -r -n '__fish_doing_using_command cancel' -d Perform\ a\ tag\ value\ query
|
144
223
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command cancel' -d Force\ exact\ search\ string\ matching
|
224
|
+
complete -c doing -l all -s a -f -n '__fish_doing_using_command changes changelog' -d Display\ all\ versions
|
225
|
+
complete -c doing -l lookup -s l -f -r -n '__fish_doing_using_command changes changelog' -d Look\ up\ a\ specific\ version
|
226
|
+
complete -c doing -l search -s s -f -r -n '__fish_doing_using_command changes changelog' -d Show\ changelogs\ matching\ search\ terms
|
145
227
|
complete -c doing -l file -s f -f -r -n '__fish_doing_using_command completion' -d File\ to\ write\ output\ to
|
146
228
|
complete -c doing -l type -s t -f -r -n '__fish_doing_using_command completion' -d Shell\ to\ generate\ for
|
147
229
|
complete -c doing -l dump -s d -f -n '__fish_doing_using_command config' -d DEPRECATED
|
@@ -159,9 +241,9 @@ complete -c doing -l section -s s -f -r -n '__fish_doing_using_command done did'
|
|
159
241
|
complete -c doing -l for -f -r -n '__fish_doing_using_command done did' -d Set\ completion\ date\ to\ start\ date\ plus\ interval
|
160
242
|
complete -c doing -l unfinished -s u -f -n '__fish_doing_using_command done did' -d Finish\ last\ entry\ not\ already\ marked\ @done
|
161
243
|
complete -c doing -l archive -s a -f -n '__fish_doing_using_command finish' -d Archive\ entries
|
162
|
-
complete -c doing -l
|
244
|
+
complete -c doing -l finished -f -r -n '__fish_doing_using_command finish' -d Set\ finish\ date\ to\ specific\ date/time
|
163
245
|
complete -c doing -l auto -f -n '__fish_doing_using_command finish' -d Auto-generate\ finish\ dates\ from\ next\ entry\'s\ start\ time
|
164
|
-
complete -c doing -l
|
246
|
+
complete -c doing -l started -f -r -n '__fish_doing_using_command finish' -d Backdate\ completed\ date\ to\ date\ string\ \[4pm\|20m\|2h\|yesterday\ noon\]
|
165
247
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command finish' -d Boolean
|
166
248
|
complete -c doing -l case -f -r -n '__fish_doing_using_command finish' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
167
249
|
complete -c doing -l date -f -n '__fish_doing_using_command finish' -d Include\ date
|
@@ -179,6 +261,7 @@ complete -c doing -l after -f -r -n '__fish_doing_using_command grep search' -d
|
|
179
261
|
complete -c doing -l before -f -r -n '__fish_doing_using_command grep search' -d Search\ entries\ older\ than\ date
|
180
262
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command grep search' -d Combine\ multiple\ tags\ or\ value\ queries\ using\ AND
|
181
263
|
complete -c doing -l case -f -r -n '__fish_doing_using_command grep search' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
264
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command grep search' -d Output\ using\ a\ template\ from\ configuration
|
182
265
|
complete -c doing -l delete -s d -f -n '__fish_doing_using_command grep search' -d Delete\ matching\ entries
|
183
266
|
complete -c doing -l duration -f -n '__fish_doing_using_command grep search' -d Show\ elapsed\ time\ on\ entries\ without\ @done\ tag
|
184
267
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command grep search' -d Edit\ matching\ entries\ with\ vim
|
@@ -191,6 +274,7 @@ complete -c doing -l only_timed -f -n '__fish_doing_using_command grep search'
|
|
191
274
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command grep search' -d Section
|
192
275
|
complete -c doing -l times -s t -f -n '__fish_doing_using_command grep search' -d Show\ time\ intervals\ on\ @done\ tasks
|
193
276
|
complete -c doing -l tag_sort -f -r -n '__fish_doing_using_command grep search' -d Sort\ tags\ by
|
277
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command grep search' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
194
278
|
complete -c doing -l totals -f -n '__fish_doing_using_command grep search' -d Show\ intervals\ with\ totals\ at\ the\ end\ of\ output
|
195
279
|
complete -c doing -l val -f -r -n '__fish_doing_using_command grep search' -d Perform\ a\ tag\ value\ query
|
196
280
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command grep search' -d Force\ exact\ string\ matching
|
@@ -211,6 +295,7 @@ complete -c doing -l type -f -r -n '__fish_doing_using_command import' -d Impor
|
|
211
295
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command import' -d Force\ exact\ search\ string\ matching
|
212
296
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command last' -d Tag\ boolean
|
213
297
|
complete -c doing -l case -f -r -n '__fish_doing_using_command last' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
298
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command last' -d Output\ using\ a\ template\ from\ configuration
|
214
299
|
complete -c doing -l delete -s d -f -n '__fish_doing_using_command last' -d Delete\ the\ last\ entry
|
215
300
|
complete -c doing -l duration -f -n '__fish_doing_using_command last' -d Show\ elapsed\ time\ if\ entry\ is\ not\ tagged\ @done
|
216
301
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command last' -d Edit\ entry\ with\ vim
|
@@ -219,10 +304,11 @@ complete -c doing -l not -f -n '__fish_doing_using_command last' -d Show\ item
|
|
219
304
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command last' -d Specify\ a\ section
|
220
305
|
complete -c doing -l search -f -r -n '__fish_doing_using_command last' -d Search\ filter
|
221
306
|
complete -c doing -l tag -f -r -n '__fish_doing_using_command last' -d Tag\ filter
|
307
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command last' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
222
308
|
complete -c doing -l val -f -r -n '__fish_doing_using_command last' -d Perform\ a\ tag\ value\ query
|
223
309
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command last' -d Force\ exact\ search\ string\ matching
|
224
310
|
complete -c doing -l ask -f -n '__fish_doing_using_command later' -d Prompt\ for\ note\ via\ multi-line\ input
|
225
|
-
complete -c doing -l
|
311
|
+
complete -c doing -l started -f -r -n '__fish_doing_using_command later' -d Backdate\ start\ time\ to\ date\ string\ \[4pm\|20m\|2h\|yesterday\ noon\]
|
226
312
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command later' -d Edit\ entry\ with\ vim
|
227
313
|
complete -c doing -l note -s n -f -r -n '__fish_doing_using_command later' -d Note
|
228
314
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command mark flag' -d Boolean
|
@@ -241,7 +327,7 @@ complete -c doing -l val -f -r -n '__fish_doing_using_command mark flag' -d Per
|
|
241
327
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command mark flag' -d Force\ exact\ search\ string\ matching
|
242
328
|
complete -c doing -l archive -s a -f -n '__fish_doing_using_command meanwhile' -d Archive\ previous\ @meanwhile\ entry
|
243
329
|
complete -c doing -l ask -f -n '__fish_doing_using_command meanwhile' -d Prompt\ for\ note\ via\ multi-line\ input
|
244
|
-
complete -c doing -l
|
330
|
+
complete -c doing -l started -f -r -n '__fish_doing_using_command meanwhile' -d Backdate\ start\ date\ for\ new\ entry\ to\ date\ string\ \[4pm\|20m\|2h\|yesterday\ noon\]
|
245
331
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command meanwhile' -d Edit\ entry\ with\ vim
|
246
332
|
complete -c doing -l note -s n -f -r -n '__fish_doing_using_command meanwhile' -d Note
|
247
333
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command meanwhile' -d Section
|
@@ -263,22 +349,26 @@ complete -c doing -l editor -s e -f -n '__fish_doing_using_command now next' -d
|
|
263
349
|
complete -c doing -l finish_last -s f -f -n '__fish_doing_using_command now next' -d Timed\ entry
|
264
350
|
complete -c doing -l note -s n -f -r -n '__fish_doing_using_command now next' -d Include\ a\ note
|
265
351
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command now next' -d Section
|
352
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command on' -d Output\ using\ a\ template\ from\ configuration
|
266
353
|
complete -c doing -l duration -f -n '__fish_doing_using_command on' -d Show\ elapsed\ time\ on\ entries\ without\ @done\ tag
|
267
354
|
complete -c doing -l output -s o -f -r -n '__fish_doing_using_command on' -d Output\ to\ export\ format
|
268
355
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command on' -d Section
|
269
356
|
complete -c doing -l times -s t -f -n '__fish_doing_using_command on' -d Show\ time\ intervals\ on\ @done\ tasks
|
270
357
|
complete -c doing -l tag_sort -f -r -n '__fish_doing_using_command on' -d Sort\ tags\ by
|
358
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command on' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
271
359
|
complete -c doing -l totals -f -n '__fish_doing_using_command on' -d Show\ time\ totals\ at\ the\ end\ of\ output
|
272
360
|
complete -c doing -l app -s a -f -r -n '__fish_doing_using_command open' -d Open\ with\ app\ name
|
273
361
|
complete -c doing -l bundle_id -s b -f -r -n '__fish_doing_using_command open' -d Open\ with\ app\ bundle\ id
|
274
362
|
complete -c doing -l editor -s e -f -r -n '__fish_doing_using_command open' -d Open\ with\ editor\ command
|
275
363
|
complete -c doing -l column -s c -f -n '__fish_doing_using_command plugins' -d List\ in\ single\ column\ for\ completion
|
276
364
|
complete -c doing -l type -s t -f -r -n '__fish_doing_using_command plugins' -d List\ plugins\ of\ type
|
365
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command recent' -d Output\ using\ a\ template\ from\ configuration
|
277
366
|
complete -c doing -l duration -f -n '__fish_doing_using_command recent' -d Show\ elapsed\ time\ on\ entries\ without\ @done\ tag
|
278
367
|
complete -c doing -l interactive -s i -f -n '__fish_doing_using_command recent' -d Select\ from\ a\ menu\ of\ matching\ entries\ to\ perform\ additional\ operations
|
279
368
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command recent' -d Section
|
280
369
|
complete -c doing -l times -s t -f -n '__fish_doing_using_command recent' -d Show\ time\ intervals\ on\ @done\ tasks
|
281
370
|
complete -c doing -l tag_sort -f -r -n '__fish_doing_using_command recent' -d Sort\ tags\ by
|
371
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command recent' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
282
372
|
complete -c doing -l totals -f -n '__fish_doing_using_command recent' -d Show\ intervals\ with\ totals\ at\ the\ end\ of\ output
|
283
373
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command reset begin' -d Boolean
|
284
374
|
complete -c doing -l case -f -r -n '__fish_doing_using_command reset begin' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
@@ -331,6 +421,7 @@ complete -c doing -l bool -s b -f -r -n '__fish_doing_using_command show' -d Tag
|
|
331
421
|
complete -c doing -l before -f -r -n '__fish_doing_using_command show' -d Show\ entries\ older\ than\ date
|
332
422
|
complete -c doing -l count -s c -f -r -n '__fish_doing_using_command show' -d Max\ count\ to\ show
|
333
423
|
complete -c doing -l case -f -r -n '__fish_doing_using_command show' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
424
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command show' -d Output\ using\ a\ template\ from\ configuration
|
334
425
|
complete -c doing -l duration -f -n '__fish_doing_using_command show' -d Show\ elapsed\ time\ on\ entries\ without\ @done\ tag
|
335
426
|
complete -c doing -l from -f -r -n '__fish_doing_using_command show' -d Date\ range\ to\ show
|
336
427
|
complete -c doing -l hilite -s h -f -n '__fish_doing_using_command show' -d Highlight\ search\ matches\ in\ output
|
@@ -345,14 +436,17 @@ complete -c doing -l times -s t -f -n '__fish_doing_using_command show' -d Show
|
|
345
436
|
complete -c doing -l tag -f -r -n '__fish_doing_using_command show' -d Tag\ filter
|
346
437
|
complete -c doing -l tag_order -f -r -n '__fish_doing_using_command show' -d Tag\ sort\ direction
|
347
438
|
complete -c doing -l tag_sort -f -r -n '__fish_doing_using_command show' -d Sort\ tags\ by
|
439
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command show' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
348
440
|
complete -c doing -l totals -f -n '__fish_doing_using_command show' -d Show\ intervals\ with\ totals\ at\ the\ end\ of\ output
|
349
441
|
complete -c doing -l val -f -r -n '__fish_doing_using_command show' -d Perform\ a\ tag\ value\ query
|
350
442
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command show' -d Force\ exact\ search\ string\ matching
|
443
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command since' -d Output\ using\ a\ template\ from\ configuration
|
351
444
|
complete -c doing -l duration -f -n '__fish_doing_using_command since' -d Show\ elapsed\ time\ on\ entries\ without\ @done\ tag
|
352
445
|
complete -c doing -l output -s o -f -r -n '__fish_doing_using_command since' -d Output\ to\ export\ format
|
353
446
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command since' -d Section
|
354
447
|
complete -c doing -l times -s t -f -n '__fish_doing_using_command since' -d Show\ time\ intervals\ on\ @done\ tasks
|
355
448
|
complete -c doing -l tag_sort -f -r -n '__fish_doing_using_command since' -d Sort\ tags\ by
|
449
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command since' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
356
450
|
complete -c doing -l totals -f -n '__fish_doing_using_command since' -d Show\ time\ totals\ at\ the\ end\ of\ output
|
357
451
|
complete -c doing -l autotag -s a -f -n '__fish_doing_using_command tag' -d Autotag\ entries\ based\ on\ autotag\ configuration\ in\ \~/
|
358
452
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command tag' -d Boolean
|
@@ -377,6 +471,7 @@ complete -c doing -l bool -f -r -n '__fish_doing_using_command tags' -d Boolean
|
|
377
471
|
complete -c doing -l counts -s c -f -n '__fish_doing_using_command tags' -d Show\ count\ of\ occurrences
|
378
472
|
complete -c doing -l case -f -r -n '__fish_doing_using_command tags' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
379
473
|
complete -c doing -l interactive -s i -f -n '__fish_doing_using_command tags' -d Select\ items\ to\ scan\ from\ a\ menu\ of\ matching\ entries
|
474
|
+
complete -c doing -l line -s l -f -n '__fish_doing_using_command tags' -d Output\ in\ a\ single\ line\ with\ @\ symbols
|
380
475
|
complete -c doing -l not -f -n '__fish_doing_using_command tags' -d Get\ tags\ from\ items\ that\ \*don\'t\*\ match\ search/tag\ filters
|
381
476
|
complete -c doing -l order -s o -f -r -n '__fish_doing_using_command tags' -d Sort\ order
|
382
477
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command tags' -d Section
|
@@ -391,12 +486,14 @@ complete -c doing -l path -s p -f -r -n '__fish_doing_using_command template' -d
|
|
391
486
|
complete -c doing -l save -s s -f -n '__fish_doing_using_command template' -d Save\ template\ to\ file\ instead\ of\ STDOUT
|
392
487
|
complete -c doing -l after -f -r -n '__fish_doing_using_command today' -d View\ entries\ after\ specified\ time
|
393
488
|
complete -c doing -l before -f -r -n '__fish_doing_using_command today' -d View\ entries\ before\ specified\ time
|
489
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command today' -d Output\ using\ a\ template\ from\ configuration
|
394
490
|
complete -c doing -l duration -f -n '__fish_doing_using_command today' -d Show\ elapsed\ time\ on\ entries\ without\ @done\ tag
|
395
491
|
complete -c doing -l from -f -r -n '__fish_doing_using_command today' -d Time\ range\ to\ show\ \`doing\ today\ --from\ \"12pm\ to\ 4pm\"\`
|
396
492
|
complete -c doing -l output -s o -f -r -n '__fish_doing_using_command today' -d Output\ to\ export\ format
|
397
493
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command today' -d Specify\ a\ section
|
398
494
|
complete -c doing -l times -s t -f -n '__fish_doing_using_command today' -d Show\ time\ intervals\ on\ @done\ tasks
|
399
495
|
complete -c doing -l tag_sort -f -r -n '__fish_doing_using_command today' -d Sort\ tags\ by
|
496
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command today' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
400
497
|
complete -c doing -l totals -f -n '__fish_doing_using_command today' -d Show\ time\ totals\ at\ the\ end\ of\ output
|
401
498
|
complete -c doing -l file -s f -f -r -n '__fish_doing_using_command undo' -d Specify\ alternate\ doing\ file
|
402
499
|
complete -c doing -l interactive -s i -f -n '__fish_doing_using_command undo' -d Select\ from\ recent\ backups
|
@@ -436,6 +533,7 @@ complete -c doing -l search -f -r -n '__fish_doing_using_command wiki' -d Searc
|
|
436
533
|
complete -c doing -l tag -f -r -n '__fish_doing_using_command wiki' -d Tag\ filter
|
437
534
|
complete -c doing -l after -f -r -n '__fish_doing_using_command yesterday' -d View\ entries\ after\ specified\ time
|
438
535
|
complete -c doing -l before -f -r -n '__fish_doing_using_command yesterday' -d View\ entries\ before\ specified\ time
|
536
|
+
complete -c doing -l config_template -f -r -n '__fish_doing_using_command yesterday' -d Output\ using\ a\ template\ from\ configuration
|
439
537
|
complete -c doing -l duration -f -n '__fish_doing_using_command yesterday' -d Show\ elapsed\ time\ on\ entries\ without\ @done\ tag
|
440
538
|
complete -c doing -l from -f -r -n '__fish_doing_using_command yesterday' -d Time\ range\ to\ show
|
441
539
|
complete -c doing -l output -s o -f -r -n '__fish_doing_using_command yesterday' -d Output\ to\ export\ format
|
@@ -443,8 +541,9 @@ complete -c doing -l section -s s -f -r -n '__fish_doing_using_command yesterday
|
|
443
541
|
complete -c doing -l times -s t -f -n '__fish_doing_using_command yesterday' -d Show\ time\ intervals\ on\ @done\ tasks
|
444
542
|
complete -c doing -l tag_order -f -r -n '__fish_doing_using_command yesterday' -d Tag\ sort\ direction
|
445
543
|
complete -c doing -l tag_sort -f -r -n '__fish_doing_using_command yesterday' -d Sort\ tags\ by
|
544
|
+
complete -c doing -l template -f -r -n '__fish_doing_using_command yesterday' -d Override\ output\ format\ with\ a\ template\ string\ containing\ \%placeholders
|
446
545
|
complete -c doing -l totals -f -n '__fish_doing_using_command yesterday' -d Show\ time\ totals\ at\ the\ end\ of\ output
|
447
|
-
complete -f -c doing -s o -l output -x -n '__fish_doing_using_command grep search on select show since today view yesterday' -a '(
|
546
|
+
complete -f -c doing -s o -l output -x -n '__fish_doing_using_command grep search on select show since today view yesterday' -a '(__fish_doing_export_plugin)'
|
448
547
|
complete -f -c doing -s b -l bool -x -n '__fish_doing_using_command again resume archive move autotag cancel finish grep search last mark flag note reset begin rotate show tag tags view wiki' -a 'and or not pattern'
|
449
548
|
complete -f -c doing -l case -x -n '__fish_doing_using_command again resume archive move cancel finish grep search import last mark flag note reset begin rotate select show show tag tags tags view' -a 'case-sensitive ignore smart'
|
450
549
|
complete -f -c doing -l tag_sort -x -n '__fish_doing_using_command grep search on recent show since today view yesterday' -a 'name time'
|
data/lib/doing/array.rb
CHANGED
@@ -11,17 +11,18 @@ module Doing
|
|
11
11
|
## @return [Array] array of strings
|
12
12
|
##
|
13
13
|
def tags_to_array
|
14
|
-
map
|
14
|
+
map(&:remove_at)
|
15
15
|
end
|
16
16
|
|
17
17
|
# Convert strings to @tags
|
18
18
|
#
|
19
|
-
# @example `['one', '@two', 'three'].to_tags`
|
20
|
-
# @example `=> ['@one', '@two', '@three']`
|
21
19
|
# @return [Array] Array of @tags
|
22
20
|
#
|
21
|
+
# @example
|
22
|
+
# ['one', '@two', 'three'].to_tags
|
23
|
+
# # => ['@one', '@two', '@three']
|
23
24
|
def to_tags
|
24
|
-
map
|
25
|
+
map(&:add_at)
|
25
26
|
end
|
26
27
|
|
27
28
|
def to_tags!
|
data/lib/doing/array_chronify.rb
CHANGED
@@ -6,9 +6,10 @@ module Doing
|
|
6
6
|
##
|
7
7
|
## Format [d, h, m] as string
|
8
8
|
##
|
9
|
-
## @
|
10
|
-
##
|
11
|
-
## @param format [Symbol] The format, :dhm, :hm,
|
9
|
+
## @accept [Array] Array of [days, hours, minutes]
|
10
|
+
##
|
11
|
+
## @param format [Symbol] The format, :dhm, :hm,
|
12
|
+
## :m, :clock, :natural
|
12
13
|
## @return [String] formatted string
|
13
14
|
##
|
14
15
|
def time_string(format: :dhm)
|
@@ -0,0 +1,115 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Doing
|
4
|
+
# A single version's entries
|
5
|
+
class Change
|
6
|
+
attr_reader :version, :content
|
7
|
+
|
8
|
+
attr_accessor :entries
|
9
|
+
|
10
|
+
def initialize(version, content)
|
11
|
+
@version = Version.new(version)
|
12
|
+
@content = content
|
13
|
+
parse_entries
|
14
|
+
end
|
15
|
+
|
16
|
+
def parse_entries
|
17
|
+
@entries = []
|
18
|
+
types = @content.scan(/(?<=\n|\A)#### (NEW|IMPROVED|FIXED)(.*?)(?=\n####|\Z)/m)
|
19
|
+
types.each do |type|
|
20
|
+
type[1].scan(/\s*- +(.*?)$/).each do |entry|
|
21
|
+
@entries << Entry.new(entry[0].strip, type[0])
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
def search_entries(search_string)
|
27
|
+
case_type = :ignore
|
28
|
+
|
29
|
+
matches = []
|
30
|
+
|
31
|
+
if search_string.is_rx?
|
32
|
+
matches = @entries.select { |e| e.string =~ search_string.to_rx(distance: 2, case_type: case_type) }
|
33
|
+
else
|
34
|
+
query = search_string.gsub(/(-)?--/, '\1]]').to_phrase_query
|
35
|
+
|
36
|
+
if query[:must].nil? && query[:must_not].nil?
|
37
|
+
query[:must] = query[:should]
|
38
|
+
query[:should] = []
|
39
|
+
end
|
40
|
+
|
41
|
+
@entries.each do |entry|
|
42
|
+
m = no_searches?(entry.string, query[:must_not])
|
43
|
+
m &&= all_searches?(entry.string, query[:must])
|
44
|
+
m &&= any_searches?(entry.string, query[:should])
|
45
|
+
matches << entry if m
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
@entries = matches.count.positive? ? matches : nil
|
50
|
+
end
|
51
|
+
|
52
|
+
def to_h
|
53
|
+
{ version: @version, content: @content }
|
54
|
+
end
|
55
|
+
|
56
|
+
def to_s
|
57
|
+
out = ["### #{@version}"]
|
58
|
+
items = {
|
59
|
+
new: [],
|
60
|
+
improved: [],
|
61
|
+
fixed: [],
|
62
|
+
other: []
|
63
|
+
}
|
64
|
+
@entries.each do |e|
|
65
|
+
type = e.type.downcase.to_sym
|
66
|
+
if items.key?(type)
|
67
|
+
items[type] << e
|
68
|
+
else
|
69
|
+
items[:other] << e
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
items.each do |type, members|
|
74
|
+
if members.count.positive?
|
75
|
+
out << "#### #{type.to_s.capitalize}"
|
76
|
+
out << members.map(&:to_s).join("\n")
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
out.join("\n\n")
|
81
|
+
end
|
82
|
+
|
83
|
+
private
|
84
|
+
|
85
|
+
def all_searches?(text, searches)
|
86
|
+
return true if searches.nil? || searches.empty?
|
87
|
+
|
88
|
+
searches.each do |s|
|
89
|
+
rx = Regexp.new(s.wildcard_to_rx, true)
|
90
|
+
return false unless text =~ rx
|
91
|
+
end
|
92
|
+
true
|
93
|
+
end
|
94
|
+
|
95
|
+
def no_searches?(text, searches)
|
96
|
+
return true if searches.nil? || searches.empty?
|
97
|
+
|
98
|
+
searches.each do |s|
|
99
|
+
rx = Regexp.new(s.wildcard_to_rx, true)
|
100
|
+
return false if text =~ rx
|
101
|
+
end
|
102
|
+
true
|
103
|
+
end
|
104
|
+
|
105
|
+
def any_searches?(text, searches)
|
106
|
+
return true if searches.nil? || searches.empty?
|
107
|
+
|
108
|
+
searches.each do |s|
|
109
|
+
rx = Regexp.new(s.wildcard_to_rx, true)
|
110
|
+
return true if text =~ rx
|
111
|
+
end
|
112
|
+
false
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|