lolcat 99.9.20 → 99.9.99
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/ass/nom.jpg +0 -0
- data/lib/lolcat/lol.rb +21 -9
- data/lib/lolcat/version.rb +1 -1
- data/man/lolcat.6 +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 853bfb8f0075aff67eea592c9564811fc2689c2142584d4546df10f988b38a16
|
4
|
+
data.tar.gz: cdb17a584830bbe1544570ae9f698c84e4bcf189ea072241cfd2d2147c6a277a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55146feb187759e83ee4b003993bb8b6c9fb641fc6eac51ccbb7c4c47fa1fb3581ff256ddabdced9d8eb5626f3da930021b810c3fae519f8940ce21affed5330
|
7
|
+
data.tar.gz: 6e2f8904b618ef656c8d5f2954c519638af18694d26c31d5e8b676f022de4d167f379ad7d9459e8061bbe02038018f423f9f1550bcc0805affdfed4ca24a2c43
|
data/README.md
CHANGED
data/ass/nom.jpg
ADDED
Binary file
|
data/lib/lolcat/lol.rb
CHANGED
@@ -31,6 +31,7 @@ module Lol
|
|
31
31
|
INCOMPLETE_ESCAPE = /\e(?:[ -\/]*|[\]PX^_][^\a\e]*|\[[0-?]*)$/
|
32
32
|
|
33
33
|
@paint_detected_mode = Paint.detect_mode
|
34
|
+
@os = 0
|
34
35
|
|
35
36
|
def self.rainbow(freq, i)
|
36
37
|
red = Math.sin(freq*i + 0) * 127 + 128
|
@@ -53,14 +54,14 @@ module Lol
|
|
53
54
|
end
|
54
55
|
buf.force_encoding(fd.external_encoding)
|
55
56
|
buf.lines.each do |line|
|
56
|
-
|
57
|
+
@os += 1
|
57
58
|
println(line, opts)
|
58
59
|
end
|
59
60
|
end
|
60
61
|
ensure
|
61
62
|
if STDOUT.tty? then
|
62
63
|
print "\e[m\e[?25h\e[?1;5;2004l"
|
63
|
-
system("stty sane -istrip <&1");
|
64
|
+
# system("stty sane -istrip <&1");
|
64
65
|
end
|
65
66
|
end
|
66
67
|
|
@@ -68,35 +69,46 @@ module Lol
|
|
68
69
|
opts.merge!(defaults)
|
69
70
|
chomped = str.sub!(/\n$/, "")
|
70
71
|
str.gsub! "\t", " "
|
71
|
-
opts[:animate] ? println_ani(str, opts) : println_plain(str, opts)
|
72
|
+
opts[:animate] ? println_ani(str, opts, chomped) : println_plain(str, opts, chomped)
|
72
73
|
puts if chomped
|
73
74
|
end
|
74
75
|
|
75
76
|
private
|
76
77
|
|
77
|
-
def self.println_plain(str, defaults={}, opts={})
|
78
|
+
def self.println_plain(str, defaults={}, opts={}, chomped)
|
78
79
|
opts.merge!(defaults)
|
79
80
|
set_mode(opts[:truecolor])
|
80
|
-
str.scan(ANSI_ESCAPE)
|
81
|
-
|
81
|
+
filtered = str.scan(ANSI_ESCAPE)
|
82
|
+
filtered.each_with_index do |c, i|
|
83
|
+
color = rainbow(opts[:freq], @os+i/opts[:spread])
|
82
84
|
if opts[:invert] then
|
83
85
|
print c[0], Paint.color(nil, color), c[1], "\e[49m"
|
84
86
|
else
|
85
87
|
print c[0], Paint.color(color), c[1], "\e[39m"
|
86
88
|
end
|
87
89
|
end
|
90
|
+
|
91
|
+
if chomped == nil
|
92
|
+
@old_os = @os
|
93
|
+
@os = @os + filtered.length/opts[:spread]
|
94
|
+
elsif @old_os
|
95
|
+
@os = @old_os
|
96
|
+
@old_os = nil
|
97
|
+
end
|
88
98
|
end
|
89
99
|
|
90
|
-
def self.println_ani(str, opts={})
|
100
|
+
def self.println_ani(str, opts={}, chomped)
|
91
101
|
return if str.empty?
|
92
102
|
print "\e7"
|
103
|
+
@real_os = @os
|
93
104
|
(1..opts[:duration]).each do |i|
|
94
105
|
print "\e8"
|
95
|
-
|
96
|
-
println_plain(str, opts)
|
106
|
+
@os += opts[:spread]
|
107
|
+
println_plain(str, opts, chomped)
|
97
108
|
str.gsub!(/\e\[[0-?]*[@JKPX]/, "")
|
98
109
|
sleep 1.0/opts[:speed]
|
99
110
|
end
|
111
|
+
@os = @real_os
|
100
112
|
end
|
101
113
|
|
102
114
|
def self.set_mode(truecolor)
|
data/lib/lolcat/version.rb
CHANGED
data/man/lolcat.6
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lolcat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 99.9.
|
4
|
+
version: 99.9.99
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Moe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-07-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -79,6 +79,7 @@ files:
|
|
79
79
|
- LICENSE
|
80
80
|
- README.md
|
81
81
|
- Rakefile
|
82
|
+
- ass/nom.jpg
|
82
83
|
- ass/screenshot.png
|
83
84
|
- bin/lolcat
|
84
85
|
- lib/lolcat.rb
|
@@ -105,8 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
105
106
|
- !ruby/object:Gem::Version
|
106
107
|
version: '0'
|
107
108
|
requirements: []
|
108
|
-
|
109
|
-
rubygems_version: 2.7.6
|
109
|
+
rubygems_version: 3.0.3
|
110
110
|
signing_key:
|
111
111
|
specification_version: 4
|
112
112
|
summary: Okay, no unicorns. But rainbows!!
|