doing 2.0.22 → 2.1.0pre

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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/.yardoc/checksums +18 -15
  3. data/.yardoc/object_types +0 -0
  4. data/.yardoc/objects/root.dat +0 -0
  5. data/CHANGELOG.md +36 -1
  6. data/Gemfile.lock +8 -1
  7. data/README.md +7 -1
  8. data/Rakefile +23 -4
  9. data/bin/doing +323 -173
  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 +477 -670
  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 +599 -23
  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 +453 -173
  50. data/doc/top-level-namespace.html +1 -1
  51. data/doing.gemspec +3 -0
  52. data/doing.rdoc +79 -27
  53. data/example_plugin.rb +5 -5
  54. data/lib/completion/_doing.zsh +42 -42
  55. data/lib/completion/doing.bash +10 -10
  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/util.rb +14 -6
  79. data/lib/doing/version.rb +1 -1
  80. data/lib/doing/wwid.rb +307 -614
  81. data/lib/doing.rb +6 -2
  82. data/lib/examples/plugins/capture_thing_import.rb +162 -0
  83. data/rdoc_to_mmd.rb +14 -8
  84. data/scripts/generate_bash_completions.rb +1 -1
  85. data/scripts/generate_fish_completions.rb +1 -1
  86. data/scripts/generate_zsh_completions.rb +1 -1
  87. metadata +73 -5
  88. data/lib/doing/wwidfile.rb +0 -117
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 36dd66af3e00464697ab6eb89101e501e0b50ee6b21bc8629a13e21b3906c18a
4
- data.tar.gz: 758903fc78fd9a812ab723a5af00cdec0c6cd13c1316dc638e9ca10f24bf939a
3
+ metadata.gz: '083907ea1ab1ffaeb97f66991a00f41e4212a67c852823cc8c8bd7958f58e280'
4
+ data.tar.gz: fc45d957791efe5c44330f9fe2574dbbd9c5d6c937155e46d9daf545acd63f75
5
5
  SHA512:
6
- metadata.gz: e755266bcfedb72b69f966a2621af76b5014168cd44898c2ba24b0dfc711482aef6a3694afd8010abbeb3bdeb88749532b15f1699ab6926227679ffb7308758d
7
- data.tar.gz: f892efc03f34754866f436603e49c3e3f9b9ec52496ecdcddb1c5783abc485b7996bb5385d531a5814a4ee9b52d262f754545ee4a0a0559e49ccfff56de38bdb
6
+ metadata.gz: 6b3683a4bc5fe9a367ea69338085a5075f986d69bc4a1617e9455e7edbbc18f2e05d168639428c0cb517e87030051cc0ad904244fba7ab7d118e2464bd01c23c
7
+ data.tar.gz: 6860abddd6849ea6ee9bf82a4466b0289510f7561e7bab6e8d8405ff5424f101106f88a45cd89dd467eed1118f534c7a86f946a8b9daae72efc197e80580e886
data/.yardoc/checksums CHANGED
@@ -1,20 +1,23 @@
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 52e9867008ad24802e1bb8d9cce249e1d53b3c2b
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 3838635a7f87787ff64ef6f8ba7890d1b1229481
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
20
23
  lib/doing/markdown_document_listener.rb 45485f225068a34951ec818a345f642323e5ba35
data/.yardoc/object_types CHANGED
Binary file
Binary file
data/CHANGELOG.md CHANGED
@@ -1,8 +1,43 @@
1
- ### 2.0.22
1
+ ### 2.1.0pre
2
+
3
+ #### NEW
4
+
5
+ - 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)
6
+ - `doing config set -r key.path` will delete a key from any config file, removing empty parent keys
7
+ - `config list` will list detected .doingrc files and the main config file in order of precedence - refactoring
8
+ - 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
9
+ - When editor is invoked, entry titles include start date, which can be modified
10
+
11
+ #### IMPROVED
12
+
13
+ - 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.
14
+ - Config -o json no longer includes key, only value.
15
+ - System agnostic method for checking available executables (pager, editor)
16
+ - 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.
17
+
18
+ ### 2.0.26
19
+
20
+ #### NEW
21
+
22
+ - 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)
2
23
 
3
24
  #### IMPROVED
4
25
 
26
+ - 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.
27
+ - Config -o json no longer includes key, only value.
28
+
29
+ ### 2.0.25
30
+
31
+ #### NEW
32
+
33
+ - `doing config set` to set single config values from command line
34
+ - BREAKING CHANGE: Moves ~/.doingrc to ~/.config/doing/config.yml
35
+ - BREAKING CHANGE: convert config flags to subcommands, e.g. `doing config --udpate` => `doing config update`, and `doing config --dump` => `doing config dump`
36
+
37
+ ### 2.0.24
38
+
5
39
  - include fzf source directly, in case git isn't installed
40
+ - fall back to installing fzf with sudo on error
6
41
 
7
42
  ### 2.0.20
8
43
 
data/Gemfile.lock CHANGED
@@ -1,13 +1,15 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- doing (2.0.22)
4
+ doing (2.1.0pre)
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.21<!--END VER-->.
9
+ The current version of `doing` is <!--VER-->2.0.25<!--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: '*')