doing 2.1.3 → 2.1.6

Sign up to get free protection for your applications and to get access to all the features.
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.