wxl_console 0.0.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/lib/wxl_console.rb +89 -0
- metadata +44 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: fb18c3f78ede57d13d5d7edae3311327508928f725dfbbc5a8445efc203aa37f
|
4
|
+
data.tar.gz: 64b74ab56814ab54b36187e931e380e274b58e6b35a6930848d2854caa9d8c0e
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ff2ccd6feaca0ac6a181b303b74fbe9a2a3e582e1c587f33fef0067ff3cf18774a148ca35a89e1a7e02d8952029fa5299aa1b80d3753468073b810f0cda49d56
|
7
|
+
data.tar.gz: 0febe4a5a7d614830bd8a243c705328d360b0be4a196a98e24eb8ba3b2e77ee153b8c4c4e49d7ba87f68c2573b939f5f94395ed3e1ebc3c8c1207acb2a29a1fb
|
data/lib/wxl_console.rb
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# coding: utf-8
|
3
|
+
#如果报readline找不到,需要
|
4
|
+
#1,yum -y install readline readline-devel
|
5
|
+
#2,重新编译ruby 加上--with-ext ./configure --prefix=/opt/ruby_2.2.3/ --with-ext
|
6
|
+
|
7
|
+
########################################################
|
8
|
+
# 加载库
|
9
|
+
########################################################
|
10
|
+
begin
|
11
|
+
require "readline"
|
12
|
+
require "gdbm" #支持中文
|
13
|
+
require 'socket'
|
14
|
+
rescue Exception => e
|
15
|
+
p e.message
|
16
|
+
end
|
17
|
+
|
18
|
+
|
19
|
+
class C_控制台
|
20
|
+
|
21
|
+
def initialize(外部绑定=TOPLEVEL_BINDING)
|
22
|
+
@命令段落=""
|
23
|
+
@命令行提示符="->"
|
24
|
+
#
|
25
|
+
# 配置参数
|
26
|
+
#
|
27
|
+
@代码回显=false
|
28
|
+
@执行回显=true
|
29
|
+
@外部绑定=外部绑定
|
30
|
+
@内部绑定=binding
|
31
|
+
end
|
32
|
+
|
33
|
+
def 开启
|
34
|
+
while 读取行 = Readline.readline(@命令行提示符, true)
|
35
|
+
#退出
|
36
|
+
exit if 读取行=='exit' || 读取行=='quit' ;
|
37
|
+
if ! 读取行.include? ";"
|
38
|
+
@命令段落 << 读取行 + "\n"
|
39
|
+
@命令行提示符=" "
|
40
|
+
else
|
41
|
+
@命令段落 << 读取行
|
42
|
+
puts "#{@命令段落}" if @代码回显
|
43
|
+
if @命令段落.include?('配置') or @命令段落.include?('切换代码回显') or @命令段落.include?('切换执行回显') or @命令段落.include?('帮助')
|
44
|
+
begin
|
45
|
+
eval @命令段落 , @内部绑定
|
46
|
+
rescue Exception => e
|
47
|
+
puts e
|
48
|
+
end
|
49
|
+
else
|
50
|
+
begin
|
51
|
+
eval @命令段落 , @外部绑定
|
52
|
+
rescue Exception => e
|
53
|
+
puts e
|
54
|
+
end
|
55
|
+
|
56
|
+
end
|
57
|
+
@命令段落=''
|
58
|
+
@命令行提示符="->"
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
def 配置
|
64
|
+
puts "@代码回显 #{@代码回显}"
|
65
|
+
puts "@执行回显 #{@执行回显}"
|
66
|
+
end
|
67
|
+
def 切换代码回显
|
68
|
+
@代码回显 = ! @代码回显
|
69
|
+
end
|
70
|
+
|
71
|
+
def 切换执行回显
|
72
|
+
@执行回显 = ! @执行回显
|
73
|
+
end
|
74
|
+
|
75
|
+
def 帮助
|
76
|
+
puts "命令:"
|
77
|
+
puts " 配置; #显示配置参数"
|
78
|
+
puts " 帮助; #显示帮助内容"
|
79
|
+
puts " 切换代码回显; #切换代码的回显设置"
|
80
|
+
puts " 切换执行回显; #切换执行的回显设置"
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
|
85
|
+
#C_控制台.new().开启
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
metadata
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: wxl_console
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- wxl
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2018-12-15 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: 这是一个可以用于代码中断,调试和手工干预代码运行的gem,它有点像irb,但是非常简单。
|
14
|
+
email: wangxl_bj2008@foxmail.com
|
15
|
+
executables: []
|
16
|
+
extensions: []
|
17
|
+
extra_rdoc_files: []
|
18
|
+
files:
|
19
|
+
- "./lib/wxl_console.rb"
|
20
|
+
homepage: https://github.com/lebashupian/wxl_console
|
21
|
+
licenses:
|
22
|
+
- MIT
|
23
|
+
metadata: {}
|
24
|
+
post_install_message:
|
25
|
+
rdoc_options: []
|
26
|
+
require_paths:
|
27
|
+
- lib
|
28
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.2.0
|
33
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
34
|
+
requirements:
|
35
|
+
- - ">="
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
requirements: []
|
39
|
+
rubyforge_project:
|
40
|
+
rubygems_version: 2.7.6
|
41
|
+
signing_key:
|
42
|
+
specification_version: 4
|
43
|
+
summary: 一个简化版的irb
|
44
|
+
test_files: []
|