vedeu 0.4.52 → 0.4.53

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.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/docs/events.md +15 -5
  3. data/lib/vedeu/application/application_view.rb +0 -4
  4. data/lib/vedeu/bindings/all.rb +22 -1
  5. data/lib/vedeu/bindings/drb.rb +89 -13
  6. data/lib/vedeu/bindings/menus.rb +123 -13
  7. data/lib/vedeu/bindings/movement.rb +147 -26
  8. data/lib/vedeu/bindings/system.rb +284 -0
  9. data/lib/vedeu/bindings/visibility.rb +117 -13
  10. data/lib/vedeu/dsl/all.rb +2 -1
  11. data/lib/vedeu/output/compressor.rb +2 -0
  12. data/lib/vedeu/output/refresh.rb +20 -5
  13. data/lib/vedeu/output/refresh_group.rb +6 -1
  14. data/lib/vedeu/output/render_border.rb +1 -1
  15. data/lib/vedeu/output/renderers/all.rb +1 -0
  16. data/lib/vedeu/output/renderers/escape_sequence.rb +2 -16
  17. data/lib/vedeu/output/renderers/null.rb +2 -16
  18. data/lib/vedeu/output/renderers/renderer_options.rb +26 -0
  19. data/lib/vedeu/output/renderers/terminal.rb +2 -14
  20. data/lib/vedeu/output/renderers/text.rb +2 -16
  21. data/lib/vedeu/repositories/all.rb +23 -1
  22. data/lib/vedeu/version.rb +1 -1
  23. data/test/lib/vedeu/bindings/system_test.rb +44 -0
  24. data/test/lib/vedeu/output/refresh_group_test.rb +10 -2
  25. data/test/lib/vedeu/output/refresh_test.rb +6 -23
  26. data/test/lib/vedeu/output/renderers/renderer_options_test.rb +12 -0
  27. data/test/lib/vedeu/templating/preprocessor_test.rb +11 -10
  28. metadata +8 -10
  29. data/docs/events/drb.md +0 -49
  30. data/docs/events/main.md +0 -109
  31. data/docs/events/menus.md +0 -72
  32. data/docs/events/movement.md +0 -105
  33. data/docs/events/visibility.md +0 -61
  34. data/lib/vedeu/bindings/bindings.rb +0 -86
  35. data/test/lib/vedeu/bindings/bindings_test.rb +0 -40
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.4.52
4
+ version: 0.4.53
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gavin Laking
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-15 00:00:00.000000000 Z
11
+ date: 2015-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: guard
@@ -238,11 +238,6 @@ files:
238
238
  - docs/applications.md
239
239
  - docs/dsl.md
240
240
  - docs/events.md
241
- - docs/events/drb.md
242
- - docs/events/main.md
243
- - docs/events/menus.md
244
- - docs/events/movement.md
245
- - docs/events/visibility.md
246
241
  - docs/getting_started.md
247
242
  - docs/object_graph.md
248
243
  - docs/views.md
@@ -276,10 +271,10 @@ files:
276
271
  - lib/vedeu/application/helper.rb
277
272
  - lib/vedeu/application/view.rb
278
273
  - lib/vedeu/bindings/all.rb
279
- - lib/vedeu/bindings/bindings.rb
280
274
  - lib/vedeu/bindings/drb.rb
281
275
  - lib/vedeu/bindings/menus.rb
282
276
  - lib/vedeu/bindings/movement.rb
277
+ - lib/vedeu/bindings/system.rb
283
278
  - lib/vedeu/bindings/visibility.rb
284
279
  - lib/vedeu/bootstrap.rb
285
280
  - lib/vedeu/buffers/all.rb
@@ -410,6 +405,7 @@ files:
410
405
  - lib/vedeu/output/renderers/html.rb
411
406
  - lib/vedeu/output/renderers/json.rb
412
407
  - lib/vedeu/output/renderers/null.rb
408
+ - lib/vedeu/output/renderers/renderer_options.rb
413
409
  - lib/vedeu/output/renderers/terminal.rb
414
410
  - lib/vedeu/output/renderers/text.rb
415
411
  - lib/vedeu/output/style.rb
@@ -464,10 +460,10 @@ files:
464
460
  - test/lib/vedeu/application/helper_test.rb
465
461
  - test/lib/vedeu/application/view_test.rb
466
462
  - test/lib/vedeu/application_test.rb
467
- - test/lib/vedeu/bindings/bindings_test.rb
468
463
  - test/lib/vedeu/bindings/drb_test.rb
469
464
  - test/lib/vedeu/bindings/menus_test.rb
470
465
  - test/lib/vedeu/bindings/movement_test.rb
466
+ - test/lib/vedeu/bindings/system_test.rb
471
467
  - test/lib/vedeu/bindings/visibility_test.rb
472
468
  - test/lib/vedeu/bootstrap_test.rb
473
469
  - test/lib/vedeu/buffers/buffer_test.rb
@@ -554,6 +550,7 @@ files:
554
550
  - test/lib/vedeu/output/renderers/html_test.rb
555
551
  - test/lib/vedeu/output/renderers/json_test.rb
556
552
  - test/lib/vedeu/output/renderers/null_test.rb
553
+ - test/lib/vedeu/output/renderers/renderer_options_test.rb
557
554
  - test/lib/vedeu/output/renderers/terminal_test.rb
558
555
  - test/lib/vedeu/output/renderers/text_test.rb
559
556
  - test/lib/vedeu/output/style_test.rb
@@ -633,10 +630,10 @@ test_files:
633
630
  - test/lib/vedeu/application/helper_test.rb
634
631
  - test/lib/vedeu/application/view_test.rb
635
632
  - test/lib/vedeu/application_test.rb
636
- - test/lib/vedeu/bindings/bindings_test.rb
637
633
  - test/lib/vedeu/bindings/drb_test.rb
638
634
  - test/lib/vedeu/bindings/menus_test.rb
639
635
  - test/lib/vedeu/bindings/movement_test.rb
636
+ - test/lib/vedeu/bindings/system_test.rb
640
637
  - test/lib/vedeu/bindings/visibility_test.rb
641
638
  - test/lib/vedeu/bootstrap_test.rb
642
639
  - test/lib/vedeu/buffers/buffer_test.rb
@@ -723,6 +720,7 @@ test_files:
723
720
  - test/lib/vedeu/output/renderers/html_test.rb
724
721
  - test/lib/vedeu/output/renderers/json_test.rb
725
722
  - test/lib/vedeu/output/renderers/null_test.rb
723
+ - test/lib/vedeu/output/renderers/renderer_options_test.rb
726
724
  - test/lib/vedeu/output/renderers/terminal_test.rb
727
725
  - test/lib/vedeu/output/renderers/text_test.rb
728
726
  - test/lib/vedeu/output/style_test.rb
data/docs/events/drb.md DELETED
@@ -1,49 +0,0 @@
1
- # @title DRB Events
2
-
3
- ## DRB Events
4
-
5
- ### Start DRB Server
6
-
7
- Vedeu.trigger(:_drb_start_)
8
-
9
- Use the DRb server to request the client application to start.
10
-
11
-
12
- ### Restart DRB Server
13
-
14
- Vedeu.trigger(:_drb_restart_)
15
-
16
- Use the DRb server to request the client application to restart.
17
-
18
-
19
- ### Stop DRB Server
20
-
21
- Vedeu.trigger(:_drb_stop_)
22
-
23
- Use the DRb server to request the client application to stop.
24
-
25
-
26
- ### DRB Status
27
-
28
- Vedeu.trigger(:_drb_status_)
29
-
30
- Use the DRb server to request the status of the client application.
31
-
32
-
33
- ### Store Output of DRB Server
34
-
35
- Vedeu.trigger(:_drb_store_output_, data)
36
-
37
- Triggering this event with 'data' will push data into the running application's virtual buffer.
38
-
39
-
40
- ### Retrieve Output of DRB Server
41
-
42
- Vedeu.trigger(:_drb_retrieve_output_)
43
-
44
-
45
- ### Send Input to DRB Server
46
-
47
- Vedeu.trigger(:_drb_input_, data, type)
48
-
49
- Triggering this event will send input to the running application as long as it has the DRb server running.
data/docs/events/main.md DELETED
@@ -1,109 +0,0 @@
1
- # @title Main Events
2
-
3
- ## Main Events
4
-
5
- ### Exiting Vedeu
6
-
7
- `Vedeu.trigger(:_exit_)`
8
-
9
- When triggered, Vedeu will trigger a `:cleanup` event which you can define (to save files, etc) and attempt to exit. Also available as: `Vedeu.exit`.
10
-
11
-
12
- ### Pressing a key
13
-
14
- `Vedeu.trigger(:_keypress_, key)`
15
-
16
- Will cause the triggering of the `:key` event; which you should define to 'do things'. If the `escape` key is pressed, then `key` is triggered with the argument `:escape`, also an internal event `_mode_switch_` is triggered. Vedeu recognises most key presses and some 'extended' keypress (eg. Ctrl+J), a list of
17
- the supported keypresses can be found here: {Vedeu::Input#specials} and {Vedeu::Input#f_keys}.
18
-
19
-
20
- ### Sending a command
21
-
22
- `Vedeu.trigger(:_command_)`
23
-
24
- Will cause the triggering of the `:command` event; which you should define to 'do things'.
25
-
26
-
27
- ### Logging to the log file
28
-
29
- `Vedeu.trigger(:_log_, message)`
30
-
31
- When triggered with a message will cause Vedeu to log the message if logging is enabled in the configuration.
32
-
33
-
34
- ### Focussing an interface by name
35
-
36
- `Vedeu.trigger(:_focus_by_name_, name)`
37
-
38
- When triggered with an interface name will focus that interface and restore the cursor position and visibility.
39
-
40
-
41
- ### Focussing the next visible interface
42
-
43
- `Vedeu.trigger(:_focus_next_)`
44
-
45
- When triggered will focus the next interface and restore the cursor position and visibility.
46
-
47
-
48
- ### Focussing the previous visible interface
49
-
50
- `Vedeu.trigger(:_focus_prev_)`
51
-
52
- When triggered will focus the previous interface and restore the cursor position and visibility.
53
-
54
-
55
- ### Clearing the terminal
56
-
57
- `Vedeu.trigger(:_clear_)`
58
-
59
- Clears the whole terminal space, or the named interface area to be cleared if given. Also available as: `Vedeu.clear_by_name(name)`.
60
-
61
-
62
- ### Refreshing all interfaces
63
-
64
- `Vedeu.trigger(:_refresh_)`
65
-
66
- Will cause all interfaces to refresh. Note: Hidden interfaces will be still refreshed in memory but not shown.
67
-
68
-
69
- ### Refresing an interface by name
70
-
71
- `Vedeu.trigger(:_refresh_, name)`
72
-
73
- Will cause the named interface to refresh. Note: Hidden interfaces will be still refreshed in memory but not shown.
74
-
75
-
76
- ### Refreshing the cursor
77
-
78
- `Vedeu.trigger(:_refresh_cursor_, name)`
79
-
80
- Will cause the named cursor to refresh, or the cursor of the interface which is currently in focus.
81
-
82
-
83
- ### Refreshing a group of interfaces
84
-
85
- `Vedeu.trigger(:_refresh_group_, name)`
86
-
87
- Will cause all interfaces in the named group to refresh.
88
-
89
-
90
- ### Clearing a group
91
-
92
- `Vedeu.trigger(:_clear_group_, name)`
93
-
94
- Clears the spaces occupied by the interfaces belonging to the named group. Also available as: `Vedeu.clear_by_group(name)`
95
-
96
-
97
- ### Maximising an interface
98
-
99
- `Vedeu.trigger(:_maximise_, name)`
100
-
101
- See also: {Vedeu::Geometry#maximise}
102
-
103
-
104
- ### Unmaximising an interface
105
-
106
- `Vedeu.trigger(:_unmaximise_, name)`
107
-
108
- See also: {Vedeu::Geometry#unmaximise}
109
-
data/docs/events/menus.md DELETED
@@ -1,72 +0,0 @@
1
- # @title Menu Events
2
-
3
- ## Menu Events
4
-
5
- ### Bottom Item
6
-
7
- Vedeu.trigger(:_menu_bottom_, name)
8
-
9
- Makes the last menu item the current menu item.
10
-
11
-
12
- ### Current Item
13
-
14
- Vedeu.trigger(:_menu_current_, name)
15
-
16
- Returns the current menu item.
17
-
18
-
19
- ### Deselect All
20
-
21
- Vedeu.trigger(:_menu_deselect_, name)
22
-
23
- Deselects all menu items.
24
-
25
-
26
- ### All Items
27
-
28
- Vedeu.trigger(:_menu_items_, name)
29
-
30
- Returns all the menu items with respective `current` or `selected` boolean indicators.
31
-
32
-
33
- ### Next Item
34
-
35
- Vedeu.trigger(:_menu_next_, name)
36
-
37
- Makes the next menu item the current menu item, until it reaches the last item.
38
-
39
-
40
- ### Previous Item
41
-
42
- Vedeu.trigger(:_menu_prev_, name)
43
-
44
- Makes the previous menu item the current menu item, until it reaches the first item.
45
-
46
-
47
- ### Selected Item
48
-
49
- Vedeu.trigger(:_menu_selected_, name)
50
-
51
- Returns the selected menu item.
52
-
53
-
54
- ### Select Current Item
55
-
56
- Vedeu.trigger(:_menu_select_, name)
57
-
58
- Makes the current menu item also the selected menu item.
59
-
60
-
61
- ### Top Item
62
-
63
- Vedeu.trigger(:_menu_top_, name)
64
-
65
- Makes the first menu item the current menu item.
66
-
67
-
68
- ### View from ...
69
-
70
- Vedeu.trigger(:_menu_view_, name)
71
-
72
- Returns a subset of the menu items; starting at the current item to the last item.
@@ -1,105 +0,0 @@
1
- # @title Movement Events
2
-
3
- ## Movement Events
4
-
5
- ### Moving the cursor
6
-
7
- We can move the cursor by name using the events listed below:
8
-
9
- #### Moving the cursor down
10
-
11
- Vedeu.trigger(:_cursor_down_, name)
12
-
13
- See also: {Vedeu::Move}
14
-
15
-
16
- #### Moving the cursor left
17
-
18
- Vedeu.trigger(:_cursor_left_, name)
19
-
20
- See also: {Vedeu::Move}
21
-
22
-
23
- #### Resetting the position of the cursor
24
-
25
- Vedeu.trigger(:_cursor_origin_, name)
26
- Vedeu.trigger(:_cursor_reset_, name)
27
-
28
- This event moves the cursor to the interface origin; the top left corner of the named interface. See also: {Vedeu::Move}
29
-
30
-
31
- #### Fetching the position of the cursor
32
-
33
- Vedeu.trigger(:_cursor_position_, name)
34
-
35
- When triggered will return the current position of the cursor. See also: {Vedeu::Move}
36
-
37
-
38
-
39
- #### Moving the cursor to an arbitrary position
40
-
41
- Vedeu.trigger(:_cursor_reposition_, name, y, x)
42
-
43
- Moves the cursor to a relative position inside the interface. See also: {Vedeu::Move}
44
-
45
-
46
- #### Moving the cursor right
47
-
48
- Vedeu.trigger(:_cursor_right_, name)
49
-
50
- See also: {Vedeu::Move}
51
-
52
-
53
- #### Moving the cursor up
54
-
55
- Vedeu.trigger(:_cursor_up_, name)
56
-
57
- See also: {Vedeu::Move}
58
-
59
-
60
- ### Moving the interface
61
-
62
- We can move an interface by altering its geometry. This is performed using the events listed below:
63
-
64
- ### Moving the interface down
65
-
66
- Vedeu.trigger(:_geometry_down_, name)
67
-
68
- See also: {Vedeu::Move}
69
-
70
-
71
- ### Moving the interface left
72
-
73
- Vedeu.trigger(:_geometry_left_, name)
74
-
75
- See also: {Vedeu::Move}
76
-
77
-
78
- ### Moving the interface right
79
-
80
- Vedeu.trigger(:_geometry_right_, name)
81
-
82
- See also: {Vedeu::Move}
83
-
84
-
85
- ### Moving the interface up
86
-
87
- Vedeu.trigger(:_geometry_up_, name)
88
-
89
- See also: {Vedeu::Move}
90
-
91
-
92
-
93
-
94
- ### Showing an interface
95
-
96
- Vedeu.trigger(:_show_interface_, name)
97
-
98
- See: {Vedeu::Buffer#show}
99
-
100
-
101
- ### Toggling an interface
102
-
103
- Vedeu.trigger(:_toggle_interface_, name)
104
-
105
- See: {Vedeu::Buffer#toggle}
@@ -1,61 +0,0 @@
1
- # @title Visibility Events
2
-
3
- ## Visibility Events
4
-
5
- ### Hiding the cursor
6
-
7
- Vedeu.trigger(:_hide_cursor_, name)
8
- Vedeu.trigger(:_cursor_hide_, name)
9
-
10
- Hide the cursor of the named interface or if a name is not given, the interface currently in focus. Also available as:
11
-
12
- Vedeu.hide_cursor(name)
13
-
14
-
15
- ### Showing the cursor
16
-
17
- Vedeu.trigger(:_show_cursor_, name)
18
- Vedeu.trigger(:_cursor_show_, name)
19
-
20
- Show the cursor of the named interface or if a name is not given, the interface currently in focus. Also available as:
21
-
22
- Vedeu.show_cursor(name)
23
-
24
-
25
- ### Hiding a group
26
-
27
- Vedeu.trigger(:_hide_group_, group_name)
28
-
29
- Will hide all of the interfaces belonging to the named group. Useful for
30
- hiding part of that which is currently displaying in the terminal.
31
-
32
- This may be rarely used, since the action of showing a group
33
- will effectively clear the terminal and show the new group.
34
-
35
-
36
- ### Showing a group
37
-
38
- Vedeu.trigger(:_show_group_, group_name)
39
-
40
- Will clear the terminal and then show all of the interfaces belonging to the named group.
41
-
42
-
43
- ### Hiding an interface
44
-
45
- Vedeu.trigger(:_hide_interface_, name)
46
-
47
- See: {Vedeu::Buffer#hide}
48
-
49
-
50
- ### Showing an interface
51
-
52
- Vedeu.trigger(:_show_interface_, name)
53
-
54
- See: {Vedeu::Buffer#show}
55
-
56
-
57
- ### Toggling an interface
58
-
59
- Vedeu.trigger(:_toggle_interface_, name)
60
-
61
- See: {Vedeu::Buffer#toggle}