ansi256 0.2.5 → 0.3.0
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.
- checksums.yaml +7 -0
- data/README.md +5 -2
- data/ansi256.gemspec +1 -1
- data/bin/ansi256 +28 -26
- data/lib/ansi256/code.rb +2 -0
- data/lib/ansi256/version.rb +1 -1
- data/test/test_ansi256.rb +2 -0
- metadata +19 -28
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 895f492a5984cb96d47fd0ba832e2ef911e6da13e3205a0be1efbb9d67042f05
|
4
|
+
data.tar.gz: ea8063500db6e69974b45b37ab0545fe6cdb316f2dba8fcdca507b6e6050d6e9
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 1202cbc808123db06151190557d6db5b30115337a295677a58176797a67eae0acf431459b0c9e2caf0a7b3e1c29325f2c89d4d7d175730eaba1a22355872ce08
|
7
|
+
data.tar.gz: 5fa74dfb02d803ed6230cf318f27111275e1f54c28b4de7533f39ec0bcbad41906062859a316d8f86eaad86e50f70e8d754574ef66af9b6ea57770f6a651cb40
|
data/README.md
CHANGED
@@ -86,6 +86,8 @@ Ansi256.bg(226)
|
|
86
86
|
Ansi256.green
|
87
87
|
Ansi256.on_green
|
88
88
|
Ansi256.bold
|
89
|
+
Ansi256.dim
|
90
|
+
Ansi256.italic
|
89
91
|
Ansi256.underline
|
90
92
|
Ansi256.reset
|
91
93
|
|
@@ -101,7 +103,8 @@ Disabling extended String methods
|
|
101
103
|
Ansi256.enabled?
|
102
104
|
# true
|
103
105
|
|
104
|
-
|
106
|
+
# Print colored output only when STDOUT is tty
|
107
|
+
Ansi256.enabled = $stdout.tty?
|
105
108
|
|
106
109
|
"Hello".fg(232)
|
107
110
|
# Hello
|
@@ -113,7 +116,7 @@ ansi256 executable
|
|
113
116
|
Ansi256 comes with `ansi256` script which can be used as follows
|
114
117
|
|
115
118
|
```bash
|
116
|
-
usage: ansi256 [-u] <[fg][/bg]> [
|
119
|
+
usage: ansi256 [-b] [-d] [-i] [-u] <[fg][/bg]> [message]
|
117
120
|
|
118
121
|
# Numeric color codes
|
119
122
|
ansi256 232 "Hello world"
|
data/ansi256.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_development_dependency "bundler", "
|
21
|
+
spec.add_development_dependency "bundler", ">= 2.2.33"
|
22
22
|
spec.add_development_dependency "rake"
|
23
23
|
spec.add_development_dependency "minitest"
|
24
24
|
end
|
data/bin/ansi256
CHANGED
@@ -1,43 +1,45 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
2
4
|
require 'rubygems'
|
3
5
|
require 'ansi256'
|
4
6
|
|
5
|
-
|
6
|
-
|
7
|
+
attrs = [
|
8
|
+
ARGV.delete('-b') && :bold,
|
9
|
+
ARGV.delete('-d') && :dim,
|
10
|
+
ARGV.delete('-i') && :italic,
|
11
|
+
ARGV.delete('-u') && :underline
|
12
|
+
].compact
|
7
13
|
|
8
|
-
if ARGV.
|
9
|
-
puts 'usage: ansi256 [-b] [-u] <[fg][/bg]> [message]'
|
14
|
+
if ARGV.empty?
|
15
|
+
puts 'usage: ansi256 [-b] [-d] [-i] [-u] <[fg][/bg]> [message]'
|
10
16
|
exit 1
|
11
17
|
end
|
12
18
|
|
13
|
-
fgbg, *
|
14
|
-
fg,
|
15
|
-
if
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
else
|
22
|
-
e.downcase.to_sym
|
23
|
-
end
|
19
|
+
fgbg, *rest = ARGV
|
20
|
+
fg, bg = fgbg.split('/').map do |e|
|
21
|
+
next if e.empty?
|
22
|
+
|
23
|
+
case e
|
24
|
+
when /^#?[0-9a-f]{6}$/i then e
|
25
|
+
when /^\d+$/ then e.to_i
|
26
|
+
else e.downcase.to_sym
|
24
27
|
end
|
25
|
-
|
28
|
+
end
|
26
29
|
|
27
|
-
|
28
|
-
msg = msg.fg(fg)
|
29
|
-
msg = msg.bg(bg)
|
30
|
-
msg = msg.
|
31
|
-
msg = msg.bold if b
|
30
|
+
output = lambda do |msg|
|
31
|
+
msg = msg.fg(fg) if fg
|
32
|
+
msg = msg.bg(bg) if bg
|
33
|
+
msg = attrs.reduce(msg) { |m, a| m.send(a) }
|
32
34
|
puts msg
|
33
35
|
end
|
34
36
|
|
35
|
-
if !
|
36
|
-
|
37
|
-
output
|
37
|
+
if !rest.empty?
|
38
|
+
rest.each do |m|
|
39
|
+
output.call(m)
|
38
40
|
end
|
39
41
|
else
|
40
|
-
while msg = $stdin.gets
|
41
|
-
output
|
42
|
+
while (msg = $stdin.gets)
|
43
|
+
output.call(msg.chomp)
|
42
44
|
end
|
43
45
|
end
|
data/lib/ansi256/code.rb
CHANGED
data/lib/ansi256/version.rb
CHANGED
data/test/test_ansi256.rb
CHANGED
@@ -67,6 +67,8 @@ class TestAnsi256 < MiniTest::Unit::TestCase
|
|
67
67
|
def test_just_code
|
68
68
|
assert_equal "\e[0m", Ansi256.reset
|
69
69
|
assert_equal "\e[1m", Ansi256.bold
|
70
|
+
assert_equal "\e[2m", Ansi256.dim
|
71
|
+
assert_equal "\e[3m", Ansi256.italic
|
70
72
|
assert_equal "\e[4m", Ansi256.underline
|
71
73
|
|
72
74
|
assert_equal "\e[30m", Ansi256.black
|
metadata
CHANGED
@@ -1,62 +1,55 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ansi256
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.3.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Junegunn Choi
|
9
|
-
autorequire:
|
8
|
+
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2021-12-13 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: bundler
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
19
|
+
version: 2.2.33
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
26
|
+
version: 2.2.33
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: minitest
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - ">="
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - ">="
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
description: Colorize text using 256-color ANSI codes
|
@@ -67,7 +60,7 @@ executables:
|
|
67
60
|
extensions: []
|
68
61
|
extra_rdoc_files: []
|
69
62
|
files:
|
70
|
-
- .gitignore
|
63
|
+
- ".gitignore"
|
71
64
|
- Gemfile
|
72
65
|
- LICENSE.txt
|
73
66
|
- README.md
|
@@ -82,27 +75,25 @@ files:
|
|
82
75
|
homepage: https://github.com/junegunn/ansi256
|
83
76
|
licenses:
|
84
77
|
- MIT
|
85
|
-
|
78
|
+
metadata: {}
|
79
|
+
post_install_message:
|
86
80
|
rdoc_options: []
|
87
81
|
require_paths:
|
88
82
|
- lib
|
89
83
|
required_ruby_version: !ruby/object:Gem::Requirement
|
90
|
-
none: false
|
91
84
|
requirements:
|
92
|
-
- -
|
85
|
+
- - ">="
|
93
86
|
- !ruby/object:Gem::Version
|
94
87
|
version: '0'
|
95
88
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
96
|
-
none: false
|
97
89
|
requirements:
|
98
|
-
- -
|
90
|
+
- - ">="
|
99
91
|
- !ruby/object:Gem::Version
|
100
92
|
version: '0'
|
101
93
|
requirements: []
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
specification_version: 3
|
94
|
+
rubygems_version: 3.2.3
|
95
|
+
signing_key:
|
96
|
+
specification_version: 4
|
106
97
|
summary: Colorize text using 256-color ANSI codes
|
107
98
|
test_files:
|
108
99
|
- test/test_ansi256.rb
|