vedeu 0.8.0 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/.yardopts +0 -1
- data/README.md +1 -4
- data/docs/api.md +0 -8
- data/docs/borders.md +4 -0
- data/docs/dsl/borders.md +37 -0
- data/docs/dsl/by_method/add_command.md +0 -0
- data/docs/dsl/by_method/add_keypress.md +0 -0
- data/docs/dsl/by_method/all_commands.md +0 -0
- data/docs/dsl/by_method/all_keypresses.md +0 -0
- data/docs/dsl/by_method/background_colours.md +3 -0
- data/docs/dsl/by_method/bind.md +0 -0
- data/docs/dsl/by_method/bind_alias.md +0 -0
- data/docs/dsl/by_method/border.md +7 -0
- data/docs/dsl/by_method/borders.md +0 -0
- data/docs/dsl/by_method/bottom.md +10 -0
- data/docs/dsl/by_method/bottom_horizontal.md +8 -0
- data/docs/dsl/by_method/bottom_left.md +8 -0
- data/docs/dsl/by_method/bottom_right.md +8 -0
- data/docs/dsl/by_method/bound.md +0 -0
- data/docs/dsl/by_method/buffer_update.md +0 -0
- data/docs/dsl/by_method/buffer_write.md +0 -0
- data/docs/dsl/by_method/buffers.md +0 -0
- data/docs/dsl/by_method/caption.md +11 -0
- data/docs/dsl/by_method/clear.md +7 -0
- data/docs/dsl/by_method/clear_by_group.md +0 -0
- data/docs/dsl/by_method/clear_by_name.md +0 -0
- data/docs/dsl/by_method/clear_content_by_name.md +0 -0
- data/docs/dsl/by_method/clock_time.md +0 -0
- data/docs/dsl/by_method/configuration.md +5 -0
- data/docs/dsl/by_method/configure.md +6 -0
- data/docs/dsl/by_method/cursor.md +0 -0
- data/docs/dsl/by_method/cursors.md +0 -0
- data/docs/dsl/by_method/debug.md +4 -0
- data/docs/dsl/by_method/direct_write.md +0 -0
- data/docs/dsl/by_method/disable.md +14 -0
- data/docs/dsl/by_method/documents.md +0 -0
- data/docs/dsl/by_method/drb_restart.md +0 -0
- data/docs/dsl/by_method/drb_start.md +0 -0
- data/docs/dsl/by_method/drb_status.md +0 -0
- data/docs/dsl/by_method/drb_stop.md +0 -0
- data/docs/dsl/by_method/enable.md +14 -0
- data/docs/dsl/by_method/events.md +0 -0
- data/docs/dsl/by_method/exit.md +0 -0
- data/docs/dsl/by_method/focus.md +0 -0
- data/docs/dsl/by_method/focus_by_name.md +0 -0
- data/docs/dsl/by_method/focus_next.md +0 -0
- data/docs/dsl/by_method/focus_previous.md +0 -0
- data/docs/dsl/by_method/focussed.md +0 -0
- data/docs/dsl/by_method/foreground_colours.md +3 -0
- data/docs/dsl/by_method/geometries.md +0 -0
- data/docs/dsl/by_method/geometry.md +0 -0
- data/docs/dsl/by_method/goto.md +6 -0
- data/docs/dsl/by_method/group.md +0 -0
- data/docs/dsl/by_method/groups.md +0 -0
- data/docs/dsl/by_method/height.md +7 -0
- data/docs/dsl/by_method/hide_cursor.md +0 -0
- data/docs/dsl/by_method/hide_group.md +0 -0
- data/docs/dsl/by_method/hide_interface.md +0 -0
- data/docs/dsl/by_method/horizontal.md +6 -0
- data/docs/dsl/by_method/interface.md +0 -0
- data/docs/dsl/by_method/interfaces.md +0 -0
- data/docs/dsl/by_method/keymap.md +0 -0
- data/docs/dsl/by_method/keymaps.md +0 -0
- data/docs/dsl/by_method/keypress.md +0 -0
- data/docs/dsl/by_method/last_command.md +0 -0
- data/docs/dsl/by_method/last_keypress.md +0 -0
- data/docs/dsl/by_method/left.md +10 -0
- data/docs/dsl/by_method/left_vertical.md +8 -0
- data/docs/dsl/by_method/log.md +0 -0
- data/docs/dsl/by_method/log_stderr.md +0 -0
- data/docs/dsl/by_method/log_stdout.md +0 -0
- data/docs/dsl/by_method/log_timestamp.md +0 -0
- data/docs/dsl/by_method/menu.md +0 -0
- data/docs/dsl/by_method/menus.md +0 -0
- data/docs/dsl/by_method/profile.md +6 -0
- data/docs/dsl/by_method/read.md +0 -0
- data/docs/dsl/by_method/ready.md +0 -0
- data/docs/dsl/by_method/refresh.md +3 -0
- data/docs/dsl/by_method/render.md +0 -0
- data/docs/dsl/by_method/render_output.md +0 -0
- data/docs/dsl/by_method/renderer.md +0 -0
- data/docs/dsl/by_method/renderers.md +0 -0
- data/docs/dsl/by_method/renders.md +0 -0
- data/docs/dsl/by_method/resize.md +5 -0
- data/docs/dsl/by_method/right.md +10 -0
- data/docs/dsl/by_method/right_vertical.md +8 -0
- data/docs/dsl/by_method/show_cursor.md +0 -0
- data/docs/dsl/by_method/show_group.md +0 -0
- data/docs/dsl/by_method/show_interface.md +0 -0
- data/docs/dsl/by_method/timer.md +12 -0
- data/docs/dsl/by_method/title.md +12 -0
- data/docs/dsl/by_method/toggle_cursor.md +0 -0
- data/docs/dsl/by_method/toggle_group.md +0 -0
- data/docs/dsl/by_method/toggle_interface.md +0 -0
- data/docs/dsl/by_method/top.md +10 -0
- data/docs/dsl/by_method/top_horizontal.md +8 -0
- data/docs/dsl/by_method/top_left.md +8 -0
- data/docs/dsl/by_method/top_right.md +8 -0
- data/docs/dsl/by_method/trigger.md +0 -0
- data/docs/dsl/by_method/unbind.md +0 -0
- data/docs/dsl/by_method/unbind_alias.md +0 -0
- data/docs/dsl/by_method/vertical.md +7 -0
- data/docs/dsl/by_method/views.md +0 -0
- data/docs/dsl/by_method/width.md +7 -0
- data/docs/dsl/by_method/write.md +0 -0
- data/examples/284_slow_rendering.rb +6 -3
- data/examples/dsl_alignment.rb +16 -14
- data/examples/dsl_colours.rb +17 -14
- data/examples/dsl_demo_groups.rb +3 -0
- data/examples/dsl_editor.rb +13 -10
- data/examples/dsl_hello_worlds.rb +2 -0
- data/examples/dsl_horizontal_alignment.rb +14 -27
- data/examples/dsl_menus.rb +2 -0
- data/examples/dsl_vertical_alignment.rb +35 -27
- data/examples/views/empty_template.rb +3 -1
- data/examples/views/full_screen.rb +100 -0
- data/examples/views/line.rb +5 -2
- data/examples/views/lines.rb +5 -2
- data/examples/views/lines_alignment.rb +5 -2
- data/examples/views/lines_line_stream.rb +14 -18
- data/examples/views/lines_line_streams.rb +5 -3
- data/examples/views/lines_line_streams_stream.rb +16 -21
- data/examples/views/lines_line_streams_stream_stream.rb +5 -8
- data/examples/views/lines_streams.rb +5 -7
- data/examples/views/lines_streams_stream.rb +5 -8
- data/lib/vedeu.rb +16 -0
- data/lib/vedeu/all.rb +11 -8
- data/lib/vedeu/application/application_controller.rb +2 -0
- data/lib/vedeu/application/application_helper.rb +2 -0
- data/lib/vedeu/application/application_view.rb +4 -2
- data/lib/vedeu/application/controller.rb +2 -0
- data/lib/vedeu/application/helper.rb +2 -0
- data/lib/vedeu/application/view.rb +2 -0
- data/lib/vedeu/boolean.rb +2 -0
- data/lib/vedeu/borders/all.rb +2 -1
- data/lib/vedeu/borders/border.rb +5 -3
- data/lib/vedeu/borders/caption.rb +2 -0
- data/lib/vedeu/borders/dsl.rb +37 -160
- data/lib/vedeu/borders/refresh.rb +3 -1
- data/lib/vedeu/borders/repository.rb +8 -2
- data/lib/vedeu/borders/title.rb +3 -1
- data/lib/vedeu/buffers/all.rb +2 -0
- data/lib/vedeu/buffers/buffer.rb +4 -2
- data/lib/vedeu/buffers/empty.rb +2 -0
- data/lib/vedeu/buffers/null.rb +2 -0
- data/lib/vedeu/buffers/refresh.rb +2 -0
- data/lib/vedeu/buffers/repository.rb +2 -0
- data/lib/vedeu/buffers/terminal.rb +6 -14
- data/lib/vedeu/buffers/view.rb +2 -0
- data/lib/vedeu/cells/all.rb +2 -0
- data/lib/vedeu/cells/border.rb +2 -0
- data/lib/vedeu/cells/borders/all.rb +2 -0
- data/lib/vedeu/cells/borders/bottom_horizontal.rb +2 -0
- data/lib/vedeu/cells/borders/bottom_left.rb +2 -0
- data/lib/vedeu/cells/borders/bottom_right.rb +2 -0
- data/lib/vedeu/cells/borders/corner.rb +2 -0
- data/lib/vedeu/cells/borders/horizontal.rb +2 -0
- data/lib/vedeu/cells/borders/left_vertical.rb +2 -0
- data/lib/vedeu/cells/borders/right_vertical.rb +2 -0
- data/lib/vedeu/cells/borders/top_horizontal.rb +2 -0
- data/lib/vedeu/cells/borders/top_left.rb +2 -0
- data/lib/vedeu/cells/borders/top_right.rb +2 -0
- data/lib/vedeu/cells/borders/vertical.rb +2 -0
- data/lib/vedeu/cells/char.rb +2 -0
- data/lib/vedeu/cells/clear.rb +3 -1
- data/lib/vedeu/cells/empty.rb +6 -4
- data/lib/vedeu/cells/escape.rb +4 -2
- data/lib/vedeu/cells/html.rb +2 -0
- data/lib/vedeu/cells/json.rb +2 -0
- data/lib/vedeu/coercers/alignment.rb +2 -0
- data/lib/vedeu/coercers/all.rb +2 -0
- data/lib/vedeu/coercers/colour.rb +3 -1
- data/lib/vedeu/coercers/colour_attributes.rb +2 -0
- data/lib/vedeu/coercers/horizontal_alignment.rb +2 -0
- data/lib/vedeu/coercers/vertical_alignment.rb +2 -0
- data/lib/vedeu/colours/all.rb +2 -0
- data/lib/vedeu/colours/background.rb +3 -1
- data/lib/vedeu/colours/backgrounds.rb +3 -5
- data/lib/vedeu/colours/colour.rb +2 -0
- data/lib/vedeu/colours/foreground.rb +3 -1
- data/lib/vedeu/colours/foregrounds.rb +3 -5
- data/lib/vedeu/colours/repository.rb +2 -0
- data/lib/vedeu/colours/translator.rb +5 -3
- data/lib/vedeu/colours/validator.rb +3 -1
- data/lib/vedeu/common.rb +17 -8
- data/lib/vedeu/configuration/all.rb +4 -2
- data/lib/vedeu/configuration/api.rb +5 -15
- data/lib/vedeu/configuration/configuration.rb +14 -27
- data/lib/vedeu/cursors/all.rb +2 -0
- data/lib/vedeu/cursors/coordinate.rb +4 -2
- data/lib/vedeu/cursors/cursor.rb +7 -5
- data/lib/vedeu/cursors/dsl.rb +2 -0
- data/lib/vedeu/cursors/move.rb +2 -0
- data/lib/vedeu/cursors/refresh.rb +3 -1
- data/lib/vedeu/cursors/reposition.rb +2 -0
- data/lib/vedeu/cursors/repository.rb +2 -0
- data/lib/vedeu/distributed/all.rb +2 -0
- data/lib/vedeu/distributed/client.rb +5 -3
- data/lib/vedeu/distributed/server.rb +17 -15
- data/lib/vedeu/distributed/subprocess.rb +4 -2
- data/lib/vedeu/distributed/test_application.rb +2 -0
- data/lib/vedeu/distributed/uri.rb +3 -1
- data/lib/vedeu/dsl/all.rb +2 -0
- data/lib/vedeu/dsl/attributes.rb +7 -5
- data/lib/vedeu/dsl/border.rb +2 -0
- data/lib/vedeu/dsl/cursors.rb +2 -0
- data/lib/vedeu/dsl/dsl.rb +3 -1
- data/lib/vedeu/dsl/elements.rb +14 -8
- data/lib/vedeu/dsl/geometry.rb +2 -0
- data/lib/vedeu/dsl/presentation.rb +2 -0
- data/lib/vedeu/dsl/string/align.rb +2 -0
- data/lib/vedeu/dsl/string/all.rb +2 -0
- data/lib/vedeu/dsl/string/text.rb +2 -0
- data/lib/vedeu/dsl/string/truncate.rb +2 -0
- data/lib/vedeu/dsl/string/wordwrap.rb +3 -1
- data/lib/vedeu/dsl/use.rb +2 -0
- data/lib/vedeu/dsl/view.rb +5 -3
- data/lib/vedeu/dsl/views.rb +4 -2
- data/lib/vedeu/editor/all.rb +2 -0
- data/lib/vedeu/editor/collection.rb +2 -0
- data/lib/vedeu/editor/cropper.rb +3 -1
- data/lib/vedeu/editor/cursor.rb +4 -2
- data/lib/vedeu/editor/delete.rb +2 -0
- data/lib/vedeu/editor/document.rb +3 -1
- data/lib/vedeu/editor/editor.rb +2 -0
- data/lib/vedeu/editor/insert.rb +16 -6
- data/lib/vedeu/editor/item.rb +2 -0
- data/lib/vedeu/editor/line.rb +2 -0
- data/lib/vedeu/editor/lines.rb +2 -0
- data/lib/vedeu/editor/repository.rb +2 -0
- data/lib/vedeu/error.rb +9 -4
- data/lib/vedeu/esc/actions.rb +17 -15
- data/lib/vedeu/esc/all.rb +2 -0
- data/lib/vedeu/esc/background.rb +36 -34
- data/lib/vedeu/esc/borders.rb +14 -12
- data/lib/vedeu/esc/colours.rb +12 -8
- data/lib/vedeu/esc/esc.rb +16 -14
- data/lib/vedeu/esc/foreground.rb +36 -34
- data/lib/vedeu/esc/mouse.rb +6 -4
- data/lib/vedeu/events/aliases.rb +3 -1
- data/lib/vedeu/events/all.rb +2 -0
- data/lib/vedeu/events/collection.rb +2 -0
- data/lib/vedeu/events/event.rb +21 -9
- data/lib/vedeu/events/repository.rb +2 -0
- data/lib/vedeu/events/trigger.rb +3 -1
- data/lib/vedeu/geometries/all.rb +2 -0
- data/lib/vedeu/geometries/area/all.rb +2 -0
- data/lib/vedeu/geometries/area/area.rb +46 -18
- data/lib/vedeu/geometries/area/dimension.rb +7 -0
- data/lib/vedeu/geometries/area/x_dimension.rb +2 -0
- data/lib/vedeu/geometries/area/y_dimension.rb +2 -0
- data/lib/vedeu/geometries/dsl/all.rb +2 -0
- data/lib/vedeu/geometries/dsl/dsl.rb +2 -0
- data/lib/vedeu/geometries/dsl/grid.rb +2 -0
- data/lib/vedeu/geometries/dsl/validator.rb +6 -4
- data/lib/vedeu/geometries/geometry.rb +4 -2
- data/lib/vedeu/geometries/move.rb +3 -1
- data/lib/vedeu/geometries/position.rb +4 -2
- data/lib/vedeu/geometries/positionable.rb +2 -0
- data/lib/vedeu/geometries/repository.rb +2 -0
- data/lib/vedeu/groups/all.rb +2 -0
- data/lib/vedeu/groups/clear.rb +2 -0
- data/lib/vedeu/groups/dsl.rb +3 -1
- data/lib/vedeu/groups/group.rb +3 -1
- data/lib/vedeu/groups/refresh.rb +4 -2
- data/lib/vedeu/groups/repository.rb +2 -0
- data/lib/vedeu/input/all.rb +2 -0
- data/lib/vedeu/input/capture.rb +4 -2
- data/lib/vedeu/input/dsl.rb +8 -6
- data/lib/vedeu/input/key.rb +3 -1
- data/lib/vedeu/input/keymap.rb +5 -3
- data/lib/vedeu/input/keys.rb +2 -0
- data/lib/vedeu/input/mapper.rb +7 -5
- data/lib/vedeu/input/mouse.rb +4 -2
- data/lib/vedeu/input/raw.rb +2 -0
- data/lib/vedeu/input/read.rb +3 -1
- data/lib/vedeu/input/repository.rb +2 -0
- data/lib/vedeu/input/store.rb +2 -0
- data/lib/vedeu/input/translator.rb +3 -1
- data/lib/vedeu/interfaces/all.rb +2 -0
- data/lib/vedeu/interfaces/clear.rb +7 -5
- data/lib/vedeu/interfaces/dsl.rb +4 -2
- data/lib/vedeu/interfaces/interface.rb +4 -2
- data/lib/vedeu/interfaces/null.rb +2 -0
- data/lib/vedeu/interfaces/repository.rb +2 -0
- data/lib/vedeu/logging/all.rb +2 -1
- data/lib/vedeu/logging/clock_time.rb +2 -0
- data/lib/vedeu/logging/debug.rb +32 -44
- data/lib/vedeu/logging/lockless_log_device.rb +3 -1
- data/lib/vedeu/logging/log.rb +13 -39
- data/lib/vedeu/logging/mono_logger.rb +3 -1
- data/lib/vedeu/logging/timer.rb +7 -19
- data/lib/vedeu/menus/all.rb +2 -0
- data/lib/vedeu/menus/dsl.rb +2 -0
- data/lib/vedeu/menus/menu.rb +3 -1
- data/lib/vedeu/menus/repository.rb +2 -0
- data/lib/vedeu/models/all.rb +2 -0
- data/lib/vedeu/models/focus.rb +7 -5
- data/lib/vedeu/models/page.rb +3 -1
- data/lib/vedeu/models/row.rb +2 -0
- data/lib/vedeu/models/toggleable.rb +2 -0
- data/lib/vedeu/null/all.rb +2 -0
- data/lib/vedeu/null/generic.rb +2 -0
- data/lib/vedeu/output/all.rb +2 -0
- data/lib/vedeu/output/compressor.rb +9 -7
- data/lib/vedeu/output/compressor_cache.rb +3 -1
- data/lib/vedeu/output/output.rb +2 -0
- data/lib/vedeu/output/refresh.rb +3 -1
- data/lib/vedeu/output/viewport.rb +4 -2
- data/lib/vedeu/output/write.rb +2 -0
- data/lib/vedeu/plugins/plugin.rb +5 -3
- data/lib/vedeu/plugins/plugins.rb +5 -3
- data/lib/vedeu/presentation/all.rb +2 -0
- data/lib/vedeu/presentation/background.rb +2 -0
- data/lib/vedeu/presentation/colour.rb +2 -0
- data/lib/vedeu/presentation/foreground.rb +2 -0
- data/lib/vedeu/presentation/presentation.rb +4 -2
- data/lib/vedeu/presentation/style.rb +2 -0
- data/lib/vedeu/presentation/styles.rb +2 -0
- data/lib/vedeu/renderers/all.rb +10 -22
- data/lib/vedeu/renderers/file.rb +4 -2
- data/lib/vedeu/renderers/html.rb +19 -19
- data/lib/vedeu/renderers/json.rb +2 -0
- data/lib/vedeu/renderers/options.rb +2 -0
- data/lib/vedeu/renderers/terminal.rb +2 -0
- data/lib/vedeu/renderers/text.rb +2 -0
- data/lib/vedeu/repositories/all.rb +2 -0
- data/lib/vedeu/repositories/assemblage.rb +2 -0
- data/lib/vedeu/repositories/collection.rb +2 -0
- data/lib/vedeu/repositories/defaults.rb +2 -0
- data/lib/vedeu/repositories/model.rb +3 -1
- data/lib/vedeu/repositories/parent.rb +2 -0
- data/lib/vedeu/repositories/registerable.rb +2 -0
- data/lib/vedeu/repositories/repositories.rb +3 -1
- data/lib/vedeu/repositories/repository.rb +8 -6
- data/lib/vedeu/repositories/store.rb +3 -1
- data/lib/vedeu/runtime/all.rb +2 -0
- data/lib/vedeu/runtime/application.rb +2 -0
- data/lib/vedeu/runtime/bootstrap.rb +10 -8
- data/lib/vedeu/runtime/flags.rb +2 -0
- data/lib/vedeu/runtime/launcher.rb +5 -3
- data/lib/vedeu/runtime/main_loop.rb +3 -1
- data/lib/vedeu/runtime/router.rb +11 -14
- data/lib/vedeu/runtime/traps.rb +2 -0
- data/lib/vedeu/templating/all.rb +2 -0
- data/lib/vedeu/templating/decoder.rb +2 -0
- data/lib/vedeu/templating/encoder.rb +3 -1
- data/lib/vedeu/templating/helpers.rb +5 -3
- data/lib/vedeu/templating/template.rb +4 -2
- data/lib/vedeu/templating/view_template.rb +2 -0
- data/lib/vedeu/terminal/all.rb +2 -0
- data/lib/vedeu/terminal/mode.rb +2 -0
- data/lib/vedeu/terminal/terminal.rb +9 -34
- data/lib/vedeu/version.rb +3 -1
- data/lib/vedeu/views/all.rb +2 -0
- data/lib/vedeu/views/char.rb +5 -7
- data/lib/vedeu/views/chars.rb +3 -1
- data/lib/vedeu/views/composition.rb +2 -0
- data/lib/vedeu/views/default_attributes.rb +4 -2
- data/lib/vedeu/views/html_char.rb +18 -15
- data/lib/vedeu/views/line.rb +2 -0
- data/lib/vedeu/views/lines.rb +3 -1
- data/lib/vedeu/views/stream.rb +2 -0
- data/lib/vedeu/views/streams.rb +3 -1
- data/lib/vedeu/views/value.rb +2 -0
- data/lib/vedeu/views/view.rb +4 -3
- data/lib/vedeu/views/views.rb +2 -0
- data/test/lib/vedeu/application/application_controller_test.rb +2 -0
- data/test/lib/vedeu/application/application_helper_test.rb +2 -0
- data/test/lib/vedeu/application/application_view_test.rb +2 -0
- data/test/lib/vedeu/application/controller_test.rb +2 -0
- data/test/lib/vedeu/application/helper_test.rb +2 -0
- data/test/lib/vedeu/application/view_test.rb +2 -0
- data/test/lib/vedeu/boolean_test.rb +2 -0
- data/test/lib/vedeu/borders/border_test.rb +2 -0
- data/test/lib/vedeu/borders/caption_test.rb +2 -0
- data/test/lib/vedeu/borders/dsl_test.rb +6 -0
- data/test/lib/vedeu/borders/refresh_test.rb +2 -0
- data/test/lib/vedeu/borders/repository_test.rb +2 -0
- data/test/lib/vedeu/borders/title_test.rb +2 -0
- data/test/lib/vedeu/buffers/buffer_test.rb +2 -0
- data/test/lib/vedeu/buffers/empty_test.rb +2 -0
- data/test/lib/vedeu/buffers/null_test.rb +2 -0
- data/test/lib/vedeu/buffers/refresh_test.rb +2 -0
- data/test/lib/vedeu/buffers/repository_test.rb +2 -0
- data/test/lib/vedeu/buffers/terminal_test.rb +2 -0
- data/test/lib/vedeu/buffers/view_test.rb +2 -0
- data/test/lib/vedeu/cells/border_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/bottom_horizontal_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/bottom_left_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/bottom_right_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/corner_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/horizontal_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/left_vertical_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/right_vertical_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/top_horizontal_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/top_left_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/top_right_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/vertical_test.rb +2 -0
- data/test/lib/vedeu/cells/char_test.rb +2 -0
- data/test/lib/vedeu/cells/clear_test.rb +2 -0
- data/test/lib/vedeu/cells/empty_test.rb +2 -0
- data/test/lib/vedeu/cells/escape_test.rb +2 -0
- data/test/lib/vedeu/cells/html_test.rb +2 -0
- data/test/lib/vedeu/cells/json_test.rb +2 -0
- data/test/lib/vedeu/coercers/alignment_test.rb +2 -0
- data/test/lib/vedeu/coercers/colour_attributes_test.rb +2 -0
- data/test/lib/vedeu/coercers/colour_test.rb +2 -0
- data/test/lib/vedeu/coercers/horizontal_alignment_test.rb +2 -0
- data/test/lib/vedeu/coercers/vertical_alignment_test.rb +2 -0
- data/test/lib/vedeu/colours/background_test.rb +2 -0
- data/test/lib/vedeu/colours/backgrounds_test.rb +2 -0
- data/test/lib/vedeu/colours/colour_test.rb +2 -0
- data/test/lib/vedeu/colours/foreground_test.rb +2 -0
- data/test/lib/vedeu/colours/foregrounds_test.rb +2 -0
- data/test/lib/vedeu/colours/repository_test.rb +2 -0
- data/test/lib/vedeu/colours/translator_test.rb +2 -0
- data/test/lib/vedeu/colours/validator_test.rb +2 -0
- data/test/lib/vedeu/common_test.rb +39 -6
- data/test/lib/vedeu/configuration/api_test.rb +37 -18
- data/test/lib/vedeu/configuration/configuration_test.rb +4 -2
- data/test/lib/vedeu/cursors/coordinate_test.rb +2 -0
- data/test/lib/vedeu/cursors/cursor_test.rb +2 -0
- data/test/lib/vedeu/cursors/dsl_test.rb +2 -0
- data/test/lib/vedeu/cursors/move_test.rb +2 -0
- data/test/lib/vedeu/cursors/refresh_test.rb +2 -0
- data/test/lib/vedeu/cursors/reposition_test.rb +2 -0
- data/test/lib/vedeu/cursors/repository_test.rb +2 -0
- data/test/lib/vedeu/distributed/client_test.rb +2 -0
- data/test/lib/vedeu/distributed/server_test.rb +2 -0
- data/test/lib/vedeu/distributed/subprocess_test.rb +2 -0
- data/test/lib/vedeu/distributed/test_application_test.rb +2 -0
- data/test/lib/vedeu/distributed/uri_test.rb +2 -0
- data/test/lib/vedeu/dsl/attributes_test.rb +2 -0
- data/test/lib/vedeu/dsl/border_test.rb +2 -0
- data/test/lib/vedeu/dsl/cursors_test.rb +2 -0
- data/test/lib/vedeu/dsl/dsl_test.rb +2 -0
- data/test/lib/vedeu/dsl/elements_test.rb +2 -0
- data/test/lib/vedeu/dsl/geometry_test.rb +2 -0
- data/test/lib/vedeu/dsl/presentation_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/align_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/text_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/truncate_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/wordwrap_test.rb +2 -0
- data/test/lib/vedeu/dsl/use_test.rb +2 -0
- data/test/lib/vedeu/dsl/view_test.rb +2 -0
- data/test/lib/vedeu/dsl/views_test.rb +2 -0
- data/test/lib/vedeu/editor/collection_test.rb +2 -0
- data/test/lib/vedeu/editor/cropper_test.rb +2 -0
- data/test/lib/vedeu/editor/cursor_test.rb +2 -0
- data/test/lib/vedeu/editor/delete_test.rb +2 -0
- data/test/lib/vedeu/editor/document_test.rb +2 -0
- data/test/lib/vedeu/editor/editor_test.rb +2 -0
- data/test/lib/vedeu/editor/insert_test.rb +2 -0
- data/test/lib/vedeu/editor/item_test.rb +2 -0
- data/test/lib/vedeu/editor/line_test.rb +2 -0
- data/test/lib/vedeu/editor/lines_test.rb +2 -0
- data/test/lib/vedeu/editor/repository_test.rb +2 -0
- data/test/lib/vedeu/error_test.rb +2 -0
- data/test/lib/vedeu/esc/actions_test.rb +2 -0
- data/test/lib/vedeu/esc/background_test.rb +2 -0
- data/test/lib/vedeu/esc/borders_test.rb +2 -0
- data/test/lib/vedeu/esc/colours_test.rb +2 -0
- data/test/lib/vedeu/esc/esc_test.rb +2 -0
- data/test/lib/vedeu/esc/foreground_test.rb +2 -0
- data/test/lib/vedeu/esc/mouse_test.rb +2 -0
- data/test/lib/vedeu/events/aliases_test.rb +2 -0
- data/test/lib/vedeu/events/collection_test.rb +2 -0
- data/test/lib/vedeu/events/event_test.rb +2 -0
- data/test/lib/vedeu/events/repository_test.rb +2 -0
- data/test/lib/vedeu/events/trigger_test.rb +2 -0
- data/test/lib/vedeu/geometries/area/area_test.rb +54 -26
- data/test/lib/vedeu/geometries/area/dimension_test.rb +2 -0
- data/test/lib/vedeu/geometries/area/x_dimension_test.rb +2 -0
- data/test/lib/vedeu/geometries/area/y_dimension_test.rb +2 -0
- data/test/lib/vedeu/geometries/dsl/dsl_test.rb +2 -0
- data/test/lib/vedeu/geometries/dsl/grid_test.rb +2 -0
- data/test/lib/vedeu/geometries/dsl/validator_test.rb +2 -0
- data/test/lib/vedeu/geometries/geometry_test.rb +2 -0
- data/test/lib/vedeu/geometries/move_test.rb +2 -0
- data/test/lib/vedeu/geometries/position_test.rb +2 -0
- data/test/lib/vedeu/geometries/positionable_test.rb +2 -0
- data/test/lib/vedeu/geometries/repository_test.rb +2 -0
- data/test/lib/vedeu/groups/clear_test.rb +2 -0
- data/test/lib/vedeu/groups/dsl_test.rb +2 -0
- data/test/lib/vedeu/groups/group_test.rb +2 -0
- data/test/lib/vedeu/groups/refresh_test.rb +2 -0
- data/test/lib/vedeu/groups/repository_test.rb +2 -0
- data/test/lib/vedeu/input/capture_test.rb +2 -0
- data/test/lib/vedeu/input/dsl_test.rb +2 -0
- data/test/lib/vedeu/input/key_test.rb +2 -0
- data/test/lib/vedeu/input/keymap_test.rb +2 -0
- data/test/lib/vedeu/input/keys_test.rb +2 -0
- data/test/lib/vedeu/input/mapper_test.rb +2 -0
- data/test/lib/vedeu/input/mouse_test.rb +2 -0
- data/test/lib/vedeu/input/raw_test.rb +2 -0
- data/test/lib/vedeu/input/read_test.rb +2 -0
- data/test/lib/vedeu/input/repository_test.rb +2 -0
- data/test/lib/vedeu/input/store_test.rb +2 -0
- data/test/lib/vedeu/input/translator_test.rb +2 -0
- data/test/lib/vedeu/interfaces/clear_test.rb +2 -0
- data/test/lib/vedeu/interfaces/dsl_test.rb +2 -0
- data/test/lib/vedeu/interfaces/interface_test.rb +2 -0
- data/test/lib/vedeu/interfaces/null_test.rb +2 -0
- data/test/lib/vedeu/interfaces/repository_test.rb +2 -0
- data/test/lib/vedeu/logging/clock_time_test.rb +2 -0
- data/test/lib/vedeu/logging/debug_test.rb +37 -9
- data/test/lib/vedeu/logging/lockless_log_device_test.rb +2 -0
- data/test/lib/vedeu/logging/log_test.rb +2 -0
- data/test/lib/vedeu/logging/mono_logger_test.rb +2 -0
- data/test/lib/vedeu/logging/timer_test.rb +2 -0
- data/test/lib/vedeu/menus/dsl_test.rb +2 -0
- data/test/lib/vedeu/menus/menu_test.rb +2 -0
- data/test/lib/vedeu/menus/repository_test.rb +2 -0
- data/test/lib/vedeu/models/focus_test.rb +2 -0
- data/test/lib/vedeu/models/page_test.rb +2 -0
- data/test/lib/vedeu/models/row_test.rb +2 -0
- data/test/lib/vedeu/models/toggleable_test.rb +2 -0
- data/test/lib/vedeu/null/generic_test.rb +2 -0
- data/test/lib/vedeu/output/compressor_cache_test.rb +2 -0
- data/test/lib/vedeu/output/compressor_test.rb +2 -0
- data/test/lib/vedeu/output/output_test.rb +2 -0
- data/test/lib/vedeu/output/refresh_test.rb +2 -0
- data/test/lib/vedeu/output/viewport_test.rb +2 -0
- data/test/lib/vedeu/output/write_test.rb +2 -0
- data/test/lib/vedeu/plugins/plugin_test.rb +2 -0
- data/test/lib/vedeu/plugins/plugins_test.rb +2 -0
- data/test/lib/vedeu/presentation/background_test.rb +2 -0
- data/test/lib/vedeu/presentation/colour_test.rb +2 -0
- data/test/lib/vedeu/presentation/foreground_test.rb +2 -0
- data/test/lib/vedeu/presentation/presentation_test.rb +2 -0
- data/test/lib/vedeu/presentation/style_test.rb +2 -0
- data/test/lib/vedeu/presentation/styles_test.rb +2 -0
- data/test/lib/vedeu/renderers/all_test.rb +4 -95
- data/test/lib/vedeu/renderers/file_test.rb +2 -0
- data/test/lib/vedeu/renderers/html_test.rb +28 -1
- data/test/lib/vedeu/renderers/json_test.rb +2 -0
- data/test/lib/vedeu/renderers/options_test.rb +2 -0
- data/test/lib/vedeu/renderers/terminal_test.rb +2 -0
- data/test/lib/vedeu/renderers/text_test.rb +2 -0
- data/test/lib/vedeu/repositories/assemblage_test.rb +2 -0
- data/test/lib/vedeu/repositories/collection_test.rb +2 -0
- data/test/lib/vedeu/repositories/defaults_test.rb +2 -0
- data/test/lib/vedeu/repositories/model_test.rb +2 -0
- data/test/lib/vedeu/repositories/registerable_test.rb +2 -0
- data/test/lib/vedeu/repositories/repositories_test.rb +2 -0
- data/test/lib/vedeu/repositories/repository_test.rb +2 -0
- data/test/lib/vedeu/repositories/store_test.rb +2 -0
- data/test/lib/vedeu/runtime/application_test.rb +2 -0
- data/test/lib/vedeu/runtime/bootstrap_test.rb +2 -0
- data/test/lib/vedeu/runtime/flags_test.rb +2 -0
- data/test/lib/vedeu/runtime/launcher_test.rb +2 -0
- data/test/lib/vedeu/runtime/main_loop_test.rb +2 -0
- data/test/lib/vedeu/runtime/router_test.rb +2 -0
- data/test/lib/vedeu/runtime/traps_test.rb +2 -0
- data/test/lib/vedeu/templating/decoder_test.rb +2 -0
- data/test/lib/vedeu/templating/encoder_test.rb +2 -0
- data/test/lib/vedeu/templating/helpers_test.rb +2 -0
- data/test/lib/vedeu/templating/template_test.rb +2 -0
- data/test/lib/vedeu/templating/view_template_test.rb +2 -0
- data/test/lib/vedeu/terminal/mode_test.rb +2 -0
- data/test/lib/vedeu/terminal/terminal_test.rb +2 -0
- data/test/lib/vedeu/views/char_test.rb +2 -0
- data/test/lib/vedeu/views/chars_test.rb +2 -0
- data/test/lib/vedeu/views/composition_test.rb +2 -0
- data/test/lib/vedeu/views/default_attributes_test.rb +2 -0
- data/test/lib/vedeu/views/html_char_test.rb +2 -0
- data/test/lib/vedeu/views/line_test.rb +2 -0
- data/test/lib/vedeu/views/lines_test.rb +2 -0
- data/test/lib/vedeu/views/stream_test.rb +2 -0
- data/test/lib/vedeu/views/streams_test.rb +2 -0
- data/test/lib/vedeu/views/value_test.rb +2 -0
- data/test/lib/vedeu/views/view_test.rb +2 -0
- data/test/lib/vedeu/views/views_test.rb +2 -0
- data/test/lib/vedeu_test.rb +21 -3
- data/test/support/examples/material_colours_app.rb +17 -1
- data/test/support/helpers/model_test_class.rb +2 -0
- data/test/support/helpers/presentation_colour_test_class.rb +2 -0
- data/test/test_helper.rb +3 -22
- data/vedeu.gemspec +0 -3
- metadata +105 -52
- data/docs/debugging.md +0 -18
- data/lib/vedeu/borders/set_attribute.rb +0 -73
- data/lib/vedeu/logging/ips.rb +0 -66
- data/test/lib/vedeu/borders/set_attribute_test.rb +0 -62
- data/test/lib/vedeu/logging/ips_test.rb +0 -52
data/lib/vedeu/logging/debug.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Logging
|
@@ -13,12 +15,12 @@ module Vedeu
|
|
13
15
|
# @param obj [Object]
|
14
16
|
# @return [void]
|
15
17
|
def debug(binding = nil, obj = nil)
|
16
|
-
|
18
|
+
Vedeu.requires_gem!('pry')
|
17
19
|
|
18
20
|
if obj
|
19
21
|
message = ::Pry::ColorPrinter.pp(obj, '')
|
20
22
|
|
21
|
-
Vedeu.log(type: :debug, message:
|
23
|
+
Vedeu.log(type: :debug, message: message)
|
22
24
|
|
23
25
|
elsif binding
|
24
26
|
Vedeu::Terminal.cooked_mode!
|
@@ -32,37 +34,31 @@ module Vedeu
|
|
32
34
|
end
|
33
35
|
|
34
36
|
# :nocov:
|
35
|
-
#
|
36
|
-
# trace of its execution upon exiting.
|
37
|
-
#
|
38
|
-
# @example
|
39
|
-
# Vedeu.profile('some_file.html') do
|
40
|
-
# # ... code to profile ...
|
41
|
-
# end
|
42
|
-
#
|
37
|
+
# {include:file:docs/dsl/by_method/profile.md}
|
43
38
|
# @param filename [String] Optional, and defaults to being
|
44
39
|
# written to the /tmp directory.
|
45
40
|
# @param block [Proc]
|
41
|
+
# @macro raise_requires_block
|
46
42
|
# @return [void]
|
47
43
|
# @yieldreturn [void] The section of the application to profile.
|
48
|
-
def
|
49
|
-
|
44
|
+
def profile(filename = '/tmp/profile.html', &block)
|
45
|
+
fail Vedeu::Error::RequiresBlock unless block_given?
|
50
46
|
|
51
|
-
|
47
|
+
Vedeu.requires_gem!('ruby-prof')
|
52
48
|
|
53
|
-
# RubyProf.measure_mode = RubyProf::WALL_TIME
|
54
|
-
# RubyProf.measure_mode = RubyProf::PROCESS_TIME
|
55
|
-
RubyProf.measure_mode = RubyProf::CPU_TIME
|
56
|
-
# RubyProf.measure_mode = RubyProf::ALLOCATIONS
|
57
|
-
# RubyProf.measure_mode = RubyProf::MEMORY
|
58
|
-
# RubyProf.measure_mode = RubyProf::GC_TIME
|
59
|
-
# RubyProf.measure_mode = RubyProf::GC_RUNS
|
49
|
+
# ::RubyProf.measure_mode = ::RubyProf::WALL_TIME
|
50
|
+
# ::RubyProf.measure_mode = ::RubyProf::PROCESS_TIME
|
51
|
+
::RubyProf.measure_mode = ::RubyProf::CPU_TIME
|
52
|
+
# ::RubyProf.measure_mode = ::RubyProf::ALLOCATIONS
|
53
|
+
# ::RubyProf.measure_mode = ::RubyProf::MEMORY
|
54
|
+
# ::RubyProf.measure_mode = ::RubyProf::GC_TIME
|
55
|
+
# ::RubyProf.measure_mode = ::RubyProf::GC_RUNS
|
60
56
|
|
61
|
-
RubyProf.start
|
57
|
+
::RubyProf.start
|
62
58
|
|
63
59
|
work = yield
|
64
60
|
|
65
|
-
result = RubyProf.stop
|
61
|
+
result = ::RubyProf.stop
|
66
62
|
result.eliminate_methods!([
|
67
63
|
/^Array/,
|
68
64
|
/^Hash/,
|
@@ -70,39 +66,41 @@ module Vedeu
|
|
70
66
|
/^Fixnum/,
|
71
67
|
])
|
72
68
|
|
73
|
-
File.open(
|
69
|
+
File.open(filename, 'w') do |file|
|
74
70
|
# - Creates a HTML visualization of the Ruby stack
|
75
|
-
RubyProf::CallStackPrinter.new(result).print(file)
|
71
|
+
::RubyProf::CallStackPrinter.new(result).print(file)
|
76
72
|
|
77
73
|
# Used with QTCacheGrind to analyse performance.
|
78
|
-
# RubyProf::CallTreePrinter.new(result).print(file)
|
74
|
+
# ::RubyProf::CallTreePrinter.new(result).print(file)
|
79
75
|
|
80
76
|
# Creates a flat report in text format
|
81
|
-
# RubyProf::FlatPrinter
|
77
|
+
# ::RubyProf::FlatPrinter
|
82
78
|
|
83
79
|
# - same as above but more verbose
|
84
|
-
# RubyProf::FlatPrinterWithLineNumbers
|
80
|
+
# ::RubyProf::FlatPrinterWithLineNumbers
|
85
81
|
|
86
82
|
# - Creates a call graph report in text format
|
87
|
-
# RubyProf::GraphPrinter
|
83
|
+
# ::RubyProf::GraphPrinter
|
88
84
|
|
89
85
|
# - Creates a call graph report in HTML (separate files per
|
90
86
|
# thread)
|
91
|
-
# RubyProf::GraphHtmlPrinter
|
87
|
+
# ::RubyProf::GraphHtmlPrinter
|
92
88
|
|
93
89
|
# - Creates a call graph report in GraphViz's DOT format
|
94
90
|
# which can be converted to an image
|
95
|
-
# RubyProf::DotPrinter
|
91
|
+
# ::RubyProf::DotPrinter
|
96
92
|
|
97
93
|
# - Creates a call tree report compatible with KCachegrind.
|
98
|
-
# RubyProf::CallTreePrinter
|
94
|
+
# ::RubyProf::CallTreePrinter
|
99
95
|
|
100
96
|
# - Uses the other printers to create several reports in one
|
101
97
|
# profiling run
|
102
|
-
# RubyProf::MultiPrinter
|
98
|
+
# ::RubyProf::MultiPrinter
|
103
99
|
end
|
104
100
|
|
105
101
|
work
|
102
|
+
rescue NameError
|
103
|
+
yield
|
106
104
|
end
|
107
105
|
# :nocov:
|
108
106
|
|
@@ -110,23 +108,13 @@ module Vedeu
|
|
110
108
|
|
111
109
|
end # Logging
|
112
110
|
|
113
|
-
#
|
114
|
-
# ruby-prof.
|
115
|
-
#
|
116
|
-
# @example
|
117
|
-
# Vedeu.profile
|
118
|
-
#
|
111
|
+
# {include:file:docs/dsl/by_method/profile.md}
|
119
112
|
# @!method profile
|
120
113
|
# @return [Vedeu::Logging::Debug]
|
121
114
|
def_delegators Vedeu::Logging::Debug,
|
122
115
|
:profile
|
123
116
|
|
124
|
-
#
|
125
|
-
# courtesy of pry.
|
126
|
-
#
|
127
|
-
# @example
|
128
|
-
# Vedeu.debug
|
129
|
-
#
|
117
|
+
# {include:file:docs/dsl/by_method/debug.md}
|
130
118
|
# @!method debug
|
131
119
|
# @return [void]
|
132
120
|
def_delegators Vedeu::Logging::Debug,
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Logging
|
@@ -34,7 +36,7 @@ module Vedeu
|
|
34
36
|
@dev.write(message)
|
35
37
|
|
36
38
|
rescue StandardError => exception
|
37
|
-
warn("log writing failed. #{exception}"
|
39
|
+
warn("log writing failed. #{exception}")
|
38
40
|
end
|
39
41
|
|
40
42
|
# @return [void]
|
data/lib/vedeu/logging/log.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Logging
|
@@ -90,7 +92,7 @@ module Vedeu
|
|
90
92
|
# coloured and combined.
|
91
93
|
# @return [String]
|
92
94
|
def formatted_message(message)
|
93
|
-
"#{timestamp}#{message}\n"
|
95
|
+
"#{timestamp}#{message}\n" if message
|
94
96
|
end
|
95
97
|
|
96
98
|
# Returns the message:
|
@@ -102,7 +104,16 @@ module Vedeu
|
|
102
104
|
# log file, useful for debugging.
|
103
105
|
# @return [String]
|
104
106
|
def log_entry(type, message)
|
105
|
-
|
107
|
+
colours = message_types.fetch(type, [:default, :default])
|
108
|
+
|
109
|
+
[
|
110
|
+
Vedeu::EscapeSequences::Esc.colour(colours[0]) do
|
111
|
+
"[#{type}]".ljust(11)
|
112
|
+
end,
|
113
|
+
Vedeu::EscapeSequences::Esc.colour(colours[1]) do
|
114
|
+
message
|
115
|
+
end,
|
116
|
+
].join('')
|
106
117
|
end
|
107
118
|
|
108
119
|
# Fetches the filename from the configuration.
|
@@ -113,36 +124,6 @@ module Vedeu
|
|
113
124
|
end
|
114
125
|
alias_method :enabled?, :log_file
|
115
126
|
|
116
|
-
# Displays the message body using the colour specified in the
|
117
|
-
# last element of {message_types}.
|
118
|
-
#
|
119
|
-
# @param type [Symbol] The type of log message.
|
120
|
-
# @param body [String] The log message itself.
|
121
|
-
# @return [String]
|
122
|
-
def message_body(type, body)
|
123
|
-
message_colour(type, -1) { body }
|
124
|
-
end
|
125
|
-
|
126
|
-
# @param type [Symbol] The type of log message.
|
127
|
-
# @param index [Fixnum] Either 0 or -1.
|
128
|
-
# @param block [Proc]
|
129
|
-
# @return [String]
|
130
|
-
def message_colour(type, index, &block)
|
131
|
-
Vedeu::EscapeSequences::Esc.send(
|
132
|
-
message_types.fetch(type, :default)[index]) do
|
133
|
-
yield if block_given?
|
134
|
-
end
|
135
|
-
end
|
136
|
-
|
137
|
-
# Displays the message type using the colour specified in the
|
138
|
-
# first element of {message_types}.
|
139
|
-
#
|
140
|
-
# @param type [Symbol] The type of log message.
|
141
|
-
# @return [String]
|
142
|
-
def message_type(type)
|
143
|
-
message_colour(type, 0) { "[#{type}]".ljust(11) }
|
144
|
-
end
|
145
|
-
|
146
127
|
# The defined message types for Vedeu with their respective
|
147
128
|
# colours. When used, produces a log entry of the format:
|
148
129
|
#
|
@@ -213,11 +194,4 @@ module Vedeu
|
|
213
194
|
:log_stderr,
|
214
195
|
:log_timestamp
|
215
196
|
|
216
|
-
# :nocov:
|
217
|
-
|
218
|
-
# See {file:docs/events/system.md#\_log_}
|
219
|
-
Vedeu.bind(:_log_) { |msg| Vedeu.log(type: :debug, message: msg) }
|
220
|
-
|
221
|
-
# :nocov:
|
222
|
-
|
223
197
|
end # Vedeu
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Logging
|
@@ -14,7 +16,7 @@ module Vedeu
|
|
14
16
|
# (typically STDOUT, STDERR or an open file).
|
15
17
|
# @return [Vedeu::Logging::MonoLogger]
|
16
18
|
def initialize(logdev)
|
17
|
-
@progname = 'Vedeu'
|
19
|
+
@progname = 'Vedeu'
|
18
20
|
@level = Logger::DEBUG
|
19
21
|
@default_formatter = Logger::Formatter.new
|
20
22
|
@formatter = nil
|
data/lib/vedeu/logging/timer.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Logging
|
@@ -10,18 +12,10 @@ module Vedeu
|
|
10
12
|
|
11
13
|
class << self
|
12
14
|
|
13
|
-
#
|
14
|
-
# The message provided will have ' took <time>ms.' appended.
|
15
|
-
#
|
16
|
-
# @example
|
17
|
-
# Vedeu.timer 'Really complex code' do
|
18
|
-
# # ... code to be measured
|
19
|
-
# end
|
20
|
-
#
|
21
|
-
# # => 'Really complex code took 0.234ms.'
|
22
|
-
#
|
15
|
+
# {include:file:docs/dsl/by_method/timer.md}
|
23
16
|
# @param message [String]
|
24
17
|
# @param block [Proc]
|
18
|
+
# @macro raise_requires_block
|
25
19
|
# @return [void] The return value of the executed block.
|
26
20
|
def timer(message = '', &block)
|
27
21
|
new(message).measure(&block)
|
@@ -42,7 +36,7 @@ module Vedeu
|
|
42
36
|
# code took in milliseconds. Useful for debugging performance.
|
43
37
|
#
|
44
38
|
# @param block [Proc]
|
45
|
-
# @
|
39
|
+
# @macro raise_requires_block
|
46
40
|
# @return [void] The return value of the executed block.
|
47
41
|
def measure(&block)
|
48
42
|
fail Vedeu::Error::RequiresBlock unless block_given?
|
@@ -51,7 +45,7 @@ module Vedeu
|
|
51
45
|
work = yield
|
52
46
|
|
53
47
|
Vedeu.log(type: :timer,
|
54
|
-
message: "#{message} took #{elapsed}ms."
|
48
|
+
message: "#{message} took #{elapsed}ms.")
|
55
49
|
|
56
50
|
work
|
57
51
|
|
@@ -83,13 +77,7 @@ module Vedeu
|
|
83
77
|
|
84
78
|
end # Logging
|
85
79
|
|
86
|
-
#
|
87
|
-
#
|
88
|
-
# @example
|
89
|
-
# Vedeu.timer do
|
90
|
-
# # ... some code here ...
|
91
|
-
# end
|
92
|
-
#
|
80
|
+
# {include:file:docs/dsl/by_method/timer.md}
|
93
81
|
# @!method timer
|
94
82
|
# @see Vedeu::Logging::Timer.timer
|
95
83
|
def_delegators Vedeu::Logging::Timer,
|
data/lib/vedeu/menus/all.rb
CHANGED
data/lib/vedeu/menus/dsl.rb
CHANGED
data/lib/vedeu/menus/menu.rb
CHANGED
data/lib/vedeu/models/all.rb
CHANGED
data/lib/vedeu/models/focus.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Models
|
@@ -36,7 +38,7 @@ module Vedeu
|
|
36
38
|
|
37
39
|
else
|
38
40
|
Vedeu.log(type: :store,
|
39
|
-
message: "Storing focus entry: '#{name}'"
|
41
|
+
message: "Storing focus entry: '#{name}'")
|
40
42
|
|
41
43
|
focus ? storage.unshift(name) : storage.push(name)
|
42
44
|
end
|
@@ -56,7 +58,7 @@ module Vedeu
|
|
56
58
|
# @return [String|Symbol] The name of the interface now in
|
57
59
|
# focus.
|
58
60
|
def by_name(name)
|
59
|
-
not_registered! unless registered?(name)
|
61
|
+
not_registered!(name) unless registered?(name)
|
60
62
|
|
61
63
|
storage.rotate!(storage.index(name))
|
62
64
|
|
@@ -206,10 +208,10 @@ module Vedeu
|
|
206
208
|
end
|
207
209
|
|
208
210
|
# @raise [Vedeu::Error::ModelNotFound]
|
209
|
-
def not_registered!
|
211
|
+
def not_registered!(name)
|
210
212
|
fail Vedeu::Error::ModelNotFound,
|
211
213
|
"Cannot focus '#{name}' as this interface has not been " \
|
212
|
-
'registered.'
|
214
|
+
'registered.'
|
213
215
|
end
|
214
216
|
|
215
217
|
# Return the name of the interface in focus after triggering the
|
@@ -220,7 +222,7 @@ module Vedeu
|
|
220
222
|
def update
|
221
223
|
return false if storage.empty?
|
222
224
|
|
223
|
-
Vedeu.log(message: "Interface in focus: '#{current}'"
|
225
|
+
Vedeu.log(message: "Interface in focus: '#{current}'")
|
224
226
|
|
225
227
|
refresh
|
226
228
|
|
data/lib/vedeu/models/page.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Models
|
@@ -33,7 +35,7 @@ module Vedeu
|
|
33
35
|
else
|
34
36
|
fail Vedeu::Error::InvalidSyntax,
|
35
37
|
'Cannot coerce as value is not an Array, Vedeu::Models::Page ' \
|
36
|
-
"or Vedeu::Models::Row. Is a '#{value.class.name}'."
|
38
|
+
"or Vedeu::Models::Row. Is a '#{value.class.name}'."
|
37
39
|
|
38
40
|
end
|
39
41
|
end
|
data/lib/vedeu/models/row.rb
CHANGED