doing 2.0.23 → 2.1.1pre

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.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/.yardoc/checksums +19 -15
  3. data/.yardoc/object_types +0 -0
  4. data/.yardoc/objects/root.dat +0 -0
  5. data/CHANGELOG.md +40 -1
  6. data/Gemfile.lock +8 -1
  7. data/README.md +7 -1
  8. data/Rakefile +23 -4
  9. data/bin/doing +431 -256
  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 +517 -890
  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 +833 -53
  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 +460 -180
  50. data/doc/top-level-namespace.html +1 -1
  51. data/doing.gemspec +3 -0
  52. data/doing.rdoc +163 -44
  53. data/example_plugin.rb +5 -5
  54. data/lib/completion/_doing.zsh +42 -42
  55. data/lib/completion/doing.bash +21 -21
  56. data/lib/completion/doing.fish +1 -280
  57. data/lib/doing/array.rb +36 -0
  58. data/lib/doing/colors.rb +70 -66
  59. data/lib/doing/completion/bash_completion.rb +1 -2
  60. data/lib/doing/completion/fish_completion.rb +1 -1
  61. data/lib/doing/completion/zsh_completion.rb +1 -1
  62. data/lib/doing/completion.rb +6 -0
  63. data/lib/doing/configuration.rb +134 -23
  64. data/lib/doing/hash.rb +37 -0
  65. data/lib/doing/item.rb +77 -12
  66. data/lib/doing/items.rb +125 -0
  67. data/lib/doing/log_adapter.rb +58 -4
  68. data/lib/doing/note.rb +53 -1
  69. data/lib/doing/pager.rb +49 -38
  70. data/lib/doing/plugins/export/markdown_export.rb +4 -4
  71. data/lib/doing/plugins/export/template_export.rb +2 -2
  72. data/lib/doing/plugins/import/calendar_import.rb +4 -4
  73. data/lib/doing/plugins/import/doing_import.rb +5 -7
  74. data/lib/doing/plugins/import/timing_import.rb +3 -3
  75. data/lib/doing/prompt.rb +206 -0
  76. data/lib/doing/section.rb +30 -0
  77. data/lib/doing/string.rb +123 -35
  78. data/lib/doing/string_chronify.rb +81 -0
  79. data/lib/doing/util.rb +14 -6
  80. data/lib/doing/version.rb +1 -1
  81. data/lib/doing/wwid.rb +387 -685
  82. data/lib/doing.rb +7 -2
  83. data/lib/examples/plugins/capture_thing_import.rb +162 -0
  84. data/rdoc_to_mmd.rb +14 -8
  85. data/scripts/generate_bash_completions.rb +1 -1
  86. data/scripts/generate_fish_completions.rb +1 -1
  87. data/scripts/generate_zsh_completions.rb +1 -1
  88. metadata +74 -5
  89. data/lib/doing/wwidfile.rb +0 -117
@@ -102,7 +102,7 @@
102
102
  </div>
103
103
 
104
104
  <div id="footer">
105
- Generated on Thu Nov 18 16:39:11 2021 by
105
+ Generated on Sat Nov 27 13:57:12 2021 by
106
106
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
107
107
  0.9.26 (ruby-3.0.1).
108
108
  </div>
data/doing.gemspec CHANGED
@@ -31,10 +31,13 @@ spec = Gem::Specification.new do |s|
31
31
  s.add_development_dependency 'redcarpet', '~> 3.5', '>= 3.5.1'
32
32
  s.add_development_dependency 'github-markup', '~> 4.0', '>= 4.0.0'
33
33
  s.add_development_dependency 'parallel_tests', '~> 3.7', '>= 3.7.3'
34
+ s.add_development_dependency 'tty-spinner', '~> 0.9', '>= 0.9.3'
34
35
  s.add_runtime_dependency('tty-progressbar', '~> 0.18', '>= 0.18.2')
35
36
  s.add_runtime_dependency('gli', '~> 2.19', '>= 2.19.2')
36
37
  s.add_runtime_dependency('haml','~>5.0.0', '>= 5.0.0')
37
38
  s.add_runtime_dependency('chronic','~> 0.10', '>= 0.10.2')
38
39
  s.add_runtime_dependency('deep_merge', '~> 1.2', '>= 1.2.1')
40
+ s.add_runtime_dependency('tty-link', '~> 0.1', '>= 0.1.1')
41
+ s.add_runtime_dependency('tty-which', '~> 0.5', '>= 0.5.0')
39
42
  # s.add_runtime_dependency('amatch', '~> 0.4', '>= 0.4.0')
40
43
  end
data/doing.rdoc CHANGED
@@ -5,14 +5,14 @@ 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.0.23
8
+ v2.1.1pre
9
9
 
10
10
  === Global Options
11
11
  === --config_file arg
12
12
 
13
13
  Use a specific configuration file. Deprecated, set $DOING_CONFIG instead.
14
14
 
15
- [Default Value] /Users/ttscoff/.doingrc
15
+ [Default Value] /Users/ttscoff/.config/doing/config.yml
16
16
 
17
17
 
18
18
  === -f|--doing_file arg
@@ -42,6 +42,11 @@ Show this message
42
42
 
43
43
 
44
44
 
45
+ === --no
46
+ Answer all yes/no menus with no
47
+
48
+
49
+
45
50
  === --[no-]notes
46
51
  Output notes if included in the template
47
52
 
@@ -72,6 +77,11 @@ Exclude auto tags and default tags
72
77
 
73
78
 
74
79
 
80
+ === --yes
81
+ Answer all yes/no menus with yes
82
+
83
+
84
+
75
85
  === Commands
76
86
  ==== Command: <tt>add_section SECTION_NAME</tt>
77
87
  Add a new section to the "doing" file
@@ -135,7 +145,7 @@ Repeat last entry matching tags. Combine multiple tags with a comma.
135
145
 
136
146
 
137
147
  ===== -e|--editor
138
- Edit duplicated entry with vim before adding
148
+ Edit duplicated entry with emacs -nw before adding
139
149
 
140
150
 
141
151
 
@@ -385,63 +395,98 @@ Shell to generate for (bash, zsh, fish)
385
395
  [Must Match] (?i-mx:^[bzf](?:[ai]?sh)?$)
386
396
 
387
397
 
388
- ==== Command: <tt>config KEY_PATH</tt>
398
+ ==== Command: <tt>config </tt>
389
399
  Edit the configuration file or output a value from it
390
400
 
391
- Run without arguments, `doing config` opens your `.doingrc` in an editor.
401
+ Run without arguments, `doing config` opens your `config.yml` in an editor.
392
402
  If local configurations are found in the path between the current directory
393
- and `~/.doingrc`, a menu will allow you to select which to open in the editor.
403
+ and the root (/), a menu will allow you to select which to open in the editor.
394
404
 
395
405
  It will use the editor defined in `config_editor_app`, or one specified with `--editor`.
396
406
 
397
- Use `doing config -d` to output the configuration to the terminal, and
407
+ Use `doing config get` to output the configuration to the terminal, and
398
408
  provide a dot-separated key path to get a specific value. Shows the current value
399
409
  including keys/overrides set by local configs.
400
410
  ===== Options
401
- ===== -a APP_NAME
411
+ ===== -d|--[no-]dump
412
+ DEPRECATED
413
+
414
+
415
+
416
+ ===== -u|--[no-]update
417
+ DEPRECATED
418
+
419
+
420
+
421
+ ===== Commands
422
+ ====== Command: <tt>edit </tt>
423
+ Open config file in editor
424
+
425
+
426
+ ======= Options
427
+ ======= -a|--app APP_NAME
402
428
 
403
429
  Application to use
404
430
 
405
431
  [Default Value] None
406
432
 
407
433
 
408
- ===== -b BUNDLE_ID
434
+ ======= -b|--bundle_id BUNDLE_ID
409
435
 
410
436
  Application bundle id to use
411
437
 
412
438
  [Default Value] None
413
439
 
414
440
 
415
- ===== -e|--editor EDITOR
441
+ ======= -e|--editor EDITOR
416
442
 
417
443
  Editor to use
418
444
 
419
445
  [Default Value] None
420
446
 
421
447
 
422
- ===== -o|--output FORMAT
448
+ ======= -x|--[no-]default
449
+ Use the config_editor_app defined in ~/.config/doing/config.yml (config_editor_app not set)
450
+
451
+
452
+
453
+ ====== Command: <tt>get|dump </tt>
454
+ Output a key's value
455
+
456
+
457
+ ======= Options
458
+ ======= -o|--output FORMAT
423
459
 
424
- Format for --dump (json|yaml|raw)
460
+ Format for output (json|yaml|raw)
425
461
 
426
462
  [Default Value] yaml
427
463
  [Must Match] (?-mix:^(?:y(?:aml)?|j(?:son)?|r(?:aw)?)$)
428
464
 
429
465
 
430
- ===== -d|--dump
431
- Show a config key value based on arguments. Separate key paths with colons or dots, e.g. "export_templates.html". Empty arguments outputs the entire config.
466
+ ====== Command: <tt>list </tt>
467
+ List configuration paths, including .doingrc files in the current and parent directories
432
468
 
469
+ Config files are listed in order of precedence (if there are multiple configs detected).
470
+ Values defined in the top item in the list will override values in configutations below it.
471
+ ====== Command: <tt>set </tt>
472
+ Set a key's value in the config file
433
473
 
434
474
 
435
- ===== -u|--update
436
- Update config file with missing configuration options
475
+ ======= Options
476
+ ======= -r|--remove
477
+ Delete specified key
437
478
 
438
479
 
439
480
 
440
- ===== -x
441
- Use the config_editor_app defined in ~/.doingrc (config_editor_app not set)
481
+ ====== Command: <tt>undo </tt>
482
+ Undo the last change to a config file
442
483
 
443
484
 
485
+ ====== Command: <tt>update|refresh </tt>
486
+ Update default config file, adding any missing keys
444
487
 
488
+
489
+ [Default Command] edit
445
490
  ==== Command: <tt>done|did ENTRY</tt>
446
491
  Add a completed item with @done(date). No argument finishes last entry.
447
492
 
@@ -455,9 +500,9 @@ Set finish date to specific date/time (natural langauge parsed, e.g. --at=1:30pm
455
500
  [Default Value] None
456
501
 
457
502
 
458
- ===== -b|--back DATE_STRING
503
+ ===== -b|--back|--started DATE_STRING
459
504
 
460
- Backdate start date by interval [4pm|20m|2h|yesterday noon]
505
+ Backdate start date by interval or set to time [4pm|20m|2h|"yesterday noon"]
461
506
 
462
507
  [Default Value] None
463
508
 
@@ -496,7 +541,7 @@ Include date
496
541
 
497
542
 
498
543
  ===== -e|--editor
499
- Edit entry with vim (with no arguments, edits the last entry)
544
+ Edit entry with emacs -nw (with no arguments, edits the last entry)
500
545
 
501
546
 
502
547
 
@@ -625,14 +670,14 @@ To search with regular expressions, single quote the string and surround with sl
625
670
  ===== Options
626
671
  ===== --after DATE_STRING
627
672
 
628
- Constrain search to entries newer than date
673
+ Search entries newer than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
629
674
 
630
675
  [Default Value] None
631
676
 
632
677
 
633
678
  ===== --before DATE_STRING
634
679
 
635
- Constrain search to entries older than date
680
+ Search entries older than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
636
681
 
637
682
  [Default Value] None
638
683
 
@@ -645,6 +690,18 @@ Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart
645
690
  [Must Match] (?-mix:^[csi])
646
691
 
647
692
 
693
+ ===== --from DATE_OR_RANGE
694
+
695
+ Date range to show, or a single day to filter date on.
696
+ Date range argument should be quoted. Date specifications can be natural language.
697
+ To specify a range, use "to" or "through": `doing search --from "monday 8am to friday 5pm"`.
698
+
699
+ If values are only time(s) (6am to noon) all dates will be included, but entries will be filtered
700
+ by time of day.
701
+
702
+ [Default Value] None
703
+
704
+
648
705
  ===== -o|--output FORMAT
649
706
 
650
707
  Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
@@ -710,7 +767,7 @@ List commands one per line, to assist with shell completion
710
767
  ==== Command: <tt>import PATH</tt>
711
768
  Import entries from an external source
712
769
 
713
- Imports entries from other sources. Available plugins: calendar, doing, timing
770
+ Imports entries from other sources. Available plugins: calendar, capturething, doing, timing
714
771
  ===== Options
715
772
  ===== --after DATE_STRING
716
773
 
@@ -773,7 +830,7 @@ Tag all imported entries
773
830
 
774
831
  ===== --type TYPE
775
832
 
776
- Import type (calendar|doing|timing)
833
+ Import type (calendar|capturething|doing|timing)
777
834
 
778
835
  [Default Value] doing
779
836
 
@@ -846,7 +903,7 @@ Tag filter, combine multiple tags with a comma.
846
903
 
847
904
 
848
905
  ===== -e|--editor
849
- Edit entry with vim
906
+ Edit entry with emacs -nw
850
907
 
851
908
 
852
909
 
@@ -880,7 +937,7 @@ Note
880
937
 
881
938
 
882
939
  ===== -e|--editor
883
- Edit entry with vim
940
+ Edit entry with emacs -nw
884
941
 
885
942
 
886
943
 
@@ -1002,7 +1059,7 @@ Archive previous @meanwhile entry
1002
1059
 
1003
1060
 
1004
1061
  ===== -e|--editor
1005
- Edit entry with vim
1062
+ Edit entry with emacs -nw
1006
1063
 
1007
1064
 
1008
1065
 
@@ -1053,7 +1110,7 @@ Add/remove note from last entry matching tag
1053
1110
 
1054
1111
 
1055
1112
  ===== -e|--editor
1056
- Edit entry with vim
1113
+ Edit entry with emacs -nw
1057
1114
 
1058
1115
 
1059
1116
 
@@ -1084,11 +1141,11 @@ Record what you're starting now, or backdate the start time using natural langua
1084
1141
 
1085
1142
  A parenthetical at the end of the entry will be converted to a note.
1086
1143
 
1087
- Run with no argument to create a new entry using vim.
1144
+ Run with no argument to create a new entry using emacs -nw.
1088
1145
  ===== Options
1089
- ===== -b|--back DATE_STRING
1146
+ ===== -b|--back|--started DATE_STRING
1090
1147
 
1091
- Backdate start time [4pm|20m|2h|yesterday noon]
1148
+ Backdate start time [4pm|20m|2h|"yesterday noon"]
1092
1149
 
1093
1150
  [Default Value] None
1094
1151
 
@@ -1108,7 +1165,7 @@ Section
1108
1165
 
1109
1166
 
1110
1167
  ===== -e|--editor
1111
- Edit entry with vim
1168
+ Edit entry with emacs -nw
1112
1169
 
1113
1170
 
1114
1171
 
@@ -1159,7 +1216,7 @@ Show time totals at the end of output
1159
1216
  ==== Command: <tt>open </tt>
1160
1217
  Open the "doing" file in an editor
1161
1218
 
1162
- `doing open` defaults to using the editor_app setting in /Users/ttscoff/.doingrc (not set).
1219
+ `doing open` defaults to using the editor_app setting in /Users/ttscoff/.config/doing/config.yml (not set).
1163
1220
  ===== Options
1164
1221
  ===== -a|--app APP_NAME
1165
1222
 
@@ -1175,6 +1232,13 @@ Open with app bundle id
1175
1232
  [Default Value] None
1176
1233
 
1177
1234
 
1235
+ ===== -e|--editor COMMAND
1236
+
1237
+ Open with editor command (e.g. vim, mate)
1238
+
1239
+ [Default Value] None
1240
+
1241
+
1178
1242
  ==== Command: <tt>plugins </tt>
1179
1243
  List installed plugins
1180
1244
 
@@ -1381,6 +1445,20 @@ Multiple selections are allowed, hit tab to add the highlighted entry to the
1381
1445
  selection, and use ctrl-a to select all visible items. Return processes the
1382
1446
  selected entries.
1383
1447
  ===== Options
1448
+ ===== --after DATE_STRING
1449
+
1450
+ Select from entries newer than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
1451
+
1452
+ [Default Value] None
1453
+
1454
+
1455
+ ===== --before DATE_STRING
1456
+
1457
+ Select from entries older than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
1458
+
1459
+ [Default Value] None
1460
+
1461
+
1384
1462
  ===== --case TYPE
1385
1463
 
1386
1464
  Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart]
@@ -1389,6 +1467,18 @@ Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart
1389
1467
  [Must Match] (?-mix:^[csi])
1390
1468
 
1391
1469
 
1470
+ ===== --from DATE_OR_RANGE
1471
+
1472
+ Date range to show, or a single day to filter date on.
1473
+ Date range argument should be quoted. Date specifications can be natural language.
1474
+ To specify a range, use "to" or "through": `doing select --from "monday 8am to friday 5pm"`.
1475
+
1476
+ If values are only time(s) (6am to noon) all dates will be included, but entries will be filtered
1477
+ by time of day.
1478
+
1479
+ [Default Value] None
1480
+
1481
+
1392
1482
  ===== -m|--move SECTION
1393
1483
 
1394
1484
  Move selected items to section
@@ -1506,7 +1596,7 @@ Age (oldest|newest)
1506
1596
 
1507
1597
  ===== --after DATE_STRING
1508
1598
 
1509
- View entries newer than date
1599
+ Show entries newer than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
1510
1600
 
1511
1601
  [Default Value] None
1512
1602
 
@@ -1521,7 +1611,7 @@ Tag boolean (AND,OR,NOT)
1521
1611
 
1522
1612
  ===== --before DATE_STRING
1523
1613
 
1524
- View entries older than date
1614
+ Show entries older than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
1525
1615
 
1526
1616
  [Default Value] None
1527
1617
 
@@ -1541,11 +1631,14 @@ Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart
1541
1631
  [Must Match] (?-mix:^[csi])
1542
1632
 
1543
1633
 
1544
- ===== -f|--from DATE_OR_RANGE
1634
+ ===== --from DATE_OR_RANGE
1545
1635
 
1546
1636
  Date range to show, or a single day to filter date on.
1547
- Date range argument should be quoted. Date specifications can be natural language.
1548
- To specify a range, use "to" or "through": `doing show --from "monday to friday"`
1637
+ Date range argument should be quoted. Date specifications can be natural language.
1638
+ To specify a range, use "to" or "through": `doing show --from "monday 8am to friday 5pm"`.
1639
+
1640
+ If values are only time(s) (6am to noon) all dates will be included, but entries will be filtered
1641
+ by time of day.
1549
1642
 
1550
1643
  [Default Value] None
1551
1644
 
@@ -1734,7 +1827,7 @@ Tag the last X entries containing TAG.
1734
1827
 
1735
1828
 
1736
1829
  ===== -a|--autotag
1737
- Autotag entries based on autotag configuration in ~/.doingrc
1830
+ Autotag entries based on autotag configuration in ~/.config/doing/config.yml
1738
1831
 
1739
1832
 
1740
1833
 
@@ -1784,7 +1877,7 @@ Output HTML, CSS, and Markdown (ERB) templates for customization
1784
1877
  Templates are printed to STDOUT for piping to a file.
1785
1878
  Save them and use them in the configuration file under export_templates.
1786
1879
  ===== Options
1787
- ===== -c
1880
+ ===== -c|--[no-]column
1788
1881
  List in single column for completion
1789
1882
 
1790
1883
 
@@ -1817,6 +1910,13 @@ View entries before specified time (e.g. 8am, 12:30pm, 15:00)
1817
1910
  [Default Value] None
1818
1911
 
1819
1912
 
1913
+ ===== --from DATE_OR_RANGE
1914
+
1915
+ Time range to show `doing today --from "12pm to 4pm"`
1916
+
1917
+ [Default Value] None
1918
+
1919
+
1820
1920
  ===== -o|--output FORMAT
1821
1921
 
1822
1922
  Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
@@ -1850,7 +1950,7 @@ Show time totals at the end of output
1850
1950
 
1851
1951
 
1852
1952
  ==== Command: <tt>undo </tt>
1853
- Undo the last change to the doing_file
1953
+ Undo the last change to the Doing file
1854
1954
 
1855
1955
 
1856
1956
  ===== Options
@@ -1868,7 +1968,7 @@ Command line options override view configuration
1868
1968
  ===== Options
1869
1969
  ===== --after DATE_STRING
1870
1970
 
1871
- View entries newer than date
1971
+ View entries newer than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
1872
1972
 
1873
1973
  [Default Value] None
1874
1974
 
@@ -1883,7 +1983,7 @@ Tag boolean (AND,OR,NOT)
1883
1983
 
1884
1984
  ===== --before DATE_STRING
1885
1985
 
1886
- View entries older than date
1986
+ View entries older than date. If this is only a time (8am, 1:30pm, 15:00), all dates will be included, but entries will be filtered by time of day.
1887
1987
 
1888
1988
  [Default Value] None
1889
1989
 
@@ -1904,6 +2004,18 @@ Case sensitivity for search string matching [(c)ase-sensitive, (i)gnore, (s)mart
1904
2004
  [Must Match] (?-mix:^[csi])
1905
2005
 
1906
2006
 
2007
+ ===== --from DATE_OR_RANGE
2008
+
2009
+ Date range to show, or a single day to filter date on.
2010
+ Date range argument should be quoted. Date specifications can be natural language.
2011
+ To specify a range, use "to" or "through": `doing view --from "monday 8am to friday 5pm" view_name`.
2012
+
2013
+ If values are only time(s) (6am to noon) all dates will be included, but entries will be filtered
2014
+ by time of day.
2015
+
2016
+ [Default Value] None
2017
+
2018
+
1907
2019
  ===== -o|--output FORMAT
1908
2020
 
1909
2021
  Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
@@ -2074,6 +2186,13 @@ View entries before specified time (e.g. 8am, 12:30pm, 15:00)
2074
2186
  [Default Value] None
2075
2187
 
2076
2188
 
2189
+ ===== --from TIME_RANGE
2190
+
2191
+ Time range to show, e.g. `doing yesterday --from "1am to 8am"`
2192
+
2193
+ [Default Value] None
2194
+
2195
+
2077
2196
  ===== -o|--output FORMAT
2078
2197
 
2079
2198
  Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
data/example_plugin.rb CHANGED
@@ -14,13 +14,13 @@
14
14
  # Change what the plugin says by generating a template with
15
15
  # `doing template --type say`, saving it to a file, and
16
16
  # putting the path to that file in `export_templates->say` in
17
- # .doingrc.
17
+ # config.yml.
18
18
  #
19
19
  # export_templates:
20
20
  # say: /path/to/template.txt
21
21
  #
22
22
  # Use a different voice by adding a `say_voice` key to your
23
- # .doingrc. Use `say -v ?` to see available voices.
23
+ # config.yml. Use `say -v ?` to see available voices.
24
24
  #
25
25
  # say_voice: Zarvox
26
26
 
@@ -136,9 +136,9 @@ module Doing
136
136
  # or :map to generate output.
137
137
  i = items[-1]
138
138
 
139
- # Format the item. Items are a hash with 4 keys: date,
140
- # title, section (parent section), and note. Start
141
- # time is in item.date. The wwid object has some
139
+ # Format the item. Items are an object with 4 methods:
140
+ # date, title, section (parent section), and note.
141
+ # Start time is in item.date. The wwid object has some
142
142
  # methods for calculation and formatting, including
143
143
  # wwid.item.end_date to convert the @done timestamp to
144
144
  # an end date.