irb 1.6.4 → 1.8.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 +4 -4
- data/Gemfile +1 -0
- data/README.md +135 -14
- data/Rakefile +0 -7
- data/doc/irb/irb.rd.ja +1 -3
- data/irb.gemspec +2 -1
- data/lib/irb/cmd/chws.rb +2 -2
- data/lib/irb/cmd/debug.rb +36 -92
- data/lib/irb/cmd/edit.rb +6 -7
- data/lib/irb/cmd/help.rb +12 -46
- data/lib/irb/cmd/irb_info.rb +14 -18
- data/lib/irb/cmd/ls.rb +17 -7
- data/lib/irb/cmd/nop.rb +4 -8
- data/lib/irb/cmd/pushws.rb +3 -3
- data/lib/irb/cmd/show_cmds.rb +17 -3
- data/lib/irb/cmd/show_doc.rb +48 -0
- data/lib/irb/cmd/show_source.rb +4 -60
- data/lib/irb/cmd/subirb.rb +49 -6
- data/lib/irb/color.rb +2 -0
- data/lib/irb/completion.rb +2 -2
- data/lib/irb/context.rb +52 -21
- data/lib/irb/debug/ui.rb +104 -0
- data/lib/irb/debug.rb +115 -0
- data/lib/irb/ext/{history.rb → eval_history.rb} +4 -4
- data/lib/irb/ext/loader.rb +2 -0
- data/lib/irb/ext/tracer.rb +1 -1
- data/lib/irb/extend-command.rb +7 -5
- data/lib/irb/help.rb +1 -3
- data/lib/irb/{ext/save-history.rb → history.rb} +4 -55
- data/lib/irb/init.rb +4 -10
- data/lib/irb/input-method.rb +65 -131
- data/lib/irb/locale.rb +10 -43
- data/lib/irb/nesting_parser.rb +227 -0
- data/lib/irb/pager.rb +86 -0
- data/lib/irb/ruby-lex.rb +401 -747
- data/lib/irb/source_finder.rb +64 -0
- data/lib/irb/statement.rb +80 -0
- data/lib/irb/version.rb +2 -2
- data/lib/irb/workspace.rb +4 -0
- data/lib/irb.rb +222 -120
- metadata +28 -11
- data/lib/irb/cmd/fork.rb +0 -34
- data/lib/irb/lc/ja/encoding_aliases.rb +0 -13
- data/lib/irb/magic-file.rb +0 -38
- data/lib/irb/src_encoding.rb +0 -7
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: irb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- aycabta
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-08-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: reline
|
@@ -17,14 +17,28 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 0.3.
|
20
|
+
version: 0.3.6
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - ">="
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 0.3.
|
27
|
+
version: 0.3.6
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: rdoc
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - "~>"
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '6.5'
|
35
|
+
type: :runtime
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - "~>"
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '6.5'
|
28
42
|
description: Interactive Ruby command-line tool for REPL (Read Eval Print Loop).
|
29
43
|
email:
|
30
44
|
- aycabta@gmail.com
|
@@ -55,7 +69,6 @@ files:
|
|
55
69
|
- lib/irb/cmd/delete.rb
|
56
70
|
- lib/irb/cmd/edit.rb
|
57
71
|
- lib/irb/cmd/finish.rb
|
58
|
-
- lib/irb/cmd/fork.rb
|
59
72
|
- lib/irb/cmd/help.rb
|
60
73
|
- lib/irb/cmd/info.rb
|
61
74
|
- lib/irb/cmd/irb_info.rb
|
@@ -66,6 +79,7 @@ files:
|
|
66
79
|
- lib/irb/cmd/nop.rb
|
67
80
|
- lib/irb/cmd/pushws.rb
|
68
81
|
- lib/irb/cmd/show_cmds.rb
|
82
|
+
- lib/irb/cmd/show_doc.rb
|
69
83
|
- lib/irb/cmd/show_source.rb
|
70
84
|
- lib/irb/cmd/step.rb
|
71
85
|
- lib/irb/cmd/subirb.rb
|
@@ -74,33 +88,36 @@ files:
|
|
74
88
|
- lib/irb/color_printer.rb
|
75
89
|
- lib/irb/completion.rb
|
76
90
|
- lib/irb/context.rb
|
91
|
+
- lib/irb/debug.rb
|
92
|
+
- lib/irb/debug/ui.rb
|
77
93
|
- lib/irb/easter-egg.rb
|
78
94
|
- lib/irb/ext/change-ws.rb
|
79
|
-
- lib/irb/ext/
|
95
|
+
- lib/irb/ext/eval_history.rb
|
80
96
|
- lib/irb/ext/loader.rb
|
81
97
|
- lib/irb/ext/multi-irb.rb
|
82
|
-
- lib/irb/ext/save-history.rb
|
83
98
|
- lib/irb/ext/tracer.rb
|
84
99
|
- lib/irb/ext/use-loader.rb
|
85
100
|
- lib/irb/ext/workspaces.rb
|
86
101
|
- lib/irb/extend-command.rb
|
87
102
|
- lib/irb/frame.rb
|
88
103
|
- lib/irb/help.rb
|
104
|
+
- lib/irb/history.rb
|
89
105
|
- lib/irb/init.rb
|
90
106
|
- lib/irb/input-method.rb
|
91
107
|
- lib/irb/inspector.rb
|
92
108
|
- lib/irb/lc/error.rb
|
93
109
|
- lib/irb/lc/help-message
|
94
|
-
- lib/irb/lc/ja/encoding_aliases.rb
|
95
110
|
- lib/irb/lc/ja/error.rb
|
96
111
|
- lib/irb/lc/ja/help-message
|
97
112
|
- lib/irb/locale.rb
|
98
|
-
- lib/irb/
|
113
|
+
- lib/irb/nesting_parser.rb
|
99
114
|
- lib/irb/notifier.rb
|
100
115
|
- lib/irb/output-method.rb
|
116
|
+
- lib/irb/pager.rb
|
101
117
|
- lib/irb/ruby-lex.rb
|
102
118
|
- lib/irb/ruby_logo.aa
|
103
|
-
- lib/irb/
|
119
|
+
- lib/irb/source_finder.rb
|
120
|
+
- lib/irb/statement.rb
|
104
121
|
- lib/irb/version.rb
|
105
122
|
- lib/irb/workspace.rb
|
106
123
|
- lib/irb/ws-for-case-2.rb
|
@@ -130,7 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
130
147
|
- !ruby/object:Gem::Version
|
131
148
|
version: '0'
|
132
149
|
requirements: []
|
133
|
-
rubygems_version: 3.4.
|
150
|
+
rubygems_version: 3.4.10
|
134
151
|
signing_key:
|
135
152
|
specification_version: 4
|
136
153
|
summary: Interactive Ruby command-line tool for REPL (Read Eval Print Loop).
|
data/lib/irb/cmd/fork.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
# frozen_string_literal: false
|
2
|
-
#
|
3
|
-
# fork.rb -
|
4
|
-
# by Keiju ISHITSUKA(keiju@ruby-lang.org)
|
5
|
-
#
|
6
|
-
|
7
|
-
require_relative "nop"
|
8
|
-
|
9
|
-
module IRB
|
10
|
-
# :stopdoc:
|
11
|
-
|
12
|
-
module ExtendCommand
|
13
|
-
class Fork < Nop
|
14
|
-
def execute
|
15
|
-
pid = __send__ ExtendCommand.irb_original_method_name("fork")
|
16
|
-
unless pid
|
17
|
-
class << self
|
18
|
-
alias_method :exit, ExtendCommand.irb_original_method_name('exit')
|
19
|
-
end
|
20
|
-
if block_given?
|
21
|
-
begin
|
22
|
-
yield
|
23
|
-
ensure
|
24
|
-
exit
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
pid
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
# :startdoc:
|
34
|
-
end
|
data/lib/irb/magic-file.rb
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
# frozen_string_literal: false
|
2
|
-
module IRB
|
3
|
-
class << (MagicFile = Object.new)
|
4
|
-
# see parser_magic_comment in parse.y
|
5
|
-
ENCODING_SPEC_RE = %r"coding\s*[=:]\s*([[:alnum:]\-_]+)"
|
6
|
-
|
7
|
-
def open(path)
|
8
|
-
io = File.open(path, 'rb')
|
9
|
-
line = io.gets
|
10
|
-
line = io.gets if line[0,2] == "#!"
|
11
|
-
encoding = detect_encoding(line)
|
12
|
-
internal_encoding = encoding
|
13
|
-
encoding ||= IRB.default_src_encoding
|
14
|
-
io.rewind
|
15
|
-
io.set_encoding(encoding, internal_encoding)
|
16
|
-
|
17
|
-
if block_given?
|
18
|
-
begin
|
19
|
-
return (yield io)
|
20
|
-
ensure
|
21
|
-
io.close
|
22
|
-
end
|
23
|
-
else
|
24
|
-
return io
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
private
|
29
|
-
def detect_encoding(line)
|
30
|
-
return unless line[0] == ?#
|
31
|
-
line = line[1..-1]
|
32
|
-
line = $1 if line[/-\*-\s*(.*?)\s*-*-$/]
|
33
|
-
return nil unless ENCODING_SPEC_RE =~ line
|
34
|
-
encoding = $1
|
35
|
-
return encoding.sub(/-(?:mac|dos|unix)/i, '')
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|