vedeu 0.8.16 → 0.8.17
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/TODO.md +8 -0
- data/examples/dsl_alignment.rb +5 -2
- data/examples/dsl_horizontal_alignment.rb +5 -2
- data/examples/dsl_vertical_alignment.rb +5 -2
- data/integrations/test_runner.sh +2 -3
- data/lib/vedeu.rb +31 -1
- data/lib/vedeu/borders/all.rb +19 -0
- data/lib/vedeu/borders/border.rb +1 -2
- data/lib/vedeu/borders/caption.rb +2 -0
- data/lib/vedeu/borders/refresh.rb +4 -17
- data/lib/vedeu/borders/repository.rb +0 -14
- data/lib/vedeu/borders/title.rb +9 -3
- data/lib/vedeu/buffers/all.rb +25 -0
- data/lib/vedeu/buffers/buffer.rb +2 -2
- data/lib/vedeu/buffers/refresh.rb +1 -15
- data/lib/vedeu/buffers/terminal.rb +0 -15
- data/lib/vedeu/buffers/view.rb +2 -2
- data/lib/vedeu/cells/empty.rb +4 -5
- data/lib/vedeu/coercers/all.rb +0 -5
- data/lib/vedeu/cursors/all.rb +88 -0
- data/lib/vedeu/cursors/cursor.rb +7 -92
- data/lib/vedeu/cursors/move.rb +44 -14
- data/lib/vedeu/cursors/refresh.rb +5 -17
- data/lib/vedeu/cursors/reposition.rb +2 -2
- data/lib/vedeu/distributed/all.rb +16 -0
- data/lib/vedeu/distributed/server.rb +0 -16
- data/lib/vedeu/dsl/dsl.rb +2 -2
- data/lib/vedeu/dsl/helpers/align.rb +1 -1
- data/lib/vedeu/dsl/helpers/attributes.rb +1 -1
- data/lib/vedeu/dsl/helpers/truncate.rb +1 -1
- data/lib/vedeu/dsl/helpers/wordwrap.rb +1 -1
- data/lib/vedeu/dsl/view.rb +1 -1
- data/lib/vedeu/dsl/views.rb +22 -6
- data/lib/vedeu/editor/all.rb +54 -0
- data/lib/vedeu/editor/cropper.rb +3 -5
- data/lib/vedeu/editor/cursor.rb +2 -4
- data/lib/vedeu/editor/document.rb +1 -1
- data/lib/vedeu/editor/editor.rb +2 -17
- data/lib/vedeu/editor/repository.rb +0 -45
- data/lib/vedeu/events/event.rb +1 -1
- data/lib/vedeu/geometries/all.rb +46 -1
- data/lib/vedeu/geometries/area/area.rb +2 -2
- data/lib/vedeu/geometries/dsl/grid.rb +16 -20
- data/lib/vedeu/geometries/geometry.rb +1 -1
- data/lib/vedeu/geometries/move.rb +2 -38
- data/lib/vedeu/geometries/repository.rb +0 -14
- data/lib/vedeu/groups/all.rb +23 -0
- data/lib/vedeu/groups/clear.rb +1 -10
- data/lib/vedeu/groups/group.rb +0 -12
- data/lib/vedeu/groups/refresh.rb +2 -11
- data/lib/vedeu/input/all.rb +35 -0
- data/lib/vedeu/input/capture.rb +2 -2
- data/lib/vedeu/input/mapper.rb +0 -35
- data/lib/vedeu/input/raw.rb +1 -1
- data/lib/vedeu/input/read.rb +1 -1
- data/lib/vedeu/interfaces/all.rb +24 -0
- data/lib/vedeu/interfaces/clear.rb +32 -46
- data/lib/vedeu/interfaces/interface.rb +0 -16
- data/lib/vedeu/menus/all.rb +44 -0
- data/lib/vedeu/menus/menu.rb +13 -8
- data/lib/vedeu/menus/repository.rb +0 -44
- data/lib/vedeu/models/all.rb +13 -0
- data/lib/vedeu/models/focus.rb +0 -13
- data/lib/vedeu/models/toggleable.rb +1 -1
- data/lib/vedeu/null/generic.rb +1 -1
- data/lib/vedeu/output/all.rb +7 -0
- data/lib/vedeu/output/compressor.rb +11 -6
- data/lib/vedeu/output/compressors/character.rb +2 -0
- data/lib/vedeu/output/refresh.rb +0 -7
- data/lib/vedeu/output/viewport.rb +2 -5
- data/lib/vedeu/plugins/plugin.rb +1 -1
- data/lib/vedeu/presentation/colour.rb +6 -1
- data/lib/vedeu/renderers/all.rb +1 -1
- data/lib/vedeu/repositories/repositories.rb +1 -1
- data/lib/vedeu/runtime/all.rb +28 -0
- data/lib/vedeu/runtime/application.rb +0 -18
- data/lib/vedeu/runtime/flags.rb +0 -7
- data/lib/vedeu/runtime/router.rb +0 -11
- data/lib/vedeu/runtime/traps.rb +2 -0
- data/lib/vedeu/templating/view_template.rb +2 -4
- data/lib/vedeu/terminal/all.rb +7 -0
- data/lib/vedeu/terminal/terminal.rb +0 -7
- data/lib/vedeu/version.rb +1 -1
- data/lib/vedeu/views/view.rb +3 -3
- data/test/lib/vedeu/cursors/cursor_test.rb +4 -4
- data/test/lib/vedeu/cursors/move_test.rb +2 -2
- data/test/lib/vedeu/presentation/colour_test.rb +26 -0
- data/test/support/colour_support.sh +3 -1
- data/test/support/examples/material_colours_app.rb +2 -28
- data/test/support/stats.sh +1 -1
- data/test/test_helper.rb +0 -1
- data/vedeu.gemspec +1 -1
- metadata +4 -6
- data/test/support/helpers/presentation_colour_test_class.rb +0 -31
data/lib/vedeu/runtime/flags.rb
CHANGED
data/lib/vedeu/runtime/router.rb
CHANGED
@@ -176,15 +176,4 @@ module Vedeu
|
|
176
176
|
def_delegators Vedeu::Runtime::Router,
|
177
177
|
:goto
|
178
178
|
|
179
|
-
# :nocov:
|
180
|
-
|
181
|
-
# See {file:docs/events/application.md#\_goto_}
|
182
|
-
Vedeu.bind(:_goto_) do |controller, action, **args|
|
183
|
-
Vedeu::Runtime::Router.goto(controller, action, **args)
|
184
|
-
end
|
185
|
-
|
186
|
-
# Vedeu.bind_alias(:_action_, :_goto_)
|
187
|
-
|
188
|
-
# :nocov:
|
189
|
-
|
190
179
|
end # Vedeu
|
data/lib/vedeu/runtime/traps.rb
CHANGED
@@ -72,15 +72,13 @@ module Vedeu
|
|
72
72
|
}
|
73
73
|
end
|
74
74
|
|
75
|
-
#
|
76
|
-
#
|
77
|
-
# @return (see Vedeu::Interfaces::Repository#by_name)
|
75
|
+
# @macro interface_by_name
|
78
76
|
def interface
|
79
77
|
Vedeu.interfaces.by_name(name)
|
80
78
|
end
|
81
79
|
alias interface? interface
|
82
80
|
|
83
|
-
# @
|
81
|
+
# @macro return_name
|
84
82
|
def name
|
85
83
|
options[:name]
|
86
84
|
end
|
data/lib/vedeu/terminal/all.rb
CHANGED
data/lib/vedeu/version.rb
CHANGED
data/lib/vedeu/views/view.rb
CHANGED
@@ -47,7 +47,7 @@ module Vedeu
|
|
47
47
|
alias cursor_visible? cursor_visible
|
48
48
|
|
49
49
|
# @!attribute [rw] name
|
50
|
-
# @
|
50
|
+
# @macro return_name
|
51
51
|
attr_accessor :name
|
52
52
|
|
53
53
|
# @!attribute [rw] wordwrap
|
@@ -146,7 +146,7 @@ module Vedeu
|
|
146
146
|
|
147
147
|
private
|
148
148
|
|
149
|
-
# @
|
149
|
+
# @macro buffer_by_name
|
150
150
|
def buffer
|
151
151
|
Vedeu.buffers.by_name(name)
|
152
152
|
end
|
@@ -166,7 +166,7 @@ module Vedeu
|
|
166
166
|
}
|
167
167
|
end
|
168
168
|
|
169
|
-
# @
|
169
|
+
# @macro interface_by_name
|
170
170
|
def interface
|
171
171
|
Vedeu.interfaces.by_name(name)
|
172
172
|
end
|
@@ -198,8 +198,8 @@ module Vedeu
|
|
198
198
|
|
199
199
|
it { subject.x.must_equal(6) }
|
200
200
|
it { subject.y.must_equal(6) }
|
201
|
-
it { subject.ox.must_equal(
|
202
|
-
it { subject.oy.must_equal(
|
201
|
+
it { subject.ox.must_equal(1) }
|
202
|
+
it { subject.oy.must_equal(1) }
|
203
203
|
end
|
204
204
|
|
205
205
|
describe '#move_right' do
|
@@ -242,7 +242,7 @@ module Vedeu
|
|
242
242
|
context 'when < 0' do
|
243
243
|
let(:ox) { -2 }
|
244
244
|
|
245
|
-
it { subject.must_equal(
|
245
|
+
it { subject.must_equal(1) }
|
246
246
|
end
|
247
247
|
end
|
248
248
|
|
@@ -254,7 +254,7 @@ module Vedeu
|
|
254
254
|
context 'when < 0' do
|
255
255
|
let(:oy) { -4 }
|
256
256
|
|
257
|
-
it { subject.must_equal(
|
257
|
+
it { subject.must_equal(1) }
|
258
258
|
end
|
259
259
|
end
|
260
260
|
|
@@ -44,13 +44,13 @@ module Vedeu
|
|
44
44
|
|
45
45
|
context 'when the cursor is visible' do
|
46
46
|
context 'when a valid direction is given' do
|
47
|
-
let(:direction) { :
|
47
|
+
let(:direction) { :move_right }
|
48
48
|
|
49
49
|
it { subject.must_be_instance_of(Vedeu::Cursors::Cursor) }
|
50
50
|
end
|
51
51
|
|
52
52
|
context 'when an invalid direction is given' do
|
53
|
-
let(:direction) { :
|
53
|
+
let(:direction) { :move_left }
|
54
54
|
|
55
55
|
it { subject.must_equal(nil) }
|
56
56
|
end
|
@@ -4,6 +4,32 @@ require 'test_helper'
|
|
4
4
|
|
5
5
|
module Vedeu
|
6
6
|
|
7
|
+
class ParentPresentationColourTestClass
|
8
|
+
|
9
|
+
include Vedeu::Presentation
|
10
|
+
|
11
|
+
attr_reader :colour
|
12
|
+
|
13
|
+
def initialize
|
14
|
+
@colour = { background: '#330000', foreground: '#00aadd' }
|
15
|
+
@parent = nil
|
16
|
+
end
|
17
|
+
|
18
|
+
end # ParentPresentationColourTestClass
|
19
|
+
|
20
|
+
class PresentationColourTestClass
|
21
|
+
|
22
|
+
include Vedeu::Presentation
|
23
|
+
|
24
|
+
attr_reader :parent
|
25
|
+
|
26
|
+
def initialize(attributes = {})
|
27
|
+
@colour = attributes[:colour]
|
28
|
+
@parent = attributes[:parent]
|
29
|
+
end
|
30
|
+
|
31
|
+
end # PresentationTestClass
|
32
|
+
|
7
33
|
module Presentation
|
8
34
|
|
9
35
|
describe Colour do
|
@@ -1,5 +1,7 @@
|
|
1
1
|
#!/bin/bash
|
2
|
-
|
2
|
+
|
3
|
+
set -euo pipefail
|
4
|
+
|
3
5
|
# Vedeu can use 24-bit color codes. To test whether your terminal supports
|
4
6
|
# this colour mode, running this file should output lots of beautiful colours.
|
5
7
|
# If the output is 'patchy' and not many colours show, then it is unlikely
|
@@ -31,23 +31,6 @@ class VedeuMaterialColoursApp
|
|
31
31
|
threaded false
|
32
32
|
end
|
33
33
|
|
34
|
-
class CursorView
|
35
|
-
def render
|
36
|
-
Vedeu.render do
|
37
|
-
view('cursor') do
|
38
|
-
line do
|
39
|
-
stream 'Cursor: ', foreground: '#ff8800'
|
40
|
-
stream "#{cursor_position}"
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
def cursor_position
|
47
|
-
Vedeu.trigger(:_cursor_position_, Vedeu.focus)
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
34
|
# Borders can be defined as standalone declarations.
|
52
35
|
Vedeu.border 'no_bottom' do
|
53
36
|
background '#000000'
|
@@ -230,7 +213,7 @@ class VedeuMaterialColoursApp
|
|
230
213
|
Vedeu.interface 'only_left' do
|
231
214
|
colour foreground: '#000000', background: '#cddc39'
|
232
215
|
border do
|
233
|
-
foreground '#
|
216
|
+
foreground '#ffffff'
|
234
217
|
show_top false
|
235
218
|
show_bottom false
|
236
219
|
show_right false
|
@@ -301,21 +284,17 @@ class VedeuMaterialColoursApp
|
|
301
284
|
end
|
302
285
|
|
303
286
|
Vedeu.keymap('_global_') do
|
304
|
-
key(:up)
|
287
|
+
key(:up) do
|
305
288
|
Vedeu.trigger(:_cursor_up_);
|
306
|
-
CursorView.new.render
|
307
289
|
end
|
308
290
|
key(:right) do
|
309
291
|
Vedeu.trigger(:_cursor_right_)
|
310
|
-
CursorView.new.render
|
311
292
|
end
|
312
293
|
key(:down) do
|
313
294
|
Vedeu.trigger(:_cursor_down_)
|
314
|
-
CursorView.new.render
|
315
295
|
end
|
316
296
|
key(:left) do
|
317
297
|
Vedeu.trigger(:_cursor_left_)
|
318
|
-
CursorView.new.render
|
319
298
|
end
|
320
299
|
key(:home) { Vedeu.trigger(:_cursor_top_) }
|
321
300
|
key(:end) { Vedeu.trigger(:_cursor_bottom_) }
|
@@ -350,19 +329,15 @@ class VedeuMaterialColoursApp
|
|
350
329
|
|
351
330
|
key('h') do
|
352
331
|
Vedeu.trigger(:_view_left_, Vedeu.focus)
|
353
|
-
CursorView.new.render
|
354
332
|
end
|
355
333
|
key('j') do
|
356
334
|
Vedeu.trigger(:_view_down_, Vedeu.focus)
|
357
|
-
CursorView.new.render
|
358
335
|
end
|
359
336
|
key('k') do
|
360
337
|
Vedeu.trigger(:_view_up_, Vedeu.focus)
|
361
|
-
CursorView.new.render
|
362
338
|
end
|
363
339
|
key('l') do
|
364
340
|
Vedeu.trigger(:_view_right_, Vedeu.focus)
|
365
|
-
CursorView.new.render
|
366
341
|
end
|
367
342
|
|
368
343
|
key('m') { Vedeu.trigger(:_maximise_, Vedeu.focus) }
|
@@ -623,7 +598,6 @@ class VedeuMaterialColoursApp
|
|
623
598
|
line 'style'
|
624
599
|
end
|
625
600
|
end
|
626
|
-
CursorView.new.render
|
627
601
|
end
|
628
602
|
|
629
603
|
Vedeu.focus_by_name 'main_interface'
|
data/test/support/stats.sh
CHANGED
data/test/test_helper.rb
CHANGED
data/vedeu.gemspec
CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.add_development_dependency 'guard-minitest', '2.4.4'
|
26
26
|
spec.add_development_dependency 'guard-rubocop', '1.2.0'
|
27
27
|
spec.add_development_dependency 'minitest', '5.8.4'
|
28
|
-
spec.add_development_dependency 'minitest-reporters', '1.1.
|
28
|
+
spec.add_development_dependency 'minitest-reporters', '1.1.8'
|
29
29
|
spec.add_development_dependency 'mocha', '1.1.0'
|
30
30
|
spec.add_development_dependency 'rubocop', '0.37.2'
|
31
31
|
spec.add_development_dependency 'simplecov', '0.11.2'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vedeu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gavin Laking
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: guard
|
@@ -72,14 +72,14 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 1.1.
|
75
|
+
version: 1.1.8
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 1.1.
|
82
|
+
version: 1.1.8
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: mocha
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -1068,7 +1068,6 @@ files:
|
|
1068
1068
|
- test/support/examples/view_templates_app/view_templates_app.rb
|
1069
1069
|
- test/support/examples/view_templates_app/wrap.erb
|
1070
1070
|
- test/support/helpers/model_test_class.rb
|
1071
|
-
- test/support/helpers/presentation_colour_test_class.rb
|
1072
1071
|
- test/support/stats.sh
|
1073
1072
|
- test/support/templates/html_renderer.vedeu
|
1074
1073
|
- test/support/ttyrec.rb
|
@@ -1333,7 +1332,6 @@ test_files:
|
|
1333
1332
|
- test/support/examples/view_templates_app/view_templates_app.rb
|
1334
1333
|
- test/support/examples/view_templates_app/wrap.erb
|
1335
1334
|
- test/support/helpers/model_test_class.rb
|
1336
|
-
- test/support/helpers/presentation_colour_test_class.rb
|
1337
1335
|
- test/support/stats.sh
|
1338
1336
|
- test/support/templates/html_renderer.vedeu
|
1339
1337
|
- test/support/ttyrec.rb
|
@@ -1,31 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Vedeu
|
4
|
-
|
5
|
-
class ParentPresentationColourTestClass
|
6
|
-
|
7
|
-
include Vedeu::Presentation
|
8
|
-
|
9
|
-
attr_reader :colour
|
10
|
-
|
11
|
-
def initialize
|
12
|
-
@colour = { background: '#330000', foreground: '#00aadd' }
|
13
|
-
@parent = nil
|
14
|
-
end
|
15
|
-
|
16
|
-
end # ParentPresentationColourTestClass
|
17
|
-
|
18
|
-
class PresentationColourTestClass
|
19
|
-
|
20
|
-
include Vedeu::Presentation
|
21
|
-
|
22
|
-
attr_reader :parent
|
23
|
-
|
24
|
-
def initialize(attributes = {})
|
25
|
-
@colour = attributes[:colour]
|
26
|
-
@parent = attributes[:parent]
|
27
|
-
end
|
28
|
-
|
29
|
-
end # PresentationTestClass
|
30
|
-
|
31
|
-
end # Vedeu
|