brice 0.4.1 → 0.4.2
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 +5 -5
- data/ChangeLog +4 -0
- data/README +2 -2
- data/Rakefile +1 -1
- data/lib/brice.rb +5 -1
- data/lib/brice/colours.rb +163 -135
- data/lib/brice/history.rb +7 -5
- data/lib/brice/rc/{040_colours.rb → 040_colours_.rb} +0 -0
- data/lib/brice/rc/060_init.rb +3 -1
- data/lib/brice/rc/070_prompt.rb +12 -12
- data/lib/brice/rc/080_rails.rb +6 -6
- data/lib/brice/shortcuts.rb +2 -2
- data/lib/brice/version.rb +1 -1
- metadata +13 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 36999aee54c54f1de81d06593f1038074c2b9726c8201752cb692ba28c33a411
|
4
|
+
data.tar.gz: 6dd8b2419fc5e1f0a3192ba5fb3273c1ab9c66f1136d12e27865f4ba0e8104db
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d00c57bd13955221544ae079b8fe8f62553419544c716f1492fab2a3850fe4d8a5f92716b9ab5adfecc9c37b78c3716d02ad40c5d438d709e3c71a3408c3670
|
7
|
+
data.tar.gz: 10ab3f892e919a92a29b32e5c4d2064bb3045ea375adfe74648642dbd35af9c0ac9101a754ec31285ca4aa26a1fc3caa766a0c74b5af3a1b1fa46206b1b21afe
|
data/ChangeLog
CHANGED
data/README
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
== VERSION
|
4
4
|
|
5
|
-
This documentation refers to brice version 0.4.
|
5
|
+
This documentation refers to brice version 0.4.2
|
6
6
|
|
7
7
|
|
8
8
|
== DESCRIPTION
|
@@ -75,7 +75,7 @@ Travis CI:: https://travis-ci.org/blackwinter/brice
|
|
75
75
|
|
76
76
|
== LICENSE AND COPYRIGHT
|
77
77
|
|
78
|
-
Copyright (C) 2008-
|
78
|
+
Copyright (C) 2008-2020 Jens Wille
|
79
79
|
|
80
80
|
brice is free software: you can redistribute it and/or modify it under the
|
81
81
|
terms of the GNU Affero General Public License as published by the Free
|
data/Rakefile
CHANGED
data/lib/brice.rb
CHANGED
@@ -48,7 +48,7 @@ module Brice
|
|
48
48
|
|
49
49
|
# call-seq:
|
50
50
|
# Brice.init { |config| ... }
|
51
|
-
# Brice.init(:
|
51
|
+
# Brice.init(verbose: true) { |config| ... }
|
52
52
|
#
|
53
53
|
# Initialize Brice and optionally configure any packages.
|
54
54
|
def init(options = {})
|
@@ -123,6 +123,10 @@ module Brice
|
|
123
123
|
opt.is_a?(Hash) && opt.key?(key) ? opt[key] : default
|
124
124
|
end
|
125
125
|
|
126
|
+
def error(obj, met, err)
|
127
|
+
warn "Error in #{obj}##{met}: #{err.backtrace.first}: #{err} (#{err.class})"
|
128
|
+
end
|
129
|
+
|
126
130
|
private
|
127
131
|
|
128
132
|
# call-seq:
|
data/lib/brice/colours.rb
CHANGED
@@ -28,9 +28,9 @@ module Brice
|
|
28
28
|
|
29
29
|
# Add colour support to IRb.
|
30
30
|
#
|
31
|
-
# Set your own colours with <tt>config.colours.opt = { :
|
31
|
+
# Set your own colours with <tt>config.colours.opt = { colours: { ... } }</tt>
|
32
32
|
# or modify the default scheme (DEFAULT_COLOURS) with <tt>config.colours.opt =
|
33
|
-
# { :
|
33
|
+
# { colours: Brice::Colours::DEFAULT_COLOURS.merge(...) }</tt>.
|
34
34
|
|
35
35
|
module Colours
|
36
36
|
|
@@ -94,6 +94,8 @@ module Brice
|
|
94
94
|
}
|
95
95
|
|
96
96
|
def init(opt = {})
|
97
|
+
require 'ripper'
|
98
|
+
|
97
99
|
enable_irb if Brice.opt(opt, :irb, STDOUT.tty?)
|
98
100
|
enable_pp if Brice.opt(opt, :pp, STDOUT.tty?)
|
99
101
|
|
@@ -188,15 +190,11 @@ module Brice
|
|
188
190
|
|
189
191
|
# Colourize the results of inspect
|
190
192
|
def colourize(str)
|
191
|
-
|
192
|
-
|
193
|
-
Tokenizer.tokenize(str) { |token, value|
|
193
|
+
''.tap { |res| Tokenizer.tokenize(str.to_s) { |token, value|
|
194
194
|
res << colourize_string(value, colours[token])
|
195
|
-
}
|
196
|
-
|
197
|
-
res
|
195
|
+
} }
|
198
196
|
rescue => err
|
199
|
-
|
197
|
+
Brice.error(self, __method__, err)
|
200
198
|
str
|
201
199
|
end
|
202
200
|
|
@@ -237,144 +235,174 @@ module Brice
|
|
237
235
|
|
238
236
|
# Tokenize an inspection string.
|
239
237
|
|
240
|
-
|
238
|
+
class Tokenizer
|
239
|
+
|
240
|
+
EVENT_MAP = {
|
241
|
+
# on_CHAR: :unknown,
|
242
|
+
# on___end__: :unknown,
|
243
|
+
# on_backref: :unknown,
|
244
|
+
# on_backtick: :unknown,
|
245
|
+
on_comma: :comma,
|
246
|
+
on_comment: :unknown,
|
247
|
+
on_const: :class,
|
248
|
+
# on_cvar: :unknown,
|
249
|
+
# on_embdoc: :unknown,
|
250
|
+
# on_embdoc_beg: :unknown,
|
251
|
+
# on_embdoc_end: :unknown,
|
252
|
+
# on_embexpr_beg: :unknown,
|
253
|
+
# on_embexpr_end: :unknown,
|
254
|
+
# on_embvar: :unknown,
|
255
|
+
on_float: :number,
|
256
|
+
# on_gvar: :unknown,
|
257
|
+
# on_heredoc_beg: :unknown,
|
258
|
+
# on_heredoc_end: :unknown,
|
259
|
+
on_ident: :symbol,
|
260
|
+
# on_ignored_nl: :unknown,
|
261
|
+
on_imaginary: :number,
|
262
|
+
on_int: :number,
|
263
|
+
# on_ivar: :unknown,
|
264
|
+
on_kw: :keyword,
|
265
|
+
on_label: :unknown,
|
266
|
+
on_lbrace: :open_hash,
|
267
|
+
on_lbracket: :open_array,
|
268
|
+
on_lparen: :unknown,
|
269
|
+
# on_nl: :unknown,
|
270
|
+
on_op: :refers,
|
271
|
+
on_period: :comma,
|
272
|
+
# on_qsymbols_beg: :unknown,
|
273
|
+
# on_qwords_beg: :unknown,
|
274
|
+
on_rational: :number,
|
275
|
+
on_rbrace: :close_hash,
|
276
|
+
on_rbracket: :close_array,
|
277
|
+
on_regexp_beg: :unknown,
|
278
|
+
on_regexp_end: :unknown,
|
279
|
+
on_rparen: :unknown,
|
280
|
+
on_semicolon: :comma,
|
281
|
+
on_sp: :whitespace,
|
282
|
+
on_symbeg: :symbol_prefix,
|
283
|
+
# on_symbols_beg: :unknown,
|
284
|
+
# on_tlambda: :unknown,
|
285
|
+
# on_tlambeg: :unknown,
|
286
|
+
on_tstring_beg: :open_string,
|
287
|
+
on_tstring_content: :string,
|
288
|
+
on_tstring_end: :close_string,
|
289
|
+
# on_words_beg: :unknown,
|
290
|
+
# on_words_sep: :unknown
|
291
|
+
}
|
241
292
|
|
242
|
-
|
293
|
+
OBJECT_RE = %r{
|
294
|
+
\A
|
295
|
+
( \#< )
|
296
|
+
( .+ )
|
297
|
+
( > )
|
298
|
+
\z
|
299
|
+
}x
|
300
|
+
|
301
|
+
OBJECT_CLASS_RE = %r{
|
302
|
+
\A
|
303
|
+
(?: \w | :: )+
|
304
|
+
}x
|
305
|
+
|
306
|
+
OBJECT_ADDR_RE = %r{
|
307
|
+
\A
|
308
|
+
( : )
|
309
|
+
( 0x [\hx]+ )
|
310
|
+
(?= \s | \z )
|
311
|
+
}x
|
312
|
+
|
313
|
+
IVAR_RE = %r{
|
314
|
+
\A
|
315
|
+
( @ )
|
316
|
+
( .+ )
|
317
|
+
\z
|
318
|
+
}x
|
319
|
+
|
320
|
+
RANGE_RE = %r{
|
321
|
+
\A
|
322
|
+
\.+
|
323
|
+
\z
|
324
|
+
}x
|
325
|
+
|
326
|
+
def self.tokenize(str, &block)
|
327
|
+
new(&block).tokenize(str)
|
328
|
+
end
|
329
|
+
|
330
|
+
def initialize(&block)
|
331
|
+
@block = block or raise ArgumentError, 'no block given'
|
332
|
+
end
|
333
|
+
|
334
|
+
attr_reader :block
|
243
335
|
|
244
336
|
def tokenize(str)
|
245
|
-
|
337
|
+
return if str.empty?
|
338
|
+
return if enc_event(str)
|
246
339
|
|
247
|
-
|
248
|
-
char = last_char = repeat = nil
|
249
|
-
states, value, index = [], '', 0
|
340
|
+
lex, prev = Ripper.lex(str), nil
|
250
341
|
|
251
|
-
|
252
|
-
|
342
|
+
len = lex[-1][0][-1] + lex[-1][-1].bytesize
|
343
|
+
str, rest = str.byteslice(0, len), str.byteslice(len .. -1)
|
253
344
|
|
254
|
-
|
255
|
-
repeat = args.first unless args.empty?
|
256
|
-
}
|
345
|
+
return block[:unknown, rest] if str.empty?
|
257
346
|
|
258
|
-
|
259
|
-
|
260
|
-
|
347
|
+
lex.each { |_, event, tok|
|
348
|
+
sym_event(event, tok, prev) ||
|
349
|
+
obj_event(event, tok) ||
|
350
|
+
rng_event(event, tok) ||
|
351
|
+
var_event(event, tok) ||
|
352
|
+
map_event(event, tok)
|
353
|
+
|
354
|
+
prev = event
|
261
355
|
}
|
262
356
|
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
when '#' then states << :object
|
272
|
-
when /[a-z]/i
|
273
|
-
states << :keyword
|
274
|
-
repeat = true
|
275
|
-
when /[0-9-]/
|
276
|
-
states << :number
|
277
|
-
repeat = true
|
278
|
-
when '{' then yield :open_hash, '{'
|
279
|
-
when '[' then yield :open_array, '['
|
280
|
-
when ']' then yield :close_array, ']'
|
281
|
-
when '}' then yield :close_hash, '}'
|
282
|
-
when /\s/ then yield :whitespace, char
|
283
|
-
when ',' then yield :comma, ','
|
284
|
-
when '>' then yield :refers, '=>' if last_char == '='
|
285
|
-
when '.' then yield :range, '..' if last_char == '.'
|
286
|
-
when '=' then nil
|
287
|
-
else yield :unknown, char if char
|
288
|
-
end
|
289
|
-
when :symbol
|
290
|
-
if char =~ /[a-z0-9_!?]/ # should have =, but that messes up foo=>bar
|
291
|
-
value << char
|
292
|
-
else
|
293
|
-
yield :symbol_prefix, ':'
|
294
|
-
yield_last[true]
|
295
|
-
end
|
296
|
-
when :string
|
297
|
-
if char == '"'
|
298
|
-
if last_char == '\\'
|
299
|
-
value[-1] = char
|
300
|
-
else
|
301
|
-
yield :open_string, char
|
302
|
-
yield_last[]
|
303
|
-
yield :close_string, char
|
304
|
-
end
|
305
|
-
else
|
306
|
-
value << char
|
307
|
-
end
|
308
|
-
when :keyword
|
309
|
-
if char =~ /[a-z0-9_]/i
|
310
|
-
value << char
|
311
|
-
else
|
312
|
-
states[-1] = :class if value =~ /\A[A-Z]/
|
313
|
-
yield_last[true]
|
314
|
-
|
315
|
-
value << char if char == '.'
|
316
|
-
end
|
317
|
-
when :number
|
318
|
-
case char
|
319
|
-
when /[0-9e-]/
|
320
|
-
value << char
|
321
|
-
when '.'
|
322
|
-
if last_char == char
|
323
|
-
value.chop!
|
324
|
-
|
325
|
-
yield_last[]
|
326
|
-
yield :range, '..'
|
327
|
-
else
|
328
|
-
value << char
|
329
|
-
end
|
330
|
-
else
|
331
|
-
yield_last[true]
|
332
|
-
end
|
333
|
-
when :object
|
334
|
-
case char
|
335
|
-
when '<'
|
336
|
-
yield :open_object, '#<'
|
337
|
-
states << :object_class
|
338
|
-
when ':'
|
339
|
-
states << :object_addr
|
340
|
-
when '@'
|
341
|
-
states << :object_line
|
342
|
-
when '>'
|
343
|
-
yield :close_object, '>'
|
344
|
-
reset[]
|
345
|
-
end
|
346
|
-
when :object_class
|
347
|
-
if char == ':'
|
348
|
-
yield_last[true]
|
349
|
-
else
|
350
|
-
value << char
|
351
|
-
end
|
352
|
-
when :object_addr
|
353
|
-
case char
|
354
|
-
when '>'
|
355
|
-
# ignore
|
356
|
-
when '@'
|
357
|
-
yield :object_addr_prefix, ':'
|
358
|
-
yield_last[true]
|
359
|
-
else
|
360
|
-
value << char
|
361
|
-
end
|
362
|
-
when :object_line
|
363
|
-
if char == '>'
|
364
|
-
yield :object_line_prefix, '@'
|
365
|
-
yield_last[true]
|
366
|
-
else
|
367
|
-
value << char
|
368
|
-
end
|
369
|
-
else
|
370
|
-
raise "unknown state: #{states}"
|
371
|
-
end
|
357
|
+
tokenize(rest)
|
358
|
+
end
|
359
|
+
|
360
|
+
private
|
361
|
+
|
362
|
+
def enc_event(str) # XXX /\A\s*#.*?coding\s*:\s*./
|
363
|
+
object($1, $2, $3) if str =~ OBJECT_RE && str.include?('coding')
|
364
|
+
end
|
372
365
|
|
373
|
-
|
374
|
-
|
375
|
-
|
366
|
+
def obj_event(event, tok)
|
367
|
+
object($1, $2, $3) if event == :on_comment && tok =~ OBJECT_RE
|
368
|
+
end
|
369
|
+
|
370
|
+
def sym_event(event, tok, prev)
|
371
|
+
block[:symbol, tok] if event == :on_kw && prev == :on_symbeg
|
372
|
+
end
|
373
|
+
|
374
|
+
def rng_event(event, tok)
|
375
|
+
block[:range, tok] if event == :on_op && tok =~ RANGE_RE
|
376
|
+
end
|
377
|
+
|
378
|
+
def var_event(event, tok)
|
379
|
+
if event == :on_ivar && tok =~ IVAR_RE
|
380
|
+
block[:object_line_prefix, $1]
|
381
|
+
block[:keyword, $2]
|
382
|
+
end
|
383
|
+
end
|
384
|
+
|
385
|
+
def map_event(event, tok)
|
386
|
+
block[EVENT_MAP[event], tok]
|
387
|
+
end
|
388
|
+
|
389
|
+
def object(open, str, close)
|
390
|
+
block[:open_object, open]
|
391
|
+
|
392
|
+
if str.sub!(OBJECT_CLASS_RE, '')
|
393
|
+
block[:object_class, $&]
|
394
|
+
|
395
|
+
if str.sub!(OBJECT_ADDR_RE, '')
|
396
|
+
block[:object_addr_prefix, $1]
|
397
|
+
block[:object_addr, $2]
|
398
|
+
|
399
|
+
str = tokenize(str)
|
376
400
|
end
|
377
401
|
end
|
402
|
+
|
403
|
+
block[:unknown, str] if str
|
404
|
+
|
405
|
+
block[:close_object, close]
|
378
406
|
end
|
379
407
|
|
380
408
|
end
|
data/lib/brice/history.rb
CHANGED
@@ -43,11 +43,11 @@ module Brice
|
|
43
43
|
class History
|
44
44
|
|
45
45
|
DEFAULTS = {
|
46
|
-
:
|
47
|
-
:
|
48
|
-
:
|
49
|
-
|
50
|
-
:
|
46
|
+
path: ENV['IRB_HISTORY_FILE'] || File.join(ENV.user_home, '.irb_history'),
|
47
|
+
size: (ENV['IRB_HISTORY_SIZE'] || 1000).to_i,
|
48
|
+
perms: File::WRONLY | File::CREAT | File::TRUNC,
|
49
|
+
uniq: :reverse,
|
50
|
+
merge: true
|
51
51
|
}
|
52
52
|
|
53
53
|
def self.init(opt = {})
|
@@ -91,6 +91,8 @@ module Brice
|
|
91
91
|
end
|
92
92
|
|
93
93
|
def load_history(history = @history)
|
94
|
+
@first_line = nil
|
95
|
+
|
94
96
|
return unless File.readable?(@path)
|
95
97
|
read_history { |line| history << line }
|
96
98
|
|
File without changes
|
data/lib/brice/rc/060_init.rb
CHANGED
data/lib/brice/rc/070_prompt.rb
CHANGED
@@ -17,8 +17,8 @@ brice 'prompt' => nil do |config|
|
|
17
17
|
alias_method :_brice_original_evaluate, :evaluate
|
18
18
|
|
19
19
|
# Capture execution time
|
20
|
-
def evaluate(*a)
|
21
|
-
@_brice_tms = Benchmark.measure { _brice_original_evaluate(*a) }
|
20
|
+
def evaluate(*a, **o)
|
21
|
+
@_brice_tms = Benchmark.measure { _brice_original_evaluate(*a, **o) }
|
22
22
|
end
|
23
23
|
end
|
24
24
|
end
|
@@ -39,17 +39,17 @@ brice 'prompt' => nil do |config|
|
|
39
39
|
lambda { |rt| "#{rt} => %s\n" } : "=> %s\n"
|
40
40
|
|
41
41
|
IRB.conf[:PROMPT].update(
|
42
|
-
:
|
43
|
-
:
|
44
|
-
:
|
45
|
-
:
|
46
|
-
:
|
42
|
+
BRICE_SIMPLE: {
|
43
|
+
PROMPT_I: ' ',
|
44
|
+
PROMPT_S: ' ',
|
45
|
+
PROMPT_C: ' ',
|
46
|
+
RETURN: prompt_return
|
47
47
|
},
|
48
|
-
:
|
49
|
-
:
|
50
|
-
:
|
51
|
-
:
|
52
|
-
:
|
48
|
+
BRICE_VERBOSE: {
|
49
|
+
PROMPT_I: "#{prefix}> ",
|
50
|
+
PROMPT_S: "#{prefix}> ",
|
51
|
+
PROMPT_C: "#{prefix}> ",
|
52
|
+
RETURN: prompt_return
|
53
53
|
}
|
54
54
|
)
|
55
55
|
|
data/lib/brice/rc/080_rails.rb
CHANGED
@@ -24,10 +24,10 @@ brice 'rails' => nil do |config|
|
|
24
24
|
IRB.conf[:PROMPT] ||= {}
|
25
25
|
|
26
26
|
IRB.conf[:PROMPT][:BRICE_RAILS] = {
|
27
|
-
:
|
28
|
-
:
|
29
|
-
:
|
30
|
-
:
|
27
|
+
PROMPT_I: prompt,
|
28
|
+
PROMPT_S: prompt,
|
29
|
+
PROMPT_C: prompt,
|
30
|
+
RETURN: IRB.conf[:PROMPT][:BRICE_SIMPLE] ?
|
31
31
|
IRB.conf[:PROMPT][:BRICE_SIMPLE][:RETURN] : "=> %s\n"
|
32
32
|
}
|
33
33
|
|
@@ -40,7 +40,7 @@ brice 'rails' => nil do |config|
|
|
40
40
|
Object.const_set(:RAILS_DEFAULT_LOGGER, Logger.new(STDOUT))
|
41
41
|
}
|
42
42
|
|
43
|
-
define_irb_method(:logger) { |*args|
|
43
|
+
define_irb_method(:logger) { |*args, &block|
|
44
44
|
if args.empty?
|
45
45
|
RAILS_DEFAULT_LOGGER
|
46
46
|
else
|
@@ -51,7 +51,7 @@ brice 'rails' => nil do |config|
|
|
51
51
|
|
52
52
|
if block_given?
|
53
53
|
begin
|
54
|
-
|
54
|
+
block.call
|
55
55
|
ensure
|
56
56
|
logger.level = previous_level
|
57
57
|
end
|
data/lib/brice/shortcuts.rb
CHANGED
@@ -39,8 +39,8 @@ module Brice
|
|
39
39
|
|
40
40
|
# Convenient shortcut methods.
|
41
41
|
#
|
42
|
-
# Set <tt>config.shortcuts.opt = { :
|
43
|
-
# ObjectShortcuts, or <tt>config.shortcuts.opt = { :
|
42
|
+
# Set <tt>config.shortcuts.opt = { object: false }</tt> to disable
|
43
|
+
# ObjectShortcuts, or <tt>config.shortcuts.opt = { ri: false }</tt>
|
44
44
|
# to disable #ri shortcuts.
|
45
45
|
|
46
46
|
module Shortcuts
|
data/lib/brice/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: brice
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jens Wille
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-09-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nuggets
|
@@ -16,34 +16,34 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
19
|
+
version: '1.6'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1.
|
26
|
+
version: '1.6'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: hen
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '0.
|
33
|
+
version: '0.9'
|
34
34
|
- - ">="
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 0.
|
36
|
+
version: 0.9.1
|
37
37
|
type: :development
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
40
40
|
requirements:
|
41
41
|
- - "~>"
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version: '0.
|
43
|
+
version: '0.9'
|
44
44
|
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 0.
|
46
|
+
version: 0.9.1
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -96,7 +96,7 @@ files:
|
|
96
96
|
- lib/brice/rc/010_added_methods_.rb
|
97
97
|
- lib/brice/rc/020_libs.rb
|
98
98
|
- lib/brice/rc/030_history.rb
|
99
|
-
- lib/brice/rc/
|
99
|
+
- lib/brice/rc/040_colours_.rb
|
100
100
|
- lib/brice/rc/050_shortcuts.rb
|
101
101
|
- lib/brice/rc/060_init.rb
|
102
102
|
- lib/brice/rc/070_prompt.rb
|
@@ -113,15 +113,13 @@ licenses:
|
|
113
113
|
metadata: {}
|
114
114
|
post_install_message: |2+
|
115
115
|
|
116
|
-
brice-0.4.
|
116
|
+
brice-0.4.2 [2020-09-17]:
|
117
117
|
|
118
|
-
*
|
119
|
-
mark, since the latter is not supported on Windows file systems (issue #10
|
120
|
-
by Hovis Biddle).
|
118
|
+
* Ruby 2.7 compatibility.
|
121
119
|
|
122
120
|
rdoc_options:
|
123
121
|
- "--title"
|
124
|
-
- brice Application documentation (v0.4.
|
122
|
+
- brice Application documentation (v0.4.2)
|
125
123
|
- "--charset"
|
126
124
|
- UTF-8
|
127
125
|
- "--line-numbers"
|
@@ -141,8 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
139
|
- !ruby/object:Gem::Version
|
142
140
|
version: '0'
|
143
141
|
requirements: []
|
144
|
-
|
145
|
-
rubygems_version: 2.6.2
|
142
|
+
rubygems_version: 3.1.2
|
146
143
|
signing_key:
|
147
144
|
specification_version: 4
|
148
145
|
summary: Extra cool IRb goodness for the masses
|