luo 0.2.0 → 0.2.1
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.lock +3 -2
- data/exe/luo +1 -2
- data/lib/luo/cli/init_app.rb +5 -0
- data/lib/luo/cli/init_notebook.rb +5 -0
- data/lib/luo/helpers.rb +46 -0
- data/lib/luo/version.rb +1 -1
- data/lib/luo.rb +2 -2
- data/luo.gemspec +2 -0
- data/templates/AppGemfile +3 -0
- data/templates/NoteBookGemfile +5 -0
- data/templates/luo.ipynb +165 -40
- metadata +23 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b6fd7dfc689ad963f3f3e8c9f394242ca4aac334eccfe17ac0945397911a55b1
|
4
|
+
data.tar.gz: 4b0ddf9adeb237187ab8dc44c152502f1e0831b1b4ad9ea44aef880672de008f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 90121e2c75de091278163ef0914cea6bb2c1d32683b3b7dec5b4a487e7a9b4fe1eb3a38f615dfceb4cde71b0727fd3e46679fa6688ddb8ef2f47b8ca278f9886
|
7
|
+
data.tar.gz: 75ebe8f70681cc926bfcab440b1b5d25c2c2f20dd180c66022df540f2459eab83989011e2c020208297921ff801c025e335b4036179472865653bbbb56b6a369
|
data/Gemfile.lock
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
luo (0.2.
|
4
|
+
luo (0.2.1)
|
5
5
|
dotenv (~> 2.8, >= 2.8.1)
|
6
6
|
dry-configurable (~> 1.0, >= 1.0.1)
|
7
7
|
dry-schema (~> 1.13, >= 1.13.1)
|
8
8
|
faraday (~> 2.7, >= 2.7.4)
|
9
9
|
faraday-retry (~> 2.1)
|
10
10
|
redcarpet (~> 3.6)
|
11
|
+
rouge (~> 4.1, >= 4.1.1)
|
11
12
|
thor (~> 1.2, >= 1.2.2)
|
12
13
|
tty-markdown (~> 0.7.2)
|
13
14
|
zeitwerk (~> 2.6, >= 2.6.8)
|
@@ -57,7 +58,7 @@ GEM
|
|
57
58
|
rake (13.0.6)
|
58
59
|
redcarpet (3.6.0)
|
59
60
|
rexml (3.2.5)
|
60
|
-
rouge (4.1.
|
61
|
+
rouge (4.1.1)
|
61
62
|
rspec (3.12.0)
|
62
63
|
rspec-core (~> 3.12.0)
|
63
64
|
rspec-expectations (~> 3.12.0)
|
data/exe/luo
CHANGED
data/lib/luo/cli/init_app.rb
CHANGED
data/lib/luo/helpers.rb
CHANGED
@@ -2,12 +2,58 @@
|
|
2
2
|
|
3
3
|
module Luo
|
4
4
|
module Helpers
|
5
|
+
|
6
|
+
class HTMLwithRouge < Redcarpet::Render::HTML
|
7
|
+
|
8
|
+
def block_code(code, language)
|
9
|
+
lexer = Rouge::Lexer.find(language) || Rouge::Lexers::PlainText
|
10
|
+
formatter = Rouge::Formatters::HTML.new
|
11
|
+
highlighted_code = formatter.format(lexer.lex(code))
|
12
|
+
"<pre class=\"highlight\">#{highlighted_code}</pre>"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
5
16
|
extend self
|
6
17
|
|
7
18
|
def print_md(text)
|
8
19
|
puts TTY::Markdown.parse(text)
|
9
20
|
end
|
10
21
|
|
22
|
+
def display_md(text)
|
23
|
+
unless gem_exists?('iruby')
|
24
|
+
raise "Please install iruby gem first."
|
25
|
+
end
|
26
|
+
|
27
|
+
if gem_exists?('rouge')
|
28
|
+
renderer = HTMLwithRouge.new
|
29
|
+
else
|
30
|
+
renderer = Redcarpet::Render::HTML.new
|
31
|
+
end
|
32
|
+
|
33
|
+
markdown = Redcarpet::Markdown.new(renderer,
|
34
|
+
autolink: true,
|
35
|
+
tables: true,
|
36
|
+
strikethrough: true,
|
37
|
+
highlight: true,
|
38
|
+
prettify: true,
|
39
|
+
fenced_code_blocks: true)
|
40
|
+
body = markdown.render(text)
|
41
|
+
css = Rouge::Themes::Github.mode(:light).render(scope: '.highlight')
|
42
|
+
html = <<~HTML
|
43
|
+
<style>#{css}</style>
|
44
|
+
#{body}
|
45
|
+
HTML
|
46
|
+
# puts html
|
47
|
+
IRuby.display(IRuby.html(html))
|
48
|
+
end
|
49
|
+
|
50
|
+
def display_html(text)
|
51
|
+
unless gem_exists?('iruby')
|
52
|
+
raise "Please install iruby gem first."
|
53
|
+
end
|
54
|
+
IRuby.display(IRuby.html(text))
|
55
|
+
end
|
56
|
+
|
11
57
|
def load_test(path, &block)
|
12
58
|
data = YAML.load_file(path)
|
13
59
|
if data.is_a?(Array)
|
data/lib/luo/version.rb
CHANGED
data/lib/luo.rb
CHANGED
@@ -34,13 +34,13 @@ module Luo
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def self.app_setup(&block)
|
37
|
-
include Luo
|
37
|
+
TOPLEVEL_BINDING.eval('include Luo')
|
38
38
|
block.call(Loader) if block_given?
|
39
39
|
Loader.setup
|
40
40
|
end
|
41
41
|
|
42
42
|
def self.notebook_setup(&block)
|
43
|
-
include Luo
|
43
|
+
TOPLEVEL_BINDING.eval('include Luo')
|
44
44
|
block.call(Loader) if block_given?
|
45
45
|
Loader.setup
|
46
46
|
if Helpers.gem_exists?('pry')
|
data/luo.gemspec
CHANGED
@@ -37,10 +37,12 @@ Gem::Specification.new do |spec|
|
|
37
37
|
spec.add_dependency 'dry-configurable', '~> 1.0', '>= 1.0.1'
|
38
38
|
spec.add_dependency 'tty-markdown', '~> 0.7.2'
|
39
39
|
spec.add_dependency 'redcarpet', '~> 3.6'
|
40
|
+
spec.add_dependency 'rouge', '~> 4.1', '>= 4.1.1'
|
40
41
|
spec.add_dependency 'thor', '~> 1.2', '>= 1.2.2'
|
41
42
|
|
42
43
|
spec.add_development_dependency "rspec", '~> 3.12'
|
43
44
|
|
45
|
+
|
44
46
|
# For more information and examples about making a new gem, check out our
|
45
47
|
# guide at: https://bundler.io/guides/creating_gem.html
|
46
48
|
end
|
data/templates/luo.ipynb
CHANGED
@@ -17,21 +17,22 @@
|
|
17
17
|
},
|
18
18
|
"outputs": [
|
19
19
|
{
|
20
|
-
"
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
"execution_count": 1,
|
26
|
-
"metadata": {},
|
27
|
-
"output_type": "execute_result"
|
20
|
+
"name": "stdout",
|
21
|
+
"output_type": "stream",
|
22
|
+
"text": [
|
23
|
+
"0.2.0\n"
|
24
|
+
]
|
28
25
|
}
|
29
26
|
],
|
30
27
|
"source": [
|
31
28
|
"# 初始化运行环境\n",
|
32
|
-
"
|
33
|
-
"
|
34
|
-
"
|
29
|
+
"require 'luo'\n",
|
30
|
+
"\n",
|
31
|
+
"Luo.notebook_setup do |loader|\n",
|
32
|
+
" loader.push_dir(File.join(__dir__, 'agents'))\n",
|
33
|
+
"end\n",
|
34
|
+
"\n",
|
35
|
+
"puts Luo::VERSION"
|
35
36
|
]
|
36
37
|
},
|
37
38
|
{
|
@@ -63,7 +64,7 @@
|
|
63
64
|
},
|
64
65
|
{
|
65
66
|
"cell_type": "code",
|
66
|
-
"execution_count":
|
67
|
+
"execution_count": 3,
|
67
68
|
"id": "3b2b57cf-332e-4f4e-8b54-ee35950a0501",
|
68
69
|
"metadata": {
|
69
70
|
"tags": []
|
@@ -75,7 +76,7 @@
|
|
75
76
|
":input"
|
76
77
|
]
|
77
78
|
},
|
78
|
-
"execution_count":
|
79
|
+
"execution_count": 3,
|
79
80
|
"metadata": {},
|
80
81
|
"output_type": "execute_result"
|
81
82
|
}
|
@@ -85,7 +86,7 @@
|
|
85
86
|
"\n",
|
86
87
|
"def input(text)\n",
|
87
88
|
" context = $runner.call(text)\n",
|
88
|
-
" Helpers.
|
89
|
+
" Helpers.display_md <<~MD\n",
|
89
90
|
" ## Input:\n",
|
90
91
|
" #{text}\n",
|
91
92
|
"\n",
|
@@ -96,6 +97,7 @@
|
|
96
97
|
" #{context.final_result}\n",
|
97
98
|
"\n",
|
98
99
|
" ## History:\n",
|
100
|
+
" \n",
|
99
101
|
" ```ruby\n",
|
100
102
|
" #{context.histories.to_a}\n",
|
101
103
|
" ```\n",
|
@@ -106,8 +108,8 @@
|
|
106
108
|
},
|
107
109
|
{
|
108
110
|
"cell_type": "code",
|
109
|
-
"execution_count":
|
110
|
-
"id": "
|
111
|
+
"execution_count": 4,
|
112
|
+
"id": "4e5c17eb-1c13-4547-8a2e-d9aa886031a6",
|
111
113
|
"metadata": {
|
112
114
|
"tags": []
|
113
115
|
},
|
@@ -116,20 +118,151 @@
|
|
116
118
|
"name": "stdout",
|
117
119
|
"output_type": "stream",
|
118
120
|
"text": [
|
119
|
-
"** call aiui weather **\n"
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
"
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
121
|
+
"** call aiui weather **\n"
|
122
|
+
]
|
123
|
+
},
|
124
|
+
{
|
125
|
+
"data": {
|
126
|
+
"text/html": [
|
127
|
+
"<style>.highlight table td { padding: 5px; }\n",
|
128
|
+
".highlight table pre { margin: 0; }\n",
|
129
|
+
".highlight, .highlight .w {\n",
|
130
|
+
" color: #24292f;\n",
|
131
|
+
" background-color: #f6f8fa;\n",
|
132
|
+
"}\n",
|
133
|
+
".highlight .k, .highlight .kd, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kt, .highlight .kv {\n",
|
134
|
+
" color: #cf222e;\n",
|
135
|
+
"}\n",
|
136
|
+
".highlight .gr {\n",
|
137
|
+
" color: #f6f8fa;\n",
|
138
|
+
"}\n",
|
139
|
+
".highlight .gd {\n",
|
140
|
+
" color: #82071e;\n",
|
141
|
+
" background-color: #ffebe9;\n",
|
142
|
+
"}\n",
|
143
|
+
".highlight .nb {\n",
|
144
|
+
" color: #953800;\n",
|
145
|
+
"}\n",
|
146
|
+
".highlight .nc {\n",
|
147
|
+
" color: #953800;\n",
|
148
|
+
"}\n",
|
149
|
+
".highlight .no {\n",
|
150
|
+
" color: #953800;\n",
|
151
|
+
"}\n",
|
152
|
+
".highlight .nn {\n",
|
153
|
+
" color: #953800;\n",
|
154
|
+
"}\n",
|
155
|
+
".highlight .sr {\n",
|
156
|
+
" color: #116329;\n",
|
157
|
+
"}\n",
|
158
|
+
".highlight .na {\n",
|
159
|
+
" color: #116329;\n",
|
160
|
+
"}\n",
|
161
|
+
".highlight .nt {\n",
|
162
|
+
" color: #116329;\n",
|
163
|
+
"}\n",
|
164
|
+
".highlight .gi {\n",
|
165
|
+
" color: #116329;\n",
|
166
|
+
" background-color: #dafbe1;\n",
|
167
|
+
"}\n",
|
168
|
+
".highlight .kc {\n",
|
169
|
+
" color: #0550ae;\n",
|
170
|
+
"}\n",
|
171
|
+
".highlight .l, .highlight .ld, .highlight .m, .highlight .mb, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mx {\n",
|
172
|
+
" color: #0550ae;\n",
|
173
|
+
"}\n",
|
174
|
+
".highlight .sb {\n",
|
175
|
+
" color: #0550ae;\n",
|
176
|
+
"}\n",
|
177
|
+
".highlight .bp {\n",
|
178
|
+
" color: #0550ae;\n",
|
179
|
+
"}\n",
|
180
|
+
".highlight .ne {\n",
|
181
|
+
" color: #0550ae;\n",
|
182
|
+
"}\n",
|
183
|
+
".highlight .nl {\n",
|
184
|
+
" color: #0550ae;\n",
|
185
|
+
"}\n",
|
186
|
+
".highlight .py {\n",
|
187
|
+
" color: #0550ae;\n",
|
188
|
+
"}\n",
|
189
|
+
".highlight .nv, .highlight .vc, .highlight .vg, .highlight .vi, .highlight .vm {\n",
|
190
|
+
" color: #0550ae;\n",
|
191
|
+
"}\n",
|
192
|
+
".highlight .o, .highlight .ow {\n",
|
193
|
+
" color: #0550ae;\n",
|
194
|
+
"}\n",
|
195
|
+
".highlight .gh {\n",
|
196
|
+
" color: #0550ae;\n",
|
197
|
+
" font-weight: bold;\n",
|
198
|
+
"}\n",
|
199
|
+
".highlight .gu {\n",
|
200
|
+
" color: #0550ae;\n",
|
201
|
+
" font-weight: bold;\n",
|
202
|
+
"}\n",
|
203
|
+
".highlight .s, .highlight .sa, .highlight .sc, .highlight .dl, .highlight .sd, .highlight .s2, .highlight .se, .highlight .sh, .highlight .sx, .highlight .s1, .highlight .ss {\n",
|
204
|
+
" color: #0a3069;\n",
|
205
|
+
"}\n",
|
206
|
+
".highlight .nd {\n",
|
207
|
+
" color: #8250df;\n",
|
208
|
+
"}\n",
|
209
|
+
".highlight .nf, .highlight .fm {\n",
|
210
|
+
" color: #8250df;\n",
|
211
|
+
"}\n",
|
212
|
+
".highlight .err {\n",
|
213
|
+
" color: #f6f8fa;\n",
|
214
|
+
" background-color: #82071e;\n",
|
215
|
+
"}\n",
|
216
|
+
".highlight .c, .highlight .ch, .highlight .cd, .highlight .cm, .highlight .cp, .highlight .cpf, .highlight .c1, .highlight .cs {\n",
|
217
|
+
" color: #6e7781;\n",
|
218
|
+
"}\n",
|
219
|
+
".highlight .gl {\n",
|
220
|
+
" color: #6e7781;\n",
|
221
|
+
"}\n",
|
222
|
+
".highlight .gt {\n",
|
223
|
+
" color: #6e7781;\n",
|
224
|
+
"}\n",
|
225
|
+
".highlight .ni {\n",
|
226
|
+
" color: #24292f;\n",
|
227
|
+
"}\n",
|
228
|
+
".highlight .si {\n",
|
229
|
+
" color: #24292f;\n",
|
230
|
+
"}\n",
|
231
|
+
".highlight .ge {\n",
|
232
|
+
" color: #24292f;\n",
|
233
|
+
" font-style: italic;\n",
|
234
|
+
"}\n",
|
235
|
+
".highlight .gs {\n",
|
236
|
+
" color: #24292f;\n",
|
237
|
+
" font-weight: bold;\n",
|
238
|
+
"}</style>\n",
|
239
|
+
"<h2>Input:</h2>\n",
|
240
|
+
"\n",
|
241
|
+
"<p>明天的天气怎么样</p>\n",
|
242
|
+
"\n",
|
243
|
+
"<h2>Response:</h2>\n",
|
244
|
+
"\n",
|
245
|
+
"<p>调用工具:天气查询。</p>\n",
|
246
|
+
"\n",
|
247
|
+
"<h2>Final Result:</h2>\n",
|
248
|
+
"\n",
|
249
|
+
"<p>北京市明天全天小雨转多云,出门记得带伞,气温16℃ ~ 26℃,有南风转北风微风,气候温暖。</p>\n",
|
250
|
+
"\n",
|
251
|
+
"<h2>History:</h2>\n",
|
252
|
+
"<pre class=\"highlight\"><span class=\"p\">[{</span><span class=\"ss\">:role</span><span class=\"o\">=></span><span class=\"s2\">\"user\"</span><span class=\"p\">,</span> <span class=\"ss\">:content</span><span class=\"o\">=></span><span class=\"s2\">\"明天的天气怎么样\"</span><span class=\"p\">},</span> <span class=\"p\">{</span><span class=\"ss\">:role</span><span class=\"o\">=></span><span class=\"s2\">\"assistant\"</span><span class=\"p\">,</span> <span class=\"ss\">:content</span><span class=\"o\">=></span><span class=\"s2\">\"北京市明天全天小雨转多云,出门记得带伞,气温16℃ ~ 26℃,有南风转北风微风,气候温暖。\"</span><span class=\"p\">}]</span>\n",
|
253
|
+
"</pre>\n"
|
254
|
+
],
|
255
|
+
"text/plain": [
|
256
|
+
"\"<style>.highlight table td { padding: 5px; }\\n.highlight table pre { margin: 0; }\\n.highlight, .highlight .w {\\n color: #24292f;\\n background-color: #f6f8fa;\\n}\\n.highlight .k, .highlight .kd, .highlight .kn, .highlight .kp, .highlight .kr, .highlight .kt, .highlight .kv {\\n color: #cf222e;\\n}\\n.highlight .gr {\\n color: #f6f8fa;\\n}\\n.highlight .gd {\\n color: #82071e;\\n background-color: #ffebe9;\\n}\\n.highlight .nb {\\n color: #953800;\\n}\\n.highlight .nc {\\n color: #953800;\\n}\\n.highlight .no {\\n color: #953800;\\n}\\n.highlight .nn {\\n color: #953800;\\n}\\n.highlight .sr {\\n color: #116329;\\n}\\n.highlight .na {\\n color: #116329;\\n}\\n.highlight .nt {\\n color: #116329;\\n}\\n.highlight .gi {\\n color: #116329;\\n background-color: #dafbe1;\\n}\\n.highlight .kc {\\n color: #0550ae;\\n}\\n.highlight .l, .highlight .ld, .highlight .m, .highlight .mb, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mx {\\n color: #0550ae;\\n}\\n.highlight .sb {\\n color: #0550ae;\\n}\\n.highlight .bp {\\n color: #0550ae;\\n}\\n.highlight .ne {\\n color: #0550ae;\\n}\\n.highlight .nl {\\n color: #0550ae;\\n}\\n.highlight .py {\\n color: #0550ae;\\n}\\n.highlight .nv, .highlight .vc, .highlight .vg, .highlight .vi, .highlight .vm {\\n color: #0550ae;\\n}\\n.highlight .o, .highlight .ow {\\n color: #0550ae;\\n}\\n.highlight .gh {\\n color: #0550ae;\\n font-weight: bold;\\n}\\n.highlight .gu {\\n color: #0550ae;\\n font-weight: bold;\\n}\\n.highlight .s, .highlight .sa, .highlight .sc, .highlight .dl, .highlight .sd, .highlight .s2, .highlight .se, .highlight .sh, .highlight .sx, .highlight .s1, .highlight .ss {\\n color: #0a3069;\\n}\\n.highlight .nd {\\n color: #8250df;\\n}\\n.highlight .nf, .highlight .fm {\\n color: #8250df;\\n}\\n.highlight .err {\\n color: #f6f8fa;\\n background-color: #82071e;\\n}\\n.highlight .c, .highlight .ch, .highlight .cd, .highlight .cm, .highlight .cp, .highlight .cpf, .highlight .c1, .highlight .cs {\\n color: #6e7781;\\n}\\n.highlight .gl {\\n color: #6e7781;\\n}\\n.highlight .gt {\\n color: #6e7781;\\n}\\n.highlight .ni {\\n color: #24292f;\\n}\\n.highlight .si {\\n color: #24292f;\\n}\\n.highlight .ge {\\n color: #24292f;\\n font-style: italic;\\n}\\n.highlight .gs {\\n color: #24292f;\\n font-weight: bold;\\n}</style>\\n<h2>Input:</h2>\\n\\n<p>明天的天气怎么样</p>\\n\\n<h2>Response:</h2>\\n\\n<p>调用工具:天气查询。</p>\\n\\n<h2>Final Result:</h2>\\n\\n<p>北京市明天全天小雨转多云,出门记得带伞,气温16℃ ~ 26℃,有南风转北风微风,气候温暖。</p>\\n\\n<h2>History:</h2>\\n<pre class=\\\"highlight\\\"><span class=\\\"p\\\">[{</span><span class=\\\"ss\\\">:role</span><span class=\\\"o\\\">=></span><span class=\\\"s2\\\">\\\"user\\\"</span><span class=\\\"p\\\">,</span> <span class=\\\"ss\\\">:content</span><span class=\\\"o\\\">=></span><span class=\\\"s2\\\">\\\"明天的天气怎么样\\\"</span><span class=\\\"p\\\">},</span> <span class=\\\"p\\\">{</span><span class=\\\"ss\\\">:role</span><span class=\\\"o\\\">=></span><span class=\\\"s2\\\">\\\"assistant\\\"</span><span class=\\\"p\\\">,</span> <span class=\\\"ss\\\">:content</span><span class=\\\"o\\\">=></span><span class=\\\"s2\\\">\\\"北京市明天全天小雨转多云,出门记得带伞,气温16℃ ~ 26℃,有南风转北风微风,气候温暖。\\\"</span><span class=\\\"p\\\">}]</span>\\n</pre>\\n\""
|
257
|
+
]
|
258
|
+
},
|
259
|
+
"metadata": {},
|
260
|
+
"output_type": "display_data"
|
261
|
+
},
|
262
|
+
{
|
263
|
+
"name": "stdout",
|
264
|
+
"output_type": "stream",
|
265
|
+
"text": [
|
133
266
|
"\n",
|
134
267
|
"\n",
|
135
268
|
"\n"
|
@@ -139,19 +272,11 @@
|
|
139
272
|
"source": [
|
140
273
|
"input \"明天的天气怎么样\""
|
141
274
|
]
|
142
|
-
},
|
143
|
-
{
|
144
|
-
"cell_type": "code",
|
145
|
-
"execution_count": null,
|
146
|
-
"id": "ca165db3-1711-41c3-85eb-3f7f02d04e0a",
|
147
|
-
"metadata": {},
|
148
|
-
"outputs": [],
|
149
|
-
"source": []
|
150
275
|
}
|
151
276
|
],
|
152
277
|
"metadata": {
|
153
278
|
"kernelspec": {
|
154
|
-
"display_name": "Ruby 3.2.
|
279
|
+
"display_name": "Ruby 3.2.1",
|
155
280
|
"language": "ruby",
|
156
281
|
"name": "ruby"
|
157
282
|
},
|
@@ -159,7 +284,7 @@
|
|
159
284
|
"file_extension": ".rb",
|
160
285
|
"mimetype": "application/x-ruby",
|
161
286
|
"name": "ruby",
|
162
|
-
"version": "3.2.
|
287
|
+
"version": "3.2.1"
|
163
288
|
}
|
164
289
|
},
|
165
290
|
"nbformat": 4,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: luo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- MJ
|
@@ -152,6 +152,26 @@ dependencies:
|
|
152
152
|
- - "~>"
|
153
153
|
- !ruby/object:Gem::Version
|
154
154
|
version: '3.6'
|
155
|
+
- !ruby/object:Gem::Dependency
|
156
|
+
name: rouge
|
157
|
+
requirement: !ruby/object:Gem::Requirement
|
158
|
+
requirements:
|
159
|
+
- - "~>"
|
160
|
+
- !ruby/object:Gem::Version
|
161
|
+
version: '4.1'
|
162
|
+
- - ">="
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: 4.1.1
|
165
|
+
type: :runtime
|
166
|
+
prerelease: false
|
167
|
+
version_requirements: !ruby/object:Gem::Requirement
|
168
|
+
requirements:
|
169
|
+
- - "~>"
|
170
|
+
- !ruby/object:Gem::Version
|
171
|
+
version: '4.1'
|
172
|
+
- - ">="
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: 4.1.1
|
155
175
|
- !ruby/object:Gem::Dependency
|
156
176
|
name: thor
|
157
177
|
requirement: !ruby/object:Gem::Requirement
|
@@ -248,6 +268,8 @@ files:
|
|
248
268
|
- sig/luo/prompt_template.rbs
|
249
269
|
- sig/luo/prompts.rbs
|
250
270
|
- sig/luo/xinghuo.rbs
|
271
|
+
- templates/AppGemfile
|
272
|
+
- templates/NoteBookGemfile
|
251
273
|
- templates/application.rb
|
252
274
|
- templates/env
|
253
275
|
- templates/init.rb
|