doing 2.0.23 → 2.1.1pre

Sign up to get free protection for your applications and to get access to all the features.
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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 47e702ec6e32cc0f97b0d81ef0e6482fb78ea462916fd2f83a58474759c0b4af
4
- data.tar.gz: b50848409e7a8b409bd9f82a77dbf0722ef97ac3a2a9491a5096ad60ca94f563
3
+ metadata.gz: 76184cb36ec77d6a090e120f4bafa0bef504086a0bf47d6f51952fe69979df14
4
+ data.tar.gz: dab9d3052b4f8b4149444c904cf0e062c7b3da5dbead58e5987dd6818870e6b0
5
5
  SHA512:
6
- metadata.gz: 25b1e4482ee5120b1b8fc6716c6f717235addf893917b8c21116da57ee25fef5d0bca3b29b3dbda39e0fb23c149e4284e17da755a9b1f6a92c89a7e30eda55f7
7
- data.tar.gz: 28563fdc3eadec4d60faae9bdb2a38072caea19a98a5084670591851036702d2a46e7ee4f0798e6cd22e7b9eeec1a0c822872d9457b1eb8c890c45b4d5d54998
6
+ metadata.gz: be80495dceebdccb5f4303d35f41613a8da5a9e4487fa359eb3c0cea107d21cda8d3b9cbb62f9ba61007421494db8566c8830c43a50c2be3a53caa2e05907b3b
7
+ data.tar.gz: a650dba9a9eb18d13a073b33a42f820fac78eb02f5433e516ed70a59426a68f9ee537ce19f50ffeb1d28fd52ebd03461fbf6c755b7d75247d3e6da04bf0a8f19
data/.yardoc/checksums CHANGED
@@ -1,20 +1,24 @@
1
- lib/doing/hash.rb 516c5a40b713a52f5d2cb73c20df5e84d57c6d66
2
- lib/doing/item.rb 69ef4f60e970daafed1c708d28ef15dadd09c2e6
3
- lib/doing/note.rb 84f53a2980a7b23793056e647bbd55a9f04c8cf1
1
+ lib/doing/hash.rb c2960de9603dcf90be85ce423d9430de27f4f893
2
+ lib/doing/item.rb 49aa74a14f59f0c790b69369c9c97feaa1917e84
3
+ lib/doing/note.rb 99d7be3e45605d32da7e188d7ec749ba84a3d2f8
4
4
  lib/doing/time.rb d83c862e7fffd841e12150a3d954b445a6003da9
5
- lib/doing/util.rb 4793f8193d7366e5072d03c96843e1b7fb71f90d
6
- lib/doing/wwid.rb 21029a7ba3c0414968ff0b1779f58559e0e0a96d
7
- lib/doing/array.rb 695309e5b659d47ab0383fecf1dc77a74c237e10
5
+ lib/doing/util.rb 94fc3c3ac1cc0b3b4b1d832fe30bd6e882d1acb2
6
+ lib/doing/wwid.rb 77ec1fe1a5e369f21b29d6e28ef5bd69facf99c3
7
+ lib/doing/array.rb dc9b3aeed89df820e003743e8d36078469c1aab7
8
8
  lib/doing/hooks.rb 00feacdbf24dc67951c49ca8c1ca9a568441920e
9
- lib/doing/pager.rb 2b8099560df739d4a4dd4cfdb0402cd43abc705c
10
- lib/doing/colors.rb 19cb557b1ea1161304046e5458add75e15357dbb
9
+ lib/doing/items.rb c7b81ce1fe6a8804c62af3c83e510add5f025a8c
10
+ lib/doing/pager.rb 230c10dea5e9c68b5709a0f4cb088c76970965e4
11
+ lib/doing/colors.rb 9a628d48c821313c502deedc5b61a046a2bf79ef
11
12
  lib/doing/errors.rb af07e482a5389924edc2337749c81cda501098f0
12
- lib/doing/string.rb 0803a7a08bfe3f4328868cb7e2abb546e10013c0
13
- lib/doing/symbol.rb 1729951e207d6ed30bf17ce719b2230dd495b988
14
- lib/doing/version.rb 2eed30271513448cebe46be379bca7d28bac86eb
15
- lib/doing/wwidfile.rb c6b09c62751ae43b3b27aa95cc93601f6e5a49ad
16
- lib/doing/cli_status.rb 96ebd3cdbeca646dd5c151a56ed07147302ab4d8
17
- lib/doing/log_adapter.rb 00a4c9f47e8fb6e22019d39717ed61860b804e6b
18
- lib/doing/configuration.rb 4e4b101901559ecdedffe376fad21359b1870bb0
13
+ lib/doing/prompt.rb ebf82d725111b99717954b3083cc529da8f53f3d
14
+ lib/doing/string.rb 2c90835a9b567643ce57de0030b339cfea234f46
15
+ lib/doing/symbol.rb 37f5b1f006181597703911494887a11fe0c63d39
16
+ lib/doing/section.rb 206e119cf818f1e76798753e611180fe77bc299a
17
+ lib/doing/version.rb 7680c3aed9bca99795b2abd6af1854d207775bba
18
+ lib/doing/cli_status.rb dbedd454c4cbbd0fed9ef30120f6ec85d18b9356
19
+ lib/doing/completion.rb 3b291eb38e651ea993d04db592a5e743057626e6
20
+ lib/doing/log_adapter.rb 5d21f966449977536452e22fa64de4a1fe334002
21
+ lib/doing/configuration.rb 33efe2921a604e68853abbbc026d1d28c4138a18
19
22
  lib/doing/plugin_manager.rb fb926e3998bac0b14dd4548b16ece0d32bbe0b9e
23
+ lib/doing/string_chronify.rb 8e4a59db180fbb63d101cb10ee371544c48376f8
20
24
  lib/doing/markdown_document_listener.rb 45485f225068a34951ec818a345f642323e5ba35
data/.yardoc/object_types CHANGED
Binary file
Binary file
data/CHANGELOG.md CHANGED
@@ -1,4 +1,43 @@
1
- ### 2.0.23
1
+ ### 2.1.1pre
2
+
3
+ #### NEW
4
+
5
+ - --before, --after, and --from date filters for select command
6
+ - --from flag for `doing today` and `doing yesterday`, filter by time range
7
+ - --from flag for `doing search`, filter by date/time range
8
+ - Commands that accept --before, --after, and --from can now filter on time ranges. If the date string given contains only a time (no day or date), it will be interpreted as a time range, meaning the date isn't filtered, but only entries within the time range are shown/processed
9
+
10
+ #### FIXED
11
+
12
+ - `finish --took 60m` is supposed to backdate the start date if needed to finish at the current time and maintain an elapsed time
13
+ - If an editor was specified for config (or default as fallback) with command line options (e.g. `emacs -nw`), Doing would fail to recognize that the executable was available.
14
+
15
+ ### 2.1.0pre
16
+
17
+ #### NEW
18
+
19
+ - BREAKING CHANGE: custom classes for Section (hash) and Items (Array). @content is still a regular Hash. Sections have methods :original and :items. This will affect plugins as wwid.content[section][:items] is now wwid[section].items (same for :original)
20
+ - `doing config set -r key.path` will delete a key from any config file, removing empty parent keys
21
+ - `config list` will list detected .doingrc files and the main config file in order of precedence - refactoring
22
+ - When modifying start dates or @done dates via an editor command, natural language strings can be used and will be parsed into doing-formatted dates automatically
23
+ - When editor is invoked, entry titles include start date, which can be modified
24
+
25
+ #### IMPROVED
26
+
27
+ - Config -o raw outputs value as YAML if result is a Hash/mapping, unquoted string if a single value, comma-separated list if it's an Array.
28
+ - Config -o json no longer includes key, only value.
29
+ - System agnostic method for checking available executables (pager, editor)
30
+ - Using `config set` and selecting a local config will no longer write the entire config to the local .doingrc. Instead, a nested path to the particular setting will be added to the config file.
31
+
32
+ ### 2.0.25
33
+
34
+ #### NEW
35
+
36
+ - `doing config set` to set single config values from command line
37
+ - BREAKING CHANGE: Moves ~/.doingrc to ~/.config/doing/config.yml
38
+ - BREAKING CHANGE: convert config flags to subcommands, e.g. `doing config --udpate` => `doing config update`, and `doing config --dump` => `doing config dump`
39
+
40
+ ### 2.0.24
2
41
 
3
42
  - include fzf source directly, in case git isn't installed
4
43
  - fall back to installing fzf with sudo on error
data/Gemfile.lock CHANGED
@@ -1,13 +1,15 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- doing (2.0.23)
4
+ doing (2.1.1pre)
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
9
  safe_yaml (~> 1.0)
10
+ tty-link (~> 0.1, >= 0.1.1)
10
11
  tty-progressbar (~> 0.18, >= 0.18.2)
12
+ tty-which (~> 0.5, >= 0.5.0)
11
13
 
12
14
  GEM
13
15
  remote: http://rubygems.org/
@@ -100,12 +102,16 @@ GEM
100
102
  thread_safe (0.3.6)
101
103
  tilt (2.0.10)
102
104
  tty-cursor (0.7.1)
105
+ tty-link (0.1.1)
103
106
  tty-progressbar (0.18.2)
104
107
  strings-ansi (~> 0.2)
105
108
  tty-cursor (~> 0.7)
106
109
  tty-screen (~> 0.8)
107
110
  unicode-display_width (>= 1.6, < 3.0)
108
111
  tty-screen (0.8.1)
112
+ tty-spinner (0.9.3)
113
+ tty-cursor (~> 0.7)
114
+ tty-which (0.5.0)
109
115
  tzinfo (2.0.4)
110
116
  concurrent-ruby (~> 1.0)
111
117
  unicode-display_width (2.1.0)
@@ -124,6 +130,7 @@ DEPENDENCIES
124
130
  rdoc (~> 6.3.1)
125
131
  redcarpet (~> 3.5, >= 3.5.1)
126
132
  test-unit (~> 3.4.4)
133
+ tty-spinner (~> 0.9, >= 0.9.3)
127
134
  yard (~> 0.9, >= 0.9.26)
128
135
 
129
136
  BUNDLED WITH
data/README.md CHANGED
@@ -6,7 +6,7 @@ _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.0.22<!--END VER-->.
9
+ The current version of `doing` is <!--VER-->2.1.0<!--END VER-->.
10
10
 
11
11
  Find all of the documentation in the [doing wiki](https://github.com/ttscoff/doing/wiki).
12
12
 
@@ -41,6 +41,12 @@ See the [doing project on BrettTerpstra.com](https://brettterpstra.com/projects/
41
41
 
42
42
  Evan Lovely has [created an Alfred workflow as well](http://www.evanlovely.com/blog/technology/alfred-for-terpstras-doing/).
43
43
 
44
+ ## Contributing
45
+
46
+ If you [create a plugin](https://github.com/ttscoff/doing/wiki/Creating-Plugins), custom command, or hook you can share, please [let me know](https://brettterpstra.com/contact/). If I get a few plugin contributions, I'll set up a second repository for them.
47
+
48
+ Feel free to fork [the repository](https://github.com/ttscoff/doing/) on GitHub and make pull requests with changes. Please target the `develop` branch with pull requests.
49
+
44
50
  <!--END README-->
45
51
 
46
52
  ---
data/Rakefile CHANGED
@@ -27,12 +27,31 @@ spec = eval(File.read('doing.gemspec'))
27
27
  Gem::PackageTask.new(spec) do |pkg|
28
28
  end
29
29
 
30
- Rake::TestTask.new do |t|
31
- t.libs << ['test', 'test/helpers']
32
- t.test_files = FileList['test/*_test.rb']
33
- t.verbose = ENV['VERBOSE'] =~ /(true|1)/i ? true : false
30
+ # Rake::TestTask.new do |t|
31
+ # t.libs << ['test', 'test/helpers']
32
+ # t.test_files = FileList['test/*_test.rb']
33
+ # t.verbose = ENV['VERBOSE'] =~ /(true|1)/i ? true : false
34
+ # end
35
+
36
+ namespace :test do
37
+
38
+ FileList['test/*_test.rb'].each do |rakefile|
39
+ test_name = File.basename(rakefile, '.rb').sub(%r{^.*?_(.*?)_.*?$}, '\1')
40
+
41
+ Rake::TestTask.new(:"#{test_name}") do |t|
42
+ t.libs << ['test', 'test/helpers']
43
+ t.pattern = rakefile
44
+ t.verbose = ENV['VERBOSE'] =~ /(true|1)/i ? true : false
45
+ end
46
+ #Define default task for :test
47
+ task :default => test_name
48
+ end
49
+
34
50
  end
35
51
 
52
+ desc "Run all tests"
53
+ task :test => 'test:default'
54
+
36
55
  desc 'Run one test verbosely'
37
56
  task :test_one, :test do |_, args|
38
57
  args.with_defaults(test: '*')