doing 2.1.3 → 2.1.6

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 (115) 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/.yardopts +1 -1
  6. data/CHANGELOG.md +48 -0
  7. data/Gemfile.lock +25 -1
  8. data/README.md +5 -1
  9. data/bin/doing +429 -142
  10. data/docs/_config.yml +1 -0
  11. data/{doc → docs/doc}/Array.html +63 -1
  12. data/docs/doc/BooleanTermParser/Clause.html +293 -0
  13. data/docs/doc/BooleanTermParser/Operator.html +172 -0
  14. data/docs/doc/BooleanTermParser/Query.html +417 -0
  15. data/docs/doc/BooleanTermParser/QueryParser.html +135 -0
  16. data/docs/doc/BooleanTermParser/QueryTransformer.html +124 -0
  17. data/docs/doc/BooleanTermParser.html +115 -0
  18. data/docs/doc/Doing/CLIFormat.html +131 -0
  19. data/{doc → docs/doc}/Doing/Color.html +2 -2
  20. data/{doc → docs/doc}/Doing/Completion.html +1 -1
  21. data/{doc → docs/doc}/Doing/Configuration.html +157 -11
  22. data/{doc → docs/doc}/Doing/Content.html +0 -0
  23. data/{doc → docs/doc}/Doing/Errors/DoingNoTraceError.html +1 -1
  24. data/{doc → docs/doc}/Doing/Errors/DoingRuntimeError.html +1 -1
  25. data/{doc → docs/doc}/Doing/Errors/DoingStandardError.html +1 -1
  26. data/{doc → docs/doc}/Doing/Errors/EmptyInput.html +1 -1
  27. data/{doc → docs/doc}/Doing/Errors/NoResults.html +1 -1
  28. data/{doc → docs/doc}/Doing/Errors/PluginException.html +1 -1
  29. data/{doc → docs/doc}/Doing/Errors/UserCancelled.html +1 -1
  30. data/{doc → docs/doc}/Doing/Errors/WrongCommand.html +1 -1
  31. data/{doc → docs/doc}/Doing/Errors.html +1 -1
  32. data/{doc → docs/doc}/Doing/Hooks.html +1 -1
  33. data/{doc → docs/doc}/Doing/Item.html +134 -73
  34. data/{doc → docs/doc}/Doing/Items.html +36 -2
  35. data/{doc → docs/doc}/Doing/LogAdapter.html +70 -1
  36. data/{doc → docs/doc}/Doing/Note.html +5 -134
  37. data/{doc → docs/doc}/Doing/Pager.html +1 -1
  38. data/{doc → docs/doc}/Doing/Plugins.html +431 -35
  39. data/{doc → docs/doc}/Doing/Prompt.html +35 -1
  40. data/{doc → docs/doc}/Doing/Section.html +1 -1
  41. data/docs/doc/Doing/TemplateString.html +713 -0
  42. data/docs/doc/Doing/Util/Backup.html +686 -0
  43. data/{doc → docs/doc}/Doing/Util.html +16 -4
  44. data/{doc → docs/doc}/Doing/WWID.html +133 -73
  45. data/{doc → docs/doc}/Doing/WWIDFile.html +0 -0
  46. data/{doc → docs/doc}/Doing.html +4 -4
  47. data/{doc → docs/doc}/GLI/Commands/MarkdownDocumentListener.html +1 -1
  48. data/{doc → docs/doc}/GLI/Commands.html +1 -1
  49. data/{doc → docs/doc}/GLI.html +1 -1
  50. data/{doc → docs/doc}/Hash.html +1 -1
  51. data/docs/doc/PhraseParser/Operator.html +172 -0
  52. data/docs/doc/PhraseParser/PhraseClause.html +303 -0
  53. data/docs/doc/PhraseParser/Query.html +495 -0
  54. data/docs/doc/PhraseParser/QueryParser.html +136 -0
  55. data/docs/doc/PhraseParser/QueryTransformer.html +124 -0
  56. data/docs/doc/PhraseParser/TermClause.html +293 -0
  57. data/docs/doc/PhraseParser.html +115 -0
  58. data/{doc → docs/doc}/Status.html +1 -1
  59. data/{doc → docs/doc}/String.html +285 -13
  60. data/{doc → docs/doc}/Symbol.html +35 -1
  61. data/{doc → docs/doc}/Time.html +70 -2
  62. data/{doc → docs/doc}/_index.html +132 -4
  63. data/docs/doc/class_list.html +51 -0
  64. data/{doc → docs/doc}/css/common.css +0 -0
  65. data/{doc → docs/doc}/css/full_list.css +0 -0
  66. data/{doc → docs/doc}/css/style.css +0 -0
  67. data/{doc → docs/doc}/file.README.html +6 -2
  68. data/{doc → docs/doc}/file_list.html +0 -0
  69. data/{doc → docs/doc}/frames.html +0 -0
  70. data/{doc → docs/doc}/index.html +6 -2
  71. data/{doc → docs/doc}/js/app.js +0 -0
  72. data/{doc → docs/doc}/js/full_list.js +0 -0
  73. data/{doc → docs/doc}/js/jquery.js +0 -0
  74. data/{doc → docs/doc}/method_list.html +624 -136
  75. data/{doc → docs/doc}/top-level-namespace.html +2 -2
  76. data/docs/index.md +60 -0
  77. data/doing.gemspec +3 -0
  78. data/doing.rdoc +222 -74
  79. data/example_plugin.rb +3 -1
  80. data/lib/completion/_doing.zsh +53 -41
  81. data/lib/completion/doing.bash +17 -6
  82. data/lib/completion/doing.fish +321 -2
  83. data/lib/doing/array.rb +9 -0
  84. data/lib/doing/boolean_term_parser.rb +86 -0
  85. data/lib/doing/completion/fish_completion.rb +46 -3
  86. data/lib/doing/completion/zsh_completion.rb +1 -1
  87. data/lib/doing/configuration.rb +45 -14
  88. data/lib/doing/item.rb +104 -9
  89. data/lib/doing/items.rb +6 -0
  90. data/lib/doing/log_adapter.rb +28 -0
  91. data/lib/doing/note.rb +31 -30
  92. data/lib/doing/phrase_parser.rb +124 -0
  93. data/lib/doing/plugin_manager.rb +84 -21
  94. data/lib/doing/plugins/export/dayone_export.rb +209 -0
  95. data/lib/doing/plugins/export/html_export.rb +2 -2
  96. data/lib/doing/plugins/export/json_export.rb +1 -0
  97. data/lib/doing/plugins/export/markdown_export.rb +1 -1
  98. data/lib/doing/plugins/export/template_export.rb +90 -85
  99. data/lib/doing/prompt.rb +17 -6
  100. data/lib/doing/string.rb +84 -29
  101. data/lib/doing/string_chronify.rb +5 -1
  102. data/lib/doing/symbol.rb +4 -0
  103. data/lib/doing/template_string.rb +197 -0
  104. data/lib/doing/time.rb +32 -0
  105. data/lib/doing/util.rb +6 -7
  106. data/lib/doing/util_backup.rb +287 -0
  107. data/lib/doing/version.rb +1 -1
  108. data/lib/doing/wwid.rb +105 -41
  109. data/lib/doing.rb +9 -0
  110. data/lib/examples/plugins/say_export.rb +1 -1
  111. data/lib/examples/plugins/wiki_export/wiki_export.rb +3 -3
  112. data/lib/templates/doing-dayone-entry.erb +6 -0
  113. data/lib/templates/doing-dayone.erb +5 -0
  114. metadata +136 -51
  115. data/doc/class_list.html +0 -51
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 408f0a0f6da20fb59d6d94df8ba98b374910c52b0d4fe33436793a5b83ec0db9
4
- data.tar.gz: 011137a1269a0a10e8c59bc0a9e5c2319eb2d025b980c8396179a8e675719528
3
+ metadata.gz: 0cdb47e229ab21b2fa5d48a8d52b8c029a23a155e8f98a7a6ade80a952122996
4
+ data.tar.gz: 15a5ab6945438d3d90ded06a4609452e82a1017760087bc8305c48e1f8bc85ab
5
5
  SHA512:
6
- metadata.gz: a4b5beb6a1885cd8a008b9285a1c6b4b8f328993e8e7eb7f1e3ff13d5b379909be840fed2f2a2a0b64495e540e335961ba44181f3d7a1bd048a50c516d3170f5
7
- data.tar.gz: 6490ddb1d36898a5a211be7399ae1523e86dc5022d14c5d248724ac662aaed4d0a3c88d7d13daf731a31f05052636112a4b4b8a9f8274c0c96132ee52de3cefa
6
+ metadata.gz: b26137c1ce511eef117cc6f95ddd1984f16e203f95aa4fd0b04fa075a47f5dcafdef3e6b61158f65d41f07d771be706bc219dab5bdbf418a6f65e3243cdfe09d
7
+ data.tar.gz: aa42589ba1e0bc2fd321406277561efa429c9bea72c651225753a67a81b0b22576477be386fc146f7b6b1cc8c80d3c7a05ad96c1149d40b6408f2897bb3befb6
data/.yardoc/checksums CHANGED
@@ -1,24 +1,28 @@
1
1
  lib/doing/hash.rb c2960de9603dcf90be85ce423d9430de27f4f893
2
- lib/doing/item.rb 857b714be7ad8f1ca802d57f63ea8fb0c897c868
3
- lib/doing/note.rb 99d7be3e45605d32da7e188d7ec749ba84a3d2f8
4
- lib/doing/time.rb d83c862e7fffd841e12150a3d954b445a6003da9
5
- lib/doing/util.rb 94fc3c3ac1cc0b3b4b1d832fe30bd6e882d1acb2
6
- lib/doing/wwid.rb 0679893fbe11e00024e62fb0f1ac84ee15393fdf
7
- lib/doing/array.rb dc9b3aeed89df820e003743e8d36078469c1aab7
2
+ lib/doing/item.rb fcf106fb43a1a979d5213c8ac47161d9f6d8635f
3
+ lib/doing/note.rb bbadd9e34e6dc43a2af1110a5107f46c39d2547f
4
+ lib/doing/time.rb 4411af636082d3abf6f6402a7d6c9038d96a9ead
5
+ lib/doing/util.rb 33ad79455893213a0f2993edec0e158526657f09
6
+ lib/doing/wwid.rb ad6f25cd249c973c112665c9966c9f8cd1cb7cb2
7
+ lib/doing/array.rb a17004c4811d239932254f9ed94a6eb10456c8e8
8
8
  lib/doing/hooks.rb 00feacdbf24dc67951c49ca8c1ca9a568441920e
9
- lib/doing/items.rb c7b81ce1fe6a8804c62af3c83e510add5f025a8c
9
+ lib/doing/items.rb 0860a0ac7269f59de994ae900c980e49359dc8d5
10
10
  lib/doing/pager.rb 230c10dea5e9c68b5709a0f4cb088c76970965e4
11
11
  lib/doing/colors.rb 9a628d48c821313c502deedc5b61a046a2bf79ef
12
12
  lib/doing/errors.rb af07e482a5389924edc2337749c81cda501098f0
13
- lib/doing/prompt.rb e86eeba5bae6610640d7de29fccf24b75cab0bdf
14
- lib/doing/string.rb 81aa479a4dd657bc2405ddded7cdbb1d57d9d8a9
15
- lib/doing/symbol.rb 37f5b1f006181597703911494887a11fe0c63d39
13
+ lib/doing/prompt.rb df41a7e4328cc38b5c170af3de6ef2b0bf1fcc49
14
+ lib/doing/string.rb 8f6d1f8ba765bedf72f1af23be3617ce03aebb03
15
+ lib/doing/symbol.rb f18605aac49be688c9641de9564e48055a0f3757
16
16
  lib/doing/section.rb 206e119cf818f1e76798753e611180fe77bc299a
17
- lib/doing/version.rb b1cb911442a1b22894939464d54ea30c3b7eec7c
17
+ lib/doing/version.rb 6c040521331849e2344941c3af7c61b4908eaa83
18
18
  lib/doing/cli_status.rb dbedd454c4cbbd0fed9ef30120f6ec85d18b9356
19
19
  lib/doing/completion.rb 3b291eb38e651ea993d04db592a5e743057626e6
20
- lib/doing/log_adapter.rb 5d21f966449977536452e22fa64de4a1fe334002
21
- lib/doing/configuration.rb 9788bdb9df8bf89915363d34396a37b8409bfcf5
22
- lib/doing/plugin_manager.rb fb926e3998bac0b14dd4548b16ece0d32bbe0b9e
23
- lib/doing/string_chronify.rb 8e4a59db180fbb63d101cb10ee371544c48376f8
20
+ lib/doing/log_adapter.rb 9f2060c4f4c77b4facd94fc63aa9304c091c34d4
21
+ lib/doing/util_backup.rb 458352e8442c47a0d2f023b371b4ea1aea6cce96
22
+ lib/doing/configuration.rb b00ede3bfc4a6e16a957fabf2b03114e0008e42d
23
+ lib/doing/phrase_parser.rb 8f1789d7cf8326d8cc231b4a21505a93f8de20d2
24
+ lib/doing/plugin_manager.rb cb16a82c3182ef7008359670ab96ff6b39270ccc
25
+ lib/doing/string_chronify.rb ccbb08389d2139c7121203f8585864e3026d1526
26
+ lib/doing/template_string.rb 6dfb28b922059189b072e6d9fe1fcba8aad6c6fe
27
+ lib/doing/boolean_term_parser.rb 075977892ac5c6e3435cb8877d8b8b68eb1962e3
24
28
  lib/doing/markdown_document_listener.rb 45485f225068a34951ec818a345f642323e5ba35
data/.yardoc/object_types CHANGED
Binary file
Binary file
data/.yardopts CHANGED
@@ -1 +1 @@
1
- --markup-provider=redcarpet --markup=markdown --no-private --exclude=README.md lib/doing/*.rb
1
+ --output-dir docs/doc --markup-provider=redcarpet --markup=markdown --no-private --exclude=README.md lib/doing/*.rb
data/CHANGELOG.md CHANGED
@@ -1,3 +1,51 @@
1
+ ### 2.1.6
2
+
3
+ #### NEW
4
+
5
+ - `doing redo` undoes a redo
6
+ - `doing undo -i` offers a list of available versions for selection
7
+ - Multiple undo. Every time a command modifies the doing file, a backup is written. Running `doing undo` repeatedly steps back through history, `doing undo 5` jumps back 5 versions
8
+ - When resetting via `doing select`, prompt for a date string
9
+ - `doing reset` accepts a date string argument to use as start date instead of current time if provided
10
+ - `doing tags` lists tags used in any/all sections, sortable, with or without frequency counts
11
+ - `doing show --menu` offers an interactive menu for selecting section and tag filters
12
+ - All commands that accept a `--tag` filter can now handle wildcards in the tag names. * to match any number of characters, ? to match a single character.
13
+ - New boolean type for tag searches, PATTERN (which is now the default). Combine tags using symbols to create more complex boolean searches, e.g. "doing +coding -work"
14
+ - You can now define `date_tags` in config, an array of tags/patterns that will be recognized when parsing for natural language dates which are converted when saving new entries
15
+ - `--search` strings can contain quoted phrases and use +/- to require or ban terms, e.g. `--search 'doing +coding -writing'
16
+ - Interactive option for redo command
17
+ - Plugins for Day One export
18
+
19
+ #### IMPROVED
20
+
21
+ - Better diff output for fzf preview of `doing undo` history
22
+ - Fall back to good ol' sed for colorizing diffs when no good tool is available
23
+ - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
24
+ - Matching algorithm can be configured in settings
25
+ - All template placeholders can now use the "printf" formatting that %title and %note have, allowing for padding, prefixes, etc.
26
+ - Move default locations for doing file and backups to ~/.local/share/doing
27
+ - `doing show --menu` will only offer tags that exist after any tag/search filters have been run
28
+ - `doing show @tag` with `--menu` will first filter by the @tag, then do an OR search for tags selected from the menu
29
+
30
+ #### FIXED
31
+
32
+ - `doing reset` without filter not automatically affecting most recent entry
33
+ - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
34
+ - Preserve colors when wrapping text to new lines
35
+ - Tag highlighting errors
36
+ - Template options specified in views were being overriden by options in templates. View config now has precedence, but will fall back to template config for missing keys
37
+
38
+ #### IMPROVED
39
+
40
+ - Better diff output for fzf preview of `doing undo` history
41
+ - Fall back to good ol' sed for colorizing diffs when no good tool is available
42
+ - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
43
+
44
+ #### FIXED
45
+
46
+ - `doing reset` without filter not automatically affecting most recent entry
47
+ - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
48
+
1
49
  ### 2.1.3
2
50
 
3
51
  #### NEW
data/Gemfile.lock CHANGED
@@ -1,13 +1,16 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- doing (2.1.3)
4
+ doing (2.1.6)
5
5
  chronic (~> 0.10, >= 0.10.2)
6
6
  deep_merge (~> 1.2, >= 1.2.1)
7
7
  gli (~> 2.19, >= 2.19.2)
8
8
  haml (~> 5.0.0, >= 5.0.0)
9
+ parslet (~> 2.0, >= 2.0.0)
10
+ plist (~> 3.6, >= 3.6.0)
9
11
  safe_yaml (~> 1.0)
10
12
  tty-link (~> 0.1, >= 0.1.1)
13
+ tty-markdown (~> 0.7, >= 0.7.0)
11
14
  tty-progressbar (~> 0.18, >= 0.18.2)
12
15
  tty-which (~> 0.5, >= 0.5.0)
13
16
 
@@ -72,12 +75,18 @@ GEM
72
75
  tilt
73
76
  i18n (1.8.11)
74
77
  concurrent-ruby (~> 1.0)
78
+ kramdown (2.3.1)
79
+ rexml
75
80
  middleware (0.1.0)
76
81
  minitest (5.14.4)
77
82
  multi_test (0.1.2)
78
83
  parallel (1.21.0)
79
84
  parallel_tests (3.7.3)
80
85
  parallel
86
+ parslet (2.0.0)
87
+ pastel (0.8.0)
88
+ tty-color (~> 0.5)
89
+ plist (3.6.0)
81
90
  power_assert (2.0.1)
82
91
  protobuf-cucumber (3.10.8)
83
92
  activesupport (>= 3.2)
@@ -87,11 +96,17 @@ GEM
87
96
  rake (13.0.6)
88
97
  rdoc (6.3.3)
89
98
  redcarpet (3.5.1)
99
+ rexml (3.2.5)
100
+ rouge (3.27.0)
90
101
  rspec-expectations (3.10.1)
91
102
  diff-lcs (>= 1.2.0, < 2.0)
92
103
  rspec-support (~> 3.10.0)
93
104
  rspec-support (3.10.3)
94
105
  safe_yaml (1.0.5)
106
+ strings (0.2.1)
107
+ strings-ansi (~> 0.2)
108
+ unicode-display_width (>= 1.5, < 3.0)
109
+ unicode_utils (~> 1.4)
95
110
  strings-ansi (0.2.0)
96
111
  sys-uname (1.2.2)
97
112
  ffi (~> 1.1)
@@ -101,8 +116,16 @@ GEM
101
116
  thor (1.1.0)
102
117
  thread_safe (0.3.6)
103
118
  tilt (2.0.10)
119
+ tty-color (0.6.0)
104
120
  tty-cursor (0.7.1)
105
121
  tty-link (0.1.1)
122
+ tty-markdown (0.7.0)
123
+ kramdown (>= 1.16.2, < 3.0)
124
+ pastel (~> 0.8)
125
+ rouge (~> 3.14)
126
+ strings (~> 0.2.0)
127
+ tty-color (~> 0.5)
128
+ tty-screen (~> 0.8)
106
129
  tty-progressbar (0.18.2)
107
130
  strings-ansi (~> 0.2)
108
131
  tty-cursor (~> 0.7)
@@ -115,6 +138,7 @@ GEM
115
138
  tzinfo (2.0.4)
116
139
  concurrent-ruby (~> 1.0)
117
140
  unicode-display_width (2.1.0)
141
+ unicode_utils (1.4.0)
118
142
  yard (0.9.26)
119
143
  zeitwerk (2.5.1)
120
144
 
data/README.md CHANGED
@@ -6,10 +6,14 @@ _If you're one of the rare people like me who find this useful, feel free to [bu
6
6
 
7
7
  <!--README-->
8
8
 
9
- The current version of `doing` is <!--VER-->2.1.2<!--END VER-->.
9
+ The current version of `doing` is <!--VER-->2.1.5<!--END VER-->.
10
10
 
11
11
  Find all of the documentation in the [doing wiki](https://github.com/ttscoff/doing/wiki).
12
12
 
13
+ See [what's new in Doing 2.0](https://brettterpstra.com/2021/11/20/doing-2-dot-0/).
14
+
15
+ Check out some craziness with Doing in the [iTerm status bar](https://brettterpstra.com/2021/10/15/see-what-youre-doing-in-the-iterm-status-bar/) and the [Mac Touch Bar/menu bar](https://brettterpstra.com/2021/07/21/crazy-bettertouchtool-touch-bar-simulator/).
16
+
13
17
  ## What and why
14
18
 
15
19
  `doing` is a basic CLI for adding and listing "what was I doing" reminders in a [TaskPaper-formatted](https://www.taskpaper.com) text file. It allows for multiple sections/categories and flexible output formatting.