redcar 0.3.5 → 0.3.6
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +28 -0
- data/README.md +7 -0
- data/ROADMAP.md +11 -1
- data/Rakefile +61 -2
- data/bin/redcar +2 -1
- data/lib/redcar.rb +4 -3
- data/lib/redcar/installer.rb +3 -1
- data/lib/redcar/runner.rb +1 -1
- data/lib/redcar/usage.rb +4 -7
- data/lib/redcar_quick_start.rb +39 -5
- data/plugins/application/features/step_definitions/tree_steps.rb +6 -0
- data/plugins/application/features/support/env.rb +2 -6
- data/plugins/application/icons/redcar_icon_beta_dev.png +0 -0
- data/plugins/application/lib/application/command/executor.rb +8 -0
- data/plugins/application/lib/application/dialog.rb +25 -2
- data/plugins/application/lib/application/notebook.rb +4 -0
- data/plugins/application/lib/application/window.rb +4 -0
- data/plugins/application_swt/lib/application_swt.rb +2 -0
- data/plugins/application_swt/lib/application_swt/dialog_adapter.rb +28 -1
- data/plugins/application_swt/lib/application_swt/menu.rb +4 -0
- data/plugins/application_swt/lib/application_swt/menu/binding_translator.rb +4 -0
- data/plugins/application_swt/lib/application_swt/notebook.rb +22 -1
- 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/swt_wrapper.rb +14 -0
- data/plugins/application_swt/lib/application_swt/tab.rb +28 -6
- data/plugins/application_swt/lib/application_swt/window.rb +88 -43
- data/plugins/application_swt/spec/application_swt/menu/binding_translator_spec.rb +11 -0
- data/plugins/application_swt/spec/spec_helper.rb +1 -1
- data/plugins/auto_completer/lib/auto_completer.rb +3 -20
- data/plugins/auto_pairer/lib/auto_pairer/document_controller.rb +1 -1
- data/plugins/declarations/lib/declarations/parser.rb +2 -2
- data/plugins/declarations/spec/spec_helper.rb +1 -0
- data/plugins/edit_view/features/step_definitions/notebook_steps.rb +3 -3
- data/plugins/edit_view/features/step_definitions/window_steps.rb +24 -9
- data/plugins/edit_view/features/support/env.rb +11 -9
- data/plugins/edit_view/lib/edit_view.rb +106 -6
- data/plugins/edit_view/lib/edit_view/info_speedbar.rb +32 -3
- data/plugins/edit_view/lib/edit_view/select_font_dialog.rb +39 -0
- data/plugins/edit_view/lib/edit_view/select_theme_dialog.rb +34 -0
- data/plugins/edit_view/lib/edit_view/tab_settings.rb +103 -8
- data/plugins/edit_view_swt/lib/edit_view_swt.rb +40 -3
- data/plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb +1 -1
- data/plugins/execute_current_tab/lib/execute_current_tab.rb +15 -6
- data/plugins/project/features/open_directory_tree.feature +10 -0
- data/plugins/project/lib/project.rb +10 -8
- data/plugins/project/lib/project/dir_mirror.rb +6 -5
- data/plugins/project/lib/project/drb_service.rb +16 -0
- data/plugins/project/lib/project/manager.rb +31 -5
- data/plugins/redcar/redcar.rb +115 -19
- data/plugins/tree_view_swt/lib/tree_view_swt.rb +15 -0
- data/textmate/Bundles/Cucumber.tmbundle/Preferences/Cucumber_Plain_Text_Feature_Completions.tmPreferences +3 -3
- data/textmate/Bundles/Cucumber.tmbundle/Preferences/Symbol_list___Scenario.tmPreferences +1 -1
- data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Plain_Text_Feature.tmLanguage +18 -76
- data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Steps.tmLanguage +1 -1
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/Animation_animateStyle.tmSnippet +23 -0
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/Event_listen.tmSnippet +16 -0
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/When_Step_Plaintext.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Event_stop.tmSnippet} +5 -5
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Then_Step.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Event_stopListening.tmSnippet} +5 -9
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Cucumber_Multiline_Steps.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/List_Model.tmSnippet} +10 -7
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/Log_addLoggingMethodsToPrototype.tmSnippet +16 -0
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Then_Step_Plaintext.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Log_info.tmSnippet} +5 -5
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Scenario___heading_only__.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Log_logProperties.tmSnippet} +5 -7
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/When_Step.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Model.tmSnippet} +7 -9
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/__L____.tmSnippet +16 -0
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/_insert____.tmSnippet +16 -0
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/_update____.tmSnippet +16 -0
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/controller_get.tmSnippet +16 -0
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/controller_pushScene.tmSnippet +16 -0
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/controller_serviceRequest.tmSnippet +21 -0
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Scenario_Outline.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/controller_setupWidget.tmSnippet} +5 -9
- data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Given_Step.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/controller_showBanner.tmSnippet} +5 -9
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Syntaxes/Mojo.tmLanguage +713 -0
- data/textmate/Bundles/Palm-WebOS-Development.tmbundle/info.plist +188 -0
- data/textmate/Bundles/Smalltalk.tmbundle/Preferences/GNU_Smalltalk.tmPreferences +32 -0
- data/textmate/Bundles/{asciidoc.tmbundle/Preferences/Symbol_List___Heading.tmPreferences → Smalltalk.tmbundle/Preferences/GNU___Symbol_List___Method.tmPreferences} +7 -6
- data/textmate/Bundles/{Cucumber.tmbundle/Preferences/next_Symbol_list___Scenario.tmPreferences → Smalltalk.tmbundle/Preferences/GNU___Symbol_List___Section.tmPreferences} +7 -4
- data/textmate/Bundles/{asciidoc.tmbundle/Snippets/Bold.tmSnippet → Smalltalk.tmbundle/Preferences/MIST_Smalltalk_Format.tmPreferences} +8 -7
- data/textmate/Bundles/Smalltalk.tmbundle/Syntaxes/GNU_Smalltalk.tmLanguage +493 -0
- data/textmate/Bundles/Smalltalk.tmbundle/Syntaxes/GNU_Smalltalk_2.tmLanguage +807 -0
- data/textmate/Bundles/Smalltalk.tmbundle/Syntaxes/MIST_Smalltalk_Format.tmLanguage +645 -0
- data/textmate/Bundles/Smalltalk.tmbundle/info.plist +21 -0
- data/textmate/Themes/Twilight.tmTheme +4 -0
- metadata +2604 -2586
- data/textmate/Bundles/Cucumber.tmbundle/Preferences/next_Cucumber_Plain_Text_Feature_Completions.tmPreferences +0 -30
- data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/next_Cucumber_Plain_Text_Feature.tmLanguage +0 -221
- data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/next_Cucumber_Steps.tmLanguage +0 -424
- data/textmate/Bundles/asciidoc.tmbundle/Preferences/Typing_Pairs___Defaults.tmPreferences +0 -54
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Anchor.tmSnippet +0 -16
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Comment_Block.tmSnippet +0 -19
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Example_Block.tmSnippet +0 -19
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Italic.tmSnippet +0 -16
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Listing_Block.tmSnippet +0 -20
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Literal_Block.tmSnippet +0 -19
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Passthrough_Block.tmSnippet +0 -19
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Quote_Block.tmSnippet +0 -19
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Quoted.tmSnippet +0 -16
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Sidebar_Block.tmSnippet +0 -19
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Subscript.tmSnippet +0 -16
- data/textmate/Bundles/asciidoc.tmbundle/Snippets/Superscript.tmSnippet +0 -16
- data/textmate/Bundles/asciidoc.tmbundle/Syntaxes/AsciiDoc.tmLanguage +0 -428
- data/textmate/Bundles/asciidoc.tmbundle/info.plist +0 -91
data/plugins/redcar/redcar.rb
CHANGED
@@ -170,7 +170,7 @@ module Redcar
|
|
170
170
|
|
171
171
|
class PrintScopeCommand < Command
|
172
172
|
def execute
|
173
|
-
Application::Dialog.tool_tip(tab.edit_view.document.cursor_scope.gsub(" ", "\n"))
|
173
|
+
Application::Dialog.tool_tip(tab.edit_view.document.cursor_scope.gsub(" ", "\n"), :cursor)
|
174
174
|
end
|
175
175
|
end
|
176
176
|
|
@@ -193,19 +193,30 @@ module Redcar
|
|
193
193
|
case result
|
194
194
|
when :yes
|
195
195
|
tab.edit_view.document.save!
|
196
|
-
|
196
|
+
close_tab
|
197
197
|
when :no
|
198
|
-
|
198
|
+
close_tab
|
199
199
|
when :cancel
|
200
200
|
end
|
201
201
|
else
|
202
|
-
|
202
|
+
close_tab
|
203
203
|
end
|
204
204
|
else
|
205
|
-
|
205
|
+
close_tab
|
206
206
|
end
|
207
207
|
@tab = nil
|
208
208
|
end
|
209
|
+
|
210
|
+
private
|
211
|
+
|
212
|
+
def close_tab
|
213
|
+
win = tab.notebook.window
|
214
|
+
tab.close
|
215
|
+
# this will break a lot of features:
|
216
|
+
#if win.all_tabs.empty? and not Project::Manager.in_window(win)
|
217
|
+
# win.close
|
218
|
+
#end
|
219
|
+
end
|
209
220
|
end
|
210
221
|
|
211
222
|
class SwitchTabDownCommand < Command
|
@@ -241,13 +252,35 @@ module Redcar
|
|
241
252
|
class MoveHomeCommand < EditTabCommand
|
242
253
|
|
243
254
|
def execute
|
244
|
-
doc
|
255
|
+
doc = tab.edit_view.document
|
245
256
|
line_ix = doc.line_at_offset(doc.cursor_offset)
|
246
|
-
|
257
|
+
line = doc.get_line(line_ix)
|
258
|
+
prefix = line[0...doc.cursor_line_offset]
|
259
|
+
|
260
|
+
if prefix =~ /^\s*$/
|
261
|
+
# move to start of line
|
262
|
+
new_offset = doc.offset_at_line(line_ix)
|
263
|
+
else
|
264
|
+
# move to start of text
|
265
|
+
new_offset = doc.offset_at_line(line_ix)
|
266
|
+
prefix =~ /^(\s*)[^\s].*$/
|
267
|
+
whitespace_prefix_length = $1 ? $1.length : 0
|
268
|
+
new_offset += whitespace_prefix_length
|
269
|
+
end
|
270
|
+
doc.cursor_offset = new_offset
|
247
271
|
doc.ensure_visible(doc.cursor_offset)
|
248
272
|
end
|
249
273
|
end
|
250
274
|
|
275
|
+
class MoveTopCommand < EditTabCommand
|
276
|
+
|
277
|
+
def execute
|
278
|
+
doc = tab.edit_view.document
|
279
|
+
doc.cursor_offset = 0
|
280
|
+
doc.ensure_visible(0)
|
281
|
+
end
|
282
|
+
end
|
283
|
+
|
251
284
|
class MoveEndCommand < EditTabCommand
|
252
285
|
|
253
286
|
def execute
|
@@ -262,6 +295,15 @@ module Redcar
|
|
262
295
|
end
|
263
296
|
end
|
264
297
|
|
298
|
+
class MoveBottomCommand < EditTabCommand
|
299
|
+
|
300
|
+
def execute
|
301
|
+
doc = tab.edit_view.document
|
302
|
+
doc.cursor_offset = doc.length
|
303
|
+
doc.ensure_visible(doc.length)
|
304
|
+
end
|
305
|
+
end
|
306
|
+
|
265
307
|
class ChangeIndentCommand < EditTabCommand
|
266
308
|
def execute
|
267
309
|
doc = tab.edit_view.document
|
@@ -615,7 +657,43 @@ module Redcar
|
|
615
657
|
EditView.show_invisibles = !EditView.show_invisibles?
|
616
658
|
end
|
617
659
|
end
|
660
|
+
|
661
|
+
class ToggleLineNumbers < Redcar::EditTabCommand
|
662
|
+
def execute
|
663
|
+
EditView.show_line_numbers = !EditView.show_line_numbers?
|
664
|
+
end
|
665
|
+
end
|
666
|
+
|
667
|
+
class ToggleAnnotations < Redcar::EditTabCommand
|
668
|
+
def execute
|
669
|
+
EditView.show_annotations = !EditView.show_annotations?
|
670
|
+
end
|
671
|
+
end
|
672
|
+
|
673
|
+
class SelectNewFont < Command
|
674
|
+
def execute
|
675
|
+
Redcar::EditView::SelectFontDialog.new.open
|
676
|
+
end
|
677
|
+
end
|
618
678
|
|
679
|
+
class SelectTheme < Command
|
680
|
+
def execute
|
681
|
+
Redcar::EditView::SelectThemeDialog.new.open
|
682
|
+
end
|
683
|
+
end
|
684
|
+
|
685
|
+
class SelectFontSize < Command
|
686
|
+
def execute
|
687
|
+
result = Application::Dialog.input("Font Size", "Please enter new font size", Redcar::EditView.font_size.to_s) do |text|
|
688
|
+
if text.to_i > 1 and text.to_i < 25
|
689
|
+
nil
|
690
|
+
else
|
691
|
+
"the font size must be > 1 and < 25"
|
692
|
+
end
|
693
|
+
end
|
694
|
+
Redcar::EditView.font_size = result[:value].to_i if result[:button ] == :ok
|
695
|
+
end
|
696
|
+
end
|
619
697
|
|
620
698
|
def self.keymaps
|
621
699
|
osx = Redcar::Keymap.build("main", :osx) do
|
@@ -637,8 +715,12 @@ module Redcar
|
|
637
715
|
link "Cmd+C", CopyCommand
|
638
716
|
link "Cmd+V", PasteCommand
|
639
717
|
link "Cmd+D", DuplicateCommand
|
718
|
+
|
719
|
+
link "Home", MoveTopCommand
|
640
720
|
link "Ctrl+A", MoveHomeCommand
|
641
721
|
link "Ctrl+E", MoveEndCommand
|
722
|
+
link "End", MoveBottomCommand
|
723
|
+
|
642
724
|
link "Cmd+[", DecreaseIndentCommand
|
643
725
|
link "Cmd+]", IncreaseIndentCommand
|
644
726
|
link "Cmd+Shift+I", AutoIndenter::IndentCommand
|
@@ -689,8 +771,12 @@ module Redcar
|
|
689
771
|
link "Ctrl+C", CopyCommand
|
690
772
|
link "Ctrl+V", PasteCommand
|
691
773
|
link "Ctrl+D", DuplicateCommand
|
692
|
-
|
693
|
-
link "
|
774
|
+
|
775
|
+
link "Shift+Home", MoveTopCommand
|
776
|
+
link "Home", MoveHomeCommand
|
777
|
+
link "End", MoveEndCommand
|
778
|
+
link "Shift+End", MoveBottomCommand
|
779
|
+
|
694
780
|
link "Ctrl+[", DecreaseIndentCommand
|
695
781
|
link "Ctrl+]", IncreaseIndentCommand
|
696
782
|
link "Ctrl+Shift+[", AutoIndenter::IndentCommand
|
@@ -730,7 +816,6 @@ module Redcar
|
|
730
816
|
Menu::Builder.build do
|
731
817
|
sub_menu "File" do
|
732
818
|
item "New", NewCommand
|
733
|
-
item "New Notebook", NewNotebookCommand
|
734
819
|
item "New Window", NewWindowCommand
|
735
820
|
item "Open", Project::FileOpenCommand
|
736
821
|
item "Open Directory", Project::DirectoryOpenCommand
|
@@ -743,12 +828,6 @@ module Redcar
|
|
743
828
|
item "Save As", Project::FileSaveAsCommand
|
744
829
|
separator
|
745
830
|
item "Close Tab", CloseTabCommand
|
746
|
-
sub_menu "Switch Tab" do
|
747
|
-
(1..9).each do |num|
|
748
|
-
item "Tab #{num}", Top.const_get("SelectTab#{num}Command")
|
749
|
-
end
|
750
|
-
end
|
751
|
-
item "Close Notebook", CloseNotebookCommand
|
752
831
|
item "Close Window", CloseWindowCommand
|
753
832
|
item "Close Directory", Project::DirectoryCloseCommand
|
754
833
|
separator
|
@@ -765,8 +844,10 @@ module Redcar
|
|
765
844
|
item "Paste", PasteCommand
|
766
845
|
item "Duplicate Region", DuplicateCommand
|
767
846
|
separator
|
768
|
-
item "
|
769
|
-
item "
|
847
|
+
item "Top", MoveTopCommand
|
848
|
+
item "Home", MoveHomeCommand
|
849
|
+
item "End", MoveEndCommand
|
850
|
+
item "Bottom", MoveBottomCommand
|
770
851
|
separator
|
771
852
|
item "Increase Indent", IncreaseIndentCommand
|
772
853
|
item "Decrease Indent", DecreaseIndentCommand
|
@@ -795,14 +876,29 @@ module Redcar
|
|
795
876
|
item "Print Scope at Cursor", PrintScopeCommand
|
796
877
|
end
|
797
878
|
sub_menu "View" do
|
879
|
+
sub_menu "Appearance" do
|
880
|
+
item "Font", SelectNewFont
|
881
|
+
item "Font Size", SelectFontSize
|
882
|
+
item "Theme", SelectTheme
|
883
|
+
end
|
884
|
+
separator
|
885
|
+
item "New Notebook", NewNotebookCommand
|
886
|
+
item "Close Notebook", CloseNotebookCommand
|
798
887
|
item "Rotate Notebooks", RotateNotebooksCommand
|
799
888
|
item "Move Tab To Other Notebook", MoveTabToOtherNotebookCommand
|
800
889
|
item "Switch Notebooks", SwitchNotebookCommand
|
801
890
|
separator
|
802
891
|
item "Previous Tab", SwitchTabDownCommand
|
803
892
|
item "Next Tab", SwitchTabUpCommand
|
893
|
+
sub_menu "Switch Tab" do
|
894
|
+
(1..9).each do |num|
|
895
|
+
item "Tab #{num}", Top.const_get("SelectTab#{num}Command")
|
896
|
+
end
|
897
|
+
end
|
804
898
|
separator
|
805
|
-
item "
|
899
|
+
item "Toggle Invisibles", ToggleInvisibles
|
900
|
+
item "Toggle Line Numbers", ToggleLineNumbers
|
901
|
+
item "Toggle Annotations", ToggleAnnotations
|
806
902
|
end
|
807
903
|
sub_menu "Plugins" do
|
808
904
|
item "Plugin Manager", PluginManagerUi::OpenCommand
|
@@ -21,6 +21,7 @@ module Redcar
|
|
21
21
|
|
22
22
|
if @model.tree_controller
|
23
23
|
@viewer.add_tree_listener(@viewer.getControl, TreeListener.new)
|
24
|
+
@viewer.add_double_click_listener(DoubleClickListener.new)
|
24
25
|
@viewer.add_open_listener(OpenListener.new(@model.tree_controller))
|
25
26
|
end
|
26
27
|
|
@@ -65,6 +66,20 @@ module Redcar
|
|
65
66
|
|
66
67
|
class DoubleClickListener
|
67
68
|
def double_click(e)
|
69
|
+
|
70
|
+
double_clicked_element = e.get_viewer.get_selection.get_first_element
|
71
|
+
|
72
|
+
#do nothing for leaves
|
73
|
+
return if double_clicked_element.leaf?
|
74
|
+
|
75
|
+
viewer = e.get_viewer
|
76
|
+
node_is_expanded = viewer.getExpandedState(double_clicked_element)
|
77
|
+
|
78
|
+
if node_is_expanded
|
79
|
+
viewer.collapseToLevel(double_clicked_element, 1)
|
80
|
+
else
|
81
|
+
viewer.expandToLevel(double_clicked_element, 1)
|
82
|
+
end
|
68
83
|
end
|
69
84
|
end
|
70
85
|
|
@@ -3,9 +3,9 @@
|
|
3
3
|
<plist version="1.0">
|
4
4
|
<dict>
|
5
5
|
<key>name</key>
|
6
|
-
<string>
|
6
|
+
<string>Gherkin Completions</string>
|
7
7
|
<key>scope</key>
|
8
|
-
<string>text.
|
8
|
+
<string>text.gherkin.feature</string>
|
9
9
|
<key>settings</key>
|
10
10
|
<dict>
|
11
11
|
<key>completions</key>
|
@@ -18,10 +18,10 @@
|
|
18
18
|
<string>Scenario:</string>
|
19
19
|
<string>Scenario Outline:</string>
|
20
20
|
<string>Given</string>
|
21
|
-
<string>GivenScenario</string>
|
22
21
|
<string>Then</string>
|
23
22
|
<string>When</string>
|
24
23
|
<string>And</string>
|
24
|
+
<string>But</string>
|
25
25
|
</array>
|
26
26
|
</dict>
|
27
27
|
<key>uuid</key>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<key>name</key>
|
6
6
|
<string>Symbol list: Scenario</string>
|
7
7
|
<key>scope</key>
|
8
|
-
<string>text.
|
8
|
+
<string>text.gherkin.feature string.language.gherkin.scenario.title</string>
|
9
9
|
<key>settings</key>
|
10
10
|
<dict>
|
11
11
|
<key>showInSymbolList</key>
|
@@ -7,9 +7,9 @@
|
|
7
7
|
<string>feature</string>
|
8
8
|
</array>
|
9
9
|
<key>firstLineMatch</key>
|
10
|
-
<string
|
10
|
+
<string>기능|機能|功能|フィーチャ|خاصية|תכונה|Функционалност|Функционал|Особина|Могућност|Özellik|Właściwość|Tính năng|Savybė|Požiadavka|Požadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogućnost|Mogucnost|Jellemző|Fīča|Funzionalità|Funktionalität|Funkcionalnost|Funkcionalitāte|Funcționalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalité|Fitur|Feature|Egenskap|Egenskab|Crikey|Característica|Arwedd(.*)</string>
|
11
11
|
<key>foldingStartMarker</key>
|
12
|
-
<string>^\s*\b(
|
12
|
+
<string>^\s*\b(예|시나리오 개요|시나리오|배경|背景|場景大綱|場景|场景大纲|场景|劇本大綱|劇本|例子|例|テンプレ|シナリオテンプレート|シナリオテンプレ|シナリオアウトライン|シナリオ|サンプル|سيناريو مخطط|سيناريو|امثلة|الخلفية|תרחיש|תבנית תרחיש|רקע|דוגמאות|Тарих|Сценарији|Сценарио|Сценарий структураси|Сценарий|Структура сценарија|Структура сценария|Скица|Рамка на сценарий|Примери|Пример|Предыстория|Предистория|Позадина|Основа|Мисоллар|Концепт|Контекст|Значения|Örnekler|Założenia|Voorbeelden|Variantai|Tình huống|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situācija|Senaryo taslağı|Senaryo|Scénář|Scénario|Schema dello scenario|Scenārijs pēc parauga|Scenārijs|Scenár|Scenariusz|Scenariul de şablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Scenarijus|Scenariji|Scenarijaus šablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|Příklady|Példák|Príklady|Przykłady|Primjeri|Primeri|Primer|Pozadí|Pozadina|Pozadie|Plan du scénario|Plan du Scénario|Piemēri|Pavyzdžiai|Paraugs|Osnova scénáře|Osnova|Náčrt Scénáře|Náčrt Scenáru|Mate|MISHUN SRSLY|MISHUN|Kịch bản|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung tình huống|Khung kịch bản|Juhtumid|Háttér|Grundlage|Geçmiş|Forgatókönyv vázlat|Forgatókönyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cenário|Esquema do Cenario|Esquema del escenario|Esquema de l\'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|Dữ liệu|Dasar|Contoh|Contexto|Contexte|Contesto|Condiţii|Conditii|Cobber|Cenário|Cenario|Cefndir|Bối cảnh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y\'all|Achtergrond|Abstrakt Scenario|Abstract Scenario)</string>
|
13
13
|
<key>foldingStopMarker</key>
|
14
14
|
<string>^\s*$</string>
|
15
15
|
<key>keyEquivalent</key>
|
@@ -20,7 +20,7 @@
|
|
20
20
|
<array>
|
21
21
|
<dict>
|
22
22
|
<key>include</key>
|
23
|
-
<string>#
|
23
|
+
<string>#feature_element_keyword</string>
|
24
24
|
</dict>
|
25
25
|
<dict>
|
26
26
|
<key>include</key>
|
@@ -32,11 +32,7 @@
|
|
32
32
|
</dict>
|
33
33
|
<dict>
|
34
34
|
<key>include</key>
|
35
|
-
<string>#
|
36
|
-
</dict>
|
37
|
-
<dict>
|
38
|
-
<key>include</key>
|
39
|
-
<string>#pending_keyword</string>
|
35
|
+
<string>#step_keyword</string>
|
40
36
|
</dict>
|
41
37
|
<dict>
|
42
38
|
<key>include</key>
|
@@ -64,7 +60,7 @@
|
|
64
60
|
</dict>
|
65
61
|
<dict>
|
66
62
|
<key>include</key>
|
67
|
-
<string>#
|
63
|
+
<string>#table</string>
|
68
64
|
</dict>
|
69
65
|
</array>
|
70
66
|
<key>repository</key>
|
@@ -82,7 +78,7 @@
|
|
82
78
|
<key>match</key>
|
83
79
|
<string>\s*(#.*)</string>
|
84
80
|
</dict>
|
85
|
-
<key>
|
81
|
+
<key>table</key>
|
86
82
|
<dict>
|
87
83
|
<key>begin</key>
|
88
84
|
<string>^\s*\|</string>
|
@@ -100,24 +96,6 @@
|
|
100
96
|
</dict>
|
101
97
|
</array>
|
102
98
|
</dict>
|
103
|
-
<key>description</key>
|
104
|
-
<dict>
|
105
|
-
<key>captures</key>
|
106
|
-
<dict>
|
107
|
-
<key>1</key>
|
108
|
-
<dict>
|
109
|
-
<key>name</key>
|
110
|
-
<string>keyword.language.cucumber.feature.description</string>
|
111
|
-
</dict>
|
112
|
-
<key>2</key>
|
113
|
-
<dict>
|
114
|
-
<key>name</key>
|
115
|
-
<string>string.language.cucumber.feature.description</string>
|
116
|
-
</dict>
|
117
|
-
</dict>
|
118
|
-
<key>match</key>
|
119
|
-
<string>^\s*(As an|As a|I want|So that|In order)(.*)</string>
|
120
|
-
</dict>
|
121
99
|
<key>feature_keyword</key>
|
122
100
|
<dict>
|
123
101
|
<key>captures</key>
|
@@ -125,83 +103,47 @@
|
|
125
103
|
<key>1</key>
|
126
104
|
<dict>
|
127
105
|
<key>name</key>
|
128
|
-
<string>keyword.language.
|
106
|
+
<string>keyword.language.gherkin.feature</string>
|
129
107
|
</dict>
|
130
108
|
<key>2</key>
|
131
109
|
<dict>
|
132
110
|
<key>name</key>
|
133
|
-
<string>string.language.
|
111
|
+
<string>string.language.gherkin.feature.title</string>
|
134
112
|
</dict>
|
135
113
|
</dict>
|
136
114
|
<key>match</key>
|
137
|
-
<string>^\s*(
|
115
|
+
<string>^\s*(기능|機能|功能|フィーチャ|خاصية|תכונה|Функционалност|Функционал|Особина|Могућност|Özellik|Właściwość|Tính năng|Savybė|Požiadavka|Požadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogućnost|Mogucnost|Jellemző|Fīča|Funzionalità|Funktionalität|Funkcionalnost|Funkcionalitāte|Funcționalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalité|Fitur|Feature|Egenskap|Egenskab|Crikey|Característica|Arwedd):(.*)\b</string>
|
138
116
|
</dict>
|
139
|
-
<key>
|
117
|
+
<key>step_keyword</key>
|
140
118
|
<dict>
|
141
119
|
<key>captures</key>
|
142
120
|
<dict>
|
143
121
|
<key>1</key>
|
144
122
|
<dict>
|
145
123
|
<key>name</key>
|
146
|
-
<string>keyword.language.
|
147
|
-
</dict>
|
148
|
-
</dict>
|
149
|
-
<key>match</key>
|
150
|
-
<string>^\s*(A|AN|Aber|Achtergrond|Akkor|Ale|Aleshores|Allora|Alors|Als|And|And y'all|Antecedentes|Atunci|B4|BUT|Background|Baggrund|Bakgrund|Bakgrunn|Beispiele|Bet|Biết|Cho|But|But y'all|Bối cảnh|Cand|Cept|Cobber|Contesto|Contexte|Contexto|Contoh|Cuando|Când|DEN|Daca|Dacă|Dado|Dan|Dann|Dar|Dasar|Dato|De|Dengan|Donat|Duota|Dữ liệu|E|EXAMPLZ|Eeldades|Ejemplos|Eksempler|En|Enghreifftiau|Entonces|Então|Entao|Esempi|Et|Examples|Examples|Scenarios|Exempel|Exemples|Exemplos|Gegeben sei|Gegeven|Gitt|Given|Given y'all|Givet|Grundlage|Ha|Háttér|I|I CAN HAZ|Ir|Ja|Jeżeli|Juhtumid|Kad|Kai|Když|Ketika|Keď|Khi|Kontekstas|Konteksts|Situācija|Kui|Kuid|Kun|Lorsque|Ma|Maar|Mais|Majd|Maka|Mas|Men|Mutta|N|Nhưng|Niin|När|Når|Och|Og|Oletetaan|Ond|Oraz|Pak|Pavyzdžiai|Scenarijai|Variantai|Pero|Però|Piemēri|Paraugs|Pokiaľ|Pokud|Pozadie|Pozadí|Pryd|Przykłady|Príklady|Példák|Příklady|Quan|Quando|Rerefons|Si|Siis|Soit|Så|Tad|Tada|Tak|Tapaukset|Tapi|Taust|Tausta|Then|Then y'all|Thì|Un|Und|Voorbeelden|Và|WEN|Wenn|When|When y'all|Wtedy|Y|Ya gotta|Ya know how|Yna|Zakładając|Założenia|anrhegedig a|És|Și|Дадено|Допустим|Если|Значения|И|И|К тому же|Когато|Но|Но|А|Предистория|Предыстория|Примери|То|אבל|אז|אזי|בהינתן|דוגמאות|וגם|כאשר|רקע|اذاً|ثم|الخلفية|امثلة|بفرض|لكن|متى|عندما|و|かつ|しかし|但し|ならば|もし|但是|例|サンプル|例子|假如|假設|前提|当|當|而且|而且|並且|背景|那么|那麼|그러면|그리고|만일|배경|예|조건|하지만)\b</string>
|
151
|
-
</dict>
|
152
|
-
<key>pending_keyword</key>
|
153
|
-
<dict>
|
154
|
-
<key>captures</key>
|
155
|
-
<dict>
|
156
|
-
<key>1</key>
|
157
|
-
<dict>
|
158
|
-
<key>name</key>
|
159
|
-
<string>keyword.language.cucumber.feature.scenario.pending.line</string>
|
160
|
-
</dict>
|
161
|
-
<key>2</key>
|
162
|
-
<dict>
|
163
|
-
<key>name</key>
|
164
|
-
<string>string.language.cucumber.feature.scenario.pending.line</string>
|
165
|
-
</dict>
|
166
|
-
</dict>
|
167
|
-
<key>match</key>
|
168
|
-
<string>^\s*(Pending)(.*)\b</string>
|
169
|
-
</dict>
|
170
|
-
<key>scenario_keyword</key>
|
171
|
-
<dict>
|
172
|
-
<key>captures</key>
|
173
|
-
<dict>
|
174
|
-
<key>1</key>
|
175
|
-
<dict>
|
176
|
-
<key>name</key>
|
177
|
-
<string>keyword.language.cucumber.feature.scenario</string>
|
178
|
-
</dict>
|
179
|
-
<key>2</key>
|
180
|
-
<dict>
|
181
|
-
<key>name</key>
|
182
|
-
<string>string.language.cucumber.feature.scenario.title</string>
|
124
|
+
<string>keyword.language.gherkin.feature.step</string>
|
183
125
|
</dict>
|
184
126
|
</dict>
|
185
127
|
<key>match</key>
|
186
|
-
<string>^\s*(
|
128
|
+
<string>^\s*(하지만|조건|먼저|만일|만약|단|그리고|그러면|那麼|那么|而且|當|当|前提|假設|假如|但是|但し|並且|もし|ならば|ただし|しかし|かつ|و |متى |لكن |عندما |ثم |بفرض |اذاً |כאשר |וגם |בהינתן |אזי |אז |אבל |Унда |То |Онда |Но |Лекин |Когато |Када |Кад |К тому же |И |Задато |Задати |Задате |Если |Допустим |Дадено |Ва |Бирок |Аммо |Али |Агар |А |Și |És |anrhegedig a |Zatati |Zakładając |Zadato |Zadate |Zadano |Zadani |Zadan |Yna |Ya know how |Ya gotta |Y |Wtedy |When y\'all |When |Wenn |WEN |Và |Ve |Und |Un |Thì |Then y\'all |Then |Tapi |Tak |Tada |Tad |Så |Stel |Soit |Siis |Si |Quando |Quand |Quan |Pryd |Pokud |Pokiaľ |Però |Pero |Pak |Oraz |Onda |Ond |Oletetaan |Og |Och |O zaman |Når |När |Niin |Nhưng |N |Mutta |Men |Mas |Maka |Majd |Mais |Maar |Ma |Lorsque |Lorsqu\'|Kun |Kuid |Kui |Khi |Keď |Ketika |Když |Kai |Kada |Kad |Jeżeli |Ja |Ir |I CAN HAZ |I |Ha |Givet |Given y\'all |Given |Gitt |Gegeven |Gegeben sei |Fakat |Eğer ki |Etant donné |Et |Então |Entonces |Entao |En |Eeldades |E |Duota |Donat |Donada |Diyelim ki |Dengan |De |Dato |Dar |Dann |Dan |Dado |Dacă |Daca |DEN |Când |Cuando |Cho |Cept |Cand |Cal |But y\'all |But |Biết |Bet |BUT |Atès |Atunci |Atesa |Angenommen |And y\'all |And |Ama |Als |Alors |Allora |Ali |Aleshores |Ale |Akkor |Aber |AN |A také |A |\* )</string>
|
187
129
|
</dict>
|
188
|
-
<key>
|
130
|
+
<key>feature_element_keyword</key>
|
189
131
|
<dict>
|
190
132
|
<key>captures</key>
|
191
133
|
<dict>
|
192
134
|
<key>1</key>
|
193
135
|
<dict>
|
194
136
|
<key>name</key>
|
195
|
-
<string>keyword.language.
|
137
|
+
<string>keyword.language.gherkin.feature.scenario</string>
|
196
138
|
</dict>
|
197
139
|
<key>2</key>
|
198
140
|
<dict>
|
199
141
|
<key>name</key>
|
200
|
-
<string>string.language.
|
142
|
+
<string>string.language.gherkin.scenario.title.title</string>
|
201
143
|
</dict>
|
202
144
|
</dict>
|
203
145
|
<key>match</key>
|
204
|
-
<string>^\s*(
|
146
|
+
<string>^\s*(예|시나리오 개요|시나리오|배경|背景|場景大綱|場景|场景大纲|场景|劇本大綱|劇本|例子|例|テンプレ|シナリオテンプレート|シナリオテンプレ|シナリオアウトライン|シナリオ|サンプル|سيناريو مخطط|سيناريو|امثلة|الخلفية|תרחיש|תבנית תרחיש|רקע|דוגמאות|Тарих|Сценарији|Сценарио|Сценарий структураси|Сценарий|Структура сценарија|Структура сценария|Скица|Рамка на сценарий|Примери|Пример|Предыстория|Предистория|Позадина|Основа|Мисоллар|Концепт|Контекст|Значения|Örnekler|Założenia|Voorbeelden|Variantai|Tình huống|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situācija|Senaryo taslağı|Senaryo|Scénář|Scénario|Schema dello scenario|Scenārijs pēc parauga|Scenārijs|Scenár|Scenariusz|Scenariul de şablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Scenarijus|Scenariji|Scenarijaus šablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|Příklady|Példák|Príklady|Przykłady|Primjeri|Primeri|Primer|Pozadí|Pozadina|Pozadie|Plan du scénario|Plan du Scénario|Piemēri|Pavyzdžiai|Paraugs|Osnova scénáře|Osnova|Náčrt Scénáře|Náčrt Scenáru|Mate|MISHUN SRSLY|MISHUN|Kịch bản|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung tình huống|Khung kịch bản|Juhtumid|Háttér|Grundlage|Geçmiş|Forgatókönyv vázlat|Forgatókönyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cenário|Esquema do Cenario|Esquema del escenario|Esquema de l\'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|Dữ liệu|Dasar|Contoh|Contexto|Contexte|Contesto|Condiţii|Conditii|Cobber|Cenário|Cenario|Cefndir|Bối cảnh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y\'all|Achtergrond|Abstrakt Scenario|Abstract Scenario):(.*)</string>
|
205
147
|
</dict>
|
206
148
|
<key>scenario_outline_variable</key>
|
207
149
|
<dict>
|
@@ -268,11 +210,11 @@
|
|
268
210
|
</dict>
|
269
211
|
</dict>
|
270
212
|
<key>match</key>
|
271
|
-
<string>(@[
|
213
|
+
<string>(@[^@\r\n\t ]+)</string>
|
272
214
|
</dict>
|
273
215
|
</dict>
|
274
216
|
<key>scopeName</key>
|
275
|
-
<string>text.
|
217
|
+
<string>text.gherkin.feature</string>
|
276
218
|
<key>uuid</key>
|
277
219
|
<string>85E2C52C-9B16-4A54-81E7-6D8D3ADAEFA8</string>
|
278
220
|
</dict>
|