doing 2.1.21 → 2.1.25
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.
- 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 +51 -13
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/Rakefile +6 -3
- data/bin/doing +254 -103
- data/docs/doc/Array.html +74 -34
- data/docs/doc/BooleanTermParser/Clause.html +5 -5
- data/docs/doc/BooleanTermParser/Operator.html +4 -4
- data/docs/doc/BooleanTermParser/Query.html +8 -8
- data/docs/doc/BooleanTermParser/QueryParser.html +2 -2
- data/docs/doc/BooleanTermParser/QueryTransformer.html +2 -2
- data/docs/doc/BooleanTermParser.html +1 -1
- data/docs/doc/Doing/Color.html +4 -4
- data/docs/doc/Doing/Completion.html +2 -2
- data/docs/doc/Doing/Configuration.html +16 -18
- data/docs/doc/Doing/Errors/DoingNoTraceError.html +2 -2
- data/docs/doc/Doing/Errors/DoingRuntimeError.html +2 -2
- data/docs/doc/Doing/Errors/DoingStandardError.html +2 -2
- data/docs/doc/Doing/Errors/EmptyInput.html +2 -2
- data/docs/doc/Doing/Errors/NoResults.html +2 -2
- data/docs/doc/Doing/Errors/PluginException.html +3 -3
- data/docs/doc/Doing/Errors/UserCancelled.html +2 -2
- data/docs/doc/Doing/Errors/WrongCommand.html +2 -2
- data/docs/doc/Doing/Errors.html +1 -1
- data/docs/doc/Doing/Hooks.html +6 -6
- data/docs/doc/Doing/Item.html +50 -16
- data/docs/doc/Doing/Items.html +10 -10
- data/docs/doc/Doing/LogAdapter.html +24 -24
- data/docs/doc/Doing/Note.html +7 -7
- data/docs/doc/Doing/Pager.html +4 -4
- data/docs/doc/Doing/Plugins.html +7 -7
- data/docs/doc/Doing/Prompt.html +16 -16
- data/docs/doc/Doing/Section.html +6 -6
- data/docs/doc/Doing/TemplateString.html +8 -8
- data/docs/doc/Doing/Types.html +206 -0
- data/docs/doc/Doing/Util/Backup.html +10 -10
- data/docs/doc/Doing/Util.html +16 -19
- data/docs/doc/Doing/WWID.html +65 -53
- data/docs/doc/Doing.html +4 -4
- data/docs/doc/GLI/Commands/Help.html +185 -0
- data/docs/doc/GLI/Commands/MarkdownDocumentListener.html +17 -17
- data/docs/doc/GLI/Commands.html +5 -3
- data/docs/doc/GLI.html +4 -2
- data/docs/doc/Hash.html +119 -21
- data/docs/doc/Numeric.html +5 -5
- data/docs/doc/PhraseParser/Operator.html +4 -4
- data/docs/doc/PhraseParser/PhraseClause.html +5 -5
- data/docs/doc/PhraseParser/Query.html +10 -10
- data/docs/doc/PhraseParser/QueryParser.html +2 -2
- data/docs/doc/PhraseParser/QueryTransformer.html +2 -2
- data/docs/doc/PhraseParser/TermClause.html +5 -5
- data/docs/doc/PhraseParser.html +1 -1
- data/docs/doc/Status.html +7 -7
- data/docs/doc/String.html +206 -51
- data/docs/doc/Symbol.html +8 -8
- data/docs/doc/Time.html +6 -6
- data/docs/doc/_index.html +51 -14
- data/docs/doc/class_list.html +1 -1
- data/docs/doc/file.README.html +2 -2
- data/docs/doc/index.html +2 -2
- data/docs/doc/method_list.html +348 -252
- data/docs/doc/top-level-namespace.html +2 -93
- data/docs/index.md +1 -1
- data/doing.rdoc +177 -20
- data/example_plugin.rb +2 -2
- data/lib/completion/_doing.zsh +24 -24
- data/lib/completion/doing.bash +31 -20
- data/lib/completion/doing.fish +32 -10
- 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 +2 -1
- data/lib/doing/configuration.rb +20 -14
- data/lib/doing/good.rb +64 -0
- data/lib/doing/hash.rb +28 -5
- data/lib/doing/help_monkey_patch.rb +31 -0
- data/lib/doing/hooks.rb +8 -4
- data/lib/doing/item.rb +24 -35
- data/lib/doing/log_adapter.rb +1 -1
- data/lib/doing/pager.rb +1 -1
- data/lib/doing/plugins/export/template_export.rb +9 -3
- data/lib/doing/plugins/import/calendar_import.rb +1 -1
- data/lib/doing/plugins/import/doing_import.rb +1 -1
- data/lib/doing/plugins/import/timing_import.rb +1 -1
- data/lib/doing/prompt.rb +4 -2
- data/lib/doing/string.rb +30 -12
- data/lib/doing/string_chronify.rb +1 -1
- data/lib/doing/template_string.rb +9 -2
- data/lib/doing/types.rb +23 -16
- data/lib/doing/util.rb +12 -11
- data/lib/doing/version.rb +1 -1
- data/lib/doing/wwid.rb +65 -46
- data/lib/doing.rb +3 -0
- data/lib/helpers/threaded_tests.rb +106 -99
- data/lib/helpers/threaded_tests_string.rb +50 -0
- metadata +12 -2
|
@@ -86,102 +86,11 @@
|
|
|
86
86
|
|
|
87
87
|
|
|
88
88
|
|
|
89
|
-
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Array.html" title="Array (class)">Array</a></span>, <span class='object_link'><a href="Hash.html" title="Hash (class)">Hash</a></span>, <span class='object_link'><a href="Numeric.html" title="Numeric (class)">Numeric</a></span>, <span class='object_link'><a href="String.html" title="String (class)">String</a></span>, <span class='object_link'><a href="Symbol.html" title="Symbol (class)">Symbol</a></span>, <span class='object_link'><a href="Time.html" title="Time (class)">Time</a></span>
|
|
89
|
+
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Array.html" title="Array (class)">Array</a></span>, <span class='object_link'><a href="FalseClass.html" title="FalseClass (class)">FalseClass</a></span>, <span class='object_link'><a href="Hash.html" title="Hash (class)">Hash</a></span>, <span class='object_link'><a href="Numeric.html" title="Numeric (class)">Numeric</a></span>, <span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span>, <span class='object_link'><a href="String.html" title="String (class)">String</a></span>, <span class='object_link'><a href="Symbol.html" title="Symbol (class)">Symbol</a></span>, <span class='object_link'><a href="Time.html" title="Time (class)">Time</a></span>, <span class='object_link'><a href="TrueClass.html" title="TrueClass (class)">TrueClass</a></span>
|
|
90
90
|
|
|
91
91
|
|
|
92
92
|
</p>
|
|
93
93
|
|
|
94
|
-
|
|
95
|
-
<h2>
|
|
96
|
-
Constant Summary
|
|
97
|
-
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
|
|
98
|
-
</h2>
|
|
99
|
-
|
|
100
|
-
<dl class="constants">
|
|
101
|
-
|
|
102
|
-
<dt id="REGEX_BOOL-constant" class="">REGEX_BOOL =
|
|
103
|
-
|
|
104
|
-
</dt>
|
|
105
|
-
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(?:and|all|any|or|not|none|p(?:at(?:tern)?)?)$</span><span class='regexp_end'>/i</span></span></pre></dd>
|
|
106
|
-
|
|
107
|
-
<dt id="REGEX_SORT_ORDER-constant" class="">REGEX_SORT_ORDER =
|
|
108
|
-
|
|
109
|
-
</dt>
|
|
110
|
-
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(?:a(?:sc)?|d(?:esc)?)$</span><span class='regexp_end'>/i</span></span></pre></dd>
|
|
111
|
-
|
|
112
|
-
<dt id="REGEX_VALUE_QUERY-constant" class="">REGEX_VALUE_QUERY =
|
|
113
|
-
|
|
114
|
-
</dt>
|
|
115
|
-
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(?:!)?@?(?:\S+) +(?:!?[<>=][=*]?|[$*^]=) +(?:.*?)$</span><span class='regexp_end'>/</span></span></pre></dd>
|
|
116
|
-
|
|
117
|
-
<dt id="REGEX_CLOCK-constant" class="">REGEX_CLOCK =
|
|
118
|
-
|
|
119
|
-
</dt>
|
|
120
|
-
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>(?:\d{1,2}+(?::\d{1,2}+)?(?: *(?:am|pm))?|midnight|noon)</span><span class='tstring_end'>'</span></span></pre></dd>
|
|
121
|
-
|
|
122
|
-
<dt id="REGEX_TIME-constant" class="">REGEX_TIME =
|
|
123
|
-
|
|
124
|
-
</dt>
|
|
125
|
-
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="top-level-namespace.html#REGEX_CLOCK-constant" title="REGEX_CLOCK (constant)">REGEX_CLOCK</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>$</span><span class='regexp_end'>/i</span></span></pre></dd>
|
|
126
|
-
|
|
127
|
-
<dt id="REGEX_DAY-constant" class="">REGEX_DAY =
|
|
128
|
-
|
|
129
|
-
</dt>
|
|
130
|
-
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(mon|tue|wed|thur?|fri|sat|sun)(\w+(day)?)?$</span><span class='regexp_end'>/i</span></span></pre></dd>
|
|
131
|
-
|
|
132
|
-
<dt id="REGEX_RANGE_INDICATOR-constant" class="">REGEX_RANGE_INDICATOR =
|
|
133
|
-
|
|
134
|
-
</dt>
|
|
135
|
-
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'> +(?:to|through|thru|(?:un)?til|-+) +</span><span class='tstring_end'>'</span></span></pre></dd>
|
|
136
|
-
|
|
137
|
-
<dt id="REGEX_RANGE-constant" class="">REGEX_RANGE =
|
|
138
|
-
|
|
139
|
-
</dt>
|
|
140
|
-
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\S+</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="top-level-namespace.html#REGEX_RANGE_INDICATOR-constant" title="REGEX_RANGE_INDICATOR (constant)">REGEX_RANGE_INDICATOR</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>+\S+</span><span class='regexp_end'>/i</span></span></pre></dd>
|
|
141
|
-
|
|
142
|
-
<dt id="REGEX_TIME_RANGE-constant" class="">REGEX_TIME_RANGE =
|
|
143
|
-
|
|
144
|
-
</dt>
|
|
145
|
-
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="top-level-namespace.html#REGEX_CLOCK-constant" title="REGEX_CLOCK (constant)">REGEX_CLOCK</a></span></span><span class='embexpr_end'>}</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="top-level-namespace.html#REGEX_RANGE_INDICATOR-constant" title="REGEX_RANGE_INDICATOR (constant)">REGEX_RANGE_INDICATOR</a></span></span><span class='embexpr_end'>}</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="top-level-namespace.html#REGEX_CLOCK-constant" title="REGEX_CLOCK (constant)">REGEX_CLOCK</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>$</span><span class='regexp_end'>/i</span></span></pre></dd>
|
|
146
|
-
|
|
147
|
-
<dt id="InvalidExportType-constant" class="">InvalidExportType =
|
|
148
|
-
|
|
149
|
-
</dt>
|
|
150
|
-
<dd><pre class="code"><span class='const'>Class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>RuntimeError</span><span class='rparen'>)</span></pre></dd>
|
|
151
|
-
|
|
152
|
-
<dt id="MissingConfigFile-constant" class="">MissingConfigFile =
|
|
153
|
-
|
|
154
|
-
</dt>
|
|
155
|
-
<dd><pre class="code"><span class='const'>Class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>RuntimeError</span><span class='rparen'>)</span></pre></dd>
|
|
156
|
-
|
|
157
|
-
<dt id="TagArray-constant" class="">TagArray =
|
|
158
|
-
|
|
159
|
-
</dt>
|
|
160
|
-
<dd><pre class="code"><span class='const'>Class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="Array.html" title="Array (class)">Array</a></span></span><span class='rparen'>)</span></pre></dd>
|
|
161
|
-
|
|
162
|
-
<dt id="DateBeginString-constant" class="">DateBeginString =
|
|
163
|
-
|
|
164
|
-
</dt>
|
|
165
|
-
<dd><pre class="code"><span class='const'>Class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>DateTime</span><span class='rparen'>)</span></pre></dd>
|
|
166
|
-
|
|
167
|
-
<dt id="DateEndString-constant" class="">DateEndString =
|
|
168
|
-
|
|
169
|
-
</dt>
|
|
170
|
-
<dd><pre class="code"><span class='const'>Class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>DateTime</span><span class='rparen'>)</span></pre></dd>
|
|
171
|
-
|
|
172
|
-
<dt id="DateRangeString-constant" class="">DateRangeString =
|
|
173
|
-
|
|
174
|
-
</dt>
|
|
175
|
-
<dd><pre class="code"><span class='const'>Class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="Array.html" title="Array (class)">Array</a></span></span><span class='rparen'>)</span></pre></dd>
|
|
176
|
-
|
|
177
|
-
<dt id="DateIntervalString-constant" class="">DateIntervalString =
|
|
178
|
-
|
|
179
|
-
</dt>
|
|
180
|
-
<dd><pre class="code"><span class='const'>Class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>DateTime</span><span class='rparen'>)</span></pre></dd>
|
|
181
|
-
|
|
182
|
-
</dl>
|
|
183
|
-
|
|
184
|
-
|
|
185
94
|
|
|
186
95
|
|
|
187
96
|
|
|
@@ -193,7 +102,7 @@
|
|
|
193
102
|
</div>
|
|
194
103
|
|
|
195
104
|
<div id="footer">
|
|
196
|
-
Generated on
|
|
105
|
+
Generated on Sun Jan 23 09:24:04 2022 by
|
|
197
106
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
198
107
|
0.9.27 (ruby-3.0.1).
|
|
199
108
|
</div>
|
data/docs/index.md
CHANGED
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.25
|
|
9
9
|
|
|
10
10
|
=== Global Options
|
|
11
11
|
=== --config_file arg
|
|
@@ -32,7 +32,7 @@ Verbose output
|
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
35
|
-
=== --
|
|
35
|
+
=== --default
|
|
36
36
|
Answer yes/no menus with default option
|
|
37
37
|
|
|
38
38
|
|
|
@@ -165,7 +165,7 @@ Prompt for note via multi-line input
|
|
|
165
165
|
|
|
166
166
|
|
|
167
167
|
===== -e|--editor
|
|
168
|
-
Edit duplicated entry with vim before adding
|
|
168
|
+
Edit duplicated entry with /opt/homebrew/bin/vim before adding
|
|
169
169
|
|
|
170
170
|
|
|
171
171
|
|
|
@@ -403,10 +403,37 @@ Force exact search string matching (case sensitive)
|
|
|
403
403
|
|
|
404
404
|
|
|
405
405
|
|
|
406
|
-
==== Command: <tt>changelog
|
|
406
|
+
==== Command: <tt>changes|changelog </tt>
|
|
407
407
|
List recent changes in Doing
|
|
408
408
|
|
|
409
|
-
Display a formatted list of changes in recent versions
|
|
409
|
+
Display a formatted list of changes in recent versions.
|
|
410
|
+
|
|
411
|
+
Without flags, displays only the most recent version.
|
|
412
|
+
Use --lookup or --all for history.
|
|
413
|
+
===== Options
|
|
414
|
+
===== -l|--lookup VERSION
|
|
415
|
+
|
|
416
|
+
Look up a specific version. Specify versions as "MAJ.MIN.PATCH", MIN
|
|
417
|
+
and PATCH are optional. Use > or < to see all changes since or prior
|
|
418
|
+
to a version.
|
|
419
|
+
|
|
420
|
+
[Default Value] None
|
|
421
|
+
[Must Match] (?-mix:^(?:(?:(?:[<>=]|p(?:rior)|b(?:efore)|o(?:lder)|s(?:ince)|a(?:fter)|n(?:ewer))? *[\d.*?]+ *)+|(?:[\d.]+ *-+ *[\d.]+))$)
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
===== -s|--search arg
|
|
425
|
+
|
|
426
|
+
Show changelogs matching search terms (uses pattern-based searching).
|
|
427
|
+
Add slashes to search with regular expressions, e.g. `--search "/output.*flag/"`
|
|
428
|
+
|
|
429
|
+
[Default Value] None
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
===== -a|--all
|
|
433
|
+
Display all versions
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
|
|
410
437
|
==== Command: <tt>choose </tt>
|
|
411
438
|
Select a section to display from a menu
|
|
412
439
|
|
|
@@ -528,7 +555,7 @@ Update default config file, adding any missing keys
|
|
|
528
555
|
|
|
529
556
|
|
|
530
557
|
[Default Command] edit
|
|
531
|
-
==== Command: <tt>done|did ENTRY</tt>
|
|
558
|
+
==== Command: <tt>done|did [ENTRY]</tt>
|
|
532
559
|
Add a completed item with @done(date). No argument finishes last entry
|
|
533
560
|
|
|
534
561
|
Use this command to add an entry after you've already finished it. It will be immediately marked as @done.
|
|
@@ -598,7 +625,7 @@ Include date
|
|
|
598
625
|
|
|
599
626
|
|
|
600
627
|
===== -e|--editor
|
|
601
|
-
Edit entry with vim (with no arguments, edits the last entry)
|
|
628
|
+
Edit entry with /opt/homebrew/bin/vim (with no arguments, edits the last entry)
|
|
602
629
|
|
|
603
630
|
|
|
604
631
|
|
|
@@ -612,7 +639,7 @@ Finish last entry not already marked @done
|
|
|
612
639
|
|
|
613
640
|
|
|
614
641
|
|
|
615
|
-
==== Command: <tt>finish COUNT</tt>
|
|
642
|
+
==== Command: <tt>finish [COUNT]</tt>
|
|
616
643
|
Mark last X entries as @done
|
|
617
644
|
|
|
618
645
|
Marks the last X entries with a @done tag and current date. Does not alter already completed entries.
|
|
@@ -763,6 +790,13 @@ Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart
|
|
|
763
790
|
[Must Match] (?-mix:^[csi])
|
|
764
791
|
|
|
765
792
|
|
|
793
|
+
===== --config_template TEMPLATE_KEY
|
|
794
|
+
|
|
795
|
+
Output using a template from configuration
|
|
796
|
+
|
|
797
|
+
[Default Value] default
|
|
798
|
+
|
|
799
|
+
|
|
766
800
|
===== --from DATE_OR_RANGE
|
|
767
801
|
|
|
768
802
|
Date range to show, or a single day to filter date on.
|
|
@@ -797,6 +831,13 @@ Sort tags by (name|time)
|
|
|
797
831
|
[Must Match] (?i-mx:^(?:name|time)$)
|
|
798
832
|
|
|
799
833
|
|
|
834
|
+
===== --template TEMPLATE_STRING
|
|
835
|
+
|
|
836
|
+
Override output format with a template string containing %placeholders
|
|
837
|
+
|
|
838
|
+
[Default Value] None
|
|
839
|
+
|
|
840
|
+
|
|
800
841
|
===== --val QUERY
|
|
801
842
|
|
|
802
843
|
Perform a tag value query ("@done > two hours ago" or "@progress < 50"). May be used multiple times, combined with --bool
|
|
@@ -816,7 +857,7 @@ Show elapsed time on entries without @done tag
|
|
|
816
857
|
|
|
817
858
|
|
|
818
859
|
===== -e|--editor
|
|
819
|
-
Edit matching entries with vim
|
|
860
|
+
Edit matching entries with /opt/homebrew/bin/vim
|
|
820
861
|
|
|
821
862
|
|
|
822
863
|
|
|
@@ -983,6 +1024,13 @@ Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart
|
|
|
983
1024
|
[Must Match] (?-mix:^[csi])
|
|
984
1025
|
|
|
985
1026
|
|
|
1027
|
+
===== --config_template TEMPLATE_KEY
|
|
1028
|
+
|
|
1029
|
+
Output using a template from configuration
|
|
1030
|
+
|
|
1031
|
+
[Default Value] last
|
|
1032
|
+
|
|
1033
|
+
|
|
986
1034
|
===== -s|--section NAME
|
|
987
1035
|
|
|
988
1036
|
Specify a section
|
|
@@ -1004,6 +1052,13 @@ Tag filter, combine multiple tags with a comma. Wildcards allowed (*, ?)
|
|
|
1004
1052
|
[Default Value] None
|
|
1005
1053
|
|
|
1006
1054
|
|
|
1055
|
+
===== --template TEMPLATE_STRING
|
|
1056
|
+
|
|
1057
|
+
Override output format with a template string containing %placeholders
|
|
1058
|
+
|
|
1059
|
+
[Default Value] None
|
|
1060
|
+
|
|
1061
|
+
|
|
1007
1062
|
===== --val QUERY
|
|
1008
1063
|
|
|
1009
1064
|
Perform a tag value query ("@done > two hours ago" or "@progress < 50"). May be used multiple times, combined with --bool
|
|
@@ -1023,7 +1078,7 @@ Show elapsed time if entry is not tagged @done
|
|
|
1023
1078
|
|
|
1024
1079
|
|
|
1025
1080
|
===== -e|--editor
|
|
1026
|
-
Edit entry with vim
|
|
1081
|
+
Edit entry with /opt/homebrew/bin/vim
|
|
1027
1082
|
|
|
1028
1083
|
|
|
1029
1084
|
|
|
@@ -1067,7 +1122,7 @@ Prompt for note via multi-line input
|
|
|
1067
1122
|
|
|
1068
1123
|
|
|
1069
1124
|
===== -e|--editor
|
|
1070
|
-
Edit entry with vim
|
|
1125
|
+
Edit entry with /opt/homebrew/bin/vim
|
|
1071
1126
|
|
|
1072
1127
|
|
|
1073
1128
|
|
|
@@ -1165,7 +1220,7 @@ Force exact search string matching (case sensitive)
|
|
|
1165
1220
|
|
|
1166
1221
|
|
|
1167
1222
|
|
|
1168
|
-
==== Command: <tt>meanwhile ENTRY</tt>
|
|
1223
|
+
==== Command: <tt>meanwhile [ENTRY]</tt>
|
|
1169
1224
|
Finish any running @meanwhile tasks and optionally create a new one
|
|
1170
1225
|
|
|
1171
1226
|
The @meanwhile tag allows you to have long-running entries that encompass smaller entries.
|
|
@@ -1205,11 +1260,11 @@ Prompt for note via multi-line input
|
|
|
1205
1260
|
|
|
1206
1261
|
|
|
1207
1262
|
===== -e|--editor
|
|
1208
|
-
Edit entry with vim
|
|
1263
|
+
Edit entry with /opt/homebrew/bin/vim
|
|
1209
1264
|
|
|
1210
1265
|
|
|
1211
1266
|
|
|
1212
|
-
==== Command: <tt>note NOTE_TEXT</tt>
|
|
1267
|
+
==== Command: <tt>note [NOTE_TEXT]</tt>
|
|
1213
1268
|
Add a note to the last entry
|
|
1214
1269
|
|
|
1215
1270
|
If -r is provided with no other arguments, the last note is removed.
|
|
@@ -1269,7 +1324,7 @@ Prompt for note via multi-line input
|
|
|
1269
1324
|
|
|
1270
1325
|
|
|
1271
1326
|
===== -e|--editor
|
|
1272
|
-
Edit entry with vim
|
|
1327
|
+
Edit entry with /opt/homebrew/bin/vim
|
|
1273
1328
|
|
|
1274
1329
|
|
|
1275
1330
|
|
|
@@ -1302,7 +1357,7 @@ A parenthetical at the end of the entry will be converted to a note.
|
|
|
1302
1357
|
|
|
1303
1358
|
Run without arguments to create a new entry interactively.
|
|
1304
1359
|
|
|
1305
|
-
Run with --editor to create a new entry using vim.
|
|
1360
|
+
Run with --editor to create a new entry using /opt/homebrew/bin/vim.
|
|
1306
1361
|
===== Options
|
|
1307
1362
|
===== -b|--back|--started DATE_STRING
|
|
1308
1363
|
|
|
@@ -1311,6 +1366,14 @@ Backdate start time [4pm|20m|2h|"yesterday noon"]
|
|
|
1311
1366
|
[Default Value] None
|
|
1312
1367
|
|
|
1313
1368
|
|
|
1369
|
+
===== --from TIME_RANGE
|
|
1370
|
+
|
|
1371
|
+
Set a start and optionally end time as a date range ("from 1pm to 2:30pm").
|
|
1372
|
+
If an end time is provided, a dated @done tag will be added
|
|
1373
|
+
|
|
1374
|
+
[Default Value] None
|
|
1375
|
+
|
|
1376
|
+
|
|
1314
1377
|
===== -n|--note TEXT
|
|
1315
1378
|
|
|
1316
1379
|
Include a note
|
|
@@ -1331,7 +1394,7 @@ Prompt for note via multi-line input
|
|
|
1331
1394
|
|
|
1332
1395
|
|
|
1333
1396
|
===== -e|--editor
|
|
1334
|
-
Edit entry with vim
|
|
1397
|
+
Edit entry with /opt/homebrew/bin/vim
|
|
1335
1398
|
|
|
1336
1399
|
|
|
1337
1400
|
|
|
@@ -1347,6 +1410,13 @@ Date argument can be natural language. "thursday" would be interpreted as "last
|
|
|
1347
1410
|
and "2d" would be interpreted as "two days ago." If you use "to" or "through" between two dates,
|
|
1348
1411
|
it will create a range.
|
|
1349
1412
|
===== Options
|
|
1413
|
+
===== --config_template TEMPLATE_KEY
|
|
1414
|
+
|
|
1415
|
+
Output using a template from configuration
|
|
1416
|
+
|
|
1417
|
+
[Default Value] default
|
|
1418
|
+
|
|
1419
|
+
|
|
1350
1420
|
===== -o|--output FORMAT
|
|
1351
1421
|
|
|
1352
1422
|
Output to export format (csv|dayone|dayone-days|dayone-entries|doing|html|json|markdown|say|taskpaper|template|timeline|wiki)
|
|
@@ -1369,6 +1439,13 @@ Sort tags by (name|time)
|
|
|
1369
1439
|
[Must Match] (?i-mx:^(?:name|time)$)
|
|
1370
1440
|
|
|
1371
1441
|
|
|
1442
|
+
===== --template TEMPLATE_STRING
|
|
1443
|
+
|
|
1444
|
+
Override output format with a template string containing %placeholders
|
|
1445
|
+
|
|
1446
|
+
[Default Value] None
|
|
1447
|
+
|
|
1448
|
+
|
|
1372
1449
|
===== --[no-]duration
|
|
1373
1450
|
Show elapsed time on entries without @done tag
|
|
1374
1451
|
|
|
@@ -1388,7 +1465,7 @@ Show time totals at the end of output
|
|
|
1388
1465
|
Open the "doing" file in an editor
|
|
1389
1466
|
|
|
1390
1467
|
`doing open` defaults to using the editors->doing_file setting
|
|
1391
|
-
in /Users/ttscoff/.config/doing/config.yml (
|
|
1468
|
+
in /Users/ttscoff/.config/doing/config.yml (/opt/homebrew/bin/vim).
|
|
1392
1469
|
===== Options
|
|
1393
1470
|
===== -a|--app APP_NAME
|
|
1394
1471
|
|
|
@@ -1438,6 +1515,13 @@ List recent entries
|
|
|
1438
1515
|
|
|
1439
1516
|
|
|
1440
1517
|
===== Options
|
|
1518
|
+
===== --config_template TEMPLATE_KEY
|
|
1519
|
+
|
|
1520
|
+
Output using a template from configuration
|
|
1521
|
+
|
|
1522
|
+
[Default Value] recent
|
|
1523
|
+
|
|
1524
|
+
|
|
1441
1525
|
===== -s|--section NAME
|
|
1442
1526
|
|
|
1443
1527
|
Section
|
|
@@ -1453,6 +1537,13 @@ Sort tags by (name|time)
|
|
|
1453
1537
|
[Must Match] (?i-mx:^(?:name|time)$)
|
|
1454
1538
|
|
|
1455
1539
|
|
|
1540
|
+
===== --template TEMPLATE_STRING
|
|
1541
|
+
|
|
1542
|
+
Override output format with a template string containing %placeholders
|
|
1543
|
+
|
|
1544
|
+
[Default Value] None
|
|
1545
|
+
|
|
1546
|
+
|
|
1456
1547
|
===== --[no-]duration
|
|
1457
1548
|
Show elapsed time on entries without @done tag
|
|
1458
1549
|
|
|
@@ -1473,7 +1564,7 @@ Show intervals with totals at the end of output
|
|
|
1473
1564
|
|
|
1474
1565
|
|
|
1475
1566
|
|
|
1476
|
-
==== Command: <tt>reset|begin DATE_STRING</tt>
|
|
1567
|
+
==== Command: <tt>reset|begin [DATE_STRING]</tt>
|
|
1477
1568
|
Reset the start time of an entry
|
|
1478
1569
|
|
|
1479
1570
|
Update the start time of the last entry or the last entry matching a tag/search filter.
|
|
@@ -1530,6 +1621,11 @@ Select from a menu of matching entries
|
|
|
1530
1621
|
|
|
1531
1622
|
|
|
1532
1623
|
|
|
1624
|
+
===== -n
|
|
1625
|
+
Change start date but do not remove @done (shortcut for --no-resume)
|
|
1626
|
+
|
|
1627
|
+
|
|
1628
|
+
|
|
1533
1629
|
===== --not
|
|
1534
1630
|
Reset items that *don't* match search/tag filters
|
|
1535
1631
|
|
|
@@ -1856,6 +1952,13 @@ Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart
|
|
|
1856
1952
|
[Must Match] (?-mix:^[csi])
|
|
1857
1953
|
|
|
1858
1954
|
|
|
1955
|
+
===== --config_template TEMPLATE_KEY
|
|
1956
|
+
|
|
1957
|
+
Output using a template from configuration
|
|
1958
|
+
|
|
1959
|
+
[Default Value] default
|
|
1960
|
+
|
|
1961
|
+
|
|
1859
1962
|
===== --from DATE_OR_RANGE
|
|
1860
1963
|
|
|
1861
1964
|
Date range to show, or a single day to filter date on.
|
|
@@ -1913,6 +2016,13 @@ Sort tags by (name|time)
|
|
|
1913
2016
|
[Must Match] (?i-mx:^(?:name|time))
|
|
1914
2017
|
|
|
1915
2018
|
|
|
2019
|
+
===== --template TEMPLATE_STRING
|
|
2020
|
+
|
|
2021
|
+
Override output format with a template string containing %placeholders
|
|
2022
|
+
|
|
2023
|
+
[Default Value] None
|
|
2024
|
+
|
|
2025
|
+
|
|
1916
2026
|
===== --val QUERY
|
|
1917
2027
|
|
|
1918
2028
|
Perform a tag value query ("@done > two hours ago" or "@progress < 50"). May be used multiple times, combined with --bool
|
|
@@ -1972,6 +2082,13 @@ List entries since a date
|
|
|
1972
2082
|
Date argument can be natural language and are always interpreted as being in the past. "thursday" would be interpreted as "last thursday,"
|
|
1973
2083
|
and "2d" would be interpreted as "two days ago."
|
|
1974
2084
|
===== Options
|
|
2085
|
+
===== --config_template TEMPLATE_KEY
|
|
2086
|
+
|
|
2087
|
+
Output using a template from configuration
|
|
2088
|
+
|
|
2089
|
+
[Default Value] default
|
|
2090
|
+
|
|
2091
|
+
|
|
1975
2092
|
===== -o|--output FORMAT
|
|
1976
2093
|
|
|
1977
2094
|
Output to export format (csv|dayone|dayone-days|dayone-entries|doing|html|json|markdown|say|taskpaper|template|timeline|wiki)
|
|
@@ -1994,6 +2111,13 @@ Sort tags by (name|time)
|
|
|
1994
2111
|
[Must Match] (?i-mx:^(?:name|time)$)
|
|
1995
2112
|
|
|
1996
2113
|
|
|
2114
|
+
===== --template TEMPLATE_STRING
|
|
2115
|
+
|
|
2116
|
+
Override output format with a template string containing %placeholders
|
|
2117
|
+
|
|
2118
|
+
[Default Value] None
|
|
2119
|
+
|
|
2120
|
+
|
|
1997
2121
|
===== --[no-]duration
|
|
1998
2122
|
Show elapsed time on entries without @done tag
|
|
1999
2123
|
|
|
@@ -2151,7 +2275,7 @@ Remove all default_tags from the local .doingrc
|
|
|
2151
2275
|
|
|
2152
2276
|
|
|
2153
2277
|
|
|
2154
|
-
==== Command: <tt>tags
|
|
2278
|
+
==== Command: <tt>tags [MAX_COUNT]</tt>
|
|
2155
2279
|
List all tags in the current Doing file
|
|
2156
2280
|
|
|
2157
2281
|
|
|
@@ -2228,6 +2352,11 @@ Select items to scan from a menu of matching entries
|
|
|
2228
2352
|
|
|
2229
2353
|
|
|
2230
2354
|
|
|
2355
|
+
===== -l|--[no-]line
|
|
2356
|
+
Output in a single line with @ symbols. Ignored if --counts is specified.
|
|
2357
|
+
|
|
2358
|
+
|
|
2359
|
+
|
|
2231
2360
|
===== --not
|
|
2232
2361
|
Get tags from items that *don't* match search/tag filters
|
|
2233
2362
|
|
|
@@ -2290,6 +2419,13 @@ View entries before specified time (e.g. 8am, 12:30pm, 15:00)
|
|
|
2290
2419
|
[Default Value] None
|
|
2291
2420
|
|
|
2292
2421
|
|
|
2422
|
+
===== --config_template TEMPLATE_KEY
|
|
2423
|
+
|
|
2424
|
+
Output using a template from configuration
|
|
2425
|
+
|
|
2426
|
+
[Default Value] today
|
|
2427
|
+
|
|
2428
|
+
|
|
2293
2429
|
===== --from TIME_RANGE
|
|
2294
2430
|
|
|
2295
2431
|
Time range to show `doing today --from "12pm to 4pm"`
|
|
@@ -2319,6 +2455,13 @@ Sort tags by (name|time)
|
|
|
2319
2455
|
[Must Match] (?i-mx:^(?:name|time)$)
|
|
2320
2456
|
|
|
2321
2457
|
|
|
2458
|
+
===== --template TEMPLATE_STRING
|
|
2459
|
+
|
|
2460
|
+
Override output format with a template string containing %placeholders
|
|
2461
|
+
|
|
2462
|
+
[Default Value] None
|
|
2463
|
+
|
|
2464
|
+
|
|
2322
2465
|
===== --[no-]duration
|
|
2323
2466
|
Show elapsed time on entries without @done tag
|
|
2324
2467
|
|
|
@@ -2618,6 +2761,13 @@ View entries before specified time (e.g. 8am, 12:30pm, 15:00)
|
|
|
2618
2761
|
[Default Value] None
|
|
2619
2762
|
|
|
2620
2763
|
|
|
2764
|
+
===== --config_template TEMPLATE_KEY
|
|
2765
|
+
|
|
2766
|
+
Output using a template from configuration
|
|
2767
|
+
|
|
2768
|
+
[Default Value] today
|
|
2769
|
+
|
|
2770
|
+
|
|
2621
2771
|
===== --from TIME_RANGE
|
|
2622
2772
|
|
|
2623
2773
|
Time range to show, e.g. `doing yesterday --from "1am to 8am"`
|
|
@@ -2656,6 +2806,13 @@ Sort tags by (name|time)
|
|
|
2656
2806
|
[Must Match] (?i-mx:^(?:name|time)$)
|
|
2657
2807
|
|
|
2658
2808
|
|
|
2809
|
+
===== --template TEMPLATE_STRING
|
|
2810
|
+
|
|
2811
|
+
Override output format with a template string containing %placeholders
|
|
2812
|
+
|
|
2813
|
+
[Default Value] None
|
|
2814
|
+
|
|
2815
|
+
|
|
2659
2816
|
===== --[no-]duration
|
|
2660
2817
|
Show elapsed time on entries without @done tag
|
|
2661
2818
|
|
data/example_plugin.rb
CHANGED
|
@@ -123,7 +123,7 @@ module Doing
|
|
|
123
123
|
## @return [String] Rendered output
|
|
124
124
|
##
|
|
125
125
|
def self.render(wwid, items, variables: {})
|
|
126
|
-
return
|
|
126
|
+
return unless items.good?
|
|
127
127
|
|
|
128
128
|
# the :options key includes the flags passed to the
|
|
129
129
|
# command that called the plugin use `puts
|
|
@@ -164,7 +164,7 @@ module Doing
|
|
|
164
164
|
|
|
165
165
|
if wwid.config['export_templates'].key?('say')
|
|
166
166
|
cfg_tpl = wwid.config['export_templates']['say']
|
|
167
|
-
tpl = cfg_tpl
|
|
167
|
+
tpl = cfg_tpl if cfg_tpl.good?
|
|
168
168
|
end
|
|
169
169
|
output = tpl.dup
|
|
170
170
|
output.gsub!(/%date/, date)
|