btw 0.2.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/btw +26 -4
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d28d9df68aae9063502da92b071214bb5393a8d2
4
- data.tar.gz: d582255430e8ad6112f6d4be7f84edb2c20d3cb3
3
+ metadata.gz: cb4aa9dd4187976cee0abce68a01b213a68a51d7
4
+ data.tar.gz: 15c3b7350b17f363250e63cca17c3fc047714a81
5
5
  SHA512:
6
- metadata.gz: c43e93e4a43c3f81a70404d77e3c2f81432022625c99e54b8cf509d98c1ccf9df178719a61790e568ee6166e2b8d341b622e08ec3ca54a7847ab1f5aa5b159e0
7
- data.tar.gz: ef6a4124518f889c13b8e00e307ce30065f16d2474a6dda84b6f077ebd517a0197814d5b0183bd3ec4dc3239ce549ae8fa11ed389abd8eda71ebb0175e18dab5
6
+ metadata.gz: 66ca3a1b4da2241bf10e9cf25f6843e7adc31399f73f68759193fbd76688fdf753f8629439a7c490661a0d960c3ab67f9598c3e29cf7f6d9bcd02d8ea160a3c7
7
+ data.tar.gz: ff6ad98d23fd4f3565947e209dd4936293e2c6135066066e384fb2a92f9d9ca7735d7fe9de5cddaadab1a39ac1ae79aef8b0a3d152d472b2970392fb967b2e40
data/bin/btw CHANGED
@@ -44,19 +44,41 @@ if m = /\/(?<timestamp>.+)\//.match(input) and t = Chronic.parse(m[1])
44
44
  end
45
45
 
46
46
  unless timestamp
47
+ timestamps = []
47
48
  words = input.split(" ")
48
49
  i = 0
49
50
  while i < words.size do
50
51
  puts words[0..i].join(" ") if config[:debug]
51
52
  t = Chronic.parse(words[0..i].join(" "), :endian_precedence => [:little, :middle])
52
53
  puts "timestamp '#{timestamp}' found '#{t}'" if config[:debug]
53
- if timestamp and t.nil?
54
- break
55
- elsif t
56
- timestamp = t
54
+ #if timestamp and t.nil?
55
+ #break
56
+ #elsif t
57
+ if t
58
+ timestamps << t
57
59
  end
58
60
  i += 1
59
61
  end
62
+ i = 1
63
+ while i < words.size do
64
+ puts words[i..words.size].join(" ") if config[:debug]
65
+ t = Chronic.parse(words[i..words.size].join(" "), :endian_precedence => [:little, :middle])
66
+ puts "timestamp '#{timestamp}' found '#{t}'" if config[:debug]
67
+ if t
68
+ timestamps << t
69
+ end
70
+ i += 1
71
+ end
72
+
73
+ frequencies = timestamps.group_by {|e| e }.inject({}){ |h,(k,v)| h[k] = v.size; h }
74
+ max = frequencies.values.max
75
+ if frequencies.values.count(max) == 1
76
+ # use the most frequent
77
+ timestamp = frequencies.select{|k,v| v == max}.keys.first
78
+ else
79
+ # use the first value
80
+ timestamp = timestamps.first
81
+ end
60
82
  end
61
83
 
62
84
  unless timestamp
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: btw
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fraser Scott
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-15 00:00:00.000000000 Z
11
+ date: 2014-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chronic