doing 2.0.25 → 2.1.0pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/.yardoc/checksums +18 -15
  3. data/.yardoc/object_types +0 -0
  4. data/.yardoc/objects/root.dat +0 -0
  5. data/CHANGELOG.md +28 -0
  6. data/Gemfile.lock +8 -1
  7. data/README.md +1 -1
  8. data/Rakefile +23 -4
  9. data/bin/doing +205 -127
  10. data/doc/Array.html +354 -1
  11. data/doc/Doing/Color.html +104 -92
  12. data/doc/Doing/Completion.html +216 -0
  13. data/doc/Doing/Configuration.html +340 -5
  14. data/doc/Doing/Content.html +229 -0
  15. data/doc/Doing/Errors/DoingNoTraceError.html +1 -1
  16. data/doc/Doing/Errors/DoingRuntimeError.html +1 -1
  17. data/doc/Doing/Errors/DoingStandardError.html +1 -1
  18. data/doc/Doing/Errors/EmptyInput.html +1 -1
  19. data/doc/Doing/Errors/NoResults.html +1 -1
  20. data/doc/Doing/Errors/PluginException.html +1 -1
  21. data/doc/Doing/Errors/UserCancelled.html +1 -1
  22. data/doc/Doing/Errors/WrongCommand.html +1 -1
  23. data/doc/Doing/Errors.html +1 -1
  24. data/doc/Doing/Hooks.html +1 -1
  25. data/doc/Doing/Item.html +337 -49
  26. data/doc/Doing/Items.html +444 -35
  27. data/doc/Doing/LogAdapter.html +139 -51
  28. data/doc/Doing/Note.html +253 -22
  29. data/doc/Doing/Pager.html +74 -36
  30. data/doc/Doing/Plugins.html +1 -1
  31. data/doc/Doing/Prompt.html +674 -0
  32. data/doc/Doing/Section.html +354 -0
  33. data/doc/Doing/Util.html +57 -1
  34. data/doc/Doing/WWID.html +477 -670
  35. data/doc/Doing/WWIDFile.html +398 -0
  36. data/doc/Doing.html +5 -5
  37. data/doc/GLI/Commands/MarkdownDocumentListener.html +1 -1
  38. data/doc/GLI/Commands.html +1 -1
  39. data/doc/GLI.html +1 -1
  40. data/doc/Hash.html +97 -1
  41. data/doc/Status.html +37 -3
  42. data/doc/String.html +599 -23
  43. data/doc/Symbol.html +3 -3
  44. data/doc/Time.html +1 -1
  45. data/doc/_index.html +22 -1
  46. data/doc/class_list.html +1 -1
  47. data/doc/file.README.html +8 -2
  48. data/doc/index.html +8 -2
  49. data/doc/method_list.html +453 -173
  50. data/doc/top-level-namespace.html +1 -1
  51. data/doing.gemspec +3 -0
  52. data/doing.rdoc +40 -12
  53. data/example_plugin.rb +3 -3
  54. data/lib/completion/_doing.zsh +1 -1
  55. data/lib/completion/doing.bash +8 -8
  56. data/lib/completion/doing.fish +1 -1
  57. data/lib/doing/array.rb +36 -0
  58. data/lib/doing/colors.rb +70 -66
  59. data/lib/doing/completion.rb +6 -0
  60. data/lib/doing/configuration.rb +69 -28
  61. data/lib/doing/hash.rb +37 -0
  62. data/lib/doing/item.rb +77 -12
  63. data/lib/doing/items.rb +125 -0
  64. data/lib/doing/log_adapter.rb +55 -3
  65. data/lib/doing/note.rb +53 -1
  66. data/lib/doing/pager.rb +49 -38
  67. data/lib/doing/plugins/export/markdown_export.rb +4 -4
  68. data/lib/doing/plugins/export/template_export.rb +2 -2
  69. data/lib/doing/plugins/import/calendar_import.rb +4 -4
  70. data/lib/doing/plugins/import/doing_import.rb +5 -7
  71. data/lib/doing/plugins/import/timing_import.rb +3 -3
  72. data/lib/doing/prompt.rb +206 -0
  73. data/lib/doing/section.rb +30 -0
  74. data/lib/doing/string.rb +103 -27
  75. data/lib/doing/util.rb +14 -6
  76. data/lib/doing/version.rb +1 -1
  77. data/lib/doing/wwid.rb +306 -621
  78. data/lib/doing.rb +6 -2
  79. data/lib/examples/plugins/capture_thing_import.rb +162 -0
  80. metadata +73 -5
  81. data/lib/doing/wwidfile.rb +0 -117
data/doc/Doing/Note.html CHANGED
@@ -143,7 +143,8 @@
143
143
 
144
144
 
145
145
 
146
- <span class="summary_desc"><div class='inline'></div></span>
146
+ <span class="summary_desc"><div class='inline'><p>Add note contents, optionally replacing existing note.</p>
147
+ </div></span>
147
148
 
148
149
  </li>
149
150
 
@@ -165,7 +166,8 @@
165
166
 
166
167
 
167
168
 
168
- <span class="summary_desc"><div class='inline'></div></span>
169
+ <span class="summary_desc"><div class='inline'><p>Append an array of strings to note.</p>
170
+ </div></span>
169
171
 
170
172
  </li>
171
173
 
@@ -187,7 +189,8 @@
187
189
 
188
190
 
189
191
 
190
- <span class="summary_desc"><div class='inline'></div></span>
192
+ <span class="summary_desc"><div class='inline'><p>Append a string to the note content.</p>
193
+ </div></span>
191
194
 
192
195
  </li>
193
196
 
@@ -195,7 +198,7 @@
195
198
  <li class="public ">
196
199
  <span class="summary_signature">
197
200
 
198
- <a href="#compress-instance_method" title="#compress (instance method)">#<strong>compress</strong> &#x21d2; Object </a>
201
+ <a href="#compress-instance_method" title="#compress (instance method)">#<strong>compress</strong> &#x21d2; Array </a>
199
202
 
200
203
 
201
204
 
@@ -209,7 +212,8 @@
209
212
 
210
213
 
211
214
 
212
- <span class="summary_desc"><div class='inline'></div></span>
215
+ <span class="summary_desc"><div class='inline'><p>Remove blank lines and comment lines (#).</p>
216
+ </div></span>
213
217
 
214
218
  </li>
215
219
 
@@ -253,7 +257,8 @@
253
257
 
254
258
 
255
259
 
256
- <span class="summary_desc"><div class='inline'></div></span>
260
+ <span class="summary_desc"><div class='inline'><p>Test if a note is equal (compare string representations).</p>
261
+ </div></span>
257
262
 
258
263
  </li>
259
264
 
@@ -277,7 +282,7 @@
277
282
 
278
283
 
279
284
 
280
- <span class="summary_desc"><div class='inline'><p>A new instance of Note.</p>
285
+ <span class="summary_desc"><div class='inline'><p>Initializes a new note.</p>
281
286
  </div></span>
282
287
 
283
288
  </li>
@@ -286,7 +291,7 @@
286
291
  <li class="public ">
287
292
  <span class="summary_signature">
288
293
 
289
- <a href="#strip_lines-instance_method" title="#strip_lines (instance method)">#<strong>strip_lines</strong> &#x21d2; Object </a>
294
+ <a href="#strip_lines-instance_method" title="#strip_lines (instance method)">#<strong>strip_lines</strong> &#x21d2; Array </a>
290
295
 
291
296
 
292
297
 
@@ -300,7 +305,8 @@
300
305
 
301
306
 
302
307
 
303
- <span class="summary_desc"><div class='inline'></div></span>
308
+ <span class="summary_desc"><div class='inline'><p>Remove leading/trailing whitespace for every line of note.</p>
309
+ </div></span>
304
310
 
305
311
  </li>
306
312
 
@@ -344,7 +350,8 @@
344
350
 
345
351
 
346
352
 
347
- <span class="summary_desc"><div class='inline'></div></span>
353
+ <span class="summary_desc"><div class='inline'><p>Note as multi-line string.</p>
354
+ </div></span>
348
355
 
349
356
  </li>
350
357
 
@@ -358,7 +365,12 @@
358
365
 
359
366
 
360
367
 
361
- <div id="constructor_details" class="method_details_list">
368
+
369
+
370
+
371
+ <h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></h3>
372
+ <p class="inherited"><span class='object_link'><a href="../Array.html#highlight_tags-instance_method" title="Array#highlight_tags (method)">#highlight_tags</a></span>, <span class='object_link'><a href="../Array.html#log_tags-instance_method" title="Array#log_tags (method)">#log_tags</a></span>, <span class='object_link'><a href="../Array.html#nested_hash-instance_method" title="Array#nested_hash (method)">#nested_hash</a></span>, <span class='object_link'><a href="../Array.html#to_tags-instance_method" title="Array#to_tags (method)">#to_tags</a></span>, <span class='object_link'><a href="../Array.html#to_tags!-instance_method" title="Array#to_tags! (method)">#to_tags!</a></span></p>
373
+ <div id="constructor_details" class="method_details_list">
362
374
  <h2>Constructor Details</h2>
363
375
 
364
376
  <div class="method_details first">
@@ -372,13 +384,35 @@
372
384
 
373
385
  </h3><div class="docstring">
374
386
  <div class="discussion">
375
- <p>Returns a new instance of Note.</p>
387
+ <p>Initializes a new note</p>
376
388
 
377
389
 
378
390
  </div>
379
391
  </div>
380
392
  <div class="tags">
393
+ <p class="tag_title">Parameters:</p>
394
+ <ul class="param">
381
395
 
396
+ <li>
397
+
398
+ <span class='name'>note</span>
399
+
400
+
401
+ <span class='type'>(<tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>)</span>
402
+
403
+
404
+ <em class="default">(defaults to: <tt>[]</tt>)</em>
405
+
406
+
407
+ &mdash;
408
+ <div class='inline'><p>Initial note, can be string
409
+ or array</p>
410
+ </div>
411
+
412
+ </li>
413
+
414
+ </ul>
415
+
382
416
 
383
417
  </div>
384
418
  </div>
@@ -399,7 +433,55 @@
399
433
 
400
434
 
401
435
 
402
- </h3>
436
+ </h3><div class="docstring">
437
+ <div class="discussion">
438
+ <p>Add note contents, optionally replacing existing note</p>
439
+
440
+
441
+ </div>
442
+ </div>
443
+ <div class="tags">
444
+ <p class="tag_title">Parameters:</p>
445
+ <ul class="param">
446
+
447
+ <li>
448
+
449
+ <span class='name'>note</span>
450
+
451
+
452
+ <span class='type'>(<tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>)</span>
453
+
454
+
455
+
456
+ &mdash;
457
+ <div class='inline'><p>The note to add, can be
458
+ string or array (Note)</p>
459
+ </div>
460
+
461
+ </li>
462
+
463
+ <li>
464
+
465
+ <span class='name'>replace</span>
466
+
467
+
468
+ <span class='type'>(<tt>Boolean</tt>)</span>
469
+
470
+
471
+ <em class="default">(defaults to: <tt>false</tt>)</em>
472
+
473
+
474
+ &mdash;
475
+ <div class='inline'><p>replace existing
476
+ content</p>
477
+ </div>
478
+
479
+ </li>
480
+
481
+ </ul>
482
+
483
+
484
+ </div>
403
485
  </div>
404
486
 
405
487
  <div class="method_details ">
@@ -411,7 +493,36 @@
411
493
 
412
494
 
413
495
 
414
- </h3>
496
+ </h3><div class="docstring">
497
+ <div class="discussion">
498
+ <p>Append an array of strings to note</p>
499
+
500
+
501
+ </div>
502
+ </div>
503
+ <div class="tags">
504
+ <p class="tag_title">Parameters:</p>
505
+ <ul class="param">
506
+
507
+ <li>
508
+
509
+ <span class='name'>lines</span>
510
+
511
+
512
+ <span class='type'>(<tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>)</span>
513
+
514
+
515
+
516
+ &mdash;
517
+ <div class='inline'><p>Array of strings</p>
518
+ </div>
519
+
520
+ </li>
521
+
522
+ </ul>
523
+
524
+
525
+ </div>
415
526
  </div>
416
527
 
417
528
  <div class="method_details ">
@@ -423,19 +534,76 @@
423
534
 
424
535
 
425
536
 
426
- </h3>
537
+ </h3><div class="docstring">
538
+ <div class="discussion">
539
+ <p>Append a string to the note content</p>
540
+
541
+
542
+ </div>
543
+ </div>
544
+ <div class="tags">
545
+ <p class="tag_title">Parameters:</p>
546
+ <ul class="param">
547
+
548
+ <li>
549
+
550
+ <span class='name'>input</span>
551
+
552
+
553
+ <span class='type'>(<tt><span class='object_link'><a href="../String.html" title="String (class)">String</a></span></tt>)</span>
554
+
555
+
556
+
557
+ &mdash;
558
+ <div class='inline'><p>The input string,
559
+ newlines will be split</p>
560
+ </div>
561
+
562
+ </li>
563
+
564
+ </ul>
565
+
566
+
567
+ </div>
427
568
  </div>
428
569
 
429
570
  <div class="method_details ">
430
571
  <h3 class="signature " id="compress-instance_method">
431
572
 
432
- #<strong>compress</strong> &#x21d2; <tt>Object</tt>
573
+ #<strong>compress</strong> &#x21d2; <tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>
433
574
 
434
575
 
435
576
 
436
577
 
437
578
 
438
- </h3>
579
+ </h3><div class="docstring">
580
+ <div class="discussion">
581
+ <p>Remove blank lines and comment lines (#)</p>
582
+
583
+
584
+ </div>
585
+ </div>
586
+ <div class="tags">
587
+
588
+ <p class="tag_title">Returns:</p>
589
+ <ul class="return">
590
+
591
+ <li>
592
+
593
+
594
+ <span class='type'>(<tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>)</span>
595
+
596
+
597
+
598
+ &mdash;
599
+ <div class='inline'><p>compressed array</p>
600
+ </div>
601
+
602
+ </li>
603
+
604
+ </ul>
605
+
606
+ </div>
439
607
  </div>
440
608
 
441
609
  <div class="method_details ">
@@ -461,12 +629,33 @@
461
629
 
462
630
  </h3><div class="docstring">
463
631
  <div class="discussion">
464
-
632
+ <p>Test if a note is equal (compare string
633
+ representations)</p>
634
+
465
635
 
466
636
  </div>
467
637
  </div>
468
638
  <div class="tags">
639
+ <p class="tag_title">Parameters:</p>
640
+ <ul class="param">
469
641
 
642
+ <li>
643
+
644
+ <span class='name'>other</span>
645
+
646
+
647
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Doing::Note (class)">Note</a></span></tt>)</span>
648
+
649
+
650
+
651
+ &mdash;
652
+ <div class='inline'><p>The other Note</p>
653
+ </div>
654
+
655
+ </li>
656
+
657
+ </ul>
658
+
470
659
  <p class="tag_title">Returns:</p>
471
660
  <ul class="return">
472
661
 
@@ -477,6 +666,10 @@
477
666
 
478
667
 
479
668
 
669
+ &mdash;
670
+ <div class='inline'><p>true if equal</p>
671
+ </div>
672
+
480
673
  </li>
481
674
 
482
675
  </ul>
@@ -487,13 +680,41 @@
487
680
  <div class="method_details ">
488
681
  <h3 class="signature " id="strip_lines-instance_method">
489
682
 
490
- #<strong>strip_lines</strong> &#x21d2; <tt>Object</tt>
683
+ #<strong>strip_lines</strong> &#x21d2; <tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>
491
684
 
492
685
 
493
686
 
494
687
 
495
688
 
496
- </h3>
689
+ </h3><div class="docstring">
690
+ <div class="discussion">
691
+ <p>Remove leading/trailing whitespace for
692
+ every line of note</p>
693
+
694
+
695
+ </div>
696
+ </div>
697
+ <div class="tags">
698
+
699
+ <p class="tag_title">Returns:</p>
700
+ <ul class="return">
701
+
702
+ <li>
703
+
704
+
705
+ <span class='type'>(<tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>)</span>
706
+
707
+
708
+
709
+ &mdash;
710
+ <div class='inline'><p>Stripped note</p>
711
+ </div>
712
+
713
+ </li>
714
+
715
+ </ul>
716
+
717
+ </div>
497
718
  </div>
498
719
 
499
720
  <div class="method_details ">
@@ -517,7 +738,17 @@
517
738
 
518
739
 
519
740
 
520
- </h3>
741
+ </h3><div class="docstring">
742
+ <div class="discussion">
743
+ <p>Note as multi-line string</p>
744
+
745
+
746
+ </div>
747
+ </div>
748
+ <div class="tags">
749
+
750
+
751
+ </div>
521
752
  </div>
522
753
 
523
754
  </div>
@@ -525,7 +756,7 @@
525
756
  </div>
526
757
 
527
758
  <div id="footer">
528
- Generated on Thu Nov 18 16:39:11 2021 by
759
+ Generated on Sat Nov 27 10:06:03 2021 by
529
760
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
530
761
  0.9.26 (ruby-3.0.1).
531
762
  </div>
data/doc/Doing/Pager.html CHANGED
@@ -125,7 +125,8 @@
125
125
 
126
126
 
127
127
 
128
- <span class="summary_desc"><div class='inline'></div></span>
128
+ <span class="summary_desc"><div class='inline'><p>Page output.</p>
129
+ </div></span>
129
130
 
130
131
  </li>
131
132
 
@@ -147,7 +148,8 @@
147
148
 
148
149
 
149
150
 
150
- <span class="summary_desc"><div class='inline'></div></span>
151
+ <span class="summary_desc"><div class='inline'><p>Boolean determines whether output is paginated.</p>
152
+ </div></span>
151
153
 
152
154
  </li>
153
155
 
@@ -169,29 +171,8 @@
169
171
 
170
172
 
171
173
 
172
- <span class="summary_desc"><div class='inline'></div></span>
173
-
174
- </li>
175
-
176
-
177
- <li class="public ">
178
- <span class="summary_signature">
179
-
180
- <a href="#which_pager-class_method" title="which_pager (class method)">.<strong>which_pager</strong> &#x21d2; Object </a>
181
-
182
-
183
-
184
- </span>
185
-
186
-
187
-
188
-
189
-
190
-
191
-
192
-
193
-
194
- <span class="summary_desc"><div class='inline'></div></span>
174
+ <span class="summary_desc"><div class='inline'><p>Enable/disable pagination.</p>
175
+ </div></span>
195
176
 
196
177
  </li>
197
178
 
@@ -214,7 +195,37 @@
214
195
 
215
196
 
216
197
 
217
- </h3>
198
+ </h3><div class="docstring">
199
+ <div class="discussion">
200
+ <p>Page output. If @paginate is false, just dump to
201
+ STDOUT</p>
202
+
203
+
204
+ </div>
205
+ </div>
206
+ <div class="tags">
207
+ <p class="tag_title">Parameters:</p>
208
+ <ul class="param">
209
+
210
+ <li>
211
+
212
+ <span class='name'>text</span>
213
+
214
+
215
+ <span class='type'>(<tt><span class='object_link'><a href="../String.html" title="String (class)">String</a></span></tt>)</span>
216
+
217
+
218
+
219
+ &mdash;
220
+ <div class='inline'><p>text to paginate</p>
221
+ </div>
222
+
223
+ </li>
224
+
225
+ </ul>
226
+
227
+
228
+ </div>
218
229
  </div>
219
230
 
220
231
  <div class="method_details ">
@@ -226,7 +237,17 @@
226
237
 
227
238
 
228
239
 
229
- </h3>
240
+ </h3><div class="docstring">
241
+ <div class="discussion">
242
+ <p>Boolean determines whether output is paginated</p>
243
+
244
+
245
+ </div>
246
+ </div>
247
+ <div class="tags">
248
+
249
+
250
+ </div>
230
251
  </div>
231
252
 
232
253
  <div class="method_details ">
@@ -238,19 +259,36 @@
238
259
 
239
260
 
240
261
 
241
- </h3>
262
+ </h3><div class="docstring">
263
+ <div class="discussion">
264
+ <p>Enable/disable pagination</p>
265
+
266
+
267
+ </div>
242
268
  </div>
243
-
244
- <div class="method_details ">
245
- <h3 class="signature " id="which_pager-class_method">
269
+ <div class="tags">
270
+ <p class="tag_title">Parameters:</p>
271
+ <ul class="param">
246
272
 
247
- .<strong>which_pager</strong> &#x21d2; <tt>Object</tt>
273
+ <li>
274
+
275
+ <span class='name'>should_paginate</span>
276
+
277
+
278
+ <span class='type'>(<tt>Boolean</tt>)</span>
279
+
280
+
281
+
282
+ &mdash;
283
+ <div class='inline'><p>true to paginate</p>
284
+ </div>
285
+
286
+ </li>
248
287
 
288
+ </ul>
249
289
 
250
-
251
290
 
252
-
253
- </h3>
291
+ </div>
254
292
  </div>
255
293
 
256
294
  </div>
@@ -258,7 +296,7 @@
258
296
  </div>
259
297
 
260
298
  <div id="footer">
261
- Generated on Thu Nov 18 16:39:11 2021 by
299
+ Generated on Sat Nov 27 10:06:03 2021 by
262
300
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
263
301
  0.9.26 (ruby-3.0.1).
264
302
  </div>
@@ -839,7 +839,7 @@
839
839
  </div>
840
840
 
841
841
  <div id="footer">
842
- Generated on Thu Nov 18 16:39:11 2021 by
842
+ Generated on Sat Nov 27 10:06:03 2021 by
843
843
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
844
844
  0.9.26 (ruby-3.0.1).
845
845
  </div>