doing 1.0.27 → 1.0.33

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a6b820922f541c1841b9e3cd6613fcdf20e39f726c455a289b035cd46adad4be
4
- data.tar.gz: 03b371b4badb689f42c2132d252b69a592456efd00c26c94c78cde8ebd0091c9
3
+ metadata.gz: 381d875c7e4b8f3782e081c3a4bd6f0551c420b02d7dad20be8e2217b2dc4d59
4
+ data.tar.gz: dae9efcc7453831ff1c33e1d03a61986fed1540d33b0eb3a9990522b5e4452f1
5
5
  SHA512:
6
- metadata.gz: a37aa02c0d7b72c9a3ee7fc920b14a90ac930b7b52e0b18aa5669850a5b84e9f99b6ceeda5e0e058d6a4de65d10736a3f4ea803869629617781daeb581b95460
7
- data.tar.gz: 54ddce825edf7a8aa32b898c86ae698b29e3dd71b443d2154816b3c40714be8a7d0af35f8010640bab76dd135380779cf0598fcacab8deedab9841878e66b3c0
6
+ metadata.gz: 6420c68b41773a9d3c54a0185c26fd972df2f69ad11cd17bd30d5c83789ed5b405172170a30e8f483c6cd164ac13e6c851a583dfbf0e3ec9bfd273606849ca71
7
+ data.tar.gz: eb0f1d56e64e731f341879840ca592d3c55402e3e6f2467567cb7f513811a172ac3d605f3358c75f75d0ed5d28126a50ffdfba1165510b5073745ccdf8c1948d
data/README.md CHANGED
@@ -54,6 +54,8 @@ When using the `now` and `later` commands on the command line, you can start the
54
54
 
55
55
  Notes can be prevented from ever appearing in output with the global option `--no-notes`: `doing --no-notes show all`.
56
56
 
57
+ Auto tagging (adding tags listed in .doingrc under `autotag` and `default_tags`) can be skipped for an entry with the `-x` global option: `doing -x done skipping some automatic tagging`.
58
+
57
59
  ## Configuration
58
60
 
59
61
  A basic configuration looks like this:
@@ -382,6 +384,7 @@ Note that you can include a tag with synonyms in the whitelist as well to tag it
382
384
  --[no-]notes - Output notes if included in the template (default: enabled)
383
385
  --stdout - Send results report to STDOUT instead of STDERR
384
386
  --version - Display the program version
387
+ -x, --[no-]noauto - Exclude auto tags and default tags
385
388
 
386
389
  ### Commands:
387
390
 
data/bin/doing CHANGED
@@ -43,10 +43,14 @@ desc 'Send results report to STDOUT instead of STDERR'
43
43
  default_value false
44
44
  switch [:stdout], :default_value => false, :negatable => false
45
45
 
46
+ desc 'Exclude auto tags and default tags'
47
+ switch [:x,:noauto], :default_value => false
48
+
46
49
  desc 'Use a specific configuration file'
47
50
  default_value false
48
51
  flag [:config_file]
49
52
 
53
+
50
54
  # desc 'Wrap notes at X chars (0 for no wrap)'
51
55
  # flag [:w,:wrapwidth], :must_match => /^\d+$/, :type => Integer
52
56
 
@@ -488,23 +492,23 @@ desc 'Tag last entry'
488
492
  arg_name 'tag1 [tag2...]'
489
493
  command :tag do |c|
490
494
  c.desc 'Section'
491
- c.flag [:s,:section], :default_value => "All"
495
+ c.flag [:s, :section], :default_value => "All"
492
496
 
493
497
  c.desc 'How many recent entries to tag (0 for all)'
494
498
  c.default_value 1
495
- c.flag [:c,:count], :default_value => 1
499
+ c.flag [:c, :count], :default_value => 1
496
500
 
497
501
  c.desc 'Include current date/time with tag'
498
502
  c.default_value false
499
- c.switch [:d,:date], :negatable => false, :default_value => false
503
+ c.switch [:d, :date], :negatable => false, :default_value => false
500
504
 
501
505
  c.desc 'Remove given tag(s)'
502
506
  c.default_value false
503
- c.switch [:r,:remove], :negatable => false, :default_value => false
507
+ c.switch [:r, :remove], :negatable => false, :default_value => false
504
508
 
505
509
  c.desc 'Autotag entries based on autotag configuration in ~/.doingrc'
506
510
  c.default_value false
507
- c.switch [:a,:autotag], :negatable => false, :default_value => false
511
+ c.switch [:a, :autotag], :negatable => false, :default_value => false
508
512
 
509
513
  c.action do |global_options,options,args|
510
514
  if args.length == 0 && !options[:a]
@@ -1128,6 +1132,8 @@ pre do |global,command,options,args|
1128
1132
  wwid.init_doing_file
1129
1133
  end
1130
1134
 
1135
+ wwid.auto_tag = !global[:noauto]
1136
+
1131
1137
  wwid.config[:include_notes] = false unless global[:notes]
1132
1138
 
1133
1139
  if global[:version]
@@ -1,3 +1,3 @@
1
1
  module Doing
2
- VERSION = '1.0.27'
2
+ VERSION = '1.0.33'
3
3
  end
@@ -42,7 +42,7 @@ end
42
42
  ## @brief Main "What Was I Doing" methods
43
43
  ##
44
44
  class WWID
45
- attr_accessor :content, :sections, :current_section, :doing_file, :config, :user_home, :default_config_file, :config_file, :results
45
+ attr_accessor :content, :sections, :current_section, :doing_file, :config, :user_home, :default_config_file, :config_file, :results, :auto_tag
46
46
 
47
47
  ##
48
48
  ## @brief Initializes the object.
@@ -53,6 +53,7 @@ class WWID
53
53
  @default_config_file = '.doingrc'
54
54
  @interval_cache = {}
55
55
  @results = []
56
+ @auto_tag = true
56
57
  end
57
58
 
58
59
  ##
@@ -200,13 +201,15 @@ class WWID
200
201
  # end
201
202
  # end
202
203
 
203
- File.open(@config_file, 'w') { |yf| YAML::dump(@config, yf) } unless @config == user_config
204
+ unless File.exists?(@config_file)
205
+ File.open(@config_file, 'w') { |yf| YAML::dump(@config, yf) }
206
+ end
204
207
 
205
208
  @config = @local_config.deep_merge(@config)
206
209
 
207
210
  @current_section = @config['current_section']
208
211
  @default_template = @config['templates']['default']['template']
209
- @default_date_format = @config['templates']['default']['date_format']
212
+ @default_date_format = @config['templates']['default']['date_format'];
210
213
 
211
214
 
212
215
  end
@@ -579,21 +582,26 @@ class WWID
579
582
  opt[:timed] ||= false
580
583
 
581
584
  title = [title.strip.cap_first]
582
- title = autotag(title.join(' '))
583
- unless @config['default_tags'].empty?
584
- title += @config['default_tags'].map{|t|
585
- unless t.nil?
586
- dt = t.sub(/^ *@/,'').chomp
587
- if title =~ /@#{dt}/
588
- ""
589
- else
590
- ' @' + dt
585
+ title = title.join(' ')
586
+
587
+ if @auto_tag
588
+ title = autotag(title)
589
+ unless @config['default_tags'].empty?
590
+ title += @config['default_tags'].map{|t|
591
+ unless t.nil?
592
+ dt = t.sub(/^ *@/,'').chomp
593
+ if title =~ /@#{dt}/
594
+ ""
595
+ else
596
+ ' @' + dt
597
+ end
591
598
  end
592
- end
593
- }.delete_if {|t| t == "" }.join(" ")
599
+ }.delete_if {|t| t == "" }.join(" ")
600
+ end
594
601
  end
602
+ title.gsub!(/ +/,' ')
595
603
  entry = {'title' => title.strip, 'date' => opt[:back]}
596
- unless opt[:note] =~ /^\s*$/s
604
+ unless opt[:note].join('').strip == ''
597
605
  entry['note'] = opt[:note].map {|n| n.gsub(/ *$/,'')}
598
606
  end
599
607
  items = @content[section]['items']
@@ -729,7 +737,7 @@ class WWID
729
737
  }
730
738
  item['title'] = title
731
739
  else
732
- new_title = autotag(item['title'])
740
+ new_title = autotag(item['title']) if @auto_tag
733
741
  unless new_title == item['title']
734
742
  @results.push("Tags updated: #{new_title}")
735
743
  item['title'] = new_title
@@ -1665,6 +1673,7 @@ EOS
1665
1673
  #
1666
1674
  def autotag(text)
1667
1675
  return unless text
1676
+ return text unless @auto_tag
1668
1677
  current_tags = text.scan(/@\w+/)
1669
1678
  whitelisted = []
1670
1679
  @config['autotag']['whitelist'].each {|tag|
metadata CHANGED
@@ -1,63 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: doing
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.27
4
+ version: 1.0.33
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brett Terpstra
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-16 00:00:00.000000000 Z
11
+ date: 2020-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 13.0.1
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 13.0.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rdoc
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '4.1'
34
- - - ">="
35
- - !ruby/object:Gem::Version
36
- version: 4.1.1
33
+ version: 6.2.1
37
34
  type: :development
38
35
  prerelease: false
39
36
  version_requirements: !ruby/object:Gem::Requirement
40
37
  requirements:
41
38
  - - "~>"
42
39
  - !ruby/object:Gem::Version
43
- version: '4.1'
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: 4.1.1
40
+ version: 6.2.1
47
41
  - !ruby/object:Gem::Dependency
48
42
  name: aruba
49
43
  requirement: !ruby/object:Gem::Requirement
50
44
  requirements:
51
45
  - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '0'
47
+ version: 1.0.2
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
51
  requirements:
58
52
  - - "~>"
59
53
  - !ruby/object:Gem::Version
60
- version: '0'
54
+ version: 1.0.2
61
55
  - !ruby/object:Gem::Dependency
62
56
  name: test-unit
63
57
  requirement: !ruby/object:Gem::Requirement
@@ -78,40 +72,40 @@ dependencies:
78
72
  requirements:
79
73
  - - "~>"
80
74
  - !ruby/object:Gem::Version
81
- version: '2.17'
75
+ version: '2.19'
82
76
  - - ">="
83
77
  - !ruby/object:Gem::Version
84
- version: 2.17.1
78
+ version: 2.19.2
85
79
  type: :runtime
86
80
  prerelease: false
87
81
  version_requirements: !ruby/object:Gem::Requirement
88
82
  requirements:
89
83
  - - "~>"
90
84
  - !ruby/object:Gem::Version
91
- version: '2.17'
85
+ version: '2.19'
92
86
  - - ">="
93
87
  - !ruby/object:Gem::Version
94
- version: 2.17.1
88
+ version: 2.19.2
95
89
  - !ruby/object:Gem::Dependency
96
90
  name: haml
97
91
  requirement: !ruby/object:Gem::Requirement
98
92
  requirements:
99
93
  - - ">="
100
94
  - !ruby/object:Gem::Version
101
- version: 5.0.0
95
+ version: 5.1.2
102
96
  - - "~>"
103
97
  - !ruby/object:Gem::Version
104
- version: 5.0.0
98
+ version: 5.1.2
105
99
  type: :runtime
106
100
  prerelease: false
107
101
  version_requirements: !ruby/object:Gem::Requirement
108
102
  requirements:
109
103
  - - ">="
110
104
  - !ruby/object:Gem::Version
111
- version: 5.0.0
105
+ version: 5.1.2
112
106
  - - "~>"
113
107
  - !ruby/object:Gem::Version
114
- version: 5.0.0
108
+ version: 5.1.2
115
109
  - !ruby/object:Gem::Dependency
116
110
  name: chronic
117
111
  requirement: !ruby/object:Gem::Requirement
@@ -161,7 +155,7 @@ dependencies:
161
155
  version: 1.8.1
162
156
  - - "~>"
163
157
  - !ruby/object:Gem::Version
164
- version: 2.2.0
158
+ version: 2.3.1
165
159
  type: :runtime
166
160
  prerelease: false
167
161
  version_requirements: !ruby/object:Gem::Requirement
@@ -171,7 +165,7 @@ dependencies:
171
165
  version: 1.8.1
172
166
  - - "~>"
173
167
  - !ruby/object:Gem::Version
174
- version: 2.2.0
168
+ version: 2.3.1
175
169
  description: A tool for managing a TaskPaper-like file of recent activites. Perfect
176
170
  for the late-night hacker on too much caffeine to remember what they accomplished
177
171
  at 2 in the morning.
@@ -193,7 +187,7 @@ homepage: http://brettterpstra.com/project/doing/
193
187
  licenses:
194
188
  - MIT
195
189
  metadata: {}
196
- post_install_message:
190
+ post_install_message:
197
191
  rdoc_options:
198
192
  - "--title"
199
193
  - doing
@@ -216,8 +210,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
216
210
  - !ruby/object:Gem::Version
217
211
  version: '0'
218
212
  requirements: []
219
- rubygems_version: 3.0.6
220
- signing_key:
213
+ rubygems_version: 3.0.8
214
+ signing_key:
221
215
  specification_version: 4
222
216
  summary: A command line tool for managing What Was I Doing reminders
223
217
  test_files: []