doing 2.1.68 → 2.1.72
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +28 -0
- data/Gemfile.lock +3 -3
- data/README.md +2 -2
- data/bin/commands/commands.rb +57 -2
- data/docs/doc/Array.html +1 -1
- data/docs/doc/BooleanTermParser/Clause.html +1 -1
- data/docs/doc/BooleanTermParser/Operator.html +1 -1
- data/docs/doc/BooleanTermParser/Query.html +1 -1
- data/docs/doc/BooleanTermParser/QueryParser.html +1 -1
- data/docs/doc/BooleanTermParser/QueryTransformer.html +1 -1
- data/docs/doc/BooleanTermParser.html +1 -1
- data/docs/doc/Doing/ArrayCleanup.html +1 -1
- data/docs/doc/Doing/ArrayNestedHash.html +1 -1
- data/docs/doc/Doing/ArrayTags.html +1 -1
- data/docs/doc/Doing/CSVExport.html +1 -1
- data/docs/doc/Doing/CalendarImport.html +1 -1
- data/docs/doc/Doing/Change.html +1 -1
- data/docs/doc/Doing/Changes.html +1 -1
- data/docs/doc/Doing/ChronifyArray.html +1 -1
- data/docs/doc/Doing/ChronifyNumeric.html +1 -1
- data/docs/doc/Doing/ChronifyString.html +1 -1
- data/docs/doc/Doing/Color.html +1 -1
- data/docs/doc/Doing/Completion/BashCompletions.html +1 -1
- data/docs/doc/Doing/Completion/FigCompletions.html +1 -1
- data/docs/doc/Doing/Completion/FishCompletions.html +1 -1
- data/docs/doc/Doing/Completion/StringUtils.html +1 -1
- data/docs/doc/Doing/Completion/ZshCompletions.html +1 -1
- data/docs/doc/Doing/Completion.html +1 -1
- data/docs/doc/Doing/Configuration.html +1 -1
- data/docs/doc/Doing/DayOneRenderer.html +1 -1
- data/docs/doc/Doing/DayoneExport.html +1 -1
- data/docs/doc/Doing/DoingExport.html +1 -1
- data/docs/doc/Doing/DoingImport.html +1 -1
- data/docs/doc/Doing/Entry.html +1 -1
- data/docs/doc/Doing/Errors/DoingNoTraceError.html +1 -1
- data/docs/doc/Doing/Errors/DoingRuntimeError.html +1 -1
- data/docs/doc/Doing/Errors/DoingStandardError.html +1 -1
- data/docs/doc/Doing/Errors/EmptyInput.html +1 -1
- data/docs/doc/Doing/Errors/HistoryLimitError.html +1 -1
- data/docs/doc/Doing/Errors/InvalidPlugin.html +1 -1
- data/docs/doc/Doing/Errors/MissingBackupFile.html +1 -1
- data/docs/doc/Doing/Errors/NoResults.html +1 -1
- data/docs/doc/Doing/Errors/PluginException.html +1 -1
- data/docs/doc/Doing/Errors/UserCancelled.html +1 -1
- data/docs/doc/Doing/Errors/WrongCommand.html +1 -1
- data/docs/doc/Doing/Errors.html +1 -1
- data/docs/doc/Doing/HTMLExport.html +1 -1
- data/docs/doc/Doing/Hooks.html +1 -1
- data/docs/doc/Doing/Item.html +1 -1
- data/docs/doc/Doing/ItemDates.html +1 -1
- data/docs/doc/Doing/ItemQuery.html +1 -1
- data/docs/doc/Doing/ItemState.html +1 -1
- data/docs/doc/Doing/ItemTags.html +1 -1
- data/docs/doc/Doing/Items.html +1 -1
- data/docs/doc/Doing/JSONExport.html +1 -1
- data/docs/doc/Doing/JSONImport.html +1 -1
- data/docs/doc/Doing/Logger.html +1 -1
- data/docs/doc/Doing/MarkdownExport.html +1 -1
- data/docs/doc/Doing/Note.html +1 -1
- data/docs/doc/Doing/Pager.html +1 -1
- data/docs/doc/Doing/Plugins.html +1 -1
- data/docs/doc/Doing/Prompt.html +1 -1
- data/docs/doc/Doing/PromptChoose.html +1 -1
- data/docs/doc/Doing/PromptFZF.html +1 -1
- data/docs/doc/Doing/PromptInput.html +1 -1
- data/docs/doc/Doing/PromptSTD.html +1 -1
- data/docs/doc/Doing/PromptYN.html +1 -1
- data/docs/doc/Doing/Section.html +1 -1
- data/docs/doc/Doing/StringHighlight.html +1 -1
- data/docs/doc/Doing/StringNormalize.html +84 -1
- data/docs/doc/Doing/StringQuery.html +1 -1
- data/docs/doc/Doing/StringTags.html +1 -1
- data/docs/doc/Doing/StringTransform.html +1 -1
- data/docs/doc/Doing/StringTruncate.html +1 -1
- data/docs/doc/Doing/StringURL.html +1 -1
- data/docs/doc/Doing/SymbolNormalize.html +1 -1
- data/docs/doc/Doing/TaskPaperExport.html +1 -1
- data/docs/doc/Doing/TemplateExport.html +1 -1
- data/docs/doc/Doing/TemplateString.html +2 -2
- data/docs/doc/Doing/TimingImport.html +1 -1
- data/docs/doc/Doing/Types.html +1 -1
- data/docs/doc/Doing/Util/Backup.html +1 -1
- data/docs/doc/Doing/Util.html +1 -1
- data/docs/doc/Doing/Version.html +1 -1
- data/docs/doc/Doing/WWID.html +1 -1
- data/docs/doc/Doing.html +2 -2
- data/docs/doc/FalseClass.html +1 -1
- data/docs/doc/GLI/Commands/Help.html +1 -1
- data/docs/doc/GLI/Commands/MarkdownDocumentListener.html +1 -1
- data/docs/doc/GLI/Commands.html +1 -1
- data/docs/doc/GLI.html +1 -1
- data/docs/doc/Hash.html +1 -1
- data/docs/doc/Numeric.html +1 -1
- data/docs/doc/Object.html +1 -1
- data/docs/doc/PhraseParser/Operator.html +1 -1
- data/docs/doc/PhraseParser/PhraseClause.html +1 -1
- data/docs/doc/PhraseParser/Query.html +1 -1
- data/docs/doc/PhraseParser/QueryParser.html +1 -1
- data/docs/doc/PhraseParser/QueryTransformer.html +1 -1
- data/docs/doc/PhraseParser/TermClause.html +1 -1
- data/docs/doc/PhraseParser.html +1 -1
- data/docs/doc/Status.html +1 -1
- data/docs/doc/String.html +2 -2
- data/docs/doc/Symbol.html +1 -1
- data/docs/doc/Time.html +1 -1
- data/docs/doc/TrueClass.html +1 -1
- data/docs/doc/_index.html +1 -1
- data/docs/doc/file.README.html +3 -3
- data/docs/doc/index.html +3 -3
- data/docs/doc/method_list.html +417 -409
- data/docs/doc/top-level-namespace.html +1 -1
- data/doing.gemspec +0 -1
- data/doing.rdoc +54 -7
- data/lib/completion/_doing.zsh +11 -7
- data/lib/completion/doing.bash +19 -8
- data/lib/completion/doing.fish +9 -4
- data/lib/completion/doing.ts +47 -7
- data/lib/doing/add_options.rb +1 -1
- data/lib/doing/normalize.rb +20 -0
- data/lib/doing/prompt/choose.rb +1 -1
- data/lib/doing/version.rb +1 -1
- metadata +2 -2
@@ -216,7 +216,7 @@
|
|
216
216
|
</div>
|
217
217
|
|
218
218
|
<div id="footer">
|
219
|
-
Generated on
|
219
|
+
Generated on Sun Jan 1 07:08:46 2023 by
|
220
220
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
221
221
|
0.9.28 (ruby-3.0.1).
|
222
222
|
</div>
|
data/doing.gemspec
CHANGED
@@ -18,7 +18,6 @@ spec = Gem::Specification.new do |s|
|
|
18
18
|
`git ls-files -z`.split("\x0").reject { |f| f.strip =~ %r{^((test|spec|features)/|\.git|buildnotes)} }
|
19
19
|
end
|
20
20
|
s.require_paths << 'lib'
|
21
|
-
|
22
21
|
s.extra_rdoc_files = ['README.md']
|
23
22
|
s.rdoc_options << '--title' << 'doing' << '--main' << 'README.md' << '--markup' << 'markdown'
|
24
23
|
s.bindir = 'bin'
|
data/doing.rdoc
CHANGED
@@ -5,7 +5,7 @@ record of what you've been doing, complete with tag-based time tracking. The
|
|
5
5
|
command line tool allows you to add entries, annotate with tags and notes, and
|
6
6
|
view your entries with myriad options, with a focus on a "natural" language syntax.
|
7
7
|
|
8
|
-
v2.1.
|
8
|
+
v2.1.72
|
9
9
|
|
10
10
|
=== Global Options
|
11
11
|
=== --config_file arg
|
@@ -89,7 +89,7 @@ Repeat last entry as new entry
|
|
89
89
|
This command is designed to allow multiple time intervals to be created
|
90
90
|
for an entry by duplicating it with a new start (and end, eventually) time
|
91
91
|
===== Options
|
92
|
-
===== -b|--back|--started DATE_STRING
|
92
|
+
===== -b|--back|--started|--since DATE_STRING
|
93
93
|
|
94
94
|
Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]
|
95
95
|
|
@@ -504,11 +504,29 @@ Enable and disable Doing commands
|
|
504
504
|
|
505
505
|
|
506
506
|
===== Commands
|
507
|
-
====== Command: <tt>add|enable COMMAND [COMMAND...]</tt>
|
507
|
+
====== Command: <tt>add|enable [COMMAND [COMMAND...]]</tt>
|
508
508
|
Enable Doing commands
|
509
509
|
|
510
510
|
Run without arguments to select commands from a list.
|
511
|
-
====== Command: <tt>
|
511
|
+
====== Command: <tt>ls|list [QUERY]...</tt>
|
512
|
+
List enabled commands
|
513
|
+
|
514
|
+
|
515
|
+
======= Options
|
516
|
+
======= -s|--style QUERY
|
517
|
+
|
518
|
+
List style (column, tab, comma, *space)
|
519
|
+
|
520
|
+
[Default Value] None
|
521
|
+
[Must Match] (?-mix:^[cts].*)
|
522
|
+
|
523
|
+
|
524
|
+
======= -d|--[no-]disabled
|
525
|
+
List disabled commands
|
526
|
+
|
527
|
+
|
528
|
+
|
529
|
+
====== Command: <tt>remove|disable [COMMAND [COMMAND...]]</tt>
|
512
530
|
Disable Doing commands
|
513
531
|
|
514
532
|
|
@@ -662,7 +680,7 @@ Set finish date to specific date/time (natural langauge parsed, e.g. --at=1:30pm
|
|
662
680
|
[Default Value] None
|
663
681
|
|
664
682
|
|
665
|
-
===== -b|--back|--started DATE_STRING
|
683
|
+
===== -b|--back|--started|--since DATE_STRING
|
666
684
|
|
667
685
|
Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]
|
668
686
|
|
@@ -1271,6 +1289,35 @@ Force exact search string matching (case sensitive)
|
|
1271
1289
|
|
1272
1290
|
|
1273
1291
|
|
1292
|
+
==== Command: <tt>later ENTRY</tt>
|
1293
|
+
Add an item to the Later section
|
1294
|
+
|
1295
|
+
|
1296
|
+
===== Options
|
1297
|
+
===== -b|--back|--started DATE_STRING
|
1298
|
+
|
1299
|
+
Backdate start time to date string [4pm|20m|2h|yesterday noon]
|
1300
|
+
|
1301
|
+
[Default Value] None
|
1302
|
+
|
1303
|
+
|
1304
|
+
===== -n|--note TEXT
|
1305
|
+
|
1306
|
+
Note
|
1307
|
+
|
1308
|
+
[Default Value] None
|
1309
|
+
|
1310
|
+
|
1311
|
+
===== --ask
|
1312
|
+
Prompt for note via multi-line input
|
1313
|
+
|
1314
|
+
|
1315
|
+
|
1316
|
+
===== -e|--editor
|
1317
|
+
Edit entry with vim
|
1318
|
+
|
1319
|
+
|
1320
|
+
|
1274
1321
|
==== Command: <tt>mark|flag </tt>
|
1275
1322
|
Mark last entry as flagged
|
1276
1323
|
|
@@ -1374,7 +1421,7 @@ This command makes it easy to start and stop these overarching entries. Just run
|
|
1374
1421
|
big project` to start a @meanwhile entry, add other entries as you work on the project, then use `doing meanwhile` by
|
1375
1422
|
itself to mark the entry as @done.
|
1376
1423
|
===== Options
|
1377
|
-
===== -b|--back|--started DATE_STRING
|
1424
|
+
===== -b|--back|--started|--since DATE_STRING
|
1378
1425
|
|
1379
1426
|
Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]
|
1380
1427
|
|
@@ -1512,7 +1559,7 @@ Run without arguments to create a new entry interactively.
|
|
1512
1559
|
|
1513
1560
|
Run with --editor to create a new entry using vim.
|
1514
1561
|
===== Options
|
1515
|
-
===== -b|--back|--started DATE_STRING
|
1562
|
+
===== -b|--back|--started|--since DATE_STRING
|
1516
1563
|
|
1517
1564
|
Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]
|
1518
1565
|
|
data/lib/completion/_doing.zsh
CHANGED
@@ -27,6 +27,7 @@ function _doing() {
|
|
27
27
|
'help:Shows a list of commands or help for one command'
|
28
28
|
'import:Import entries from an external source'
|
29
29
|
'last:Show the last entry'
|
30
|
+
'later:Add an item to the Later section'
|
30
31
|
'mark:Mark last entry as flagged'
|
31
32
|
'flag:Mark last entry as flagged'
|
32
33
|
'meanwhile:Finish any running @meanwhile tasks and optionally create a new one'
|
@@ -67,10 +68,10 @@ function _doing() {
|
|
67
68
|
|
68
69
|
case $line[1] in
|
69
70
|
again)
|
70
|
-
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--
|
71
|
+
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--since[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" "--bool[Boolean used to combine multiple tags]:BOOLEAN:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--interactive)-i','(-i)--interactive'}"[Select item to resume from a menu of matching entries]" "--in[Add new entry to section]:SECTION_NAME:" {'(--note)-n','(-n)--note'}"[Include a note]:TEXT:" "--not[Repeat items that *don't* match search/tag filters]" {'(--section)-s','(-s)--section'}"[Get last entry from a specific section]:NAME:" "--search[Filter entries using a search query]:QUERY:" "--tag[Filter entries by tag]:TAG:" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
71
72
|
;;
|
72
73
|
resume)
|
73
|
-
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--
|
74
|
+
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--since[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" "--bool[Boolean used to combine multiple tags]:BOOLEAN:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--interactive)-i','(-i)--interactive'}"[Select item to resume from a menu of matching entries]" "--in[Add new entry to section]:SECTION_NAME:" {'(--note)-n','(-n)--note'}"[Include a note]:TEXT:" "--not[Repeat items that *don't* match search/tag filters]" {'(--section)-s','(-s)--section'}"[Get last entry from a specific section]:NAME:" "--search[Filter entries using a search query]:QUERY:" "--tag[Filter entries by tag]:TAG:" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
74
75
|
;;
|
75
76
|
archive)
|
76
77
|
args=( "--after[Archive entries newer than date]:DATE_STRING:" "--before[Archive entries older than date]:DATE_STRING:" "--bool[Boolean used to combine multiple tags]:BOOLEAN:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" "--from[Date range]:DATE_OR_RANGE:" {'(--keep)-k','(-k)--keep'}"[How many items to keep]:X:" "--label[Label moved items with @from(SECTION_NAME)]" "--not[Archive items that *don't* match search/tag filters]" "--search[Filter entries using a search query]:QUERY:" {'(--to)-t','(-t)--to'}"[Move entries to]:SECTION_NAME:" "--tag[Filter entries by tag]:TAG:" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
@@ -103,10 +104,10 @@ function _doing() {
|
|
103
104
|
args=( {'(--dump)-d','(-d)--dump'}"[DEPRECATED]" {'(--update)-u','(-u)--update'}"[DEPRECATED]" )
|
104
105
|
;;
|
105
106
|
done)
|
106
|
-
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" {'(--archive)-a','(-a)--archive'}"[Immediately archive the entry]" "--ask[Prompt for note via multi-line input]" "--finished[Set finish date to specific date/time]:DATE_STRING:" "--
|
107
|
+
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" {'(--archive)-a','(-a)--archive'}"[Immediately archive the entry]" "--ask[Prompt for note via multi-line input]" "--finished[Set finish date to specific date/time]:DATE_STRING:" "--since[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" "--date[Include date]" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" "--from[Start and end times as a date/time range `doing done --from \"1am to 8am\"`]:TIME_RANGE:" {'(--note)-n','(-n)--note'}"[Include a note]:TEXT:" {'(--remove)-r','(-r)--remove'}"[Remove @done tag]" {'(--section)-s','(-s)--section'}"[Section]:NAME:" "--for[Set completion date to start date plus interval]:INTERVAL:" {'(--unfinished)-u','(-u)--unfinished'}"[Finish last entry not already marked @done]" )
|
107
108
|
;;
|
108
109
|
did)
|
109
|
-
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" {'(--archive)-a','(-a)--archive'}"[Immediately archive the entry]" "--ask[Prompt for note via multi-line input]" "--finished[Set finish date to specific date/time]:DATE_STRING:" "--
|
110
|
+
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" {'(--archive)-a','(-a)--archive'}"[Immediately archive the entry]" "--ask[Prompt for note via multi-line input]" "--finished[Set finish date to specific date/time]:DATE_STRING:" "--since[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" "--date[Include date]" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" "--from[Start and end times as a date/time range `doing done --from \"1am to 8am\"`]:TIME_RANGE:" {'(--note)-n','(-n)--note'}"[Include a note]:TEXT:" {'(--remove)-r','(-r)--remove'}"[Remove @done tag]" {'(--section)-s','(-s)--section'}"[Section]:NAME:" "--for[Set completion date to start date plus interval]:INTERVAL:" {'(--unfinished)-u','(-u)--unfinished'}"[Finish last entry not already marked @done]" )
|
110
111
|
;;
|
111
112
|
finish)
|
112
113
|
args=( {'(--archive)-a','(-a)--archive'}"[Archive entries]" "--finished[Set finish date to specific date/time]:DATE_STRING:" "--auto[Auto-generate finish dates from next entry's start time]" "--started[Backdate completed date to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" "--bool[Boolean used to combine multiple tags]:BOOLEAN:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" "--date[Include date]" "--from[Start and end times as a date/time range `doing done --from \"1am to 8am\"`]:TIME_RANGE:" {'(--interactive)-i','(-i)--interactive'}"[Select item(s) to finish from a menu of matching entries]" "--not[Finish items that *don't* match search/tag filters]" {'(--remove)-r','(-r)--remove'}"[Remove @done tag]" {'(--section)-s','(-s)--section'}"[Section]:NAME:" "--search[Filter entries using a search query]:QUERY:" "--for[Set completion date to start date plus interval]:INTERVAL:" "--tag[Filter entries by tag]:TAG:" {'(--unfinished)-u','(-u)--unfinished'}"[Finish last entry]" "--update[Overwrite existing @done tag with new date]" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
@@ -126,6 +127,9 @@ function _doing() {
|
|
126
127
|
last)
|
127
128
|
args=( "--bool[Boolean used to combine multiple tags]:BOOLEAN:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" "--config_template[Output using a template from configuration]:TEMPLATE_KEY:" {'(--delete)-d','(-d)--delete'}"[Delete the last entry]" "--duration[Show elapsed time if entry is not tagged @done]" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--hilite)-h','(-h)--hilite'}"[Highlight search matches in output]" "--not[Show items that *don't* match search/tag filters]" {'(--output)-o','(-o)--output'}"[Output to export format]:FORMAT:" {'(--section)-s','(-s)--section'}"[Specify a section]:NAME:" "--save[Save all current command line options as a new view]:VIEW_NAME:" "--search[Filter entries using a search query]:QUERY:" "--tag[Filter entries by tag]:TAG:" "--template[Override output format with a template string containing %placeholders]:TEMPLATE_STRING:" "--title[Title string to be used for output formats that require it]:TITLE:" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
128
129
|
;;
|
130
|
+
later)
|
131
|
+
args=( "--ask[Prompt for note via multi-line input]" "--started[Backdate start time to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--note)-n','(-n)--note'}"[Note]:TEXT:" )
|
132
|
+
;;
|
129
133
|
mark)
|
130
134
|
args=( "--bool[Boolean used to combine multiple tags]:BOOLEAN:" {'(--count)-c','(-c)--count'}"[How many recent entries to tag]:COUNT:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" {'(--date)-d','(-d)--date'}"[Include current date/time with tag]" "--force[Don't ask permission to flag all entries when count is 0]" {'(--interactive)-i','(-i)--interactive'}"[Select item(s) to flag from a menu of matching entries]" "--not[Flag items that *don't* match search/tag filters]" {'(--remove)-r','(-r)--remove'}"[Remove flag]" {'(--section)-s','(-s)--section'}"[Section]:SECTION_NAME:" "--search[Filter entries using a search query]:QUERY:" "--tag[Filter entries by tag]:TAG:" {'(--unfinished)-u','(-u)--unfinished'}"[Flag last entry]" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
131
135
|
;;
|
@@ -133,16 +137,16 @@ function _doing() {
|
|
133
137
|
args=( "--bool[Boolean used to combine multiple tags]:BOOLEAN:" {'(--count)-c','(-c)--count'}"[How many recent entries to tag]:COUNT:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" {'(--date)-d','(-d)--date'}"[Include current date/time with tag]" "--force[Don't ask permission to flag all entries when count is 0]" {'(--interactive)-i','(-i)--interactive'}"[Select item(s) to flag from a menu of matching entries]" "--not[Flag items that *don't* match search/tag filters]" {'(--remove)-r','(-r)--remove'}"[Remove flag]" {'(--section)-s','(-s)--section'}"[Section]:SECTION_NAME:" "--search[Filter entries using a search query]:QUERY:" "--tag[Filter entries by tag]:TAG:" {'(--unfinished)-u','(-u)--unfinished'}"[Flag last entry]" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
134
138
|
;;
|
135
139
|
meanwhile)
|
136
|
-
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" {'(--archive)-a','(-a)--archive'}"[Archive previous @meanwhile entry]" "--ask[Prompt for note via multi-line input]" "--
|
140
|
+
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" {'(--archive)-a','(-a)--archive'}"[Archive previous @meanwhile entry]" "--ask[Prompt for note via multi-line input]" "--since[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--note)-n','(-n)--note'}"[Include a note]:TEXT:" {'(--section)-s','(-s)--section'}"[Section]:NAME:" )
|
137
141
|
;;
|
138
142
|
note)
|
139
143
|
args=( "--ask[Prompt for note via multi-line input]" "--bool[Boolean used to combine multiple tags]:BOOLEAN:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--interactive)-i','(-i)--interactive'}"[Select item for new note from a menu of matching entries]" "--not[Note items that *don't* match search/tag filters]" {'(--remove)-r','(-r)--remove'}"[Replace/Remove last entry's note]" {'(--section)-s','(-s)--section'}"[Section]:NAME:" "--search[Filter entries using a search query]:QUERY:" "--tag[Filter entries by tag]:TAG:" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
140
144
|
;;
|
141
145
|
now)
|
142
|
-
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--
|
146
|
+
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--since[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--finish_last)-f','(-f)--finish_last'}"[Timed entry]" "--from[Set a start and optionally end time as a date range]:TIME_RANGE:" {'(--note)-n','(-n)--note'}"[Include a note]:TEXT:" {'(--section)-s','(-s)--section'}"[Section]:NAME:" )
|
143
147
|
;;
|
144
148
|
next)
|
145
|
-
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--
|
149
|
+
args=( {'(--noauto)-X','(-X)--noauto'}"[Exclude auto tags and default tags]" "--ask[Prompt for note via multi-line input]" "--since[Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]]:DATE_STRING:" {'(--editor)-e','(-e)--editor'}"[Edit entry with vim]" {'(--finish_last)-f','(-f)--finish_last'}"[Timed entry]" "--from[Set a start and optionally end time as a date range]:TIME_RANGE:" {'(--note)-n','(-n)--note'}"[Include a note]:TEXT:" {'(--section)-s','(-s)--section'}"[Section]:NAME:" )
|
146
150
|
;;
|
147
151
|
on)
|
148
152
|
args=( "--after[View entries after specified time]:TIME_STRING:" "--before[View entries before specified time]:TIME_STRING:" "--bool[Boolean used to combine multiple tags]:BOOLEAN:" "--case[Case sensitivity for search string matching [(c)ase-sensitive]:TYPE:" "--config_template[Output using a template from configuration]:TEMPLATE_KEY:" "--duration[Show elapsed time on entries without @done tag]" "--from[Time range to show `doing on --from \"12pm to 4pm\"`]:TIME_RANGE:" "--not[Show items that *don't* match search/tag filters]" {'(--output)-o','(-o)--output'}"[Output to export format]:FORMAT:" "--only_timed[Only show items with recorded time intervals]" {'(--section)-s','(-s)--section'}"[Section]:NAME:" "--save[Save all current command line options as a new view]:VIEW_NAME:" "--search[Filter entries using a search query]:QUERY:" {'(--times)-t','(-t)--times'}"[Show time intervals on @done tasks]" "--tag[Filter entries by tag]:TAG:" "--tag_order[Tag sort direction]:DIRECTION:" "--tag_sort[Sort tags by]:KEY:" "--template[Override output format with a template string containing %placeholders]:TEMPLATE_STRING:" "--title[Title string to be used for output formats that require it]:TITLE:" "--totals[Show time totals at the end of output]" "--val[Perform a tag value query]:QUERY:" {'(--exact)-x','(-x)--exact'}"[Force exact search string matching]" )
|
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 '--noauto --ask --
|
4
|
+
COMPREPLY=( $( compgen -W '--noauto --ask --since --bool --case --editor --interactive --in --note --not --section --search --tag --val --exact' -- $token ) )
|
5
5
|
elif [[ "$token" == -* ]]; then
|
6
|
-
COMPREPLY=( $( compgen -W '-X -e -i -n -s -x --noauto --ask --
|
6
|
+
COMPREPLY=( $( compgen -W '-X -e -i -n -s -x --noauto --ask --since --bool --case --editor --interactive --in --note --not --section --search --tag --val --exact' -- $token ) )
|
7
7
|
|
8
8
|
fi
|
9
9
|
}
|
@@ -91,9 +91,9 @@ _doing_config() {
|
|
91
91
|
_doing_done() {
|
92
92
|
|
93
93
|
if [[ "$token" == --* ]]; then
|
94
|
-
COMPREPLY=( $( compgen -W '--noauto --archive --ask --finished --
|
94
|
+
COMPREPLY=( $( compgen -W '--noauto --archive --ask --finished --since --date --editor --from --note --remove --section --for --unfinished' -- $token ) )
|
95
95
|
elif [[ "$token" == -* ]]; then
|
96
|
-
COMPREPLY=( $( compgen -W '-X -a -e -n -r -s -u --noauto --archive --ask --finished --
|
96
|
+
COMPREPLY=( $( compgen -W '-X -a -e -n -r -s -u --noauto --archive --ask --finished --since --date --editor --from --note --remove --section --for --unfinished' -- $token ) )
|
97
97
|
|
98
98
|
fi
|
99
99
|
}
|
@@ -148,6 +148,16 @@ _doing_last() {
|
|
148
148
|
fi
|
149
149
|
}
|
150
150
|
|
151
|
+
_doing_later() {
|
152
|
+
|
153
|
+
if [[ "$token" == --* ]]; then
|
154
|
+
COMPREPLY=( $( compgen -W '--ask --started --editor --note' -- $token ) )
|
155
|
+
elif [[ "$token" == -* ]]; then
|
156
|
+
COMPREPLY=( $( compgen -W '-e -n --ask --started --editor --note' -- $token ) )
|
157
|
+
|
158
|
+
fi
|
159
|
+
}
|
160
|
+
|
151
161
|
_doing_mark() {
|
152
162
|
|
153
163
|
if [[ "$token" == --* ]]; then
|
@@ -161,9 +171,9 @@ _doing_mark() {
|
|
161
171
|
_doing_meanwhile() {
|
162
172
|
|
163
173
|
if [[ "$token" == --* ]]; then
|
164
|
-
COMPREPLY=( $( compgen -W '--noauto --archive --ask --
|
174
|
+
COMPREPLY=( $( compgen -W '--noauto --archive --ask --since --editor --note --section' -- $token ) )
|
165
175
|
elif [[ "$token" == -* ]]; then
|
166
|
-
COMPREPLY=( $( compgen -W '-X -a -e -n -s --noauto --archive --ask --
|
176
|
+
COMPREPLY=( $( compgen -W '-X -a -e -n -s --noauto --archive --ask --since --editor --note --section' -- $token ) )
|
167
177
|
|
168
178
|
fi
|
169
179
|
}
|
@@ -181,9 +191,9 @@ _doing_note() {
|
|
181
191
|
_doing_now() {
|
182
192
|
|
183
193
|
if [[ "$token" == --* ]]; then
|
184
|
-
COMPREPLY=( $( compgen -W '--noauto --ask --
|
194
|
+
COMPREPLY=( $( compgen -W '--noauto --ask --since --editor --finish_last --from --note --section' -- $token ) )
|
185
195
|
elif [[ "$token" == -* ]]; then
|
186
|
-
COMPREPLY=( $( compgen -W '-X -e -f -n -s --noauto --ask --
|
196
|
+
COMPREPLY=( $( compgen -W '-X -e -f -n -s --noauto --ask --since --editor --finish_last --from --note --section' -- $token ) )
|
187
197
|
|
188
198
|
fi
|
189
199
|
}
|
@@ -456,6 +466,7 @@ _doing()
|
|
456
466
|
elif [[ $last =~ (help) ]]; then _doing_help
|
457
467
|
elif [[ $last =~ (import) ]]; then _doing_import
|
458
468
|
elif [[ $last =~ (last) ]]; then _doing_last
|
469
|
+
elif [[ $last =~ (later) ]]; then _doing_later
|
459
470
|
elif [[ $last =~ (mark|flag) ]]; then _doing_mark
|
460
471
|
elif [[ $last =~ (meanwhile) ]]; then _doing_meanwhile
|
461
472
|
elif [[ $last =~ (note) ]]; then _doing_note
|
data/lib/completion/doing.fish
CHANGED
@@ -150,6 +150,7 @@ complete -xc doing -n '__fish_doing_needs_command' -a 'grep search' -d Search\ f
|
|
150
150
|
complete -xc doing -n '__fish_doing_needs_command' -a 'help' -d Shows\ a\ list\ of\ commands\ or\ help\ for\ one\ command
|
151
151
|
complete -xc doing -n '__fish_doing_needs_command' -a 'import' -d Import\ entries\ from\ an\ external\ source
|
152
152
|
complete -xc doing -n '__fish_doing_needs_command' -a 'last' -d Show\ the\ last\ entry
|
153
|
+
complete -xc doing -n '__fish_doing_needs_command' -a 'later' -d Add\ an\ item\ to\ the\ Later\ section
|
153
154
|
complete -xc doing -n '__fish_doing_needs_command' -a 'mark flag' -d Mark\ last\ entry\ as\ flagged
|
154
155
|
complete -xc doing -n '__fish_doing_needs_command' -a 'meanwhile' -d Finish\ any\ running\ @meanwhile\ tasks\ and\ optionally\ create\ a\ new\ one
|
155
156
|
complete -xc doing -n '__fish_doing_needs_command' -a 'note' -d Add\ a\ note\ to\ the\ last\ entry
|
@@ -179,7 +180,7 @@ complete -xc doing -n '__fish_doing_needs_command' -a 'wiki' -d Output\ a\ tag\
|
|
179
180
|
complete -xc doing -n '__fish_doing_needs_command' -a 'yesterday' -d List\ entries\ from\ yesterday
|
180
181
|
complete -c doing -l noauto -s X -f -n '__fish_doing_using_command again resume' -d Exclude\ auto\ tags\ and\ default\ tags
|
181
182
|
complete -c doing -l ask -f -n '__fish_doing_using_command again resume' -d Prompt\ for\ note\ via\ multi-line\ input
|
182
|
-
complete -c doing -l
|
183
|
+
complete -c doing -l since -f -r -n '__fish_doing_using_command again resume' -d Backdate\ start\ date\ for\ new\ entry\ to\ date\ string\ \[4pm\|20m\|2h\|yesterday\ noon\]
|
183
184
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command again resume' -d Boolean\ used\ to\ combine\ multiple\ tags
|
184
185
|
complete -c doing -l case -f -r -n '__fish_doing_using_command again resume' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
185
186
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command again resume' -d Edit\ entry\ with\ vim
|
@@ -241,7 +242,7 @@ complete -c doing -l noauto -s X -f -n '__fish_doing_using_command done did' -d
|
|
241
242
|
complete -c doing -l archive -s a -f -n '__fish_doing_using_command done did' -d Immediately\ archive\ the\ entry
|
242
243
|
complete -c doing -l ask -f -n '__fish_doing_using_command done did' -d Prompt\ for\ note\ via\ multi-line\ input
|
243
244
|
complete -c doing -l finished -f -r -n '__fish_doing_using_command done did' -d Set\ finish\ date\ to\ specific\ date/time
|
244
|
-
complete -c doing -l
|
245
|
+
complete -c doing -l since -f -r -n '__fish_doing_using_command done did' -d Backdate\ start\ date\ for\ new\ entry\ to\ date\ string\ \[4pm\|20m\|2h\|yesterday\ noon\]
|
245
246
|
complete -c doing -l date -f -n '__fish_doing_using_command done did' -d Include\ date
|
246
247
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command done did' -d Edit\ entry\ with\ vim
|
247
248
|
complete -c doing -l from -f -r -n '__fish_doing_using_command done did' -d Start\ and\ end\ times\ as\ a\ date/time\ range\ \`doing\ done\ --from\ \"1am\ to\ 8am\"\`
|
@@ -326,6 +327,10 @@ complete -c doing -l template -f -r -n '__fish_doing_using_command last' -d Ove
|
|
326
327
|
complete -c doing -l title -f -r -n '__fish_doing_using_command last' -d Title\ string\ to\ be\ used\ for\ output\ formats\ that\ require\ it
|
327
328
|
complete -c doing -l val -f -r -n '__fish_doing_using_command last' -d Perform\ a\ tag\ value\ query
|
328
329
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command last' -d Force\ exact\ search\ string\ matching
|
330
|
+
complete -c doing -l ask -f -n '__fish_doing_using_command later' -d Prompt\ for\ note\ via\ multi-line\ input
|
331
|
+
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\]
|
332
|
+
complete -c doing -l editor -s e -f -n '__fish_doing_using_command later' -d Edit\ entry\ with\ vim
|
333
|
+
complete -c doing -l note -s n -f -r -n '__fish_doing_using_command later' -d Note
|
329
334
|
complete -c doing -l bool -f -r -n '__fish_doing_using_command mark flag' -d Boolean\ used\ to\ combine\ multiple\ tags
|
330
335
|
complete -c doing -l count -s c -f -r -n '__fish_doing_using_command mark flag' -d How\ many\ recent\ entries\ to\ tag
|
331
336
|
complete -c doing -l case -f -r -n '__fish_doing_using_command mark flag' -d Case\ sensitivity\ for\ search\ string\ matching\ \[\(c\)ase-sensitive
|
@@ -343,7 +348,7 @@ complete -c doing -l exact -s x -f -n '__fish_doing_using_command mark flag' -d
|
|
343
348
|
complete -c doing -l noauto -s X -f -n '__fish_doing_using_command meanwhile' -d Exclude\ auto\ tags\ and\ default\ tags
|
344
349
|
complete -c doing -l archive -s a -f -n '__fish_doing_using_command meanwhile' -d Archive\ previous\ @meanwhile\ entry
|
345
350
|
complete -c doing -l ask -f -n '__fish_doing_using_command meanwhile' -d Prompt\ for\ note\ via\ multi-line\ input
|
346
|
-
complete -c doing -l
|
351
|
+
complete -c doing -l since -f -r -n '__fish_doing_using_command meanwhile' -d Backdate\ start\ date\ for\ new\ entry\ to\ date\ string\ \[4pm\|20m\|2h\|yesterday\ noon\]
|
347
352
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command meanwhile' -d Edit\ entry\ with\ vim
|
348
353
|
complete -c doing -l note -s n -f -r -n '__fish_doing_using_command meanwhile' -d Include\ a\ note
|
349
354
|
complete -c doing -l section -s s -f -r -n '__fish_doing_using_command meanwhile' -d Section
|
@@ -361,7 +366,7 @@ complete -c doing -l val -f -r -n '__fish_doing_using_command note' -d Perform\
|
|
361
366
|
complete -c doing -l exact -s x -f -n '__fish_doing_using_command note' -d Force\ exact\ search\ string\ matching
|
362
367
|
complete -c doing -l noauto -s X -f -n '__fish_doing_using_command now next' -d Exclude\ auto\ tags\ and\ default\ tags
|
363
368
|
complete -c doing -l ask -f -n '__fish_doing_using_command now next' -d Prompt\ for\ note\ via\ multi-line\ input
|
364
|
-
complete -c doing -l
|
369
|
+
complete -c doing -l since -f -r -n '__fish_doing_using_command now next' -d Backdate\ start\ date\ for\ new\ entry\ to\ date\ string\ \[4pm\|20m\|2h\|yesterday\ noon\]
|
365
370
|
complete -c doing -l editor -s e -f -n '__fish_doing_using_command now next' -d Edit\ entry\ with\ vim
|
366
371
|
complete -c doing -l finish_last -s f -f -n '__fish_doing_using_command now next' -d Timed\ entry
|
367
372
|
complete -c doing -l from -f -r -n '__fish_doing_using_command now next' -d Set\ a\ start\ and\ optionally\ end\ time\ as\ a\ date\ range
|
data/lib/completion/doing.ts
CHANGED
@@ -19,7 +19,7 @@ const completionSpec: Fig.Spec = {
|
|
19
19
|
},
|
20
20
|
|
21
21
|
{
|
22
|
-
name: ["--
|
22
|
+
name: ["--since"],
|
23
23
|
description: "Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]",
|
24
24
|
args: {
|
25
25
|
name: "DATE_STRING",
|
@@ -153,7 +153,7 @@ const completionSpec: Fig.Spec = {
|
|
153
153
|
},
|
154
154
|
|
155
155
|
{
|
156
|
-
name: ["--
|
156
|
+
name: ["--since"],
|
157
157
|
description: "Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]",
|
158
158
|
args: {
|
159
159
|
name: "DATE_STRING",
|
@@ -947,7 +947,7 @@ const completionSpec: Fig.Spec = {
|
|
947
947
|
},
|
948
948
|
|
949
949
|
{
|
950
|
-
name: ["--
|
950
|
+
name: ["--since"],
|
951
951
|
description: "Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]",
|
952
952
|
args: {
|
953
953
|
name: "DATE_STRING",
|
@@ -1057,7 +1057,7 @@ const completionSpec: Fig.Spec = {
|
|
1057
1057
|
},
|
1058
1058
|
|
1059
1059
|
{
|
1060
|
-
name: ["--
|
1060
|
+
name: ["--since"],
|
1061
1061
|
description: "Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]",
|
1062
1062
|
args: {
|
1063
1063
|
name: "DATE_STRING",
|
@@ -2023,6 +2023,46 @@ const completionSpec: Fig.Spec = {
|
|
2023
2023
|
|
2024
2024
|
},
|
2025
2025
|
|
2026
|
+
{
|
2027
|
+
name: "later",
|
2028
|
+
description: "Add an item to the Later section",
|
2029
|
+
options: [
|
2030
|
+
{
|
2031
|
+
name: ["--ask"],
|
2032
|
+
description: "Prompt for note via multi-line input",
|
2033
|
+
|
2034
|
+
},
|
2035
|
+
|
2036
|
+
{
|
2037
|
+
name: ["--started"],
|
2038
|
+
description: "Backdate start time to date string [4pm|20m|2h|yesterday noon]",
|
2039
|
+
args: {
|
2040
|
+
name: "DATE_STRING",
|
2041
|
+
description: "DATE_STRING",
|
2042
|
+
},
|
2043
|
+
|
2044
|
+
},
|
2045
|
+
|
2046
|
+
{
|
2047
|
+
name: ["-e", "--editor"],
|
2048
|
+
description: "Edit entry with vim",
|
2049
|
+
|
2050
|
+
},
|
2051
|
+
|
2052
|
+
{
|
2053
|
+
name: ["-n", "--note"],
|
2054
|
+
description: "Note",
|
2055
|
+
args: {
|
2056
|
+
name: "TEXT",
|
2057
|
+
description: "TEXT",
|
2058
|
+
},
|
2059
|
+
|
2060
|
+
},
|
2061
|
+
|
2062
|
+
],
|
2063
|
+
|
2064
|
+
},
|
2065
|
+
|
2026
2066
|
{
|
2027
2067
|
name: "mark",
|
2028
2068
|
description: "Mark last entry as flagged",
|
@@ -2286,7 +2326,7 @@ const completionSpec: Fig.Spec = {
|
|
2286
2326
|
},
|
2287
2327
|
|
2288
2328
|
{
|
2289
|
-
name: ["--
|
2329
|
+
name: ["--since"],
|
2290
2330
|
description: "Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]",
|
2291
2331
|
args: {
|
2292
2332
|
name: "DATE_STRING",
|
@@ -2446,7 +2486,7 @@ const completionSpec: Fig.Spec = {
|
|
2446
2486
|
},
|
2447
2487
|
|
2448
2488
|
{
|
2449
|
-
name: ["--
|
2489
|
+
name: ["--since"],
|
2450
2490
|
description: "Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]",
|
2451
2491
|
args: {
|
2452
2492
|
name: "DATE_STRING",
|
@@ -2518,7 +2558,7 @@ const completionSpec: Fig.Spec = {
|
|
2518
2558
|
},
|
2519
2559
|
|
2520
2560
|
{
|
2521
|
-
name: ["--
|
2561
|
+
name: ["--since"],
|
2522
2562
|
description: "Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]",
|
2523
2563
|
args: {
|
2524
2564
|
name: "DATE_STRING",
|
data/lib/doing/add_options.rb
CHANGED
@@ -80,7 +80,7 @@ def add_options(type, cmd, default_template: 'default')
|
|
80
80
|
|
81
81
|
cmd.desc 'Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]'
|
82
82
|
cmd.arg_name 'DATE_STRING'
|
83
|
-
cmd.flag %i[b back started], type: DateBeginString
|
83
|
+
cmd.flag %i[b back started since], type: DateBeginString
|
84
84
|
when :finish_entry
|
85
85
|
cmd.desc %(Set finish date to specific date/time (natural langauge parsed, e.g. --at=1:30pm).
|
86
86
|
Used with --took, backdates start date)
|
data/lib/doing/normalize.rb
CHANGED
@@ -26,6 +26,26 @@ module Doing
|
|
26
26
|
replace normalize_tag_sort(default)
|
27
27
|
end
|
28
28
|
|
29
|
+
##
|
30
|
+
## Normalize list output style
|
31
|
+
##
|
32
|
+
## @param default The default
|
33
|
+
##
|
34
|
+
## @return [Symbol] :comma, :column, :tab, :space
|
35
|
+
##
|
36
|
+
def normalize_list_style(default = :space)
|
37
|
+
case self
|
38
|
+
when /^com/i
|
39
|
+
:comma
|
40
|
+
when /^c/i
|
41
|
+
:column
|
42
|
+
when /^t/i
|
43
|
+
:tab
|
44
|
+
else
|
45
|
+
:space
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
29
49
|
##
|
30
50
|
## Convert an age string to a qualified type
|
31
51
|
##
|
data/lib/doing/prompt/choose.rb
CHANGED
@@ -17,7 +17,7 @@ module Doing
|
|
17
17
|
def choose_from(options, prompt: 'Make a selection: ', multiple: false, sorted: true, fzf_args: [])
|
18
18
|
return nil unless $stdout.isatty
|
19
19
|
|
20
|
-
# fzf_args << '-1' # User is expecting a menu, and even if only one it
|
20
|
+
# fzf_args << '-1' # User is expecting a menu, and even if only one it serves as confirmation
|
21
21
|
default_args = []
|
22
22
|
default_args << %(--prompt="#{prompt}")
|
23
23
|
default_args << "--height=#{options.count + 2}"
|
data/lib/doing/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: doing
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.
|
4
|
+
version: 2.1.72
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brett Terpstra
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: github-markup
|