doing 1.0.92 → 2.0.5.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHORS +19 -0
  3. data/CHANGELOG.md +596 -0
  4. data/COMMANDS.md +1181 -0
  5. data/Gemfile +2 -0
  6. data/Gemfile.lock +110 -0
  7. data/LICENSE +23 -0
  8. data/README.md +15 -699
  9. data/Rakefile +79 -0
  10. data/_config.yml +1 -0
  11. data/bin/doing +1012 -486
  12. data/doing.fish +278 -0
  13. data/doing.gemspec +34 -0
  14. data/doing.rdoc +1759 -0
  15. data/example_plugin.rb +209 -0
  16. data/generate_completions.sh +4 -0
  17. data/img/doing-colors.jpg +0 -0
  18. data/img/doing-printf-wrap-800.jpg +0 -0
  19. data/img/doing-show-note-formatting-800.jpg +0 -0
  20. data/lib/completion/_doing.zsh +151 -0
  21. data/lib/completion/doing.bash +416 -0
  22. data/lib/completion/doing.fish +278 -0
  23. data/lib/doing/array.rb +8 -0
  24. data/lib/doing/cli_status.rb +66 -0
  25. data/lib/doing/colors.rb +136 -0
  26. data/lib/doing/configuration.rb +312 -0
  27. data/lib/doing/errors.rb +102 -0
  28. data/lib/doing/hash.rb +31 -0
  29. data/lib/doing/hooks.rb +59 -0
  30. data/lib/doing/item.rb +155 -0
  31. data/lib/doing/log_adapter.rb +342 -0
  32. data/lib/doing/markdown_document_listener.rb +174 -0
  33. data/lib/doing/note.rb +59 -0
  34. data/lib/doing/pager.rb +95 -0
  35. data/lib/doing/plugin_manager.rb +208 -0
  36. data/lib/doing/plugins/export/csv_export.rb +48 -0
  37. data/lib/doing/plugins/export/html_export.rb +83 -0
  38. data/lib/doing/plugins/export/json_export.rb +140 -0
  39. data/lib/doing/plugins/export/markdown_export.rb +85 -0
  40. data/lib/doing/plugins/export/taskpaper_export.rb +34 -0
  41. data/lib/doing/plugins/export/template_export.rb +141 -0
  42. data/lib/doing/plugins/import/cal_to_json.scpt +0 -0
  43. data/lib/doing/plugins/import/calendar_import.rb +76 -0
  44. data/lib/doing/plugins/import/doing_import.rb +144 -0
  45. data/lib/doing/plugins/import/timing_import.rb +78 -0
  46. data/lib/doing/string.rb +347 -0
  47. data/lib/doing/symbol.rb +16 -0
  48. data/lib/doing/time.rb +18 -0
  49. data/lib/doing/util.rb +186 -0
  50. data/lib/doing/version.rb +1 -1
  51. data/lib/doing/wwid.rb +1868 -2356
  52. data/lib/doing/wwidfile.rb +117 -0
  53. data/lib/doing.rb +44 -4
  54. data/lib/examples/commands/wiki.rb +81 -0
  55. data/lib/examples/plugins/hooks.rb +22 -0
  56. data/lib/examples/plugins/say_export.rb +202 -0
  57. data/lib/examples/plugins/templates/wiki.css +169 -0
  58. data/lib/examples/plugins/templates/wiki.haml +27 -0
  59. data/lib/examples/plugins/templates/wiki_index.haml +18 -0
  60. data/lib/examples/plugins/wiki_export.rb +87 -0
  61. data/lib/templates/doing-markdown.erb +5 -0
  62. data/man/doing.1 +964 -0
  63. data/man/doing.1.html +711 -0
  64. data/man/doing.1.ronn +600 -0
  65. data/package-lock.json +3 -0
  66. data/rdoc_to_mmd.rb +42 -0
  67. data/rdocfixer.rb +13 -0
  68. data/scripts/generate_bash_completions.rb +210 -0
  69. data/scripts/generate_fish_completions.rb +201 -0
  70. data/scripts/generate_zsh_completions.rb +164 -0
  71. metadata +82 -7
  72. data/lib/doing/helpers.rb +0 -191
  73. data/lib/doing/markdown_export.rb +0 -16
data/doing.rdoc ADDED
@@ -0,0 +1,1759 @@
1
+ == doing - A CLI for a What Was I Doing system
2
+
3
+ Doing uses a TaskPaper-like formatting to keep a plain text record of what you've been doing, complete with tag-based time tracking. The command line tool allows you to add entries, annotate with tags and notes, and view your entries with myriad options, with a focus on a "natural" language syntax.
4
+
5
+ v2.0.5.pre
6
+
7
+ === Global Options
8
+ === --config_file arg
9
+
10
+ Use a specific configuration file. Deprecated, set $DOING_CONFIG instead.
11
+
12
+ [Default Value] /Users/ttscoff/.doingrc
13
+
14
+
15
+ === -f|--doing_file arg
16
+
17
+ Specify a different doing_file
18
+
19
+ [Default Value] None
20
+
21
+
22
+ === --[no-]color
23
+ Colored output
24
+
25
+
26
+
27
+ === --debug
28
+ Verbose output
29
+
30
+
31
+
32
+ === --[no-]default
33
+ Answer yes/no menus with default option
34
+
35
+
36
+
37
+ === --help
38
+ Show this message
39
+
40
+
41
+
42
+ === --[no-]notes
43
+ Output notes if included in the template
44
+
45
+
46
+
47
+ === -p|--[no-]pager
48
+ Use a pager when output is longer than screen
49
+
50
+
51
+
52
+ === -q|--quiet
53
+ Silence info messages
54
+
55
+
56
+
57
+ === --stdout
58
+ Send results report to STDOUT instead of STDERR
59
+
60
+
61
+
62
+ === --version
63
+ Display the program version
64
+
65
+
66
+
67
+ === -x|--noauto
68
+ Exclude auto tags and default tags
69
+
70
+
71
+
72
+ === Commands
73
+ ==== Command: <tt>add_section SECTION_NAME</tt>
74
+ Add a new section to the "doing" file
75
+
76
+
77
+ ==== Command: <tt>again|resume </tt>
78
+ Repeat last entry as new entry
79
+
80
+
81
+ ===== Options
82
+ ===== --bool BOOLEAN
83
+
84
+ Boolean used to combine multiple tags
85
+
86
+ [Default Value] AND
87
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
88
+
89
+
90
+ ===== --in SECTION_NAME
91
+
92
+ Add new entry to section (default: same section as repeated entry)
93
+
94
+ [Default Value] None
95
+
96
+
97
+ ===== -n|--note TEXT
98
+
99
+ Note
100
+
101
+ [Default Value] None
102
+
103
+
104
+ ===== -s|--section NAME
105
+
106
+ Get last entry from a specific section
107
+
108
+ [Default Value] All
109
+
110
+
111
+ ===== --search QUERY
112
+
113
+ Repeat last entry matching search. Surround with
114
+ slashes for regex (e.g. "/query/"), start with a single quote for exact match ("'query").
115
+
116
+ [Default Value] None
117
+
118
+
119
+ ===== --tag TAG
120
+
121
+ Repeat last entry matching tags. Combine multiple tags with a comma.
122
+
123
+ [Default Value] None
124
+
125
+
126
+ ===== -e|--editor
127
+ Edit duplicated entry with vim before adding
128
+
129
+
130
+
131
+ ===== -i|--interactive
132
+ Select item to resume from a menu of matching entries
133
+
134
+
135
+
136
+ ==== Command: <tt>archive|move SECTION_OR_TAG</tt>
137
+ Move entries between sections
138
+
139
+ Argument can be a section name to move all entries from a section,
140
+ or start with an "@" to move entries matching a tag.
141
+
142
+ Default with no argument moves items from the "Currently" section to Archive.
143
+ ===== Options
144
+ ===== --before DATE_STRING
145
+
146
+ Archive entries older than date
147
+ (Flexible date format, e.g. 1/27/2021, 2020-07-19, or Monday 3pm)
148
+
149
+ [Default Value] None
150
+
151
+
152
+ ===== --bool BOOLEAN
153
+
154
+ Tag boolean (AND|OR|NOT)
155
+
156
+ [Default Value] AND
157
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
158
+
159
+
160
+ ===== -k|--keep X
161
+
162
+ How many items to keep (ignored if archiving by tag or search)
163
+
164
+ [Default Value] None
165
+ [Must Match] (?-mix:^\d+$)
166
+
167
+
168
+ ===== --search QUERY
169
+
170
+ Search filter
171
+
172
+ [Default Value] None
173
+
174
+
175
+ ===== -t|--to SECTION_NAME
176
+
177
+ Move entries to
178
+
179
+ [Default Value] Archive
180
+
181
+
182
+ ===== --tag TAG
183
+
184
+ Tag filter, combine multiple tags with a comma. Added for compatibility with other commands.
185
+
186
+ [Default Value] None
187
+
188
+
189
+ ===== --[no-]label
190
+ Label moved items with @from(SECTION_NAME)
191
+
192
+
193
+
194
+ ==== Command: <tt>cancel COUNT</tt>
195
+ End last X entries with no time tracked
196
+
197
+ Adds @done tag without datestamp so no elapsed time is recorded. Alias for `doing finish --no-date`.
198
+ ===== Options
199
+ ===== --bool BOOLEAN
200
+
201
+ Boolean (AND|OR|NOT) with which to combine multiple tag filters
202
+
203
+ [Default Value] AND
204
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
205
+
206
+
207
+ ===== -s|--section NAME
208
+
209
+ Section
210
+
211
+ [Default Value] None
212
+
213
+
214
+ ===== --tag TAG
215
+
216
+ Cancel the last X entries containing TAG. Separate multiple tags with comma (--tag=tag1,tag2)
217
+
218
+ [Default Value] None
219
+
220
+
221
+ ===== -a|--archive
222
+ Archive entries
223
+
224
+
225
+
226
+ ===== -i|--interactive
227
+ Select item(s) to cancel from a menu of matching entries
228
+
229
+
230
+
231
+ ===== -u|--unfinished
232
+ Cancel last entry (or entries) not already marked @done
233
+
234
+
235
+
236
+ ==== Command: <tt>choose </tt>
237
+ Select a section to display from a menu
238
+
239
+
240
+ ==== Command: <tt>colors </tt>
241
+ List available color variables for configuration templates and views
242
+
243
+
244
+ ==== Command: <tt>config KEY_PATH</tt>
245
+ Edit the configuration file or output a value from it
246
+
247
+ Run without arguments, `doing config` opens your `.doingrc` in an editor.
248
+ If local configurations are found in the path between the current directory
249
+ and `~/.doingrc`, a menu will allow you to select which to open in the editor.
250
+
251
+ It will use the editor defined in `config_editor_app`, or one specified with `--editor`.
252
+
253
+ Use `doing config -d` to output the configuration to the terminal, and
254
+ provide a dot-separated key path to get a specific value. Shows the current value
255
+ including keys/overrides set by local configs.
256
+ ===== Options
257
+ ===== -a APP_NAME
258
+
259
+ Application to use
260
+
261
+ [Default Value] None
262
+
263
+
264
+ ===== -b BUNDLE_ID
265
+
266
+ Application bundle id to use
267
+
268
+ [Default Value] None
269
+
270
+
271
+ ===== -e|--editor EDITOR
272
+
273
+ Editor to use
274
+
275
+ [Default Value] None
276
+
277
+
278
+ ===== -o|--output FORMAT
279
+
280
+ Format for --dump (json|yaml|raw)
281
+
282
+ [Default Value] yaml
283
+ [Must Match] (?-mix:^(?:y(?:aml)?|j(?:son)?|r(?:aw)?)$)
284
+
285
+
286
+ ===== -d|--[no-]dump
287
+ 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.
288
+
289
+
290
+
291
+ ===== -u|--update
292
+ Update config file with missing configuration options
293
+
294
+
295
+
296
+ ===== -x
297
+ Use the config_editor_app defined in ~/.doingrc (config_editor_app not set)
298
+
299
+
300
+
301
+ ==== Command: <tt>done|did ENTRY</tt>
302
+ Add a completed item with @done(date). No argument finishes last entry.
303
+
304
+
305
+ ===== Options
306
+ ===== --at DATE_STRING
307
+
308
+ Set finish date to specific date/time (natural langauge parsed, e.g. --at=1:30pm).
309
+ If used, ignores --back. Used with --took, backdates start date
310
+
311
+ [Default Value] None
312
+
313
+
314
+ ===== -b|--back DATE_STRING
315
+
316
+ Backdate start date by interval [4pm|20m|2h|yesterday noon]
317
+
318
+ [Default Value] None
319
+
320
+
321
+ ===== -n|--note TEXT
322
+
323
+ Include a note
324
+
325
+ [Default Value] None
326
+
327
+
328
+ ===== -s|--section NAME
329
+
330
+ Section
331
+
332
+ [Default Value] None
333
+
334
+
335
+ ===== -t|--took INTERVAL
336
+
337
+ Set completion date to start date plus interval (XX[mhd] or HH:MM).
338
+ If used without the --back option, the start date will be moved back to allow
339
+ the completion date to be the current time.
340
+
341
+ [Default Value] None
342
+
343
+
344
+ ===== -a|--archive
345
+ Immediately archive the entry
346
+
347
+
348
+
349
+ ===== --[no-]date
350
+ Include date
351
+
352
+
353
+
354
+ ===== -e|--editor
355
+ Edit entry with vim (with no arguments, edits the last entry)
356
+
357
+
358
+
359
+ ===== -r|--remove
360
+ Remove @done tag
361
+
362
+
363
+
364
+ ===== -u|--unfinished
365
+ Finish last entry not already marked @done
366
+
367
+
368
+
369
+ ==== Command: <tt>finish COUNT</tt>
370
+ Mark last X entries as @done
371
+
372
+ Marks the last X entries with a @done tag and current date. Does not alter already completed entries.
373
+ ===== Options
374
+ ===== --at DATE_STRING
375
+
376
+ Set finish date to specific date/time (natural langauge parsed, e.g. --at=1:30pm). If used, ignores --back.
377
+
378
+ [Default Value] None
379
+
380
+
381
+ ===== -b|--back DATE_STRING
382
+
383
+ Backdate completed date to date string [4pm|20m|2h|yesterday noon]
384
+
385
+ [Default Value] None
386
+
387
+
388
+ ===== --bool BOOLEAN
389
+
390
+ Boolean (AND|OR|NOT) with which to combine multiple tag filters
391
+
392
+ [Default Value] AND
393
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
394
+
395
+
396
+ ===== -s|--section NAME
397
+
398
+ Section
399
+
400
+ [Default Value] None
401
+
402
+
403
+ ===== --search QUERY
404
+
405
+ Finish the last X entries matching search filter, surround with slashes for regex (e.g. "/query.*/"), start with single quote for exact match ("'query")
406
+
407
+ [Default Value] None
408
+
409
+
410
+ ===== -t|--took INTERVAL
411
+
412
+ Set the completed date to the start date plus XX[hmd]
413
+
414
+ [Default Value] None
415
+
416
+
417
+ ===== --tag TAG
418
+
419
+ Finish the last X entries containing TAG.
420
+ Separate multiple tags with comma (--tag=tag1,tag2), combine with --bool
421
+
422
+ [Default Value] None
423
+
424
+
425
+ ===== -a|--archive
426
+ Archive entries
427
+
428
+
429
+
430
+ ===== --auto
431
+ Auto-generate finish dates from next entry's start time.
432
+ Automatically generate completion dates 1 minute before next item (in any section) began.
433
+ --auto overrides the --date and --back parameters.
434
+
435
+
436
+
437
+ ===== --[no-]date
438
+ Include date
439
+
440
+
441
+
442
+ ===== -i|--interactive
443
+ Select item(s) to finish from a menu of matching entries
444
+
445
+
446
+
447
+ ===== -r|--remove
448
+ Remove done tag
449
+
450
+
451
+
452
+ ===== -u|--unfinished
453
+ Finish last entry (or entries) not already marked @done
454
+
455
+
456
+
457
+ ==== Command: <tt>grep|search SEARCH_PATTERN</tt>
458
+ Search for entries
459
+
460
+ Search all sections (or limit to a single section) for entries matching text or regular expression. Normal strings are fuzzy matched.
461
+
462
+ To search with regular expressions, single quote the string and surround with slashes: `doing search '/\bm.*?x\b/'`
463
+ ===== Options
464
+ ===== --after DATE_STRING
465
+
466
+ Constrain search to entries newer than date
467
+
468
+ [Default Value] None
469
+
470
+
471
+ ===== --before DATE_STRING
472
+
473
+ Constrain search to entries older than date
474
+
475
+ [Default Value] None
476
+
477
+
478
+ ===== -o|--output FORMAT
479
+
480
+ Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
481
+
482
+ [Default Value] None
483
+
484
+
485
+ ===== -s|--section NAME
486
+
487
+ Section
488
+
489
+ [Default Value] All
490
+
491
+
492
+ ===== --tag_sort KEY
493
+
494
+ Sort tags by (name|time)
495
+
496
+ [Default Value] name
497
+ [Must Match] (?i-mx:^(?:name|time)$)
498
+
499
+
500
+ ===== -i|--interactive
501
+ Display an interactive menu of results to perform further operations
502
+
503
+
504
+
505
+ ===== --only_timed
506
+ Only show items with recorded time intervals
507
+
508
+
509
+
510
+ ===== -t|--[no-]times
511
+ Show time intervals on @done tasks
512
+
513
+
514
+
515
+ ===== --totals
516
+ Show intervals with totals at the end of output
517
+
518
+
519
+
520
+ ==== Command: <tt>help command</tt>
521
+ Shows a list of commands or help for one command
522
+
523
+ Gets help for the application or its commands. Can also list the commands in a way helpful to creating a bash-style completion function
524
+ ===== Options
525
+ ===== -c
526
+ List commands one per line, to assist with shell completion
527
+
528
+
529
+
530
+ ==== Command: <tt>import PATH</tt>
531
+ Import entries from an external source
532
+
533
+ Imports entries from other sources. Available plugins: calendar, doing, timing
534
+ ===== Options
535
+ ===== --after DATE_STRING
536
+
537
+ Import entries newer than date
538
+
539
+ [Default Value] None
540
+
541
+
542
+ ===== --before DATE_STRING
543
+
544
+ Import entries older than date
545
+
546
+ [Default Value] None
547
+
548
+
549
+ ===== -f|--from DATE_OR_RANGE
550
+
551
+ Date range to import. Date range argument should be quoted. Date specifications can be natural language.
552
+ To specify a range, use "to" or "through": `--from "monday to friday"` or `--from 10/1 to 10/31`.
553
+ Has no effect unless the import plugin has implemented date range filtering.
554
+
555
+ [Default Value] None
556
+
557
+
558
+ ===== --prefix PREFIX
559
+
560
+ Prefix entries with
561
+
562
+ [Default Value] None
563
+
564
+
565
+ ===== -s|--section NAME
566
+
567
+ Target section
568
+
569
+ [Default Value] None
570
+
571
+
572
+ ===== --search QUERY
573
+
574
+ Only import items matching search. Surround with slashes for regex (/query/), start with single quote for exact match ("'query")
575
+
576
+ [Default Value] None
577
+
578
+
579
+ ===== --tag TAGS
580
+
581
+ Tag all imported entries
582
+
583
+ [Default Value] None
584
+
585
+
586
+ ===== --type TYPE
587
+
588
+ Import type (calendar|doing|timing)
589
+
590
+ [Default Value] doing
591
+
592
+
593
+ ===== --[no-]autotag
594
+ Autotag entries
595
+
596
+
597
+
598
+ ===== --only_timed
599
+ Only import items with recorded time intervals
600
+
601
+
602
+
603
+ ===== --[no-]overlap
604
+ Allow entries that overlap existing times
605
+
606
+
607
+
608
+ ==== Command: <tt>last </tt>
609
+ Show the last entry, optionally edit
610
+
611
+
612
+ ===== Options
613
+ ===== --bool BOOLEAN
614
+
615
+ Tag boolean
616
+
617
+ [Default Value] AND
618
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
619
+
620
+
621
+ ===== -s|--section NAME
622
+
623
+ Specify a section
624
+
625
+ [Default Value] All
626
+
627
+
628
+ ===== --search QUERY
629
+
630
+ Search filter, surround with slashes for regex (/query/), start with single quote for exact match ("'query")
631
+
632
+ [Default Value] None
633
+
634
+
635
+ ===== --tag TAG
636
+
637
+ Tag filter, combine multiple tags with a comma.
638
+
639
+ [Default Value] None
640
+
641
+
642
+ ===== -e|--editor
643
+ Edit entry with vim
644
+
645
+
646
+
647
+ ==== Command: <tt>later ENTRY</tt>
648
+ Add an item to the Later section
649
+
650
+
651
+ ===== Options
652
+ ===== -b|--back DATE_STRING
653
+
654
+ Backdate start time to date string [4pm|20m|2h|yesterday noon]
655
+
656
+ [Default Value] None
657
+
658
+
659
+ ===== -n|--note TEXT
660
+
661
+ Note
662
+
663
+ [Default Value] None
664
+
665
+
666
+ ===== -e|--editor
667
+ Edit entry with vim
668
+
669
+
670
+
671
+ ==== Command: <tt>mark|flag </tt>
672
+ Mark last entry as flagged
673
+
674
+
675
+ ===== Options
676
+ ===== --bool BOOLEAN
677
+
678
+ Boolean (AND|OR|NOT) with which to combine multiple tag filters
679
+
680
+ [Default Value] AND
681
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
682
+
683
+
684
+ ===== -c|--count COUNT
685
+
686
+ How many recent entries to tag (0 for all)
687
+
688
+ [Default Value] 1
689
+ [Must Match] (?-mix:^\d+$)
690
+
691
+
692
+ ===== -s|--section SECTION_NAME
693
+
694
+ Section
695
+
696
+ [Default Value] All
697
+
698
+
699
+ ===== --search QUERY
700
+
701
+ Flag the last entry matching search filter, surround with slashes for regex (e.g. "/query.*/"), start with single quote for exact match ("'query")
702
+
703
+ [Default Value] None
704
+
705
+
706
+ ===== --tag TAG
707
+
708
+ Flag the last entry containing TAG.
709
+ Separate multiple tags with comma (--tag=tag1,tag2), combine with --bool
710
+
711
+ [Default Value] None
712
+
713
+
714
+ ===== -d|--date
715
+ Include current date/time with tag
716
+
717
+
718
+
719
+ ===== --force
720
+ Don't ask permission to flag all entries when count is 0
721
+
722
+
723
+
724
+ ===== -i|--interactive
725
+ Select item(s) to flag from a menu of matching entries
726
+
727
+
728
+
729
+ ===== -r|--remove
730
+ Remove flag
731
+
732
+
733
+
734
+ ===== -u|--unfinished
735
+ Flag last entry (or entries) not marked @done
736
+
737
+
738
+
739
+ ==== Command: <tt>meanwhile ENTRY</tt>
740
+ Finish any running @meanwhile tasks and optionally create a new one
741
+
742
+
743
+ ===== Options
744
+ ===== -b|--back DATE_STRING
745
+
746
+ Backdate start date for new entry to date string [4pm|20m|2h|yesterday noon]
747
+
748
+ [Default Value] None
749
+
750
+
751
+ ===== -n|--note TEXT
752
+
753
+ Note
754
+
755
+ [Default Value] None
756
+
757
+
758
+ ===== -s|--section NAME
759
+
760
+ Section
761
+
762
+ [Default Value] None
763
+
764
+
765
+ ===== -a|--[no-]archive
766
+ Archive previous @meanwhile entry
767
+
768
+
769
+
770
+ ===== -e|--editor
771
+ Edit entry with vim
772
+
773
+
774
+
775
+ ==== Command: <tt>note NOTE_TEXT</tt>
776
+ Add a note to the last entry
777
+
778
+ If -r is provided with no other arguments, the last note is removed.
779
+ If new content is specified through arguments or STDIN, any previous
780
+ note will be replaced with the new one.
781
+
782
+ Use -e to load the last entry in a text editor where you can append a note.
783
+ ===== Options
784
+ ===== --bool BOOLEAN
785
+
786
+ Boolean (AND|OR|NOT) with which to combine multiple tag filters
787
+
788
+ [Default Value] AND
789
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
790
+
791
+
792
+ ===== -s|--section NAME
793
+
794
+ Section
795
+
796
+ [Default Value] All
797
+
798
+
799
+ ===== --search QUERY
800
+
801
+ Add/remove note from last entry matching search filter, surround with slashes for regex (e.g. "/query.*/"), start with single quote for exact match ("'query")
802
+
803
+ [Default Value] None
804
+
805
+
806
+ ===== --tag TAG
807
+
808
+ Add/remove note from last entry matching tag
809
+
810
+ [Default Value] None
811
+
812
+
813
+ ===== -e|--editor
814
+ Edit entry with vim
815
+
816
+
817
+
818
+ ===== -i|--interactive
819
+ Select item for new note from a menu of matching entries
820
+
821
+
822
+
823
+ ===== -r|--remove
824
+ Replace/Remove last entry's note (default append)
825
+
826
+
827
+
828
+ ==== Command: <tt>now|next ENTRY</tt>
829
+ Add an entry
830
+
831
+ Record what you're starting now, or backdate the start time using natural language.
832
+
833
+ A parenthetical at the end of the entry will be converted to a note.
834
+
835
+ Run with no argument to create a new entry using vim.
836
+ ===== Options
837
+ ===== -b|--back DATE_STRING
838
+
839
+ Backdate start time [4pm|20m|2h|yesterday noon]
840
+
841
+ [Default Value] None
842
+
843
+
844
+ ===== -n|--note TEXT
845
+
846
+ Include a note
847
+
848
+ [Default Value] None
849
+
850
+
851
+ ===== -s|--section NAME
852
+
853
+ Section
854
+
855
+ [Default Value] None
856
+
857
+
858
+ ===== -e|--editor
859
+ Edit entry with vim
860
+
861
+
862
+
863
+ ===== -f|--finish_last
864
+ Timed entry, marks last entry in section as @done
865
+
866
+
867
+
868
+ ==== Command: <tt>on DATE_STRING</tt>
869
+ List entries for a date
870
+
871
+ Date argument can be natural language. "thursday" would be interpreted as "last thursday,"
872
+ and "2d" would be interpreted as "two days ago." If you use "to" or "through" between two dates,
873
+ it will create a range.
874
+ ===== Options
875
+ ===== -o|--output FORMAT
876
+
877
+ Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
878
+
879
+ [Default Value] None
880
+
881
+
882
+ ===== -s|--section NAME
883
+
884
+ Section
885
+
886
+ [Default Value] All
887
+
888
+
889
+ ===== --tag_sort KEY
890
+
891
+ Sort tags by (name|time)
892
+
893
+ [Default Value] name
894
+ [Must Match] (?i-mx:^(?:name|time)$)
895
+
896
+
897
+ ===== -t|--[no-]times
898
+ Show time intervals on @done tasks
899
+
900
+
901
+
902
+ ===== --totals
903
+ Show time totals at the end of output
904
+
905
+
906
+
907
+ ==== Command: <tt>open </tt>
908
+ Open the "doing" file in an editor
909
+
910
+ `doing open` defaults to using the editor_app setting in /Users/ttscoff/.doingrc (not set).
911
+ ===== Options
912
+ ===== -a|--app APP_NAME
913
+
914
+ Open with app name
915
+
916
+ [Default Value] None
917
+
918
+
919
+ ===== -b|--bundle_id BUNDLE_ID
920
+
921
+ Open with app bundle id
922
+
923
+ [Default Value] None
924
+
925
+
926
+ ==== Command: <tt>plugins </tt>
927
+ List installed plugins
928
+
929
+ Lists available plugins, including user-installed plugins.
930
+
931
+ Export plugins are available with the `--output` flag on commands that support it.
932
+
933
+ Import plugins are available using `doing import --type PLUGIN`.
934
+ ===== Options
935
+ ===== -t|--type TYPE
936
+
937
+ List plugins of type (import, export)
938
+
939
+ [Default Value] all
940
+ [Must Match] (?i-mx:^[iea].*$)
941
+
942
+
943
+ ===== -c|--[no-]column
944
+ List in single column for completion
945
+
946
+
947
+
948
+ ==== Command: <tt>recent COUNT</tt>
949
+ List recent entries
950
+
951
+
952
+ ===== Options
953
+ ===== -s|--section NAME
954
+
955
+ Section
956
+
957
+ [Default Value] All
958
+
959
+
960
+ ===== --tag_sort KEY
961
+
962
+ Sort tags by (name|time)
963
+
964
+ [Default Value] name
965
+ [Must Match] (?i-mx:^(?:name|time)$)
966
+
967
+
968
+ ===== -i|--interactive
969
+ Select from a menu of matching entries to perform additional operations
970
+
971
+
972
+
973
+ ===== -t|--[no-]times
974
+ Show time intervals on @done tasks
975
+
976
+
977
+
978
+ ===== --totals
979
+ Show intervals with totals at the end of output
980
+
981
+
982
+
983
+ ==== Command: <tt>reset|begin </tt>
984
+ Reset the start time of an entry
985
+
986
+
987
+ ===== Options
988
+ ===== --bool BOOLEAN
989
+
990
+ Boolean (AND|OR|NOT) with which to combine multiple tag filters
991
+
992
+ [Default Value] AND
993
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
994
+
995
+
996
+ ===== -s|--section NAME
997
+
998
+ Set the start date of an item to now
999
+
1000
+ [Default Value] All
1001
+
1002
+
1003
+ ===== --search QUERY
1004
+
1005
+ Reset last entry matching search filter, surround with slashes for regex (e.g. "/query.*/"), start with single quote for exact match ("'query")
1006
+
1007
+ [Default Value] None
1008
+
1009
+
1010
+ ===== --tag TAG
1011
+
1012
+ Reset last entry matching tag
1013
+
1014
+ [Default Value] None
1015
+
1016
+
1017
+ ===== -i|--interactive
1018
+ Select from a menu of matching entries
1019
+
1020
+
1021
+
1022
+ ===== -r|--[no-]resume
1023
+ Resume entry (remove @done)
1024
+
1025
+
1026
+
1027
+ ==== Command: <tt>rotate </tt>
1028
+ Move entries to archive file
1029
+
1030
+
1031
+ ===== Options
1032
+ ===== --before DATE_STRING
1033
+
1034
+ Rotate entries older than date
1035
+ (Flexible date format, e.g. 1/27/2021, 2020-07-19, or Monday 3pm)
1036
+
1037
+ [Default Value] None
1038
+
1039
+
1040
+ ===== --bool BOOLEAN
1041
+
1042
+ Tag boolean (AND|OR|NOT)
1043
+
1044
+ [Default Value] AND
1045
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
1046
+
1047
+
1048
+ ===== -k|--keep X
1049
+
1050
+ How many items to keep in each section (most recent)
1051
+
1052
+ [Default Value] None
1053
+ [Must Match] (?-mix:^\d+$)
1054
+
1055
+
1056
+ ===== -s|--section SECTION_NAME
1057
+
1058
+ Section to rotate
1059
+
1060
+ [Default Value] All
1061
+
1062
+
1063
+ ===== --search QUERY
1064
+
1065
+ Search filter
1066
+
1067
+ [Default Value] None
1068
+
1069
+
1070
+ ===== --tag TAG
1071
+
1072
+ Tag filter, combine multiple tags with a comma. Added for compatibility with other commands.
1073
+
1074
+ [Default Value] None
1075
+
1076
+
1077
+ ==== Command: <tt>sections </tt>
1078
+ List sections
1079
+
1080
+
1081
+ ===== Options
1082
+ ===== -c|--[no-]column
1083
+ List in single column
1084
+
1085
+
1086
+
1087
+ ==== Command: <tt>select </tt>
1088
+ Display an interactive menu to perform operations
1089
+
1090
+ List all entries and select with typeahead fuzzy matching.
1091
+
1092
+ Multiple selections are allowed, hit tab to add the highlighted entry to the
1093
+ selection, and use ctrl-a to select all visible items. Return processes the
1094
+ selected entries.
1095
+ ===== Options
1096
+ ===== -m|--move SECTION
1097
+
1098
+ Move selected items to section
1099
+
1100
+ [Default Value] None
1101
+
1102
+
1103
+ ===== -o|--output FORMAT
1104
+
1105
+ Output entries to format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
1106
+
1107
+ [Default Value] None
1108
+
1109
+
1110
+ ===== -q|--query|--search QUERY
1111
+
1112
+ Initial search query for filtering. Matching is fuzzy. For exact matching, start query with a single quote, e.g. `--query "'search"
1113
+
1114
+ [Default Value] None
1115
+
1116
+
1117
+ ===== -s|--section SECTION
1118
+
1119
+ Select from a specific section
1120
+
1121
+ [Default Value] None
1122
+
1123
+
1124
+ ===== --save_to FILE
1125
+
1126
+ Save selected entries to file using --output format
1127
+
1128
+ [Default Value] None
1129
+
1130
+
1131
+ ===== -t|--tag TAG
1132
+
1133
+ Tag selected entries
1134
+
1135
+ [Default Value] None
1136
+
1137
+
1138
+ ===== -a|--archive
1139
+ Archive selected items
1140
+
1141
+
1142
+
1143
+ ===== --[no-]again|--[no-]resume
1144
+ Copy selection as a new entry with current time and no @done tag. Only works with single selections. Can be combined with --editor.
1145
+
1146
+
1147
+
1148
+ ===== -c|--cancel
1149
+ Cancel selected items (add @done without timestamp)
1150
+
1151
+
1152
+
1153
+ ===== -d|--delete
1154
+ Delete selected items
1155
+
1156
+
1157
+
1158
+ ===== -e|--editor
1159
+ Edit selected item(s)
1160
+
1161
+
1162
+
1163
+ ===== -f|--finish
1164
+ Add @done with current time to selected item(s)
1165
+
1166
+
1167
+
1168
+ ===== --flag
1169
+ Add flag to selected item(s)
1170
+
1171
+
1172
+
1173
+ ===== --force
1174
+ Perform action without confirmation.
1175
+
1176
+
1177
+
1178
+ ===== --[no-]menu
1179
+ Use --no-menu to skip the interactive menu. Use with --query to filter items and act on results automatically. Test with `--output doing` to preview matches.
1180
+
1181
+
1182
+
1183
+ ===== -r|--remove
1184
+ Reverse -c, -f, --flag, and -t (remove instead of adding)
1185
+
1186
+
1187
+
1188
+ ==== Command: <tt>show [SECTION|@TAGS]</tt>
1189
+ List all entries
1190
+
1191
+ The argument can be a section name, @tag(s) or both.
1192
+ "pick" or "choose" as an argument will offer a section menu.
1193
+ ===== Options
1194
+ ===== -a|--age AGE
1195
+
1196
+ Age (oldest|newest)
1197
+
1198
+ [Default Value] newest
1199
+
1200
+
1201
+ ===== --after DATE_STRING
1202
+
1203
+ View entries newer than date
1204
+
1205
+ [Default Value] None
1206
+
1207
+
1208
+ ===== -b|--bool BOOLEAN
1209
+
1210
+ Tag boolean (AND,OR,NOT)
1211
+
1212
+ [Default Value] OR
1213
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
1214
+
1215
+
1216
+ ===== --before DATE_STRING
1217
+
1218
+ View entries older than date
1219
+
1220
+ [Default Value] None
1221
+
1222
+
1223
+ ===== -c|--count MAX
1224
+
1225
+ Max count to show
1226
+
1227
+ [Default Value] 0
1228
+
1229
+
1230
+ ===== -f|--from DATE_OR_RANGE
1231
+
1232
+ Date range to show, or a single day to filter date on.
1233
+ Date range argument should be quoted. Date specifications can be natural language.
1234
+ To specify a range, use "to" or "through": `doing show --from "monday to friday"`
1235
+
1236
+ [Default Value] None
1237
+
1238
+
1239
+ ===== -o|--output FORMAT
1240
+
1241
+ Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
1242
+
1243
+ [Default Value] None
1244
+
1245
+
1246
+ ===== -s|--sort ORDER
1247
+
1248
+ Sort order (asc/desc)
1249
+
1250
+ [Default Value] asc
1251
+ [Must Match] (?i-mx:^(?:a(?:sc)?|d(?:esc)?)$)
1252
+
1253
+
1254
+ ===== --search QUERY
1255
+
1256
+ Search filter, surround with slashes for regex (/query/), start with single quote for exact match ("'query")
1257
+
1258
+ [Default Value] None
1259
+
1260
+
1261
+ ===== --tag TAG
1262
+
1263
+ Tag filter, combine multiple tags with a comma. Added for compatibility with other commands.
1264
+
1265
+ [Default Value] None
1266
+
1267
+
1268
+ ===== --tag_order DIRECTION
1269
+
1270
+ Tag sort direction (asc|desc)
1271
+
1272
+ [Default Value] asc
1273
+ [Must Match] (?i-mx:^(?:a(?:sc)?|d(?:esc)?)$)
1274
+
1275
+
1276
+ ===== --tag_sort KEY
1277
+
1278
+ Sort tags by (name|time)
1279
+
1280
+ [Default Value] name
1281
+ [Must Match] (?i-mx:^(?:name|time))
1282
+
1283
+
1284
+ ===== -i|--interactive
1285
+ Select from a menu of matching entries to perform additional operations
1286
+
1287
+
1288
+
1289
+ ===== --only_timed
1290
+ Only show items with recorded time intervals
1291
+
1292
+
1293
+
1294
+ ===== -t|--[no-]times
1295
+ Show time intervals on @done tasks
1296
+
1297
+
1298
+
1299
+ ===== --totals
1300
+ Show intervals with totals at the end of output
1301
+
1302
+
1303
+
1304
+ ==== Command: <tt>since DATE_STRING</tt>
1305
+ List entries since a date
1306
+
1307
+ Date argument can be natural language and are always interpreted as being in the past. "thursday" would be interpreted as "last thursday,"
1308
+ and "2d" would be interpreted as "two days ago."
1309
+ ===== Options
1310
+ ===== -o|--output FORMAT
1311
+
1312
+ Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
1313
+
1314
+ [Default Value] None
1315
+
1316
+
1317
+ ===== -s|--section NAME
1318
+
1319
+ Section
1320
+
1321
+ [Default Value] All
1322
+
1323
+
1324
+ ===== --tag_sort KEY
1325
+
1326
+ Sort tags by (name|time)
1327
+
1328
+ [Default Value] name
1329
+ [Must Match] (?i-mx:^(?:name|time)$)
1330
+
1331
+
1332
+ ===== -t|--[no-]times
1333
+ Show time intervals on @done tasks
1334
+
1335
+
1336
+
1337
+ ===== --totals
1338
+ Show time totals at the end of output
1339
+
1340
+
1341
+
1342
+ ==== Command: <tt>tag TAG...</tt>
1343
+ Add tag(s) to last entry
1344
+
1345
+ Add (or remove) tags from the last entry, or from multiple entries
1346
+ (with `--count`), entries matching a search (with `--search`), or entries
1347
+ containing another tag (with `--tag`).
1348
+
1349
+ When removing tags with `-r`, wildcards are allowed (`*` to match
1350
+ multiple characters, `?` to match a single character). With `--regex`,
1351
+ regular expressions will be interpreted instead of wildcards.
1352
+
1353
+ For all tag removals the match is case insensitive by default, but if
1354
+ the tag search string contains any uppercase letters, the match will
1355
+ become case sensitive automatically.
1356
+
1357
+ Tag name arguments do not need to be prefixed with @.
1358
+ ===== Options
1359
+ ===== --bool BOOLEAN
1360
+
1361
+ Boolean (AND|OR|NOT) with which to combine multiple tag filters
1362
+
1363
+ [Default Value] AND
1364
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
1365
+
1366
+
1367
+ ===== -c|--count COUNT
1368
+
1369
+ How many recent entries to tag (0 for all)
1370
+
1371
+ [Default Value] 1
1372
+ [Must Match] (?-mix:^\d+$)
1373
+
1374
+
1375
+ ===== --rename ORIG_TAG
1376
+
1377
+ Replace existing tag with tag argument, wildcards (*,?) allowed, or use with --regex
1378
+
1379
+ [Default Value] None
1380
+
1381
+
1382
+ ===== -s|--section SECTION_NAME
1383
+
1384
+ Section
1385
+
1386
+ [Default Value] All
1387
+
1388
+
1389
+ ===== --search QUERY
1390
+
1391
+ Tag entries matching search filter, surround with slashes for regex (e.g. "/query.*/"), start with single quote for exact match ("'query")
1392
+
1393
+ [Default Value] None
1394
+
1395
+
1396
+ ===== --tag TAG
1397
+
1398
+ Tag the last X entries containing TAG.
1399
+ Separate multiple tags with comma (--tag=tag1,tag2), combine with --bool
1400
+
1401
+ [Default Value] None
1402
+
1403
+
1404
+ ===== -a|--autotag
1405
+ Autotag entries based on autotag configuration in ~/.doingrc
1406
+
1407
+
1408
+
1409
+ ===== -d|--date
1410
+ Include current date/time with tag
1411
+
1412
+
1413
+
1414
+ ===== --force
1415
+ Don't ask permission to tag all entries when count is 0
1416
+
1417
+
1418
+
1419
+ ===== -i|--interactive
1420
+ Select item(s) to tag from a menu of matching entries
1421
+
1422
+
1423
+
1424
+ ===== -r|--remove
1425
+ Remove given tag(s)
1426
+
1427
+
1428
+
1429
+ ===== --regex
1430
+ Interpret tag string as regular expression (with --remove)
1431
+
1432
+
1433
+
1434
+ ===== -u|--unfinished
1435
+ Tag last entry (or entries) not marked @done
1436
+
1437
+
1438
+
1439
+ ==== Command: <tt>template TYPE</tt>
1440
+ Output HTML, CSS, and Markdown (ERB) templates for customization
1441
+
1442
+ Templates are printed to STDOUT for piping to a file.
1443
+ Save them and use them in the configuration file under html_template.
1444
+
1445
+ Example `doing template haml > ~/styles/my_doing.haml`
1446
+ ===== Options
1447
+ ===== -c
1448
+ List in single column for completion
1449
+
1450
+
1451
+
1452
+ ===== -l|--[no-]list
1453
+ List all available templates
1454
+
1455
+
1456
+
1457
+ ==== Command: <tt>test </tt>
1458
+ Test Stuff
1459
+
1460
+ This command is coming from /Users/ttscoff/.config/doing/commands/test.rb
1461
+ ==== Command: <tt>today </tt>
1462
+ List entries from today
1463
+
1464
+
1465
+ ===== Options
1466
+ ===== --after TIME_STRING
1467
+
1468
+ View entries after specified time (e.g. 8am, 12:30pm, 15:00)
1469
+
1470
+ [Default Value] None
1471
+
1472
+
1473
+ ===== --before TIME_STRING
1474
+
1475
+ View entries before specified time (e.g. 8am, 12:30pm, 15:00)
1476
+
1477
+ [Default Value] None
1478
+
1479
+
1480
+ ===== -o|--output FORMAT
1481
+
1482
+ Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
1483
+
1484
+ [Default Value] None
1485
+
1486
+
1487
+ ===== -s|--section NAME
1488
+
1489
+ Specify a section
1490
+
1491
+ [Default Value] All
1492
+
1493
+
1494
+ ===== --tag_sort KEY
1495
+
1496
+ Sort tags by (name|time)
1497
+
1498
+ [Default Value] name
1499
+ [Must Match] (?i-mx:^(?:name|time)$)
1500
+
1501
+
1502
+ ===== -t|--[no-]times
1503
+ Show time intervals on @done tasks
1504
+
1505
+
1506
+
1507
+ ===== --totals
1508
+ Show time totals at the end of output
1509
+
1510
+
1511
+
1512
+ ==== Command: <tt>undo </tt>
1513
+ Undo the last change to the doing_file
1514
+
1515
+
1516
+ ===== Options
1517
+ ===== -f|--file PATH
1518
+
1519
+ Specify alternate doing file
1520
+
1521
+ [Default Value] None
1522
+
1523
+
1524
+ ==== Command: <tt>view VIEW_NAME</tt>
1525
+ Display a user-created view
1526
+
1527
+ Command line options override view configuration
1528
+ ===== Options
1529
+ ===== --after DATE_STRING
1530
+
1531
+ View entries newer than date
1532
+
1533
+ [Default Value] None
1534
+
1535
+
1536
+ ===== -b|--bool BOOLEAN
1537
+
1538
+ Tag boolean (AND,OR,NOT)
1539
+
1540
+ [Default Value] OR
1541
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
1542
+
1543
+
1544
+ ===== --before DATE_STRING
1545
+
1546
+ View entries older than date
1547
+
1548
+ [Default Value] None
1549
+
1550
+
1551
+ ===== -c|--count COUNT
1552
+
1553
+ Count to display
1554
+
1555
+ [Default Value] None
1556
+ [Must Match] (?-mix:^\d+$)
1557
+
1558
+
1559
+ ===== -o|--output FORMAT
1560
+
1561
+ Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
1562
+
1563
+ [Default Value] None
1564
+
1565
+
1566
+ ===== -s|--section NAME
1567
+
1568
+ Section
1569
+
1570
+ [Default Value] None
1571
+
1572
+
1573
+ ===== --search QUERY
1574
+
1575
+ Search filter, surround with slashes for regex (/query/), start with single quote for exact match ("'query")
1576
+
1577
+ [Default Value] None
1578
+
1579
+
1580
+ ===== --tag TAG
1581
+
1582
+ Tag filter, combine multiple tags with a comma.
1583
+
1584
+ [Default Value] None
1585
+
1586
+
1587
+ ===== --tag_order DIRECTION
1588
+
1589
+ Tag sort direction (asc|desc)
1590
+
1591
+ [Default Value] None
1592
+ [Must Match] (?i-mx:^(?:a(?:sc)?|d(?:esc)?)$)
1593
+
1594
+
1595
+ ===== --tag_sort KEY
1596
+
1597
+ Sort tags by (name|time)
1598
+
1599
+ [Default Value] None
1600
+ [Must Match] (?i-mx:^(?:name|time)$)
1601
+
1602
+
1603
+ ===== --[no-]color
1604
+ Include colors in output
1605
+
1606
+
1607
+
1608
+ ===== -i|--interactive
1609
+ Select from a menu of matching entries to perform additional operations
1610
+
1611
+
1612
+
1613
+ ===== --only_timed
1614
+ Only show items with recorded time intervals (override view settings)
1615
+
1616
+
1617
+
1618
+ ===== -t|--[no-]times
1619
+ Show time intervals on @done tasks
1620
+
1621
+
1622
+
1623
+ ===== --totals
1624
+ Show intervals with totals at the end of output
1625
+
1626
+
1627
+
1628
+ ==== Command: <tt>views </tt>
1629
+ List available custom views
1630
+
1631
+
1632
+ ===== Options
1633
+ ===== -c|--[no-]column
1634
+ List in single column
1635
+
1636
+
1637
+
1638
+ ==== Command: <tt>wiki </tt>
1639
+ Output a tag wiki
1640
+
1641
+
1642
+ ===== Options
1643
+ ===== --after DATE_STRING
1644
+
1645
+ Include entries newer than date
1646
+
1647
+ [Default Value] None
1648
+
1649
+
1650
+ ===== -b|--bool BOOLEAN
1651
+
1652
+ Tag boolean (AND,OR,NOT)
1653
+
1654
+ [Default Value] OR
1655
+ [Must Match] (?i-mx:^(?:and|all|any|or|not|none)$)
1656
+
1657
+
1658
+ ===== --before DATE_STRING
1659
+
1660
+ Include entries older than date
1661
+
1662
+ [Default Value] None
1663
+
1664
+
1665
+ ===== -f|--from DATE_OR_RANGE
1666
+
1667
+ Date range to include, or a single day to filter date on.
1668
+ Date range argument should be quoted. Date specifications can be natural language.
1669
+ To specify a range, use "to" or "through": `doing show --from "monday to friday"`
1670
+
1671
+ [Default Value] None
1672
+
1673
+
1674
+ ===== -s|--section SECTION_NAME
1675
+
1676
+ Section to rotate
1677
+
1678
+ [Default Value] All
1679
+
1680
+
1681
+ ===== --search QUERY
1682
+
1683
+ Search filter, surround with slashes for regex (/query/), start with single quote for exact match ("'query")
1684
+
1685
+ [Default Value] None
1686
+
1687
+
1688
+ ===== --tag TAG
1689
+
1690
+ Tag filter, combine multiple tags with a comma, use with --bool
1691
+
1692
+ [Default Value] None
1693
+
1694
+
1695
+ ===== --only_timed
1696
+ Only show items with recorded time intervals
1697
+
1698
+
1699
+
1700
+ ==== Command: <tt>yesterday </tt>
1701
+ List entries from yesterday
1702
+
1703
+
1704
+ ===== Options
1705
+ ===== --after TIME_STRING
1706
+
1707
+ View entries after specified time (e.g. 8am, 12:30pm, 15:00)
1708
+
1709
+ [Default Value] None
1710
+
1711
+
1712
+ ===== --before TIME_STRING
1713
+
1714
+ View entries before specified time (e.g. 8am, 12:30pm, 15:00)
1715
+
1716
+ [Default Value] None
1717
+
1718
+
1719
+ ===== -o|--output FORMAT
1720
+
1721
+ Output to export format (csv|doing|html|markdown|say|taskpaper|template|timeline|wiki)
1722
+
1723
+ [Default Value] None
1724
+
1725
+
1726
+ ===== -s|--section NAME
1727
+
1728
+ Specify a section
1729
+
1730
+ [Default Value] All
1731
+
1732
+
1733
+ ===== --tag_order DIRECTION
1734
+
1735
+ Tag sort direction (asc|desc)
1736
+
1737
+ [Default Value] asc
1738
+ [Must Match] (?i-mx:^(?:a(?:sc)?|d(?:esc)?)$)
1739
+
1740
+
1741
+ ===== --tag_sort KEY
1742
+
1743
+ Sort tags by (name|time)
1744
+
1745
+ [Default Value] name
1746
+ [Must Match] (?i-mx:^(?:name|time)$)
1747
+
1748
+
1749
+ ===== -t|--[no-]times
1750
+ Show time intervals on @done tasks
1751
+
1752
+
1753
+
1754
+ ===== --totals
1755
+ Show time totals at the end of output
1756
+
1757
+
1758
+
1759
+ [Default Command] recent