baze 0.0.13 → 0.0.14

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 (3) hide show
  1. checksums.yaml +7 -0
  2. data/bin/cols +6 -4
  3. metadata +7 -9
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 3cb75db782520861f93611c33bbcbc037f68df39
4
+ data.tar.gz: aed4f9b3136250966218a44f5428b7330c557e2e
5
+ SHA512:
6
+ metadata.gz: 0c031b7b39a5bd4a80e3575ae343e7f8a091f91f6ac6ae1e0bf3129677469372874ac57675011aed3ec24c8ee7838d53768b786a2a4508774799f51500068193
7
+ data.tar.gz: 483652d5d8ea326c25548be3cacd49c7b0304f01bd9c0fd4e427bdf6ff53c66a2eda17f40cfc30822a2a8d96881568f7f1de17fa014afebab4d5c459201a770b
data/bin/cols CHANGED
@@ -8,7 +8,7 @@ show_only = false
8
8
 
9
9
  optparse = OptionParser.new do |opts|
10
10
  opts.banner = "Usage: randmac [-l]\n" \
11
- " Filter a set of columns with awk (takes a list of i|a-|-b|a-b specs)"
11
+ " Filter a set of columns with awk (takes a list of i|a-|-b|a-b specs, i can be '+N' for the N-th field from the end)"
12
12
 
13
13
  opts.on '-c', '--command', 'Print the awk command instead of executing' do
14
14
  show_only = true
@@ -30,6 +30,8 @@ def parse_spec spec
30
30
  lower = $1.empty? ? 1 : $1.to_i
31
31
  upper = $2.empty? ? 1.0/0.0 : $2.to_i
32
32
  lower..upper
33
+ when /\+(\d+)/
34
+ -($1.to_i)
33
35
  else
34
36
  spec.to_i
35
37
  end
@@ -50,7 +52,7 @@ end[0]
50
52
 
51
53
  if grouped.size == 1 and not Range === grouped[0][0]
52
54
  # We only have integers!
53
- block = %[print #{grouped[0].collect{|i|"$#{i}"}.join %[ "#{sep}" ]}]
55
+ block = %[print #{grouped[0].collect{|i|i<0?"$(NF-#{-i-1})":"$#{i}"}.join %[ "#{sep}" ]}]
54
56
  else
55
57
  inner = grouped.collect do |group|
56
58
  if Integer === group[0]
@@ -59,7 +61,7 @@ else
59
61
  group.collect do |range|
60
62
  r_start, r_end = range.begin, range.end
61
63
  right, last = (r_end == 1.0/0.0) ? ['NF-1', 'NF'] : [r_end - 1, r_end]
62
- %[for(i=#{r_start}; i <= #{right}; ++i) printf $i "#{sep}"; printf $#{last}]
64
+ %[for(i=#{r_start};i<=#{right};++i) printf $i "#{sep}"; printf $#{last}]
63
65
  end.join %[ "#{sep}"; ]
64
66
  end
65
67
  end.join %[ "#{sep}"; ]
@@ -72,4 +74,4 @@ if show_only
72
74
  puts command
73
75
  else
74
76
  exec command
75
- end
77
+ end
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: baze
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.13
5
- prerelease:
4
+ version: 0.0.14
6
5
  platform: ruby
7
6
  authors:
8
7
  - Pierre Carrier
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-10-24 00:00:00.000000000 Z
11
+ date: 2015-07-15 00:00:00.000000000 Z
13
12
  dependencies: []
14
13
  description:
15
14
  email:
@@ -52,26 +51,25 @@ files:
52
51
  homepage: https://github.com/pcarrier/baze
53
52
  licenses:
54
53
  - ISC
54
+ metadata: {}
55
55
  post_install_message:
56
56
  rdoc_options: []
57
57
  require_paths:
58
58
  - lib
59
59
  required_ruby_version: !ruby/object:Gem::Requirement
60
- none: false
61
60
  requirements:
62
- - - ! '>='
61
+ - - '>='
63
62
  - !ruby/object:Gem::Version
64
63
  version: '0'
65
64
  required_rubygems_version: !ruby/object:Gem::Requirement
66
- none: false
67
65
  requirements:
68
- - - ! '>='
66
+ - - '>='
69
67
  - !ruby/object:Gem::Version
70
68
  version: 1.2.0
71
69
  requirements: []
72
70
  rubyforge_project: baze
73
- rubygems_version: 1.8.23.2
71
+ rubygems_version: 2.0.14
74
72
  signing_key:
75
- specification_version: 3
73
+ specification_version: 4
76
74
  summary: Base utilities for POSIX system
77
75
  test_files: []