fancy_irb 1.2.1 → 1.4.3
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 +4 -4
- data/CHANGELOG.md +15 -0
- data/MIT-LICENSE.txt +1 -1
- data/README.md +3 -7
- data/fancy_irb.gemspec +5 -5
- data/lib/fancy_irb/terminal_info.rb +32 -12
- data/lib/fancy_irb/version.rb +1 -1
- metadata +11 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e2983518481e3a3ea0996fa0db0b8eb01bf6a0c72072171746ff1dfe1fc4786f
|
4
|
+
data.tar.gz: 44d632ee043c0751300cd7ee48fddbd03e9086084f061803c6a1764d6a3ff706
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6d0b61c283bee3ccbf950c164ee96aadb8e5ff29fbc6438a2b6cd4989b7a17f8a8af244675d337a43820edca54a0eb1e0dba311308d9c59cd3abae80369ecd86
|
7
|
+
data.tar.gz: d119df23b3dc249a73d5ff733dfd48c49e046c2fb932b913399412831da3e19097182b7fd1692489aeee5bb5f56927cba8f5ea6795d2bb0316d267d8abc73829
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
+
## 1.4.3
|
4
|
+
* Fix options given to `script` so it doesn't output timing info
|
5
|
+
|
6
|
+
## 1.4.2
|
7
|
+
* Support Alpine Linux (fix #12)
|
8
|
+
|
9
|
+
## 1.4.1
|
10
|
+
* Relax unicode-display_width requirement
|
11
|
+
|
12
|
+
## 1.4.0
|
13
|
+
* Full support for non-ttys
|
14
|
+
|
15
|
+
## 1.3.0
|
16
|
+
* Use `script` wrapper on linux in case we are not on a tty
|
17
|
+
|
3
18
|
## 1.2.1
|
4
19
|
* Fix 2.7 keyword warning
|
5
20
|
|
data/MIT-LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -1,9 +1,8 @@
|
|
1
|
-
# FancyIrb [](
|
1
|
+
# FancyIrb [](https://badge.fury.io/rb/fancy_irb) [![[ci]](https://github.com/janlelis/fancy_irb/workflows/Test/badge.svg)](https://github.com/janlelis/fancy_irb/actions?query=workflow%3ATest)
|
2
2
|
|
3
3
|
* Colorizes IRB prompts, errors, `$stderr` and `$stdout`
|
4
4
|
* Uses "Hash Rockets" (# =>) to display IRB results
|
5
5
|
|
6
|
-
|
7
6
|
## Usage
|
8
7
|
|
9
8
|
require 'fancy_irb'
|
@@ -32,9 +31,7 @@ Rocket mode means: Output result as comment if there is enough space left on
|
|
32
31
|
the terminal line and `stdout` does not output more than the current terminal
|
33
32
|
height.
|
34
33
|
|
35
|
-
For more information on which colors can be used, see the [paint
|
36
|
-
documentation](https://github.com/janlelis/paint).
|
37
|
-
|
34
|
+
For more information on which colors can be used, see the [paint documentation](https://github.com/janlelis/paint).
|
38
35
|
|
39
36
|
## Troubleshooting
|
40
37
|
### Windows Support
|
@@ -49,9 +46,8 @@ lookup of every character. You can deactivate this check by setting
|
|
49
46
|
Not all stdin methods are patched properly to work with the rocket: The gems
|
50
47
|
focuses on the often used ones
|
51
48
|
|
52
|
-
|
53
49
|
## J-_-L
|
54
50
|
Inspired by the irb_rocket gem by genki.
|
55
51
|
|
56
|
-
Copyright (c) 2010-2012, 2015-
|
52
|
+
Copyright (c) 2010-2012, 2015-2021 Jan Lelis <https://janlelis.com> released under
|
57
53
|
the MIT license.
|
data/fancy_irb.gemspec
CHANGED
@@ -6,15 +6,15 @@ Gem::Specification.new do |s|
|
|
6
6
|
s.name = "fancy_irb"
|
7
7
|
s.version = FancyIrb::VERSION
|
8
8
|
s.authors = ["Jan Lelis"]
|
9
|
-
s.email = "
|
10
|
-
s.homepage = "
|
11
|
-
s.summary = "FancyIrb makes IRB friendly."
|
12
|
-
s.description = "
|
9
|
+
s.email = ["hi@ruby.consulting"]
|
10
|
+
s.homepage = "https://github.com/janlelis/fancy_irb"
|
11
|
+
s.summary = "FancyIrb makes IRB # => friendly."
|
12
|
+
s.description = "A fancy IRB has a colorful input prompt and profiles rocket-style #=> return values"
|
13
13
|
s.required_ruby_version = '>= 1.9.3'
|
14
14
|
s.license = 'MIT'
|
15
15
|
s.requirements = ['Windows: ansicon <https://github.com/adoxa/ansicon>']
|
16
16
|
s.add_dependency 'paint', '>= 0.9', '< 3.0'
|
17
|
-
s.add_dependency 'unicode-display_width', "
|
17
|
+
s.add_dependency 'unicode-display_width', ">= 1.1"
|
18
18
|
s.add_development_dependency 'rspec', "~> 3.2"
|
19
19
|
s.add_development_dependency 'rake', "~> 10.4"
|
20
20
|
s.files = [
|
@@ -4,25 +4,45 @@ module FancyIrb
|
|
4
4
|
module TerminalInfo
|
5
5
|
def self.lines
|
6
6
|
STDOUT.winsize[0]
|
7
|
+
rescue Errno::ENOTTY
|
8
|
+
ENV['LINES'] || ENV['ROWS'] || 25
|
7
9
|
end
|
8
10
|
|
9
11
|
def self.cols
|
10
12
|
STDOUT.winsize[1]
|
13
|
+
rescue Errno::ENOTTY
|
14
|
+
ENV['COLUMNS'] || 80
|
11
15
|
end
|
12
16
|
|
13
|
-
|
17
|
+
begin
|
18
|
+
if RbConfig::CONFIG['host_os'] =~ /mswin|mingw/
|
19
|
+
TPUT = {
|
20
|
+
:sc => "\e[s",
|
21
|
+
:rc => "\e[u",
|
22
|
+
:cuu1 => "\e[1A",
|
23
|
+
:cuf1 => "\e[1C",
|
24
|
+
}
|
25
|
+
elsif RbConfig::CONFIG['host_os'] =~ /linux(?!-musl)/
|
26
|
+
TPUT = {
|
27
|
+
:sc => `script -q -e /dev/null -c 'tput sc'`,
|
28
|
+
:rc => `script -q -e /dev/null -c 'tput rc'`,
|
29
|
+
:cuu1 => `script -q -e /dev/null -c 'tput cuu1'`,
|
30
|
+
:cuf1 => `script -q -e /dev/null -c 'tput cuf1'`,
|
31
|
+
}
|
32
|
+
else
|
33
|
+
TPUT = {
|
34
|
+
:sc => `tput sc`,
|
35
|
+
:rc => `tput rc`,
|
36
|
+
:cuu1 => `tput cuu1`,
|
37
|
+
:cuf1 => `tput cuf1`,
|
38
|
+
}
|
39
|
+
end
|
40
|
+
rescue Errno::ENOTTY
|
14
41
|
TPUT = {
|
15
|
-
:sc => "\
|
16
|
-
:rc => "\
|
17
|
-
:cuu1 => "\e[
|
18
|
-
:cuf1 => "\e[
|
19
|
-
}
|
20
|
-
else
|
21
|
-
TPUT = {
|
22
|
-
:sc => `tput sc`,
|
23
|
-
:rc => `tput rc`,
|
24
|
-
:cuu1 => `tput cuu1`,
|
25
|
-
:cuf1 => `tput cuf1`,
|
42
|
+
:sc => "\e7",
|
43
|
+
:rc => "\e8",
|
44
|
+
:cuu1 => "\e[A",
|
45
|
+
:cuf1 => "\e[C",
|
26
46
|
}
|
27
47
|
end
|
28
48
|
end
|
data/lib/fancy_irb/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fancy_irb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Lelis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-03-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: paint
|
@@ -34,14 +34,14 @@ dependencies:
|
|
34
34
|
name: unicode-display_width
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- - "
|
37
|
+
- - ">="
|
38
38
|
- !ruby/object:Gem::Version
|
39
39
|
version: '1.1'
|
40
40
|
type: :runtime
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- - "
|
44
|
+
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
46
|
version: '1.1'
|
47
47
|
- !ruby/object:Gem::Dependency
|
@@ -72,8 +72,10 @@ dependencies:
|
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '10.4'
|
75
|
-
description: '
|
76
|
-
|
75
|
+
description: 'A fancy IRB has a colorful input prompt and profiles rocket-style #=>
|
76
|
+
return values'
|
77
|
+
email:
|
78
|
+
- hi@ruby.consulting
|
77
79
|
executables: []
|
78
80
|
extensions: []
|
79
81
|
extra_rdoc_files: []
|
@@ -95,7 +97,7 @@ files:
|
|
95
97
|
- lib/fancy_irb/version.rb
|
96
98
|
- spec/fixtures.rb
|
97
99
|
- spec/size_detector_spec.rb
|
98
|
-
homepage:
|
100
|
+
homepage: https://github.com/janlelis/fancy_irb
|
99
101
|
licenses:
|
100
102
|
- MIT
|
101
103
|
metadata: {}
|
@@ -115,8 +117,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
115
117
|
version: '0'
|
116
118
|
requirements:
|
117
119
|
- 'Windows: ansicon <https://github.com/adoxa/ansicon>'
|
118
|
-
rubygems_version: 3.
|
120
|
+
rubygems_version: 3.2.3
|
119
121
|
signing_key:
|
120
122
|
specification_version: 4
|
121
|
-
summary: FancyIrb makes IRB friendly.
|
123
|
+
summary: 'FancyIrb makes IRB # => friendly.'
|
122
124
|
test_files: []
|