vedeu 0.4.52 → 0.4.53

Sign up to get free protection for your applications and to get access to all the features.
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}