ix-cli 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Gemfile +3 -0
- data/VERSION +1 -0
- data/bin/ix +14 -0
- data/bin/ix-acronym +21 -0
- data/bin/ix-add +8 -0
- data/bin/ix-append +8 -0
- data/bin/ix-arguments +12 -0
- data/bin/ix-array +17 -0
- data/bin/ix-ascii +3 -0
- data/bin/ix-avg +18 -0
- data/bin/ix-aws-pass +17 -0
- data/bin/ix-banner +2 -0
- data/bin/ix-base +24 -0
- data/bin/ix-base64-to-image +6 -0
- data/bin/ix-basename +8 -0
- data/bin/ix-bash-to-md +17 -0
- data/bin/ix-bcat +184 -0
- data/bin/ix-bellgrep +17 -0
- data/bin/ix-bench +9 -0
- data/bin/ix-binary-to-text +8 -0
- data/bin/ix-blackbox +45 -0
- data/bin/ix-blackbox-html-table +86 -0
- data/bin/ix-blamer +23 -0
- data/bin/ix-box +35 -0
- data/bin/ix-box2 +3 -0
- data/bin/ix-box3 +3 -0
- data/bin/ix-camel +17 -0
- data/bin/ix-cat +7 -0
- data/bin/ix-catafter +18 -0
- data/bin/ix-catan +6 -0
- data/bin/ix-chain +13 -0
- data/bin/ix-chars +4 -0
- data/bin/ix-checklist +23 -0
- data/bin/ix-child-math +10 -0
- data/bin/ix-chomp +6 -0
- data/bin/ix-chr +6 -0
- data/bin/ix-class +5 -0
- data/bin/ix-columns +41 -0
- data/bin/ix-combinations +11 -0
- data/bin/ix-command-class +21 -0
- data/bin/ix-commandify +22 -0
- data/bin/ix-commit +9 -0
- data/bin/ix-confirm +47 -0
- data/bin/ix-constants +9 -0
- data/bin/ix-cp +10 -0
- data/bin/ix-crack +163 -0
- data/bin/ix-crap +26 -0
- data/bin/ix-crazy-case +9 -0
- data/bin/ix-create-cluster-nodes +15 -0
- data/bin/ix-csv-to-json +16 -0
- data/bin/ix-day +12 -0
- data/bin/ix-debugging +33 -0
- data/bin/ix-decode-base64 +8 -0
- data/bin/ix-dequote +3 -0
- data/bin/ix-df +15 -0
- data/bin/ix-diagram +47 -0
- data/bin/ix-dirname +5 -0
- data/bin/ix-divide +8 -0
- data/bin/ix-done +11 -0
- data/bin/ix-dot-case +15 -0
- data/bin/ix-downcase +5 -0
- data/bin/ix-dto +39 -0
- data/bin/ix-each +7 -0
- data/bin/ix-edit +21 -0
- data/bin/ix-emails +10 -0
- data/bin/ix-escape +8 -0
- data/bin/ix-extensions +3 -0
- data/bin/ix-file-exists +11 -0
- data/bin/ix-filename +7 -0
- data/bin/ix-files +9 -0
- data/bin/ix-first +6 -0
- data/bin/ix-fish-diagram +47 -0
- data/bin/ix-flip-flop +20 -0
- data/bin/ix-flow +22 -0
- data/bin/ix-format-ruby-hash +61 -0
- data/bin/ix-gauge +86 -0
- data/bin/ix-get-colors +520 -0
- data/bin/ix-gift-exchange +52 -0
- data/bin/ix-glitter +29 -0
- data/bin/ix-grep-join +4 -0
- data/bin/ix-group +21 -0
- data/bin/ix-groups +15 -0
- data/bin/ix-gsub +5 -0
- data/bin/ix-gzip-dir +33 -0
- data/bin/ix-hash +10 -0
- data/bin/ix-hashtag +12 -0
- data/bin/ix-hex2rgb +5 -0
- data/bin/ix-histogram +80 -0
- data/bin/ix-hls +21 -0
- data/bin/ix-html +3 -0
- data/bin/ix-human-time +3 -0
- data/bin/ix-hyphen +9 -0
- data/bin/ix-hypothesis +546 -0
- data/bin/ix-ids +10 -0
- data/bin/ix-image-generate +3 -0
- data/bin/ix-image-to-base64 +9 -0
- data/bin/ix-increments +16 -0
- data/bin/ix-indent +42 -0
- data/bin/ix-indent-to-dot +36 -0
- data/bin/ix-int +5 -0
- data/bin/ix-interpolate +5 -0
- data/bin/ix-ips +4 -0
- data/bin/ix-jd +13 -0
- data/bin/ix-join +15 -0
- data/bin/ix-js-classic-functions +9 -0
- data/bin/ix-json-append +17 -0
- data/bin/ix-json-array-to-records +10 -0
- data/bin/ix-json-format +31 -0
- data/bin/ix-json-grep +16 -0
- data/bin/ix-json-interpolate +17 -0
- data/bin/ix-json-key +40 -0
- data/bin/ix-json-key-value +14 -0
- data/bin/ix-json-keys +12 -0
- data/bin/ix-json-merge +11 -0
- data/bin/ix-json-paths +61 -0
- data/bin/ix-json-paths-pretty +2 -0
- data/bin/ix-json-pp +11 -0
- data/bin/ix-json-query +14 -0
- data/bin/ix-json-records-to-array +13 -0
- data/bin/ix-json-remove-key +15 -0
- data/bin/ix-json-replace-values +35 -0
- data/bin/ix-json-template +267 -0
- data/bin/ix-json-to-csv +19 -0
- data/bin/ix-json-to-dot +5 -0
- data/bin/ix-json-to-html-table +84 -0
- data/bin/ix-json-to-ruby-hash +13 -0
- data/bin/ix-json-to-table +21 -0
- data/bin/ix-json-to-table-2 +22 -0
- data/bin/ix-json-to-xml +1 -0
- data/bin/ix-json-values +13 -0
- data/bin/ix-jsonpp +14 -0
- data/bin/ix-lake +6 -0
- data/bin/ix-lemmatize +17 -0
- data/bin/ix-length +6 -0
- data/bin/ix-linkify +35 -0
- data/bin/ix-linkify-html +70 -0
- data/bin/ix-links +3 -0
- data/bin/ix-llp +247 -0
- data/bin/ix-llp-indent +20 -0
- data/bin/ix-llp2 +224 -0
- data/bin/ix-log +44 -0
- data/bin/ix-make-readable +13 -0
- data/bin/ix-man +14 -0
- data/bin/ix-math +6 -0
- data/bin/ix-maze +3 -0
- data/bin/ix-md5 +7 -0
- data/bin/ix-md5s +3 -0
- data/bin/ix-military +39 -0
- data/bin/ix-morse-to-text +76 -0
- data/bin/ix-mr-robot +13 -0
- data/bin/ix-multiply +8 -0
- data/bin/ix-mv +10 -0
- data/bin/ix-ncsa-date-to-timestamp +27 -0
- data/bin/ix-nested-list +23 -0
- data/bin/ix-nnjj +16 -0
- data/bin/ix-noeol +6 -0
- data/bin/ix-noise +7 -0
- data/bin/ix-normalize +69 -0
- data/bin/ix-numbers +4 -0
- data/bin/ix-numerate +16 -0
- data/bin/ix-occurrence +8 -0
- data/bin/ix-open +9 -0
- data/bin/ix-parse +17 -0
- data/bin/ix-pass +17 -0
- data/bin/ix-path +8 -0
- data/bin/ix-path-stats +21 -0
- data/bin/ix-pbcopy +9 -0
- data/bin/ix-pdf +4 -0
- data/bin/ix-percentage +103 -0
- data/bin/ix-permutations +12 -0
- data/bin/ix-pick +4 -0
- data/bin/ix-planning-tickets +27 -0
- data/bin/ix-prefix +7 -0
- data/bin/ix-pretty +3 -0
- data/bin/ix-print-and-run +15 -0
- data/bin/ix-psd-to-json +16 -0
- data/bin/ix-quote +12 -0
- data/bin/ix-rainbow +21 -0
- data/bin/ix-ramp +15 -0
- data/bin/ix-random-hypothesis +10 -0
- data/bin/ix-range +9 -0
- data/bin/ix-remove-colors +519 -0
- data/bin/ix-remove-empty-lines +12 -0
- data/bin/ix-remove-leading-spaces +11 -0
- data/bin/ix-remove-trailing-spaces +11 -0
- data/bin/ix-replace +6 -0
- data/bin/ix-replay +34 -0
- data/bin/ix-retab +13 -0
- data/bin/ix-reverse +5 -0
- data/bin/ix-right +3 -0
- data/bin/ix-rm +8 -0
- data/bin/ix-rot13 +9 -0
- data/bin/ix-rot3 +9 -0
- data/bin/ix-rps +50 -0
- data/bin/ix-ruby-constructor-arguments +7 -0
- data/bin/ix-ruby-methods +40 -0
- data/bin/ix-ruby-options +189 -0
- data/bin/ix-ruby-procs +40 -0
- data/bin/ix-ruby-put-vars +11 -0
- data/bin/ix-ruby-setter-methods +47 -0
- data/bin/ix-ruby-to-json +9 -0
- data/bin/ix-ruler +13 -0
- data/bin/ix-run +105 -0
- data/bin/ix-saldo +25 -0
- data/bin/ix-sat +10 -0
- data/bin/ix-scan +13 -0
- data/bin/ix-scrum +13 -0
- data/bin/ix-scrum-summary +12 -0
- data/bin/ix-sentence +23 -0
- data/bin/ix-sentencify-comments +12 -0
- data/bin/ix-show-tabs +5 -0
- data/bin/ix-show-trailing-spaces +10 -0
- data/bin/ix-shuffle +11 -0
- data/bin/ix-signature +7 -0
- data/bin/ix-size +9 -0
- data/bin/ix-slider +201 -0
- data/bin/ix-snake +25 -0
- data/bin/ix-split +9 -0
- data/bin/ix-stack +42 -0
- data/bin/ix-stack-2 +31 -0
- data/bin/ix-stamp +5 -0
- data/bin/ix-stats +11 -0
- data/bin/ix-stream +15 -0
- data/bin/ix-string-similarity +152 -0
- data/bin/ix-string-similarity2 +35 -0
- data/bin/ix-strip +6 -0
- data/bin/ix-substract +5 -0
- data/bin/ix-success +2 -0
- data/bin/ix-suffix +7 -0
- data/bin/ix-sum +10 -0
- data/bin/ix-swap +3 -0
- data/bin/ix-symlink +13 -0
- data/bin/ix-tab +6 -0
- data/bin/ix-tabify +7 -0
- data/bin/ix-tac +11 -0
- data/bin/ix-task +20 -0
- data/bin/ix-technical +7 -0
- data/bin/ix-template +48 -0
- data/bin/ix-text-to-binary +7 -0
- data/bin/ix-text-to-dot +22 -0
- data/bin/ix-text-to-json +16 -0
- data/bin/ix-text-to-morse +72 -0
- data/bin/ix-tick +20 -0
- data/bin/ix-time +6 -0
- data/bin/ix-times +10 -0
- data/bin/ix-timestamp +79 -0
- data/bin/ix-timestamp-sort +16 -0
- data/bin/ix-timestamp2 +14 -0
- data/bin/ix-title +2 -0
- data/bin/ix-to-f +6 -0
- data/bin/ix-to-i +6 -0
- data/bin/ix-to-sym +6 -0
- data/bin/ix-to_i +6 -0
- data/bin/ix-todo +11 -0
- data/bin/ix-tokenize-for-template +25 -0
- data/bin/ix-transpose +48 -0
- data/bin/ix-tree +19 -0
- data/bin/ix-trim +5 -0
- data/bin/ix-truncate +22 -0
- data/bin/ix-ts +6 -0
- data/bin/ix-tsv-to-json +15 -0
- data/bin/ix-ucwords +11 -0
- data/bin/ix-unescape +8 -0
- data/bin/ix-unhtml +8 -0
- data/bin/ix-upcase +5 -0
- data/bin/ix-url-check +25 -0
- data/bin/ix-urls +46 -0
- data/bin/ix-vim +9 -0
- data/bin/ix-words +9 -0
- data/bin/ix-wrap +10 -0
- data/bin/ix-xy +81 -0
- data/bin/ix-zebra +122 -0
- metadata +597 -0
data/bin/ix-indent
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
unless ARGV[0]
|
4
|
+
$stderr.puts "Please provide a list of indender strings"
|
5
|
+
$stderr.puts "(separated by a colon character) as argv 1"
|
6
|
+
exit 1
|
7
|
+
end
|
8
|
+
|
9
|
+
unless ARGV[1]
|
10
|
+
$stderr.puts "Please provide a list of outdenter strings"
|
11
|
+
$stderr.puts "(separated by a colon character) as argv 2"
|
12
|
+
exit 1
|
13
|
+
end
|
14
|
+
|
15
|
+
unless ARGV[2]
|
16
|
+
$stderr.puts "Please provide a string to indent with"
|
17
|
+
$stderr.puts "as argv 3"
|
18
|
+
exit 1
|
19
|
+
end
|
20
|
+
|
21
|
+
indenters = ARGV[0].split(':')
|
22
|
+
outdenters = ARGV[1].split(':')
|
23
|
+
|
24
|
+
INDENT_REGEX = /#{indenters * '|'}/
|
25
|
+
OUTDENT_REGEX = /#{outdenters * '|'}/
|
26
|
+
INDENT_STR = "#{ARGV[2]}"
|
27
|
+
|
28
|
+
multiplier = 0
|
29
|
+
|
30
|
+
STDIN.each_line do |line|
|
31
|
+
if line =~ OUTDENT_REGEX
|
32
|
+
multiplier -= 1
|
33
|
+
if multiplier < 0
|
34
|
+
multiplier = 0
|
35
|
+
end
|
36
|
+
end
|
37
|
+
puts "#{INDENT_STR * multiplier} #{line}"
|
38
|
+
if line =~ INDENT_REGEX
|
39
|
+
multiplier += 1
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#!/usr/bin/env node
|
2
|
+
|
3
|
+
lines = [];
|
4
|
+
|
5
|
+
process.stdin.setEncoding('utf8');
|
6
|
+
|
7
|
+
process.stdin.on('readable', function() {
|
8
|
+
|
9
|
+
var input = process.stdin.read();
|
10
|
+
input = input + '';
|
11
|
+
input.split(/\n/).forEach(function (line) {
|
12
|
+
if (line != 'null') { // fix
|
13
|
+
lines.push(line);
|
14
|
+
}
|
15
|
+
});
|
16
|
+
|
17
|
+
ind = lines.map(function (l) { return l.match(/^\s*/)[0].length / 4 })
|
18
|
+
|
19
|
+
lines.forEach(function (l,i){
|
20
|
+
if (i == 0) {
|
21
|
+
return
|
22
|
+
}
|
23
|
+
j = i - 1;
|
24
|
+
while(j > -1){
|
25
|
+
if(ind[i] - ind[j] === 1){
|
26
|
+
console.log(' "'+lines[j].trim()+'" -> "'+lines[i].trim()+'"');
|
27
|
+
return
|
28
|
+
}
|
29
|
+
j--;
|
30
|
+
}
|
31
|
+
});
|
32
|
+
|
33
|
+
|
34
|
+
});
|
35
|
+
|
36
|
+
|
data/bin/ix-int
ADDED
data/bin/ix-interpolate
ADDED
data/bin/ix-ips
ADDED
data/bin/ix-jd
ADDED
data/bin/ix-join
ADDED
data/bin/ix-json-append
ADDED
data/bin/ix-json-format
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# formats json objects into strings.
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'json'
|
7
|
+
|
8
|
+
class Hash
|
9
|
+
def transform_keys!
|
10
|
+
keys.each do |key|
|
11
|
+
self[yield(key)] = delete(key)
|
12
|
+
end
|
13
|
+
self
|
14
|
+
end
|
15
|
+
def symbolize_keys!
|
16
|
+
transform_keys! { |key| key.to_sym rescue key }
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
TEMPLATE = ARGV[0].to_s
|
21
|
+
|
22
|
+
STDIN.each_line do |line|
|
23
|
+
begin
|
24
|
+
next unless line.include?('}')
|
25
|
+
object = JSON.parse(line)
|
26
|
+
object.symbolize_keys!
|
27
|
+
puts format(TEMPLATE, object)
|
28
|
+
rescue => error
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
data/bin/ix-json-grep
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'json'
|
4
|
+
|
5
|
+
STDIN.each_line do |line|
|
6
|
+
begin
|
7
|
+
object = JSON.parse(line)
|
8
|
+
symbolized_object = {}
|
9
|
+
object.each do |k, v|
|
10
|
+
symbolized_object[k.to_sym] = v
|
11
|
+
end
|
12
|
+
puts format(ARGV[0], symbolized_object)
|
13
|
+
rescue => error
|
14
|
+
# $stderr.puts error.message
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
data/bin/ix-json-key
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
|
4
|
+
# Reads json strings (one per line) from stdin.
|
5
|
+
# you pass keys as arguments and those are printed out as columns.
|
6
|
+
|
7
|
+
require 'rubygems'
|
8
|
+
require 'json'
|
9
|
+
|
10
|
+
$stdout.sync = true
|
11
|
+
|
12
|
+
STDIN.each_line do |line|
|
13
|
+
begin
|
14
|
+
next unless line.include?('}')
|
15
|
+
object = JSON.parse(line)
|
16
|
+
string = []
|
17
|
+
ARGV.each do |argument|
|
18
|
+
if object[argument]
|
19
|
+
if object[argument].is_a?(String)
|
20
|
+
string.push(object[argument])
|
21
|
+
elsif object[argument].is_a?(Array)
|
22
|
+
object[argument].each do |element|
|
23
|
+
string.push("\n" + element.to_json) # will break if not an object!
|
24
|
+
end
|
25
|
+
else
|
26
|
+
string.push(object[argument].to_json)
|
27
|
+
end
|
28
|
+
else
|
29
|
+
string.push(argument)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
if string.size > 0
|
33
|
+
puts string.join(" ")
|
34
|
+
end
|
35
|
+
rescue => error
|
36
|
+
# $stderr.puts line
|
37
|
+
# $stderr.puts error.message
|
38
|
+
# $stderr.puts error.backtrace
|
39
|
+
end
|
40
|
+
end
|
data/bin/ix-json-keys
ADDED
data/bin/ix-json-merge
ADDED
data/bin/ix-json-paths
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'json'
|
4
|
+
|
5
|
+
def resolve_type(object)
|
6
|
+
if object.is_a?(Hash)
|
7
|
+
return 'object'
|
8
|
+
end
|
9
|
+
if object.is_a?(String)
|
10
|
+
return 'string'
|
11
|
+
end
|
12
|
+
if object.is_a?(Array)
|
13
|
+
result = ''
|
14
|
+
result << '(array)'
|
15
|
+
object.each do |item|
|
16
|
+
result << "\n - " + resolve_type(item)
|
17
|
+
end
|
18
|
+
result << "\n"
|
19
|
+
return result
|
20
|
+
end
|
21
|
+
if object.is_a?(Fixnum)
|
22
|
+
return 'integer'
|
23
|
+
end
|
24
|
+
if object.is_a?(TrueClass)
|
25
|
+
return 'boolean'
|
26
|
+
end
|
27
|
+
if object.is_a?(FalseClass)
|
28
|
+
return 'boolean'
|
29
|
+
end
|
30
|
+
if object.is_a?(Float)
|
31
|
+
return 'float'
|
32
|
+
end
|
33
|
+
if object.is_a?(NilClass)
|
34
|
+
return 'null'
|
35
|
+
end
|
36
|
+
return 'unknown'
|
37
|
+
end
|
38
|
+
|
39
|
+
def parse(hash)
|
40
|
+
result = ''
|
41
|
+
hash.each do |key, value|
|
42
|
+
result << key + ' (' + resolve_type(value) + ")\n"
|
43
|
+
if value.is_a?(Hash)
|
44
|
+
parse(value).each_line do |line|
|
45
|
+
result << "#{key}.#{line}"
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
result
|
50
|
+
end
|
51
|
+
|
52
|
+
STDIN.each_line do |line|
|
53
|
+
begin
|
54
|
+
hash = JSON.parse(line)
|
55
|
+
puts parse(hash)
|
56
|
+
rescue => e
|
57
|
+
raise e
|
58
|
+
puts e.message
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
data/bin/ix-json-pp
ADDED
data/bin/ix-json-query
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'json'
|
4
|
+
|
5
|
+
data = STDIN.read
|
6
|
+
|
7
|
+
hash = JSON.parse(data)
|
8
|
+
|
9
|
+
def replace_value(value)
|
10
|
+
if value.is_a?(String)
|
11
|
+
return 'string'
|
12
|
+
end
|
13
|
+
if value.is_a?(Fixnum)
|
14
|
+
return 1
|
15
|
+
end
|
16
|
+
if value.is_a?(Float)
|
17
|
+
return 1.0
|
18
|
+
end
|
19
|
+
if value.is_a?(Array)
|
20
|
+
return value.map! do |item|
|
21
|
+
replace_value(item)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
if value.is_a?(Hash)
|
25
|
+
return nest(value)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def nest(hash)
|
30
|
+
hash.each do |key, value|
|
31
|
+
hash[key] = replace_value(value)
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
puts nest(hash).to_json
|