redcar-dev 0.12.17dev
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.
- data/CHANGES +664 -0
- data/LICENSE +32 -0
- data/README.md +119 -0
- data/Rakefile +283 -0
- data/bin/redcar +29 -0
- data/lib/redcar.rb +307 -0
- data/lib/redcar/installer.rb +178 -0
- data/lib/redcar/instance_exec.rb +25 -0
- data/lib/redcar/logger.rb +64 -0
- data/lib/redcar/plist.rb +83 -0
- data/lib/redcar/ruby_extensions.rb +201 -0
- data/lib/redcar/runner.rb +130 -0
- data/lib/redcar/usage.rb +42 -0
- data/lib/redcar_quick_start.rb +100 -0
- data/lib/regex_replace.rb +221 -0
- data/lib/tasks/app-bundle.rake +63 -0
- data/plugins/application/features/main_menu.feature +9 -0
- data/plugins/application/features/navigation_history.feature +66 -0
- data/plugins/application/features/step_definitions/command_steps.rb +10 -0
- data/plugins/application/features/step_definitions/dialog_steps.rb +25 -0
- data/plugins/application/features/step_definitions/filter_list_dialog_steps.rb +42 -0
- data/plugins/application/features/step_definitions/key_steps.rb +18 -0
- data/plugins/application/features/step_definitions/menu_steps.rb +42 -0
- data/plugins/application/features/step_definitions/navigation_history_steps.rb +4 -0
- data/plugins/application/features/step_definitions/speedbar_steps.rb +88 -0
- data/plugins/application/features/step_definitions/tree_steps.rb +107 -0
- data/plugins/application/features/step_definitions/window_steps.rb +17 -0
- data/plugins/application/features/support/env.rb +257 -0
- data/plugins/application/features/support/fake_event.rb +26 -0
- data/plugins/application/lib/application.rb +425 -0
- data/plugins/application/lib/application/assets/file.png +0 -0
- data/plugins/application/lib/application/clipboard.rb +95 -0
- data/plugins/application/lib/application/command.rb +108 -0
- data/plugins/application/lib/application/command/executor.rb +80 -0
- data/plugins/application/lib/application/command/history.rb +54 -0
- data/plugins/application/lib/application/commands/application_commands.rb +21 -0
- data/plugins/application/lib/application/commands/notebook_commands.rb +73 -0
- data/plugins/application/lib/application/commands/tab_commands.rb +105 -0
- data/plugins/application/lib/application/commands/treebook_commands.rb +117 -0
- data/plugins/application/lib/application/commands/window_commands.rb +68 -0
- data/plugins/application/lib/application/dialog.rb +170 -0
- data/plugins/application/lib/application/dialogs/filter_list_dialog.rb +123 -0
- data/plugins/application/lib/application/dialogs/modeless_list_dialog.rb +85 -0
- data/plugins/application/lib/application/event_spewer.rb +32 -0
- data/plugins/application/lib/application/keymap.rb +41 -0
- data/plugins/application/lib/application/keymap/builder.rb +23 -0
- data/plugins/application/lib/application/menu.rb +117 -0
- data/plugins/application/lib/application/menu/builder.rb +80 -0
- data/plugins/application/lib/application/menu/builder/group.rb +47 -0
- data/plugins/application/lib/application/menu/item.rb +79 -0
- data/plugins/application/lib/application/menu/lazy_menu.rb +25 -0
- data/plugins/application/lib/application/navigation_history.rb +71 -0
- data/plugins/application/lib/application/notebook.rb +163 -0
- data/plugins/application/lib/application/sensitive.rb +57 -0
- data/plugins/application/lib/application/sensitivity.rb +82 -0
- data/plugins/application/lib/application/speedbar.rb +100 -0
- data/plugins/application/lib/application/tab.rb +92 -0
- data/plugins/application/lib/application/tab/command.rb +5 -0
- data/plugins/application/lib/application/toolbar.rb +83 -0
- data/plugins/application/lib/application/toolbar/builder.rb +80 -0
- data/plugins/application/lib/application/toolbar/builder/group.rb +47 -0
- data/plugins/application/lib/application/toolbar/item.rb +71 -0
- data/plugins/application/lib/application/toolbar/lazy_toolbar.rb +25 -0
- data/plugins/application/lib/application/tree.rb +94 -0
- data/plugins/application/lib/application/tree/command.rb +5 -0
- data/plugins/application/lib/application/tree/controller.rb +64 -0
- data/plugins/application/lib/application/tree/mirror.rb +132 -0
- data/plugins/application/lib/application/treebook.rb +83 -0
- data/plugins/application/lib/application/window.rb +274 -0
- data/plugins/application/plugin.rb +8 -0
- data/plugins/application/spec/application/application_spec.rb +23 -0
- data/plugins/application/spec/application/clipboard_spec.rb +55 -0
- data/plugins/application/spec/application/command/executor_spec.rb +78 -0
- data/plugins/application/spec/application/command/history_spec.rb +49 -0
- data/plugins/application/spec/application/command_spec.rb +78 -0
- data/plugins/application/spec/application/controllers/application_controller.rb +4 -0
- data/plugins/application/spec/application/controllers/notebook_controller.rb +4 -0
- data/plugins/application/spec/application/controllers/window_controller.rb +5 -0
- data/plugins/application/spec/application/keymap/builder_spec.rb +17 -0
- data/plugins/application/spec/application/menu/builder_spec.rb +61 -0
- data/plugins/application/spec/application/menu/menu_item_spec.rb +17 -0
- data/plugins/application/spec/application/menu_spec.rb +171 -0
- data/plugins/application/spec/application/navigation_history_spec.rb +96 -0
- data/plugins/application/spec/application/notebook_spec.rb +31 -0
- data/plugins/application/spec/application/sensitive_spec.rb +156 -0
- data/plugins/application/spec/application/speedbar_spec.rb +77 -0
- data/plugins/application/spec/application/treebook_spec.rb +27 -0
- data/plugins/application/spec/application/window_spec.rb +24 -0
- data/plugins/application/spec/spec_helper.rb +18 -0
- data/plugins/application_swt/build.xml +74 -0
- data/plugins/application_swt/lib/application_swt.rb +218 -0
- data/plugins/application_swt/lib/application_swt/bring_to_front.rb +53 -0
- data/plugins/application_swt/lib/application_swt/clipboard.rb +42 -0
- data/plugins/application_swt/lib/application_swt/dialog_adapter.rb +180 -0
- data/plugins/application_swt/lib/application_swt/dialogs/filter_list_dialog_controller.rb +233 -0
- data/plugins/application_swt/lib/application_swt/dialogs/input_dialog.rb +46 -0
- data/plugins/application_swt/lib/application_swt/dialogs/modeless_dialog.rb +113 -0
- data/plugins/application_swt/lib/application_swt/dialogs/modeless_html_dialog.rb +85 -0
- data/plugins/application_swt/lib/application_swt/dialogs/modeless_list_dialog_controller.rb +143 -0
- data/plugins/application_swt/lib/application_swt/dialogs/no_buttons_dialog.rb +24 -0
- data/plugins/application_swt/lib/application_swt/dialogs/text_and_file_dialog.rb +118 -0
- data/plugins/application_swt/lib/application_swt/gradient.rb +61 -0
- data/plugins/application_swt/lib/application_swt/html_tab.rb +79 -0
- data/plugins/application_swt/lib/application_swt/icon.rb +35 -0
- data/plugins/application_swt/lib/application_swt/listener_helpers.rb +20 -0
- data/plugins/application_swt/lib/application_swt/menu.rb +167 -0
- data/plugins/application_swt/lib/application_swt/menu/binding_translator.rb +94 -0
- data/plugins/application_swt/lib/application_swt/notebook.rb +148 -0
- data/plugins/application_swt/lib/application_swt/notebook/tab_drag_and_drop_listener.rb +124 -0
- data/plugins/application_swt/lib/application_swt/notebook/tab_transfer.rb +83 -0
- data/plugins/application_swt/lib/application_swt/speedbar.rb +185 -0
- data/plugins/application_swt/lib/application_swt/speedbar/button_item.rb +20 -0
- data/plugins/application_swt/lib/application_swt/speedbar/combo_item.rb +55 -0
- data/plugins/application_swt/lib/application_swt/speedbar/label_item.rb +15 -0
- data/plugins/application_swt/lib/application_swt/speedbar/slider_item.rb +32 -0
- data/plugins/application_swt/lib/application_swt/speedbar/text_box_item.rb +36 -0
- data/plugins/application_swt/lib/application_swt/speedbar/toggle_item.rb +29 -0
- data/plugins/application_swt/lib/application_swt/tab.rb +84 -0
- data/plugins/application_swt/lib/application_swt/toolbar.rb +138 -0
- data/plugins/application_swt/lib/application_swt/toolbar/binding_translator.rb +94 -0
- data/plugins/application_swt/lib/application_swt/treebook.rb +78 -0
- data/plugins/application_swt/lib/application_swt/window.rb +419 -0
- data/plugins/application_swt/lib/dist/application_swt.jar +0 -0
- data/plugins/application_swt/lib/swt/graphics_utils.rb +193 -0
- data/plugins/application_swt/lib/swt/vtab_folder.rb +177 -0
- data/plugins/application_swt/lib/swt/vtab_item.rb +78 -0
- data/plugins/application_swt/lib/swt/vtab_label.rb +127 -0
- data/plugins/application_swt/plugin.rb +8 -0
- data/plugins/application_swt/spec/application_swt/gradient_spec.rb +133 -0
- data/plugins/application_swt/spec/application_swt/menu/binding_translator_spec.rb +73 -0
- data/plugins/application_swt/spec/application_swt/menu_spec.rb +7 -0
- data/plugins/application_swt/spec/spec_helper.rb +20 -0
- data/plugins/application_swt/src/com/redcareditor/application_swt/CocoaUIEnhancer.java +313 -0
- data/plugins/auto_completer/features/auto_complete.feature +65 -0
- data/plugins/auto_completer/features/step_definitions/auto_complete_steps.rb +4 -0
- data/plugins/auto_completer/features/support/env.rb +2 -0
- data/plugins/auto_completer/lib/auto_completer.rb +129 -0
- data/plugins/auto_completer/lib/auto_completer/current_document_completion_source.rb +19 -0
- data/plugins/auto_completer/lib/auto_completer/document_controller.rb +52 -0
- data/plugins/auto_completer/lib/auto_completer/list_dialog.rb +21 -0
- data/plugins/auto_completer/lib/auto_completer/word_iterator.rb +48 -0
- data/plugins/auto_completer/lib/auto_completer/word_list.rb +47 -0
- data/plugins/auto_completer/plugin.rb +10 -0
- data/plugins/auto_indenter/features/java_style_indentation.feature +36 -0
- data/plugins/auto_indenter/features/ruby_style_indentation.feature +42 -0
- data/plugins/auto_indenter/features/step_definitions/indentation_steps.rb +15 -0
- data/plugins/auto_indenter/features/support/env.rb +1 -0
- data/plugins/auto_indenter/lib/auto_indenter.rb +108 -0
- data/plugins/auto_indenter/lib/auto_indenter/analyzer.rb +100 -0
- data/plugins/auto_indenter/lib/auto_indenter/commands.rb +66 -0
- data/plugins/auto_indenter/lib/auto_indenter/document_controller.rb +103 -0
- data/plugins/auto_indenter/lib/auto_indenter/rules.rb +41 -0
- data/plugins/auto_indenter/plugin.rb +9 -0
- data/plugins/auto_indenter/spec/auto_indenter/analyzer_spec.rb +151 -0
- data/plugins/auto_indenter/spec/spec_helper.rb +5 -0
- data/plugins/auto_pairer/features/auto_pairer.feature +92 -0
- data/plugins/auto_pairer/features/step_definitions/auto_pairer_steps.rb +0 -0
- data/plugins/auto_pairer/features/support/env.rb +1 -0
- data/plugins/auto_pairer/lib/auto_pairer.rb +12 -0
- data/plugins/auto_pairer/lib/auto_pairer/document_controller.rb +168 -0
- data/plugins/auto_pairer/lib/auto_pairer/pairs_for_scope.rb +57 -0
- data/plugins/auto_pairer/plugin.rb +9 -0
- data/plugins/clipboard-viewer/Screenshot.png +0 -0
- data/plugins/clipboard-viewer/lib/clipboard_viewer.rb +50 -0
- data/plugins/clipboard-viewer/lib/clipboard_viewer/browser_controller.rb +27 -0
- data/plugins/clipboard-viewer/lib/clipboard_viewer/clipboard_bar.rb +67 -0
- data/plugins/clipboard-viewer/plugin.rb +9 -0
- data/plugins/clipboard-viewer/views/clipboard.html.erb +19 -0
- data/plugins/clipboard-viewer/views/default.css +43 -0
- data/plugins/clipboard-viewer/views/redcar_small_icon.png +0 -0
- data/plugins/comment/features/line_comment.feature +249 -0
- data/plugins/comment/features/selection_comment.feature +21 -0
- data/plugins/comment/features/step_definitions/comment_steps.rb +7 -0
- data/plugins/comment/lib/comment.rb +268 -0
- data/plugins/comment/plugin.rb +7 -0
- data/plugins/comment/vendor/comment_lib.json +47 -0
- data/plugins/connection_manager/lib/connection_manager.rb +57 -0
- data/plugins/connection_manager/lib/connection_manager/commands.rb +14 -0
- data/plugins/connection_manager/lib/connection_manager/connection_store.rb +87 -0
- data/plugins/connection_manager/lib/connection_manager/controller.rb +100 -0
- data/plugins/connection_manager/lib/connection_manager/filter_dialog.rb +38 -0
- data/plugins/connection_manager/lib/connection_manager/private_key_store.rb +93 -0
- data/plugins/connection_manager/plugin.rb +12 -0
- data/plugins/connection_manager/views/index.html.erb +284 -0
- data/plugins/core/lib/core.rb +41 -0
- data/plugins/core/lib/core/controller.rb +23 -0
- data/plugins/core/lib/core/gui.rb +100 -0
- data/plugins/core/lib/core/has_spi.rb +10 -0
- data/plugins/core/lib/core/interface.rb +73 -0
- data/plugins/core/lib/core/model.rb +11 -0
- data/plugins/core/lib/core/observable.rb +115 -0
- data/plugins/core/lib/core/observable_struct.rb +34 -0
- data/plugins/core/lib/core/persistent_cache.rb +57 -0
- data/plugins/core/lib/core/plugin.rb +12 -0
- data/plugins/core/lib/core/plugin/storage.rb +133 -0
- data/plugins/core/lib/core/reentry_helpers.rb +13 -0
- data/plugins/core/lib/core/resource.rb +86 -0
- data/plugins/core/lib/core/task.rb +62 -0
- data/plugins/core/lib/core/task_queue.rb +72 -0
- data/plugins/core/plugin.rb +7 -0
- data/plugins/core/spec/core/base_storage_spec.rb +81 -0
- data/plugins/core/spec/core/gui_spec.rb +27 -0
- data/plugins/core/spec/core/observable_spec.rb +104 -0
- data/plugins/core/spec/core/persistent_cache_spec.rb +100 -0
- data/plugins/core/spec/core/resource_spec.rb +125 -0
- data/plugins/core/spec/core/shared_storage_spec.rb +49 -0
- data/plugins/core/spec/core/storage_spec.rb +27 -0
- data/plugins/core/spec/core/task_queue_spec.rb +199 -0
- data/plugins/core/spec/spec_helper.rb +27 -0
- data/plugins/declarations/lib/declarations.rb +159 -0
- data/plugins/declarations/lib/declarations/completion_source.rb +22 -0
- data/plugins/declarations/lib/declarations/file.rb +68 -0
- data/plugins/declarations/lib/declarations/parser.rb +186 -0
- data/plugins/declarations/lib/declarations/select_tag_dialog.rb +45 -0
- data/plugins/declarations/plugin.rb +7 -0
- data/plugins/declarations/spec/declarations/file_spec.rb +62 -0
- data/plugins/declarations/spec/fixtures/federalist.rb +15 -0
- data/plugins/declarations/spec/spec_helper.rb +5 -0
- data/plugins/document_search/Readme.md +14 -0
- data/plugins/document_search/features/find.feature +541 -0
- data/plugins/document_search/features/incremental_search.feature +351 -0
- data/plugins/document_search/features/replace.feature +178 -0
- data/plugins/document_search/features/step_definitions/find_steps.rb +16 -0
- data/plugins/document_search/features/support/env.rb +14 -0
- data/plugins/document_search/lib/document_search.rb +191 -0
- data/plugins/document_search/lib/document_search/commands.rb +307 -0
- data/plugins/document_search/lib/document_search/find_speedbar.rb +162 -0
- data/plugins/document_search/lib/document_search/incremental_search_speedbar.rb +70 -0
- data/plugins/document_search/lib/document_search/query_options.rb +21 -0
- data/plugins/document_search/plugin.rb +8 -0
- data/plugins/edit_view/features/align_assignment.feature +106 -0
- data/plugins/edit_view/features/case_change.feature +67 -0
- data/plugins/edit_view/features/cursor_navigation.feature +36 -0
- data/plugins/edit_view/features/cut_and_paste.feature +45 -0
- data/plugins/edit_view/features/grammar.feature +11 -0
- data/plugins/edit_view/features/indentation_commands.feature +49 -0
- data/plugins/edit_view/features/line_delimiter.feature +47 -0
- data/plugins/edit_view/features/multiple_notebooks.feature +52 -0
- data/plugins/edit_view/features/multiple_windows.feature +48 -0
- data/plugins/edit_view/features/new_tab.feature +11 -0
- data/plugins/edit_view/features/soft_tabs.feature +243 -0
- data/plugins/edit_view/features/sort_lines.feature +15 -0
- data/plugins/edit_view/features/step_definitions/editing_steps.rb +350 -0
- data/plugins/edit_view/features/step_definitions/grammar_steps.rb +4 -0
- data/plugins/edit_view/features/step_definitions/key_steps.rb +48 -0
- data/plugins/edit_view/features/step_definitions/notebook_steps.rb +59 -0
- data/plugins/edit_view/features/step_definitions/tab_steps.rb +113 -0
- data/plugins/edit_view/features/step_definitions/window_steps.rb +86 -0
- data/plugins/edit_view/features/support/env.rb +59 -0
- data/plugins/edit_view/features/switch_tabs.feature +106 -0
- data/plugins/edit_view/features/tabs.feature +146 -0
- data/plugins/edit_view/features/undo_and_redo.feature +73 -0
- data/plugins/edit_view/features/word_matching.feature +67 -0
- data/plugins/edit_view/lib/edit_view.rb +659 -0
- data/plugins/edit_view/lib/edit_view/actions/arrow_keys.rb +170 -0
- data/plugins/edit_view/lib/edit_view/actions/cmd_enter.rb +11 -0
- data/plugins/edit_view/lib/edit_view/actions/deletion.rb +40 -0
- data/plugins/edit_view/lib/edit_view/actions/esc.rb +15 -0
- data/plugins/edit_view/lib/edit_view/actions/tab.rb +70 -0
- data/plugins/edit_view/lib/edit_view/command.rb +14 -0
- data/plugins/edit_view/lib/edit_view/commands/align_assignment_command.rb +55 -0
- data/plugins/edit_view/lib/edit_view/commands/text_conversion_commands.rb +85 -0
- data/plugins/edit_view/lib/edit_view/document.rb +796 -0
- data/plugins/edit_view/lib/edit_view/document/command.rb +25 -0
- data/plugins/edit_view/lib/edit_view/document/controller.rb +43 -0
- data/plugins/edit_view/lib/edit_view/document/history.rb +41 -0
- data/plugins/edit_view/lib/edit_view/document/indentation.rb +40 -0
- data/plugins/edit_view/lib/edit_view/document/mirror.rb +42 -0
- data/plugins/edit_view/lib/edit_view/edit_tab.rb +59 -0
- data/plugins/edit_view/lib/edit_view/grammar.rb +58 -0
- data/plugins/edit_view/lib/edit_view/grammars/default.rb +10 -0
- data/plugins/edit_view/lib/edit_view/grammars/ruby.rb +10 -0
- data/plugins/edit_view/lib/edit_view/grammars/ruby_on_rails.rb +7 -0
- data/plugins/edit_view/lib/edit_view/info_speedbar.rb +98 -0
- data/plugins/edit_view/lib/edit_view/modified_tabs_checker.rb +35 -0
- data/plugins/edit_view/lib/edit_view/select_font_dialog.rb +45 -0
- data/plugins/edit_view/lib/edit_view/select_theme_dialog.rb +42 -0
- data/plugins/edit_view/lib/edit_view/tab_settings.rb +135 -0
- data/plugins/edit_view/plugin.rb +9 -0
- data/plugins/edit_view/spec/edit_view/document/indentation_spec.rb +112 -0
- data/plugins/edit_view/spec/edit_view/document_spec.rb +130 -0
- data/plugins/edit_view/spec/spec_helper.rb +5 -0
- data/plugins/edit_view_swt/lib/edit_view_swt.rb +621 -0
- data/plugins/edit_view_swt/lib/edit_view_swt/document.rb +224 -0
- data/plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb +50 -0
- data/plugins/edit_view_swt/lib/edit_view_swt/word_movement.rb +68 -0
- data/plugins/edit_view_swt/plugin.rb +9 -0
- data/plugins/edit_view_swt/spec/edit_view_swt/word_movement_spec.rb +29 -0
- data/plugins/edit_view_swt/spec/spec_helper.rb +5 -0
- data/plugins/encryption/encryption.rb +52 -0
- data/plugins/encryption/ezcrypto.rb +652 -0
- data/plugins/encryption/jarmor-1.1.jar +0 -0
- data/plugins/encryption/plugin.rb +9 -0
- data/plugins/execute_current_tab/lib/execute_current_tab.rb +68 -0
- data/plugins/execute_current_tab/plugin.rb +8 -0
- data/plugins/help/lib/help.rb +64 -0
- data/plugins/help/lib/help/help_tab.rb +11 -0
- data/plugins/help/lib/help/view_controller.rb +30 -0
- data/plugins/help/plugin.rb +9 -0
- data/plugins/help/views/default.css +31 -0
- data/plugins/help/views/index.html.erb +41 -0
- data/plugins/help/views/redcar_small_icon.png +0 -0
- data/plugins/html_view/assets/blueprint/ie.css +35 -0
- data/plugins/html_view/assets/blueprint/print.css +29 -0
- data/plugins/html_view/assets/blueprint/screen.css +257 -0
- data/plugins/html_view/assets/blueprint/src/forms.css +65 -0
- data/plugins/html_view/assets/blueprint/src/grid.css +281 -0
- data/plugins/html_view/assets/blueprint/src/grid.png +0 -0
- data/plugins/html_view/assets/blueprint/src/ie.css +76 -0
- data/plugins/html_view/assets/blueprint/src/print.css +85 -0
- data/plugins/html_view/assets/blueprint/src/reset.css +38 -0
- data/plugins/html_view/assets/blueprint/src/typography.css +106 -0
- data/plugins/html_view/assets/jquery-1.4.min.js +151 -0
- data/plugins/html_view/assets/json2.js +476 -0
- data/plugins/html_view/assets/redcar.css +44 -0
- data/plugins/html_view/features/browser_bar.feature +47 -0
- data/plugins/html_view/features/fixtures/other.html +1 -0
- data/plugins/html_view/features/fixtures/sample.html +1 -0
- data/plugins/html_view/features/step_definitions/html_view_steps.rb +64 -0
- data/plugins/html_view/features/step_definitions/web_view_steps.rb +12 -0
- data/plugins/html_view/features/support/env.rb +27 -0
- data/plugins/html_view/features/web_preview.feature +21 -0
- data/plugins/html_view/lib/html_controller.rb +50 -0
- data/plugins/html_view/lib/html_view.rb +170 -0
- data/plugins/html_view/lib/html_view/browser_bar.rb +82 -0
- data/plugins/html_view/lib/html_view/commands.rb +64 -0
- data/plugins/html_view/lib/html_view/default_controller.rb +23 -0
- data/plugins/html_view/lib/html_view/html_tab.rb +40 -0
- data/plugins/html_view/plugin.rb +13 -0
- data/plugins/html_view/views/default.css +117 -0
- data/plugins/html_view/views/index.html.erb +5 -0
- data/plugins/html_view/views/watermark-48.png +0 -0
- data/plugins/java/features/fixtures/lib/classes.jar +0 -0
- data/plugins/java/features/fixtures/test.java +0 -0
- data/plugins/java/features/support/env.rb +27 -0
- data/plugins/java/features/syntax_check_java.feature +86 -0
- data/plugins/java/lib/syntax_check/java.rb +86 -0
- data/plugins/java/plugin.rb +7 -0
- data/plugins/key_bindings/lib/key_bindings.rb +34 -0
- data/plugins/key_bindings/plugin.rb +8 -0
- data/plugins/key_bindings/spec/spec_helper.rb +5 -0
- data/plugins/line_tools/features/clear_line.feature +25 -0
- data/plugins/line_tools/features/kill_line.feature +25 -0
- data/plugins/line_tools/features/lower_text.feature +54 -0
- data/plugins/line_tools/features/raise_text.feature +50 -0
- data/plugins/line_tools/features/replace_line.feature +33 -0
- data/plugins/line_tools/features/step_definitions/line_tools_steps.rb +23 -0
- data/plugins/line_tools/features/support/env.rb +0 -0
- data/plugins/line_tools/features/trim_line.feature +73 -0
- data/plugins/line_tools/lib/line_tools.rb +217 -0
- data/plugins/line_tools/plugin.rb +9 -0
- data/plugins/macros/features/block_selection_in_macros.feature +48 -0
- data/plugins/macros/features/predictive_macros.feature +79 -0
- data/plugins/macros/features/record_and_run_macro.feature +87 -0
- data/plugins/macros/features/step_definitions/macro_steps.rb +11 -0
- data/plugins/macros/features/step_definitions/prediction_steps.rb +8 -0
- data/plugins/macros/features/support/env.rb +0 -0
- data/plugins/macros/lib/macros.rb +167 -0
- data/plugins/macros/lib/macros/action_sequence.rb +30 -0
- data/plugins/macros/lib/macros/commands.rb +108 -0
- data/plugins/macros/lib/macros/macro.rb +37 -0
- data/plugins/macros/lib/macros/manager_controller.rb +67 -0
- data/plugins/macros/lib/macros/predictive/document_controller.rb +69 -0
- data/plugins/macros/lib/macros/predictive/sequence_finder.rb +112 -0
- data/plugins/macros/plugin.rb +9 -0
- data/plugins/macros/spec/macros/predictive/sequence_finder_spec.rb +142 -0
- data/plugins/macros/spec/spec_helper.rb +6 -0
- data/plugins/macros/views/macro_manager.html.erb +92 -0
- data/plugins/my_plugin/lib/my_plugin.rb +47 -0
- data/plugins/my_plugin/plugin.rb +8 -0
- data/plugins/open_default_app/lib/open_default_app.rb +61 -0
- data/plugins/open_default_app/plugin.rb +8 -0
- data/plugins/open_default_app/screenshot.png +0 -0
- data/plugins/outline_view/features/outline_view.feature +79 -0
- data/plugins/outline_view/features/step_definitions/outline_steps.rb +45 -0
- data/plugins/outline_view/lib/outline_view.rb +66 -0
- data/plugins/outline_view/lib/outline_view/commands.rb +13 -0
- data/plugins/outline_view/plugin.rb +10 -0
- data/plugins/outline_view/spec/fixtures/some_project/javascript.js +10 -0
- data/plugins/outline_view/spec/fixtures/some_project/nothing_to_see.rb +0 -0
- data/plugins/outline_view/spec/fixtures/some_project/one_lonely_class.rb +2 -0
- data/plugins/outline_view/spec/fixtures/some_project/similar_names.rb +18 -0
- data/plugins/outline_view/spec/fixtures/some_project/something_fancy.rb +736 -0
- data/plugins/outline_view/spec/fixtures/some_project/trailing_space.rb +5 -0
- data/plugins/outline_view_swt/lib/outline_view_swt.rb +79 -0
- data/plugins/outline_view_swt/plugin.rb +7 -0
- data/plugins/pair_highlighter/lib/pair_highlighter.rb +34 -0
- data/plugins/pair_highlighter/lib/pair_highlighter/document_controller.rb +185 -0
- data/plugins/pair_highlighter/plugin.rb +9 -0
- data/plugins/plugin_manager_ui/lib/plugin_manager_ui.rb +122 -0
- data/plugins/plugin_manager_ui/plugin.rb +13 -0
- data/plugins/plugin_manager_ui/views/index.html.erb +62 -0
- data/plugins/project/features/close_directory_tree.feature +28 -0
- data/plugins/project/features/find_file.feature +119 -0
- data/plugins/project/features/highlight_focussed_tab.feature +53 -0
- data/plugins/project/features/move_and_rename_files.feature +25 -0
- data/plugins/project/features/open_and_save_files.feature +85 -0
- data/plugins/project/features/open_directory_tree.feature +93 -0
- data/plugins/project/features/refresh_directory_tree.feature +44 -0
- data/plugins/project/features/step_definitions/directory_steps.rb +35 -0
- data/plugins/project/features/step_definitions/drb_steps.rb +40 -0
- data/plugins/project/features/step_definitions/file_steps.rb +66 -0
- data/plugins/project/features/step_definitions/find_file_steps.rb +7 -0
- data/plugins/project/features/step_definitions/project_tree_steps.rb +7 -0
- data/plugins/project/features/sub_project.feature +15 -0
- data/plugins/project/features/support/env.rb +35 -0
- data/plugins/project/features/watch_for_modified_files.feature +109 -0
- data/plugins/project/lib/project.rb +266 -0
- data/plugins/project/lib/project/adapters/local.rb +82 -0
- data/plugins/project/lib/project/adapters/remote.rb +96 -0
- data/plugins/project/lib/project/adapters/remote_protocols/ftp.rb +93 -0
- data/plugins/project/lib/project/adapters/remote_protocols/protocol.rb +94 -0
- data/plugins/project/lib/project/adapters/remote_protocols/sftp.rb +181 -0
- data/plugins/project/lib/project/commands.rb +449 -0
- data/plugins/project/lib/project/dir_controller.rb +275 -0
- data/plugins/project/lib/project/dir_mirror.rb +176 -0
- data/plugins/project/lib/project/drb_service.rb +86 -0
- data/plugins/project/lib/project/file_list.rb +164 -0
- data/plugins/project/lib/project/file_mirror.rb +85 -0
- data/plugins/project/lib/project/find_file_dialog.rb +118 -0
- data/plugins/project/lib/project/find_recent_dialog.rb +30 -0
- data/plugins/project/lib/project/manager.rb +545 -0
- data/plugins/project/lib/project/project_tree_controller.rb +24 -0
- data/plugins/project/lib/project/recent.rb +64 -0
- data/plugins/project/lib/project/sub_project.rb +17 -0
- data/plugins/project/lib/project/support/recycle.js +2 -0
- data/plugins/project/lib/project/support/trash.rb +73 -0
- data/plugins/project/plugin.rb +11 -0
- data/plugins/project/spec/fixture_helper.rb +30 -0
- data/plugins/project/spec/project/adapters/remote_protocols/ftp_spec.rb +75 -0
- data/plugins/project/spec/project/adapters/remote_protocols/sftp_spec.rb +121 -0
- data/plugins/project/spec/project/adapters/remote_spec.rb +136 -0
- data/plugins/project/spec/project/dir_mirror_spec.rb +65 -0
- data/plugins/project/spec/project/file_list_spec.rb +151 -0
- data/plugins/project/spec/project/file_mirror_spec.rb +97 -0
- data/plugins/project/spec/spec_helper.rb +26 -0
- data/plugins/project/views/bulk_rename.html.erb +162 -0
- data/plugins/project_search/features/support/env.rb +6 -0
- data/plugins/project_search/features/word_search.feature +34 -0
- data/plugins/project_search/lib/project_search.rb +82 -0
- data/plugins/project_search/lib/project_search/binary_data_detector.rb +46 -0
- data/plugins/project_search/lib/project_search/commands.rb +50 -0
- data/plugins/project_search/lib/project_search/hit.rb +21 -0
- data/plugins/project_search/lib/project_search/images/spinner.gif +0 -0
- data/plugins/project_search/lib/project_search/lucene_index.rb +81 -0
- data/plugins/project_search/lib/project_search/lucene_refresh.rb +22 -0
- data/plugins/project_search/lib/project_search/project.rb +14 -0
- data/plugins/project_search/lib/project_search/query.rb +29 -0
- data/plugins/project_search/lib/project_search/stylesheets/style.css +279 -0
- data/plugins/project_search/lib/project_search/views/_file.html.erb +58 -0
- data/plugins/project_search/lib/project_search/views/index.html.erb +156 -0
- data/plugins/project_search/lib/project_search/word_search.rb +143 -0
- data/plugins/project_search/lib/project_search/word_search_controller.rb +219 -0
- data/plugins/project_search/plugin.rb +8 -0
- data/plugins/project_search/spec/fixtures/project/binary_file.bin +0 -0
- data/plugins/project_search/spec/fixtures/project/foo.txt +43 -0
- data/plugins/project_search/spec/fixtures/project/qux.rb +3 -0
- data/plugins/project_search/spec/project_search/binary_data_detector_spec.rb +24 -0
- data/plugins/project_search/spec/project_search/word_search_spec.rb +157 -0
- data/plugins/project_search/spec/spec_helper.rb +27 -0
- data/plugins/redcar/features/alter_font_size.feature +26 -0
- data/plugins/redcar/features/goto_line_command.feature +20 -0
- data/plugins/redcar/features/step_definitions/env.rb +5 -0
- data/plugins/redcar/features/step_definitions/font_steps.rb +34 -0
- data/plugins/redcar/features/text_editing.feature +34 -0
- data/plugins/redcar/features/text_navigation.feature +30 -0
- data/plugins/redcar/plugin.rb +17 -0
- data/plugins/redcar/redcar.rb +1097 -0
- data/plugins/redcar_debug/lib/redcar_debug.rb +91 -0
- data/plugins/redcar_debug/plugin.rb +8 -0
- data/plugins/redcar_debug/views/history.html.erb +34 -0
- data/plugins/redcar_debug/views/index.html.erb +36 -0
- data/plugins/repl/features/command_editing.feature +55 -0
- data/plugins/repl/features/command_history.feature +75 -0
- data/plugins/repl/features/step_definitions/repl_steps.rb +19 -0
- data/plugins/repl/features/support/env.rb +24 -0
- data/plugins/repl/features/support/fake_repl.rb +16 -0
- data/plugins/repl/lib/repl.rb +40 -0
- data/plugins/repl/lib/repl/repl_command.rb +20 -0
- data/plugins/repl/lib/repl/repl_mirror.rb +255 -0
- data/plugins/repl/lib/repl/repl_tab.rb +154 -0
- data/plugins/repl/plugin.rb +8 -0
- data/plugins/repl/spec/repl/repl_mirror_spec.rb +72 -0
- data/plugins/repl/spec/spec_helper.rb +5 -0
- data/plugins/repl_swt/lib/repl_swt.rb +7 -0
- data/plugins/repl_swt/lib/repl_swt/key_listener.rb +43 -0
- data/plugins/repl_swt/plugin.rb +8 -0
- data/plugins/ruby/features/fixtures/test.rb +0 -0
- data/plugins/ruby/features/support/env.rb +4 -0
- data/plugins/ruby/features/syntax_check_ruby.feature +26 -0
- data/plugins/ruby/lib/ruby.rb +35 -0
- data/plugins/ruby/lib/ruby/repl_mirror.rb +46 -0
- data/plugins/ruby/lib/ruby/syntax_checker.rb +30 -0
- data/plugins/ruby/plugin.rb +8 -0
- data/plugins/ruby/spec/ruby/repl_mirror_spec.rb +202 -0
- data/plugins/ruby/spec/spec_helper.rb +5 -0
- data/plugins/runnables/features/command_tree.feature +63 -0
- data/plugins/runnables/features/file_runner_input.feature +21 -0
- data/plugins/runnables/features/parameter_input.feature +43 -0
- data/plugins/runnables/features/run_alternate_command.feature +15 -0
- data/plugins/runnables/features/run_command_tab.feature +47 -0
- data/plugins/runnables/features/step_definitions/runnable_steps.rb +28 -0
- data/plugins/runnables/features/support/env.rb +124 -0
- data/plugins/runnables/lib/runnables.rb +180 -0
- data/plugins/runnables/lib/runnables/command_output_controller.rb +183 -0
- data/plugins/runnables/lib/runnables/commands.rb +82 -0
- data/plugins/runnables/lib/runnables/output_processor.rb +74 -0
- data/plugins/runnables/lib/runnables/running_process_checker.rb +34 -0
- data/plugins/runnables/lib/runnables/tree_mirror/nodes/runnable.rb +62 -0
- data/plugins/runnables/lib/runnables/tree_mirror/nodes/runnable_group.rb +45 -0
- data/plugins/runnables/lib/runnables/tree_mirror/nodes/runnable_type_group.rb +30 -0
- data/plugins/runnables/lib/runnables/tree_mirror/tree_controller.rb +36 -0
- data/plugins/runnables/lib/runnables/tree_mirror/tree_mirror.rb +66 -0
- data/plugins/runnables/plugin.rb +9 -0
- data/plugins/runnables/spec/runnables/output_processor_spec.rb +57 -0
- data/plugins/runnables/spec/spec_helper.rb +5 -0
- data/plugins/runnables/views/basic_ansi.css +34 -0
- data/plugins/runnables/views/color_tester.html +50 -0
- data/plugins/runnables/views/command_output.html.erb +32 -0
- data/plugins/runnables/views/default.css +79 -0
- data/plugins/runnables/views/indicator.gif +0 -0
- data/plugins/runnables/views/redcar_small_icon.png +0 -0
- data/plugins/runnables/views/reset.css +53 -0
- data/plugins/runnables/views/running_test.html +41 -0
- data/plugins/runnables/views/wedgeDown.png +0 -0
- data/plugins/runnables/views/wedgeRight.png +0 -0
- data/plugins/scm/lib/scm.rb +296 -0
- data/plugins/scm/lib/scm/commands.rb +48 -0
- data/plugins/scm/lib/scm/commit_mirror.rb +72 -0
- data/plugins/scm/lib/scm/diff_mirror.rb +31 -0
- data/plugins/scm/lib/scm/errors.rb +8 -0
- data/plugins/scm/lib/scm/model.rb +275 -0
- data/plugins/scm/lib/scm/scm_changes_controller.rb +107 -0
- data/plugins/scm/lib/scm/scm_changes_mirror.rb +51 -0
- data/plugins/scm/lib/scm/scm_changes_mirror/change.rb +63 -0
- data/plugins/scm/lib/scm/scm_changes_mirror/changes_node.rb +47 -0
- data/plugins/scm/lib/scm/scm_changes_mirror/drag_controller.rb +78 -0
- data/plugins/scm/lib/scm/scm_commits_controller.rb +49 -0
- data/plugins/scm/lib/scm/scm_commits_mirror.rb +36 -0
- data/plugins/scm/lib/scm/scm_commits_mirror/commit.rb +26 -0
- data/plugins/scm/lib/scm/scm_commits_mirror/commits_node.rb +38 -0
- data/plugins/scm/plugin.rb +8 -0
- data/plugins/scm/spec/spec_helper.rb +5 -0
- data/plugins/scm_git/lib/scm_git.rb +543 -0
- data/plugins/scm_git/lib/scm_git/change.rb +137 -0
- data/plugins/scm_git/lib/scm_git/commit.rb +18 -0
- data/plugins/scm_git/lib/scm_git/config_file.rb +31 -0
- data/plugins/scm_git/plugin.rb +7 -0
- data/plugins/scm_hg/lib/scm_hg.rb +30 -0
- data/plugins/scm_hg/plugin.rb +7 -0
- data/plugins/scm_svn/LICENSE +48 -0
- data/plugins/scm_svn/features/add_and_commit.feature +18 -0
- data/plugins/scm_svn/features/checkout.feature +5 -0
- data/plugins/scm_svn/features/edit_and_index.feature +12 -0
- data/plugins/scm_svn/features/ignore_files.feature +14 -0
- data/plugins/scm_svn/features/merge.feature +34 -0
- data/plugins/scm_svn/features/resolve_conflict.feature +23 -0
- data/plugins/scm_svn/features/revert_and_delete.feature +21 -0
- data/plugins/scm_svn/features/step_definitions/branch_and_merge_steps.rb +27 -0
- data/plugins/scm_svn/features/step_definitions/checkout_steps.rb +25 -0
- data/plugins/scm_svn/features/step_definitions/edit_and_index_steps.rb +50 -0
- data/plugins/scm_svn/features/step_definitions/scm_svn_steps.rb +57 -0
- data/plugins/scm_svn/features/support/env.rb +71 -0
- data/plugins/scm_svn/features/switch_branches.feature +53 -0
- data/plugins/scm_svn/features/update.feature +16 -0
- data/plugins/scm_svn/lib/scm_svn.rb +445 -0
- data/plugins/scm_svn/lib/scm_svn/change.rb +116 -0
- data/plugins/scm_svn/plugin.rb +7 -0
- data/plugins/snippets/features/snippet_indenting.feature +87 -0
- data/plugins/snippets/features/snippets.feature +398 -0
- data/plugins/snippets/features/step_definitions/snippet_steps.rb +16 -0
- data/plugins/snippets/features/support/env.rb +1 -0
- data/plugins/snippets/lib/snippets.rb +111 -0
- data/plugins/snippets/lib/snippets/document_controller.rb +591 -0
- data/plugins/snippets/lib/snippets/explorer.rb +48 -0
- data/plugins/snippets/lib/snippets/tab_handler.rb +117 -0
- data/plugins/snippets/plugin.rb +9 -0
- data/plugins/splash_screen/plugin.rb +8 -0
- data/plugins/splash_screen/splash_screen.rb +62 -0
- data/plugins/strip_trailing_spaces/features/fixtures/test.txt +3 -0
- data/plugins/strip_trailing_spaces/features/strip_trailing_spaces.feature +34 -0
- data/plugins/strip_trailing_spaces/lib/strip_trailing_spaces.rb +60 -0
- data/plugins/strip_trailing_spaces/plugin.rb +8 -0
- data/plugins/syntax_check/README +6 -0
- data/plugins/syntax_check/features/step_definitions/syntax_check_steps.rb +11 -0
- data/plugins/syntax_check/features/support/env.rb +3 -0
- data/plugins/syntax_check/lib/syntax_check.rb +100 -0
- data/plugins/syntax_check/lib/syntax_check/annotation.rb +61 -0
- data/plugins/syntax_check/lib/syntax_check/checker.rb +47 -0
- data/plugins/syntax_check/lib/syntax_check/error.rb +24 -0
- data/plugins/syntax_check/plugin.rb +7 -0
- data/plugins/task_manager/lib/task_manager.rb +30 -0
- data/plugins/task_manager/plugin.rb +11 -0
- data/plugins/task_manager/views/index.html.erb +70 -0
- data/plugins/test_runner/lib/test_runner.rb +40 -0
- data/plugins/test_runner/lib/test_runner/jasmine_test_runner.rb +15 -0
- data/plugins/test_runner/lib/test_runner/rspec_runner.rb +20 -0
- data/plugins/test_runner/lib/test_runner/run_test_command.rb +63 -0
- data/plugins/test_runner/lib/test_runner/runnable_test_runner.rb +42 -0
- data/plugins/test_runner/plugin.rb +8 -0
- data/plugins/test_runner/spec/run_test_command_spec.rb +51 -0
- data/plugins/test_runner/spec/spec_helper.rb +5 -0
- data/plugins/textmate/features/bundle_tree.feature +23 -0
- data/plugins/textmate/features/step_definitions/tree_steps.rb +57 -0
- data/plugins/textmate/features/support/env.rb +19 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If.tmSnippet +18 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If__Else.tmSnippet +20 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Include.tmSnippet +16 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Loop.tmSnippet +18 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Unless.tmSnippet +18 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Var.tmSnippet +16 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/next_If__Else.tmSnippet +20 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/info.plist +26 -0
- data/plugins/textmate/lib/textmate.rb +202 -0
- data/plugins/textmate/lib/textmate/bundle.rb +100 -0
- data/plugins/textmate/lib/textmate/commands.rb +79 -0
- data/plugins/textmate/lib/textmate/environment.rb +76 -0
- data/plugins/textmate/lib/textmate/plist.rb +80 -0
- data/plugins/textmate/lib/textmate/preference.rb +125 -0
- data/plugins/textmate/lib/textmate/snippet.rb +47 -0
- data/plugins/textmate/lib/textmate/tree_mirror.rb +206 -0
- data/plugins/textmate/plugin.rb +8 -0
- data/plugins/textmate/views/installed_bundles.html.erb +24 -0
- data/plugins/todo_list/README.md +22 -0
- data/plugins/todo_list/features/support/env.rb +8 -0
- data/plugins/todo_list/features/todo_list.feature +26 -0
- data/plugins/todo_list/lib/todo_list.rb +49 -0
- data/plugins/todo_list/lib/todo_list/file_parser.rb +58 -0
- data/plugins/todo_list/lib/todo_list/todo_controller.rb +99 -0
- data/plugins/todo_list/plugin.rb +11 -0
- data/plugins/todo_list/spec/fixtures/project/FIXME.file +3 -0
- data/plugins/todo_list/spec/fixtures/project/NOTE.ignored.file +1 -0
- data/plugins/todo_list/spec/fixtures/project/OPTIMIZE_colon.file +1 -0
- data/plugins/todo_list/spec/fixtures/project/XXX.ignored +1 -0
- data/plugins/todo_list/spec/fixtures/project/ignored_directory/TODO.file +2 -0
- data/plugins/todo_list/spec/fixtures/settings.rb +11 -0
- data/plugins/todo_list/spec/spec_helper.rb +6 -0
- data/plugins/todo_list/spec/todo_list/file_parser_spec.rb +35 -0
- data/plugins/todo_list/views/default.css +15 -0
- data/plugins/todo_list/views/index.html.erb +19 -0
- data/plugins/todo_list/views/redcar_small_icon.png +0 -0
- data/plugins/tree_view_swt/lib/tree_view_swt.rb +496 -0
- data/plugins/tree_view_swt/plugin.rb +9 -0
- data/plugins/web_bookmarks/Screenshot.png +0 -0
- data/plugins/web_bookmarks/features/bookmark.feature +37 -0
- data/plugins/web_bookmarks/features/fixtures/other.html +1 -0
- data/plugins/web_bookmarks/features/fixtures/sample.html +1 -0
- data/plugins/web_bookmarks/features/step_definitions/web_steps.rb +4 -0
- data/plugins/web_bookmarks/features/support/env.rb +26 -0
- data/plugins/web_bookmarks/lib/web_bookmarks.rb +49 -0
- data/plugins/web_bookmarks/lib/web_bookmarks/bookmark.rb +52 -0
- data/plugins/web_bookmarks/lib/web_bookmarks/commands.rb +65 -0
- data/plugins/web_bookmarks/lib/web_bookmarks/tree.rb +74 -0
- data/plugins/web_bookmarks/plugin.rb +10 -0
- metadata +937 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
|
|
2
|
+
When /^I do nothing$/ do
|
|
3
|
+
end
|
|
4
|
+
|
|
5
|
+
Given /^there is an edit tab containing "([^\"]*)"$/ do |contents|
|
|
6
|
+
tab = Redcar::Top::OpenNewEditTabCommand.new.run
|
|
7
|
+
contents = eval(contents.inspect.gsub("\\\\", "\\"))
|
|
8
|
+
cursor_offset = (contents =~ /<c>/)
|
|
9
|
+
contents = contents.gsub("<c>", "")
|
|
10
|
+
tab.edit_view.document.text = contents
|
|
11
|
+
if cursor_offset
|
|
12
|
+
tab.edit_view.document.cursor_offset = cursor_offset
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
When /^I open a new edit tab$/ do
|
|
17
|
+
tab = Redcar::Top::OpenNewEditTabCommand.new.run
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
When /^I open a new edit tab titled "(.*)"$/ do |title|
|
|
21
|
+
tab = Redcar::Top::OpenNewEditTabCommand.new.run
|
|
22
|
+
tab.title = title
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
When /^I close the focussed tab$/ do
|
|
26
|
+
Redcar::Application::CloseTabCommand.new.run
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
When /^the edit tab updates its contents$/ do
|
|
30
|
+
implicit_edit_view.check_for_updated_document
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
When /I switch (up|down) a tab/ do |type|
|
|
34
|
+
case type
|
|
35
|
+
when "down"
|
|
36
|
+
Redcar::Application::SwitchTabDownCommand.new.run
|
|
37
|
+
when "up"
|
|
38
|
+
Redcar::Application::SwitchTabUpCommand.new.run
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
When /I move (up|down) a tab/ do |type|
|
|
43
|
+
case type
|
|
44
|
+
when "down"
|
|
45
|
+
Redcar::Application::MoveTabDownCommand.new.run
|
|
46
|
+
when "up"
|
|
47
|
+
Redcar::Application::MoveTabUpCommand.new.run
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
Then /^there should be (one|\d+) (.*) tabs?$/ do |num, tab_type|
|
|
52
|
+
if num == "one"
|
|
53
|
+
num = 1
|
|
54
|
+
else
|
|
55
|
+
num = num.to_i
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# in the model
|
|
59
|
+
tabs = Redcar.app.focussed_window.notebooks.map {|nb| nb.tabs }.flatten
|
|
60
|
+
tabs.length.should == num
|
|
61
|
+
|
|
62
|
+
# in the GUI
|
|
63
|
+
case tab_type
|
|
64
|
+
when "edit"
|
|
65
|
+
tab_class = Redcar::EditTab
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
tabs = get_tabs
|
|
69
|
+
tabs.length.should == num
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
Then /^the edit tab should have the focus$/ do
|
|
73
|
+
implicit_edit_view.controller.mate_text.get_text_widget.is_focus_control?.should be_true
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
Then /^there should be no open tabs$/ do
|
|
77
|
+
get_tab_folder.getItems.to_a.length.should == 0
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
Then /^the tab should be focussed within the notebook$/ do
|
|
81
|
+
tab_folder = get_tab_folder
|
|
82
|
+
tab_folder.get_selection.should == tab_folder.getItems.to_a.first
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
Then /^the tab should have the keyboard focus$/ do
|
|
86
|
+
tab = get_tab(get_tab_folder)
|
|
87
|
+
implicit_edit_view.controller.is_current?.should be_true
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
Then /^I should (not )?see "(.*)" in the edit tab$/ do |bool, content|
|
|
91
|
+
content = content.gsub("\\n", "\n")
|
|
92
|
+
bool = !bool
|
|
93
|
+
matcher = bool ? be_true : be_false
|
|
94
|
+
implicit_edit_view.document.to_s.include?(content).should matcher
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
Then /^my active tab should be "([^"]*)"$/ do |name|
|
|
98
|
+
focussed_tab.title.should == name
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
Then /^my active tab should have an "([^"]*)" icon$/ do |arg1|
|
|
102
|
+
focussed_tab.icon.should == :"#{arg1}"
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
Then /^the tab should (not )?have annotations$/ do |negated|
|
|
106
|
+
annotations = implicit_edit_view.annotations
|
|
107
|
+
negated ? (annotations.should be_empty) : (annotations.should_not be_empty)
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
Then /^the tab should (not )?have an annotation on line (\d+)$/ do |negated, num|
|
|
111
|
+
annotations = implicit_edit_view.annotations(:line => num.to_i)
|
|
112
|
+
negated ? (annotations.should be_empty) : (annotations.should_not be_empty)
|
|
113
|
+
end
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
Then /^there should be (no|one|\d+) windows?$/ do |num|
|
|
2
|
+
case num
|
|
3
|
+
when "no"
|
|
4
|
+
num = 0
|
|
5
|
+
when "one"
|
|
6
|
+
num = 1
|
|
7
|
+
else
|
|
8
|
+
num = num.to_i
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# in the model
|
|
12
|
+
Redcar.app.windows.length.should == num
|
|
13
|
+
|
|
14
|
+
# in the gui
|
|
15
|
+
display = Swt::Widgets::Display.get_current
|
|
16
|
+
shells = display.get_shells.to_a
|
|
17
|
+
|
|
18
|
+
# on OSX there is always an invisible window
|
|
19
|
+
diff = Redcar.platform == :osx ? 1 : 0
|
|
20
|
+
|
|
21
|
+
shells.length.should == num + diff
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
When /I open a new window(?: with title "(.*)")?/ do |title|
|
|
25
|
+
Redcar::Application::OpenNewWindowCommand.new(title).run
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
When /^I maximize the window size$/ do
|
|
29
|
+
Redcar.app.focussed_window.controller.shell.maximized = true
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
When /^I restore the window size$/ do
|
|
33
|
+
Redcar.app.focussed_window.controller.shell.maximized = false
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
When /I close the window(?: "(.*)")?( with a command| through the gui)?/ do |title, how|
|
|
37
|
+
if title
|
|
38
|
+
win = Redcar.app.windows.detect{|win| win.title == title }
|
|
39
|
+
else
|
|
40
|
+
win = Redcar.app.focussed_window
|
|
41
|
+
end
|
|
42
|
+
if how =~ /command/
|
|
43
|
+
Redcar::Application::CloseWindowCommand.new(win).run
|
|
44
|
+
else
|
|
45
|
+
FakeEvent.new(Swt::SWT::Close, win.controller.shell)
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
When /^I focus the window "([^\"]*)" with a command$/ do |title|
|
|
50
|
+
win = Redcar.app.windows.detect{|win| win.title == title }
|
|
51
|
+
win.focus
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
When /^I focus the window "([^\"]*)" through the gui$/ do |title|
|
|
55
|
+
win = Redcar.app.windows.detect{|win| win.title == title }
|
|
56
|
+
FakeEvent.new(Swt::SWT::Activate, win.controller.shell)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
When /^I focus the working directory window through the gui$/ do
|
|
60
|
+
When "I focus the window \"#{File.basename Dir.pwd}\" through the gui"
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
Then /^the window should be titled "([^\"]*)"$/ do |title|
|
|
64
|
+
windows = Redcar.app.windows
|
|
65
|
+
windows.length.should == 1
|
|
66
|
+
|
|
67
|
+
# in the model
|
|
68
|
+
windows.first.title.should == title
|
|
69
|
+
# in the gui
|
|
70
|
+
windows.first.controller.shell.text.should == title
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
Then /the window "(.*)" should have (\d+) tabs?/ do |win_title, tab_num|
|
|
74
|
+
tab_num = tab_num.to_i
|
|
75
|
+
|
|
76
|
+
# in the model
|
|
77
|
+
Redcar.app.windows.detect{|win| win.title == win_title }.notebooks.map{|nb| nb.tabs}.flatten.length.should == tab_num
|
|
78
|
+
|
|
79
|
+
# in the GUI
|
|
80
|
+
display = Swt::Widgets::Display.get_current
|
|
81
|
+
shells = display.get_shells.to_a
|
|
82
|
+
shell = shells.detect {|s| s.text == win_title }
|
|
83
|
+
items = get_tab_folders(shell).map{|f| f.getItems.to_a}.flatten
|
|
84
|
+
|
|
85
|
+
items.map {|i| model_tab_for_item(i)}.length.should == tab_num
|
|
86
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
|
|
2
|
+
module SwtTabHelpers
|
|
3
|
+
def hide_toolbar
|
|
4
|
+
Redcar.app.show_toolbar = false
|
|
5
|
+
Redcar.app.refresh_toolbar!
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
def get_tab_folders(shell=active_shell)
|
|
9
|
+
hide_toolbar
|
|
10
|
+
right_composite = shell.children.to_a.last
|
|
11
|
+
notebook_sash_form = right_composite.children.to_a[0]
|
|
12
|
+
tab_folders = notebook_sash_form.children.to_a.select do |c|
|
|
13
|
+
c.class == Java::OrgEclipseSwtCustom::CTabFolder
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def get_tab_folder
|
|
18
|
+
get_tab_folders.length.should == 1
|
|
19
|
+
get_tab_folders.first
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def get_browser_contents
|
|
23
|
+
live_document = "document.getElementsByTagName('html')[0].innerHTML"
|
|
24
|
+
r = focussed_tab.html_view.controller.execute("return #{live_document};").join('')
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def get_tab(tab_folder)
|
|
28
|
+
item1 = tab_folder.getItems.to_a.first
|
|
29
|
+
tab = Redcar.app.windows.first.notebooks.map{|n| n.tabs}.flatten.detect{|t| t.controller.item == item1}
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def focussed_tab
|
|
33
|
+
# In case the focussed tab on the focussed window's notebook is empty, try another window
|
|
34
|
+
Redcar.app.focussed_window.focussed_notebook.focussed_tab or Redcar.app.windows.map {|w| w.focussed_notebook.focussed_tab}.first
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def get_tabs
|
|
38
|
+
items = get_tab_folders.map{|f| f.getItems.to_a}.flatten
|
|
39
|
+
items.map {|i| model_tab_for_item(i)}
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def model_tab_for_item(item)
|
|
43
|
+
model_tabs.detect {|t| t.controller.item == item}
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def model_tabs
|
|
47
|
+
Redcar.app.windows.first.notebooks.map{|n| n.tabs}.flatten
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
World(SwtTabHelpers)
|
|
53
|
+
|
|
54
|
+
def putsall
|
|
55
|
+
p :all
|
|
56
|
+
p Redcar.app.windows.first.notebooks
|
|
57
|
+
p Redcar.app.windows.first.notebooks.first.tabs
|
|
58
|
+
p Redcar.app.windows.first.notebooks.last.tabs
|
|
59
|
+
end
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
Feature: Switch and move tabs within a notebook
|
|
2
|
+
|
|
3
|
+
Scenario: Switch tab down
|
|
4
|
+
When I open a new edit tab
|
|
5
|
+
And I replace the contents with "Anne Boleyn"
|
|
6
|
+
And I open a new edit tab
|
|
7
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
8
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
9
|
+
And I switch down a tab
|
|
10
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
11
|
+
|
|
12
|
+
Scenario: Switching tabs down will wrap
|
|
13
|
+
When I open a new edit tab
|
|
14
|
+
And I replace the contents with "Anne Boleyn"
|
|
15
|
+
And I open a new edit tab
|
|
16
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
17
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
18
|
+
And I switch down a tab
|
|
19
|
+
And I switch down a tab
|
|
20
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
21
|
+
|
|
22
|
+
Scenario: Switch tab up
|
|
23
|
+
When I open a new edit tab
|
|
24
|
+
And I replace the contents with "Anne Boleyn"
|
|
25
|
+
And I open a new edit tab
|
|
26
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
27
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
28
|
+
And I switch down a tab
|
|
29
|
+
And I switch up a tab
|
|
30
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
31
|
+
|
|
32
|
+
Scenario: Switching tabs up will wrap
|
|
33
|
+
When I open a new edit tab
|
|
34
|
+
And I replace the contents with "Anne Boleyn"
|
|
35
|
+
And I open a new edit tab
|
|
36
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
37
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
38
|
+
And I switch up a tab
|
|
39
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
40
|
+
|
|
41
|
+
Scenario: Switch notebooks
|
|
42
|
+
When I open a new edit tab
|
|
43
|
+
And I replace the contents with "Anne Boleyn"
|
|
44
|
+
And I make a new notebook
|
|
45
|
+
When I open a new edit tab
|
|
46
|
+
And I replace the contents with "Scarlett"
|
|
47
|
+
And I move the tab to the other notebook
|
|
48
|
+
When I switch notebooks
|
|
49
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
50
|
+
|
|
51
|
+
Scenario: Move tab up
|
|
52
|
+
When I open a new edit tab
|
|
53
|
+
And I replace the contents with "Anne Boleyn"
|
|
54
|
+
And I open a new edit tab
|
|
55
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
56
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
57
|
+
And I switch down a tab
|
|
58
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
59
|
+
And I move up a tab
|
|
60
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
61
|
+
And I switch down a tab
|
|
62
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
Scenario: Moving tabs up will wrap
|
|
66
|
+
When I open a new edit tab
|
|
67
|
+
And I replace the contents with "Anne Boleyn"
|
|
68
|
+
And I open a new edit tab
|
|
69
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
70
|
+
And I open a new edit tab
|
|
71
|
+
And I replace the contents with "Catherine of Aragon"
|
|
72
|
+
Then I should see "Catherine of Aragon" in the edit tab
|
|
73
|
+
And I move up a tab
|
|
74
|
+
And I move up a tab
|
|
75
|
+
And I move up a tab
|
|
76
|
+
And I move up a tab
|
|
77
|
+
And I switch up a tab
|
|
78
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
79
|
+
|
|
80
|
+
Scenario: Move tab down
|
|
81
|
+
When I open a new edit tab titled "Anne"
|
|
82
|
+
And I replace the contents with "Anne Boleyn"
|
|
83
|
+
And I open a new edit tab titled "Betty"
|
|
84
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
85
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
86
|
+
And I move down a tab
|
|
87
|
+
Then I should see "Elizabeth Woodville" in the edit tab
|
|
88
|
+
And I switch up a tab
|
|
89
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
90
|
+
|
|
91
|
+
Scenario: Moving tabs down will wrap
|
|
92
|
+
When I open a new edit tab
|
|
93
|
+
And I replace the contents with "Anne Boleyn"
|
|
94
|
+
And I open a new edit tab
|
|
95
|
+
And I replace the contents with "Elizabeth Woodville"
|
|
96
|
+
And I open a new edit tab
|
|
97
|
+
And I replace the contents with "Catherine of Aragon"
|
|
98
|
+
Then I should see "Catherine of Aragon" in the edit tab
|
|
99
|
+
And I move down a tab
|
|
100
|
+
And I move down a tab
|
|
101
|
+
And I move down a tab
|
|
102
|
+
And I move down a tab
|
|
103
|
+
And I switch down a tab
|
|
104
|
+
Then I should see "Anne Boleyn" in the edit tab
|
|
105
|
+
|
|
106
|
+
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
Feature: Insert a tab
|
|
2
|
+
|
|
3
|
+
Scenario: Inserts hard tab at the start of a line
|
|
4
|
+
When I open a new edit tab
|
|
5
|
+
And tabs are hard
|
|
6
|
+
And I press the Tab key in the edit tab
|
|
7
|
+
Then the contents of the edit tab should be "\t"
|
|
8
|
+
|
|
9
|
+
Scenario: Inserts hard tab at the end of a line
|
|
10
|
+
When I open a new edit tab
|
|
11
|
+
And tabs are hard
|
|
12
|
+
And I replace the contents with "Hacker"
|
|
13
|
+
And I move the cursor to 6
|
|
14
|
+
And I press the Tab key in the edit tab
|
|
15
|
+
Then the contents of the edit tab should be "Hacker\t"
|
|
16
|
+
|
|
17
|
+
Scenario: Inserts 2 space soft tab at the start of a line
|
|
18
|
+
When I open a new edit tab
|
|
19
|
+
And tabs are soft, 2 spaces
|
|
20
|
+
And I press the Tab key in the edit tab
|
|
21
|
+
Then the contents of the edit tab should be " "
|
|
22
|
+
|
|
23
|
+
Scenario: Inserts 2 space soft tab at the end of a line
|
|
24
|
+
When I open a new edit tab
|
|
25
|
+
And tabs are soft, 2 spaces
|
|
26
|
+
And I replace the contents with "Hacker"
|
|
27
|
+
And I move the cursor to 6
|
|
28
|
+
And I press the Tab key in the edit tab
|
|
29
|
+
Then the contents of the edit tab should be "Hacker "
|
|
30
|
+
|
|
31
|
+
Scenario: Inserts 4 space soft tab at the start of a line
|
|
32
|
+
When I open a new edit tab
|
|
33
|
+
And tabs are soft, 4 spaces
|
|
34
|
+
And I press the Tab key in the edit tab
|
|
35
|
+
Then the contents of the edit tab should be " "
|
|
36
|
+
|
|
37
|
+
Scenario: Inserts 4 space soft tab at the end of a line
|
|
38
|
+
When I open a new edit tab
|
|
39
|
+
And tabs are soft, 4 spaces
|
|
40
|
+
And I replace the contents with "Hacker"
|
|
41
|
+
And I move the cursor to 6
|
|
42
|
+
And I press the Tab key in the edit tab
|
|
43
|
+
Then the contents of the edit tab should be "Hacker "
|
|
44
|
+
|
|
45
|
+
Scenario: Inserts soft tabs correctly if there is selected text
|
|
46
|
+
When I open a new edit tab
|
|
47
|
+
And tabs are soft, 4 spaces
|
|
48
|
+
And I replace the contents with "Ha"
|
|
49
|
+
And I move the cursor to 0
|
|
50
|
+
And I press Shift+Right key in the edit tab
|
|
51
|
+
And I press Shift+Right key in the edit tab
|
|
52
|
+
And I press the Tab key in the edit tab
|
|
53
|
+
Then the contents of the edit tab should be " "
|
|
54
|
+
|
|
55
|
+
Scenario: Inserts hard tabs correctly if there is selected text
|
|
56
|
+
When I open a new edit tab
|
|
57
|
+
And tabs are hard
|
|
58
|
+
And I replace the contents with "Ha"
|
|
59
|
+
And I move the cursor to 0
|
|
60
|
+
And I press Shift+Right key in the edit tab
|
|
61
|
+
And I press Shift+Right key in the edit tab
|
|
62
|
+
And I press the Tab key in the edit tab
|
|
63
|
+
Then the contents of the edit tab should be "\t"
|
|
64
|
+
|
|
65
|
+
Scenario: Inserts soft tabs correctly if there is selected text that covers a tab
|
|
66
|
+
When I open a new edit tab
|
|
67
|
+
And tabs are soft, 4 spaces
|
|
68
|
+
And I replace the contents with "H\t"
|
|
69
|
+
And I move the cursor to 0
|
|
70
|
+
And I press Shift+Right key in the edit tab
|
|
71
|
+
And I press Shift+Right key in the edit tab
|
|
72
|
+
And I press the Tab key in the edit tab
|
|
73
|
+
Then the contents of the edit tab should be " "
|
|
74
|
+
|
|
75
|
+
Scenario: Inserts 4 space soft tab at the end of a line, with a tab character
|
|
76
|
+
When I open a new edit tab
|
|
77
|
+
And tabs are soft, 4 spaces
|
|
78
|
+
And I replace the contents with "\tHacker"
|
|
79
|
+
And I move the cursor to 7
|
|
80
|
+
And I press the Tab key in the edit tab
|
|
81
|
+
Then the contents of the edit tab should be "\tHacker "
|
|
82
|
+
|
|
83
|
+
@block_selection
|
|
84
|
+
Scenario: In block selection mode inserts 4 space soft tab on 1 line
|
|
85
|
+
When I open a new edit tab
|
|
86
|
+
And tabs are soft, 4 spaces
|
|
87
|
+
And I replace the contents with "Jim\nHacker"
|
|
88
|
+
And I block select from 0 to 0
|
|
89
|
+
And I press the Tab key in the edit tab
|
|
90
|
+
Then the contents of the edit tab should be " Jim\nHacker"
|
|
91
|
+
And the selection range should be from 4 to 4
|
|
92
|
+
|
|
93
|
+
@block_selection
|
|
94
|
+
Scenario: In block selection mode inserts 4 space soft tab on 2 lines
|
|
95
|
+
When I open a new edit tab
|
|
96
|
+
And tabs are soft, 4 spaces
|
|
97
|
+
And I replace the contents with "Jim\nHacker"
|
|
98
|
+
And I block select from 0 to 4
|
|
99
|
+
And I press the Tab key in the edit tab
|
|
100
|
+
Then the contents of the edit tab should be " Jim\n Hacker"
|
|
101
|
+
And the selection range should be from 4 to 12
|
|
102
|
+
|
|
103
|
+
@block_selection
|
|
104
|
+
Scenario: In block selection mode inserts 4 space soft tab on 3 lines
|
|
105
|
+
When I open a new edit tab
|
|
106
|
+
And tabs are soft, 4 spaces
|
|
107
|
+
And I replace the contents with "Jim\nHacker\nMP"
|
|
108
|
+
And I block select from 0 to 11
|
|
109
|
+
And I press the Tab key in the edit tab
|
|
110
|
+
Then the contents of the edit tab should be " Jim\n Hacker\n MP"
|
|
111
|
+
And the selection range should be from 4 to 23
|
|
112
|
+
|
|
113
|
+
@block_selection
|
|
114
|
+
Scenario: In block selection mode inserts 4 space soft tab overwriting text on 1 line
|
|
115
|
+
When I open a new edit tab
|
|
116
|
+
And tabs are soft, 4 spaces
|
|
117
|
+
And I replace the contents with "Jim\nHacker"
|
|
118
|
+
And I block select from 0 to 2
|
|
119
|
+
And I press the Tab key in the edit tab
|
|
120
|
+
Then the contents of the edit tab should be " m\nHacker"
|
|
121
|
+
And the selection range should be from 4 to 4
|
|
122
|
+
|
|
123
|
+
@block_selection
|
|
124
|
+
Scenario: In block selection mode inserts 4 space soft tab overwriting text on 2 lines
|
|
125
|
+
When I open a new edit tab
|
|
126
|
+
And tabs are soft, 4 spaces
|
|
127
|
+
And I replace the contents with "Jim\nHacker"
|
|
128
|
+
And I block select from 0 to 6
|
|
129
|
+
And I press the Tab key in the edit tab
|
|
130
|
+
Then the contents of the edit tab should be " m\n cker"
|
|
131
|
+
And the selection range should be from 4 to 10
|
|
132
|
+
|
|
133
|
+
@block_selection
|
|
134
|
+
Scenario: In block selection mode inserts 4 space soft tab overwriting text on 3 lines
|
|
135
|
+
When I open a new edit tab
|
|
136
|
+
And tabs are soft, 4 spaces
|
|
137
|
+
And I replace the contents with "Jim\nHacker\nMP"
|
|
138
|
+
And I block select from 0 to 13
|
|
139
|
+
And I press the Tab key in the edit tab
|
|
140
|
+
Then the contents of the edit tab should be " m\n cker\n "
|
|
141
|
+
And the selection range should be from 4 to 19
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
|