doing 2.1.30 → 2.1.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (142) hide show
  1. checksums.yaml +4 -4
  2. data/.irbrc +1 -0
  3. data/CHANGELOG.md +4972 -0
  4. data/Dockerfile-2.6 +3 -1
  5. data/Dockerfile-2.7 +4 -2
  6. data/Dockerfile-3.0 +3 -1
  7. data/Gemfile.lock +1 -67
  8. data/README.md +1 -1
  9. data/bash_profile +13 -0
  10. data/bin/commands/again.rb +1 -1
  11. data/bin/commands/archive.rb +3 -3
  12. data/bin/commands/cancel.rb +1 -1
  13. data/bin/commands/commands.rb +8 -8
  14. data/bin/commands/completion.rb +61 -19
  15. data/bin/commands/config.rb +22 -19
  16. data/bin/commands/done.rb +2 -2
  17. data/bin/commands/flag.rb +1 -1
  18. data/bin/commands/grep.rb +6 -33
  19. data/bin/commands/last.rb +1 -1
  20. data/bin/commands/meanwhile.rb +2 -2
  21. data/bin/commands/now.rb +2 -2
  22. data/bin/commands/on.rb +6 -16
  23. data/bin/commands/open.rb +1 -1
  24. data/bin/commands/recent.rb +5 -17
  25. data/bin/commands/rotate.rb +17 -0
  26. data/bin/commands/sections.rb +82 -7
  27. data/bin/commands/show.rb +8 -28
  28. data/bin/commands/since.rb +5 -16
  29. data/bin/commands/tag_dir.rb +27 -3
  30. data/bin/commands/today.rb +3 -28
  31. data/bin/commands/view.rb +3 -3
  32. data/bin/commands/yesterday.rb +3 -36
  33. data/bin/doing +29 -139
  34. data/docs/doc/Array.html +1 -1
  35. data/docs/doc/BooleanTermParser/Clause.html +1 -1
  36. data/docs/doc/BooleanTermParser/Operator.html +1 -1
  37. data/docs/doc/BooleanTermParser/Query.html +1 -1
  38. data/docs/doc/BooleanTermParser/QueryParser.html +1 -1
  39. data/docs/doc/BooleanTermParser/QueryTransformer.html +1 -1
  40. data/docs/doc/BooleanTermParser.html +1 -1
  41. data/docs/doc/Doing/Color.html +1 -1
  42. data/docs/doc/Doing/Completion.html +324 -4
  43. data/docs/doc/Doing/Configuration.html +3 -3
  44. data/docs/doc/Doing/Errors/DoingNoTraceError.html +1 -1
  45. data/docs/doc/Doing/Errors/DoingRuntimeError.html +1 -1
  46. data/docs/doc/Doing/Errors/DoingStandardError.html +1 -1
  47. data/docs/doc/Doing/Errors/EmptyInput.html +1 -1
  48. data/docs/doc/Doing/Errors/NoResults.html +1 -1
  49. data/docs/doc/Doing/Errors/PluginException.html +1 -1
  50. data/docs/doc/Doing/Errors/UserCancelled.html +1 -1
  51. data/docs/doc/Doing/Errors/WrongCommand.html +1 -1
  52. data/docs/doc/Doing/Errors.html +1 -1
  53. data/docs/doc/Doing/Hooks.html +1 -1
  54. data/docs/doc/Doing/Item.html +144 -3
  55. data/docs/doc/Doing/Items.html +209 -1
  56. data/docs/doc/Doing/LogAdapter.html +1 -1
  57. data/docs/doc/Doing/Logger.html +1807 -0
  58. data/docs/doc/Doing/Note.html +109 -3
  59. data/docs/doc/Doing/Pager.html +1 -1
  60. data/docs/doc/Doing/Plugins.html +1 -1
  61. data/docs/doc/Doing/Prompt.html +1 -1
  62. data/docs/doc/Doing/Section.html +1 -1
  63. data/docs/doc/Doing/TemplateString.html +1 -1
  64. data/docs/doc/Doing/Types.html +3 -3
  65. data/docs/doc/Doing/Util/Backup.html +1 -1
  66. data/docs/doc/Doing/Util.html +1 -1
  67. data/docs/doc/Doing/WWID.html +8 -58
  68. data/docs/doc/Doing.html +4 -4
  69. data/docs/doc/FalseClass.html +1 -1
  70. data/docs/doc/GLI/Commands/Help.html +1 -1
  71. data/docs/doc/GLI/Commands/MarkdownDocumentListener.html +1 -1
  72. data/docs/doc/GLI/Commands.html +1 -1
  73. data/docs/doc/GLI.html +1 -1
  74. data/docs/doc/Hash.html +1 -1
  75. data/docs/doc/Object.html +1 -1
  76. data/docs/doc/PhraseParser/Operator.html +1 -1
  77. data/docs/doc/PhraseParser/PhraseClause.html +1 -1
  78. data/docs/doc/PhraseParser/Query.html +1 -1
  79. data/docs/doc/PhraseParser/QueryParser.html +1 -1
  80. data/docs/doc/PhraseParser/QueryTransformer.html +1 -1
  81. data/docs/doc/PhraseParser/TermClause.html +1 -1
  82. data/docs/doc/PhraseParser.html +1 -1
  83. data/docs/doc/Status.html +1 -1
  84. data/docs/doc/String.html +1 -1
  85. data/docs/doc/Symbol.html +1 -1
  86. data/docs/doc/Time.html +1 -1
  87. data/docs/doc/TrueClass.html +1 -1
  88. data/docs/doc/_index.html +12 -10
  89. data/docs/doc/class_list.html +1 -1
  90. data/docs/doc/file.README.html +2 -2
  91. data/docs/doc/index.html +2 -2
  92. data/docs/doc/method_list.html +424 -304
  93. data/docs/doc/top-level-namespace.html +105 -1
  94. data/docs/index.md +1 -1
  95. data/doing.gemspec +24 -24
  96. data/doing.rdoc +259 -26
  97. data/example_plugin.rb +7 -5
  98. data/inputrc +57 -0
  99. data/lib/completion/_doing.zsh +48 -52
  100. data/lib/completion/doing.bash +14 -25
  101. data/lib/completion/doing.fish +41 -15
  102. data/lib/doing/add_options.rb +152 -0
  103. data/lib/doing/array/array.rb +16 -0
  104. data/lib/doing/changelog/changes.rb +1 -1
  105. data/lib/doing/chronify/string.rb +1 -1
  106. data/lib/doing/completion/bash_completion.rb +12 -51
  107. data/lib/doing/completion/fish_completion.rb +17 -53
  108. data/lib/doing/completion/zsh_completion.rb +21 -59
  109. data/lib/doing/completion.rb +203 -17
  110. data/lib/doing/configuration.rb +7 -1
  111. data/lib/doing/item.rb +30 -5
  112. data/lib/doing/items.rb +53 -5
  113. data/lib/doing/{log_adapter.rb → logger.rb} +8 -2
  114. data/lib/doing/note.rb +24 -8
  115. data/lib/doing/plugins/export/dayone_export.rb +8 -6
  116. data/lib/doing/plugins/export/html_export.rb +4 -4
  117. data/lib/doing/plugins/export/json_export.rb +19 -20
  118. data/lib/doing/plugins/export/markdown_export.rb +2 -2
  119. data/lib/doing/plugins/export/template_export.rb +4 -4
  120. data/lib/doing/plugins/import/calendar_import.rb +2 -2
  121. data/lib/doing/plugins/import/doing_import.rb +2 -2
  122. data/lib/doing/plugins/import/timing_import.rb +2 -2
  123. data/lib/doing/string/highlight.rb +3 -4
  124. data/lib/doing/string/string.rb +8 -0
  125. data/lib/doing/string/tags.rb +1 -1
  126. data/lib/doing/types.rb +2 -2
  127. data/lib/doing/util.rb +1 -1
  128. data/lib/doing/util_backup.rb +12 -12
  129. data/lib/doing/version.rb +1 -1
  130. data/lib/doing/wwid.rb +119 -120
  131. data/lib/doing.rb +61 -3
  132. data/lib/examples/commands/wiki.rb +27 -19
  133. data/lib/examples/plugins/capture_thing_import.rb +1 -1
  134. data/lib/helpers/threaded_tests.rb +2 -0
  135. data/scripts/setting_replace.rb +11 -0
  136. metadata +109 -124
  137. data/.yardoc/checksums +0 -29
  138. data/.yardoc/complete +0 -0
  139. data/.yardoc/object_types +0 -0
  140. data/.yardoc/objects/root.dat +0 -0
  141. data/.yardoc/proxy_types +0 -0
  142. data/bin/commands/add_section.rb +0 -15
@@ -337,7 +337,7 @@
337
337
  <li class="public ">
338
338
  <span class="summary_signature">
339
339
 
340
- <a href="#equal%3F-instance_method" title="#equal? (instance method)">#<strong>equal?</strong>(other) &#x21d2; Boolean </a>
340
+ <a href="#equal%3F-instance_method" title="#equal? (instance method)">#<strong>equal?</strong>(other, match_section: false) &#x21d2; Boolean </a>
341
341
 
342
342
 
343
343
 
@@ -377,6 +377,29 @@
377
377
  <span class="summary_desc"><div class='inline'><p>Updates the title of the Item by expanding natural language dates within configured date tags (tags whose value is expected to be a date).</p>
378
378
  </div></span>
379
379
 
380
+ </li>
381
+
382
+
383
+ <li class="public ">
384
+ <span class="summary_signature">
385
+
386
+ <a href="#finished%3F-instance_method" title="#finished? (instance method)">#<strong>finished?</strong> &#x21d2; Boolean </a>
387
+
388
+
389
+
390
+ </span>
391
+
392
+
393
+
394
+
395
+
396
+
397
+
398
+
399
+
400
+ <span class="summary_desc"><div class='inline'><p>Test if item has a @done tag.</p>
401
+ </div></span>
402
+
380
403
  </li>
381
404
 
382
405
 
@@ -792,6 +815,29 @@
792
815
  <span class="summary_desc"><div class='inline'><p>outputs item in Doing file format, including leading tab.</p>
793
816
  </div></span>
794
817
 
818
+ </li>
819
+
820
+
821
+ <li class="public ">
822
+ <span class="summary_signature">
823
+
824
+ <a href="#unfinished%3F-instance_method" title="#unfinished? (instance method)">#<strong>unfinished?</strong> &#x21d2; Boolean </a>
825
+
826
+
827
+
828
+ </span>
829
+
830
+
831
+
832
+
833
+
834
+
835
+
836
+
837
+
838
+ <span class="summary_desc"><div class='inline'><p>Test if item does not contain @done tag.</p>
839
+ </div></span>
840
+
795
841
  </li>
796
842
 
797
843
 
@@ -1099,7 +1145,7 @@ the item belongs</p>
1099
1145
  <div class="method_details ">
1100
1146
  <h3 class="signature " id="equal?-instance_method">
1101
1147
 
1102
- #<strong>equal?</strong>(other) &#x21d2; <tt>Boolean</tt>
1148
+ #<strong>equal?</strong>(other, match_section: false) &#x21d2; <tt>Boolean</tt>
1103
1149
 
1104
1150
 
1105
1151
 
@@ -1131,6 +1177,23 @@ the item belongs</p>
1131
1177
 
1132
1178
  </li>
1133
1179
 
1180
+ <li>
1181
+
1182
+ <span class='name'>match_section</span>
1183
+
1184
+
1185
+ <span class='type'>(<tt>Boolean</tt>)</span>
1186
+
1187
+
1188
+ <em class="default">(defaults to: <tt>false</tt>)</em>
1189
+
1190
+
1191
+ &mdash;
1192
+ <div class='inline'><p>If true, require item sections to match</p>
1193
+ </div>
1194
+
1195
+ </li>
1196
+
1134
1197
  </ul>
1135
1198
 
1136
1199
  <p class="tag_title">Returns:</p>
@@ -1198,6 +1261,45 @@ dates</p>
1198
1261
  </ul>
1199
1262
 
1200
1263
 
1264
+ </div>
1265
+ </div>
1266
+
1267
+ <div class="method_details ">
1268
+ <h3 class="signature " id="finished?-instance_method">
1269
+
1270
+ #<strong>finished?</strong> &#x21d2; <tt>Boolean</tt>
1271
+
1272
+
1273
+
1274
+
1275
+
1276
+ </h3><div class="docstring">
1277
+ <div class="discussion">
1278
+ <p>Test if item has a @done tag</p>
1279
+
1280
+
1281
+ </div>
1282
+ </div>
1283
+ <div class="tags">
1284
+
1285
+ <p class="tag_title">Returns:</p>
1286
+ <ul class="return">
1287
+
1288
+ <li>
1289
+
1290
+
1291
+ <span class='type'>(<tt>Boolean</tt>)</span>
1292
+
1293
+
1294
+
1295
+ &mdash;
1296
+ <div class='inline'><p>true item has @done tag</p>
1297
+ </div>
1298
+
1299
+ </li>
1300
+
1301
+ </ul>
1302
+
1201
1303
  </div>
1202
1304
  </div>
1203
1305
 
@@ -2221,6 +2323,45 @@ thus should not receive a date on the @done tag</p>
2221
2323
  <div class="tags">
2222
2324
 
2223
2325
 
2326
+ </div>
2327
+ </div>
2328
+
2329
+ <div class="method_details ">
2330
+ <h3 class="signature " id="unfinished?-instance_method">
2331
+
2332
+ #<strong>unfinished?</strong> &#x21d2; <tt>Boolean</tt>
2333
+
2334
+
2335
+
2336
+
2337
+
2338
+ </h3><div class="docstring">
2339
+ <div class="discussion">
2340
+ <p>Test if item does not contain @done tag</p>
2341
+
2342
+
2343
+ </div>
2344
+ </div>
2345
+ <div class="tags">
2346
+
2347
+ <p class="tag_title">Returns:</p>
2348
+ <ul class="return">
2349
+
2350
+ <li>
2351
+
2352
+
2353
+ <span class='type'>(<tt>Boolean</tt>)</span>
2354
+
2355
+
2356
+
2357
+ &mdash;
2358
+ <div class='inline'><p>true if item is missing @done tag</p>
2359
+ </div>
2360
+
2361
+ </li>
2362
+
2363
+ </ul>
2364
+
2224
2365
  </div>
2225
2366
  </div>
2226
2367
 
@@ -2229,7 +2370,7 @@ thus should not receive a date on the @done tag</p>
2229
2370
  </div>
2230
2371
 
2231
2372
  <div id="footer">
2232
- Generated on Wed Feb 16 07:23:35 2022 by
2373
+ Generated on Sun Feb 20 09:36:52 2022 by
2233
2374
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2234
2375
  0.9.27 (ruby-3.0.1).
2235
2376
  </div>
@@ -197,6 +197,51 @@
197
197
 
198
198
 
199
199
 
200
+ <span class="summary_desc"><div class='inline'></div></span>
201
+
202
+ </li>
203
+
204
+
205
+ <li class="public ">
206
+ <span class="summary_signature">
207
+
208
+ <a href="#dedup-instance_method" title="#dedup (instance method)">#<strong>dedup</strong>(match_section: true) &#x21d2; Items </a>
209
+
210
+
211
+
212
+ </span>
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+ <span class="summary_desc"><div class='inline'><p>Remove duplicated entries.</p>
223
+ </div></span>
224
+
225
+ </li>
226
+
227
+
228
+ <li class="public ">
229
+ <span class="summary_signature">
230
+
231
+ <a href="#dedup!-instance_method" title="#dedup! (instance method)">#<strong>dedup!</strong>(match_section: true) &#x21d2; Object </a>
232
+
233
+
234
+
235
+ </span>
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+
244
+
200
245
  <span class="summary_desc"><div class='inline'></div></span>
201
246
 
202
247
  </li>
@@ -222,6 +267,28 @@
222
267
  <span class="summary_desc"><div class='inline'><p>Delete an item from the index.</p>
223
268
  </div></span>
224
269
 
270
+ </li>
271
+
272
+
273
+ <li class="public ">
274
+ <span class="summary_signature">
275
+
276
+ <a href="#delete_section-instance_method" title="#delete_section (instance method)">#<strong>delete_section</strong>(section, log: false) &#x21d2; Object </a>
277
+
278
+
279
+
280
+ </span>
281
+
282
+
283
+
284
+
285
+
286
+
287
+
288
+
289
+
290
+ <span class="summary_desc"><div class='inline'></div></span>
291
+
225
292
  </li>
226
293
 
227
294
 
@@ -268,6 +335,28 @@
268
335
  <span class="summary_desc"><div class='inline'><p>Get a new Items object containing only items in a specified section.</p>
269
336
  </div></span>
270
337
 
338
+ </li>
339
+
340
+
341
+ <li class="public ">
342
+ <span class="summary_signature">
343
+
344
+ <a href="#include%3F-instance_method" title="#include? (instance method)">#<strong>include?</strong>(item, match_section: true) &#x21d2; Boolean </a>
345
+
346
+
347
+
348
+ </span>
349
+
350
+
351
+
352
+
353
+
354
+
355
+
356
+
357
+
358
+ <span class="summary_desc"><div class='inline'></div></span>
359
+
271
360
  </li>
272
361
 
273
362
 
@@ -553,6 +642,57 @@ creation of the section.</p>
553
642
 
554
643
 
555
644
 
645
+ </h3>
646
+ </div>
647
+
648
+ <div class="method_details ">
649
+ <h3 class="signature " id="dedup-instance_method">
650
+
651
+ #<strong>dedup</strong>(match_section: true) &#x21d2; <tt><span class='object_link'><a href="" title="Doing::Items (class)">Items</a></span></tt>
652
+
653
+
654
+
655
+
656
+
657
+ </h3><div class="docstring">
658
+ <div class="discussion">
659
+ <p>Remove duplicated entries. Duplicate entries must have matching start date, title, note, and section</p>
660
+
661
+
662
+ </div>
663
+ </div>
664
+ <div class="tags">
665
+
666
+ <p class="tag_title">Returns:</p>
667
+ <ul class="return">
668
+
669
+ <li>
670
+
671
+
672
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Doing::Items (class)">Items</a></span></tt>)</span>
673
+
674
+
675
+
676
+ &mdash;
677
+ <div class='inline'><p>Items array with duplicate entries removed</p>
678
+ </div>
679
+
680
+ </li>
681
+
682
+ </ul>
683
+
684
+ </div>
685
+ </div>
686
+
687
+ <div class="method_details ">
688
+ <h3 class="signature " id="dedup!-instance_method">
689
+
690
+ #<strong>dedup!</strong>(match_section: true) &#x21d2; <tt><span class='object_link'><a href="../Object.html" title="Object (class)">Object</a></span></tt>
691
+
692
+
693
+
694
+
695
+
556
696
  </h3>
557
697
  </div>
558
698
 
@@ -594,6 +734,40 @@ creation of the section.</p>
594
734
  </ul>
595
735
 
596
736
 
737
+ </div>
738
+ </div>
739
+
740
+ <div class="method_details ">
741
+ <h3 class="signature " id="delete_section-instance_method">
742
+
743
+ #<strong>delete_section</strong>(section, log: false) &#x21d2; <tt><span class='object_link'><a href="../Object.html" title="Object (class)">Object</a></span></tt>
744
+
745
+
746
+
747
+
748
+
749
+ </h3><div class="docstring">
750
+ <div class="discussion">
751
+
752
+
753
+ </div>
754
+ </div>
755
+ <div class="tags">
756
+
757
+ <p class="tag_title">Raises:</p>
758
+ <ul class="raise">
759
+
760
+ <li>
761
+
762
+
763
+ <span class='type'>(<tt>DoingRuntimeError</tt>)</span>
764
+
765
+
766
+
767
+ </li>
768
+
769
+ </ul>
770
+
597
771
  </div>
598
772
  </div>
599
773
 
@@ -694,6 +868,40 @@ specified section</p>
694
868
 
695
869
  </ul>
696
870
 
871
+ </div>
872
+ </div>
873
+
874
+ <div class="method_details ">
875
+ <h3 class="signature " id="include?-instance_method">
876
+
877
+ #<strong>include?</strong>(item, match_section: true) &#x21d2; <tt>Boolean</tt>
878
+
879
+
880
+
881
+
882
+
883
+ </h3><div class="docstring">
884
+ <div class="discussion">
885
+
886
+
887
+ </div>
888
+ </div>
889
+ <div class="tags">
890
+
891
+ <p class="tag_title">Returns:</p>
892
+ <ul class="return">
893
+
894
+ <li>
895
+
896
+
897
+ <span class='type'>(<tt>Boolean</tt>)</span>
898
+
899
+
900
+
901
+ </li>
902
+
903
+ </ul>
904
+
697
905
  </div>
698
906
  </div>
699
907
 
@@ -890,7 +1098,7 @@ specified section</p>
890
1098
  </div>
891
1099
 
892
1100
  <div id="footer">
893
- Generated on Wed Feb 16 07:23:35 2022 by
1101
+ Generated on Sun Feb 20 09:36:52 2022 by
894
1102
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
895
1103
  0.9.27 (ruby-3.0.1).
896
1104
  </div>
@@ -1797,7 +1797,7 @@ message (optional)</p>
1797
1797
  </div>
1798
1798
 
1799
1799
  <div id="footer">
1800
- Generated on Wed Feb 16 07:23:35 2022 by
1800
+ Generated on Fri Feb 18 12:22:37 2022 by
1801
1801
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1802
1802
  0.9.27 (ruby-3.0.1).
1803
1803
  </div>