module Vedeu module Bindings # System events relating to the document/editor/fake terminal # implementation. # module Document extend self # Setup events relating to the document/editor/fake terminal. # This method is called by Vedeu. # # @return [TrueClass] def setup! editor_execute! editor_delete_character! editor_delete_line! editor_down! editor_insert_character! editor_insert_line! editor_left! editor_right! editor_up! end private # See {file:docs/events/document.md#\_editor_execute_} def editor_execute! Vedeu.bind(:_editor_execute_) do |name| Vedeu.documents.by_name(name).execute end end # See {file:docs/events/document.md#\_editor_delete_character_} def editor_delete_character! Vedeu.bind(:_editor_delete_character_) do |name| Vedeu.documents.by_name(name).delete_character end end # See {file:docs/events/document.md#\_editor_delete_line_} def editor_delete_line! Vedeu.bind(:_editor_delete_line_) do |name| Vedeu.documents.by_name(name).delete_line end end # See {file:docs/events/document.md#\_editor_down_} def editor_down! Vedeu.bind(:_editor_down_) do |name| Vedeu.documents.by_name(name).down end end # See {file:docs/events/document.md#\_editor_insert_character_} def editor_insert_character! Vedeu.bind(:_editor_insert_character_) do |name, character| Vedeu.documents.by_name(name).insert_character(character) end end # See {file:docs/events/document.md#\_editor_insert_line_} def editor_insert_line! Vedeu.bind(:_editor_insert_line_) do |name| Vedeu.documents.by_name(name).insert_line end end # See {file:docs/events/document.md#\_editor_left_} def editor_left! Vedeu.bind(:_editor_left_) { |name| Vedeu.documents.by_name(name).left } end # See {file:docs/events/document.md#\_editor_right_} def editor_right! Vedeu.bind(:_editor_right_) do |name| Vedeu.documents.by_name(name).right end end # See {file:docs/events/document.md#\_editor_up_} def editor_up! Vedeu.bind(:_editor_up_) { |name| Vedeu.documents.by_name(name).up } end end # Document end # Bindings end # Vedeu