diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..0662841 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,22 @@ +# Do not include the following content from *.sublime-package files + +# Git & Github +.github/ export-ignore +.gitattributes export-ignore +.gitignore export-ignore + +# Documentation +doc/ export-ignore +sample/ export-ignore +Contributing.md export-ignore +ToDo.md export-ignore + +# Tests +test/ export-ignore +\[test\]/ export-ignore + +# Settings +.editorconfig export-ignore + +# Source files +src/ export-ignore diff --git a/.gitignore b/.gitignore index e7bfc83..81f41e5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,65 @@ +# templates github.com/github/gitignore # Sublime Text files ace-jump.sublime-project ace-jump.sublime-workspace +# vim +*~ +.*.swp +# (macOS) +.DS_Store +.AppleDouble +.LSOverride +# (macOS)Icon must end with two \r +Icon -# To do +# (macOS)Thumbnails +._* +# (macOS)Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns + +# (macOS)Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +# (Windows) Thumbnails +Thumbs.db + +# (Windows) Files build by Visual Studio +*.obj +*.exe +*.pdb +*.user +*.aps +*.pch +*.vspscc +*_i.c +*_p.c +*.ncb +*.suo +*.tlb +*.tlh +*.bak +*.cache +*.ilk +*.log +*.dll +*.lib +*.sbr + +# project's built/temp docs +Changelog.html +ReadMe.html +messages/*.html +ToDo.html +ToDo.md +# test folder +\[test\] *.TODO diff --git a/.python-version b/.python-version new file mode 100644 index 0000000..cc1923a --- /dev/null +++ b/.python-version @@ -0,0 +1 @@ +3.8 diff --git a/AceJump.sublime-settings b/AceJump.sublime-settings index 20b8501..a31b760 100644 --- a/AceJump.sublime-settings +++ b/AceJump.sublime-settings @@ -1,54 +1,41 @@ { - // Characters to be used as labels in order they'll appear - "labels": "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", +// Characters to be used as labels in order they'll appear +"labels" : "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", +"labels_scope" : "invalid" , // Syntax highlighting scope for the labels +"search_case_sensitivity" : true , // Toggles case sensitive search in word and character modes. +"save_files_after_jump" : false , // Saves all the files aceJump tried to parse. This setting will reset any linter warnings you might see during jump. By saving all effected files +"jump_behind_last_characters" : false , // If turned on, character mode will jump after a character it it's the last character on a line. - // Syntax highlighting scope for the labels - "labels_scope": "invalid", - - // Toggles case sensitive search in word and character modes. - "search_case_sensitivity": true, - - // Saves all the files aceJump tried to parse. - // This setting will reset any linter warnings you might see during jump - // By saving all effected files - "save_files_after_jump": false, - - // If turned on, character mode will jump after a character - // it it's the last character on a line. - "jump_behind_last_characters": false, - - // View settings that should be respected when switching the syntax - // highlighting mode. In case a plugin you use adds a new - // setting to a view, you probably want to add it to this list. - "view_settings": [ - "auto_indent", - "tab_size", - "translate_tabs_to_spaces", - "use_tab_stops", - "trim_automatic_white_space", - "detect_indentation", - "draw_white_space", - "trim_trailing_white_space_on_save", - "always_show_minimap_viewport", - "color_scheme", - "font_face", - "font_options", - "gutter", - "rulers", - "draw_minimap_border", - "highlight_line", - "line_padding_top", - "line_padding_bottom", - "scroll_past_end", - "line_numbers", - "word_wrap", - "wrap_width", - "indent_subsequent_lines", - "draw_centered", - "match_brackets", - "match_brackets_content", - "match_brackets_square", - "match_brackets_braces", - "match_brackets_angle", - ] +// View settings that should be respected when switching the syntax highlighting mode. In case a plugin you use adds a new setting to a view, you probably want to add it to this list. +"view_settings": [ + "auto_indent", + "tab_size", + "translate_tabs_to_spaces", + "use_tab_stops", + "trim_automatic_white_space", + "detect_indentation", + "draw_white_space", + "trim_trailing_white_space_on_save", + "always_show_minimap_viewport", + "color_scheme", + "font_face", + "font_options", + "gutter", + "rulers", + "draw_minimap_border", + "highlight_line", + "line_padding_top", + "line_padding_bottom", + "scroll_past_end", + "line_numbers", + "word_wrap", + "wrap_width", + "indent_subsequent_lines", + "draw_centered", + "match_brackets", + "match_brackets_content", + "match_brackets_square", + "match_brackets_braces", + "match_brackets_angle", +] } diff --git a/Default (Linux).sublime-keymap b/Default (Linux).sublime-keymap index 364e301..f3ad09e 100644 --- a/Default (Linux).sublime-keymap +++ b/Default (Linux).sublime-keymap @@ -1,30 +1,39 @@ [ - { - "keys": ["ctrl+shift+;"], - "command": "ace_jump_word" - }, - { - "keys": ["ctrl+shift+'"], - "command": "ace_jump_char" - }, - { - "keys": ["ctrl+shift+."], - "command": "ace_jump_line" - }, - { - "keys": ["ctrl+shift+,"], - "command": "ace_jump_within_line" - }, - { - "keys": ["alt+;"], - "command": "ace_jump_select" - }, - { - "keys": ["alt+'"], - "command": "ace_jump_add_cursor" - }, - { - "keys": ["alt+."], - "command": "ace_jump_after" - } +// Old defaults // + {"keys":["ctrl+shift+;" ],"command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+shift+'" ],"command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+shift+." ],"command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+shift+," ],"command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["alt+'" ],"command":"ace_jump_add_cursor" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["alt+;" ],"command":"ace_jump_select" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["alt+." ],"command":"ace_jump_after" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + +// Chained Keycap // keycap-based mnemonics w=word + {"keys":["ctrl+j","ctrl+w" ],"command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+c" ],"command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+l" ],"command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+i" ],"command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, +// Chained Modes // + {"keys":["ctrl+j","c" ],"command":"ace_jump_add_cursor" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","s" ],"command":"ace_jump_select" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","a" ],"command":"ace_jump_after" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + +// Chained Home (more convenient home row mode keys) + {"keys":["ctrl+j","ctrl+k" ] , "command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+l" ] , "command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+;" ] , "command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+j" ] , "command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, +// Chained Home Modes+: full chain, no need to press prefix key twice // + {"keys":["ctrl+j","ctrl+a","ctrl+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+a","ctrl+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+a","ctrl+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+a","ctrl+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, ] diff --git a/Default (OSX).sublime-keymap b/Default (OSX).sublime-keymap index 428d8d7..f2252c7 100644 --- a/Default (OSX).sublime-keymap +++ b/Default (OSX).sublime-keymap @@ -1,30 +1,39 @@ [ - { - "keys": ["super+shift+;"], - "command": "ace_jump_word" - }, - { - "keys": ["super+shift+'"], - "command": "ace_jump_char" - }, - { - "keys": ["super+shift+."], - "command": "ace_jump_line" - }, - { - "keys": ["super+shift+,"], - "command": "ace_jump_within_line" - }, - { - "keys": ["ctrl+;"], - "command": "ace_jump_select" - }, - { - "keys": ["ctrl+'"], - "command": "ace_jump_add_cursor" - }, - { - "keys": ["ctrl+."], - "command": "ace_jump_after" - } +// Old defaults // + {"keys":["super+shift+;" ],"command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["super+shift+'" ],"command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["super+shift+." ],"command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["super+shift+," ],"command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+'" ],"command":"ace_jump_add_cursor" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+;" ],"command":"ace_jump_select" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+." ],"command":"ace_jump_after" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + +// Chained Keycap // keycap-based mnemonics w=word + {"keys":["super+j","super+w" ],"command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["super+j","super+c" ],"command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["super+j","super+l" ],"command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["super+j","super+i" ],"command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, +// Chained Modes // + {"keys":["super+j","c" ],"command":"ace_jump_add_cursor" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["super+j","s" ],"command":"ace_jump_select" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["super+j","a" ],"command":"ace_jump_after" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + +// Chained Home (more convenient home row mode keys) + {"keys":["super+j","super+k" ] , "command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+l" ] , "command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+;" ] , "command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+j" ] , "command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, +// Chained Home Modes+: full chain, no need to press prefix key twice // + {"keys":["super+j","super+a","super+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+a","super+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+a","super+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+a","super+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+s","super+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+s","super+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+s","super+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+s","super+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+f","super+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+f","super+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+f","super+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["super+j","super+f","super+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, ] diff --git a/Default (Windows).sublime-keymap b/Default (Windows).sublime-keymap index 364e301..f3ad09e 100644 --- a/Default (Windows).sublime-keymap +++ b/Default (Windows).sublime-keymap @@ -1,30 +1,39 @@ [ - { - "keys": ["ctrl+shift+;"], - "command": "ace_jump_word" - }, - { - "keys": ["ctrl+shift+'"], - "command": "ace_jump_char" - }, - { - "keys": ["ctrl+shift+."], - "command": "ace_jump_line" - }, - { - "keys": ["ctrl+shift+,"], - "command": "ace_jump_within_line" - }, - { - "keys": ["alt+;"], - "command": "ace_jump_select" - }, - { - "keys": ["alt+'"], - "command": "ace_jump_add_cursor" - }, - { - "keys": ["alt+."], - "command": "ace_jump_after" - } +// Old defaults // + {"keys":["ctrl+shift+;" ],"command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+shift+'" ],"command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+shift+." ],"command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["ctrl+shift+," ],"command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["alt+'" ],"command":"ace_jump_add_cursor" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["alt+;" ],"command":"ace_jump_select" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + {"keys":["alt+." ],"command":"ace_jump_after" ,"context":[{"key":"setting.ace_jump_key_single","operator":"equal","operand":true},]}, + +// Chained Keycap // keycap-based mnemonics w=word + {"keys":["ctrl+j","ctrl+w" ],"command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+c" ],"command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+l" ],"command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+i" ],"command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, +// Chained Modes // + {"keys":["ctrl+j","c" ],"command":"ace_jump_add_cursor" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","s" ],"command":"ace_jump_select" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","a" ],"command":"ace_jump_after" ,"context":[{"key":"setting.ace_jump_key_chain","operator":"equal","operand":true},]}, + +// Chained Home (more convenient home row mode keys) + {"keys":["ctrl+j","ctrl+k" ] , "command":"ace_jump_word" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+l" ] , "command":"ace_jump_char" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+;" ] , "command":"ace_jump_line" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+j" ] , "command":"ace_jump_within_line" ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, +// Chained Home Modes+: full chain, no need to press prefix key twice // + {"keys":["ctrl+j","ctrl+a","ctrl+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+a","ctrl+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+a","ctrl+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+a","ctrl+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_add_cursor" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+s","ctrl+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_select" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+k" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_word" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+l" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_char" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+;" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, + {"keys":["ctrl+j","ctrl+f","ctrl+j" ],"command":"chain","args":{"commands":[{"command":"ace_jump_after" },{"command":"ace_jump_within_line" }]} ,"context":[{"key":"setting.ace_jump_key_chome","operator":"equal","operand":true},]}, ] diff --git a/Default.sublime-commands b/Default.sublime-commands new file mode 100644 index 0000000..d789487 --- /dev/null +++ b/Default.sublime-commands @@ -0,0 +1,14 @@ +[ +{"caption":"Preferences: AceJump Settings" ,"command":"edit_settings" ,"args":{ + "base_file":"${packages}/AceJump/AceJump.sublime-settings", + "user_file":"${packages}/User/AceJump.sublime-settings", + "default" :"{\n\t$0\n}\n"}}, +{"caption":"Preferences: AceJump Settings: User" ,"command":"open_file" ,"args":{"file":"${packages}/User/AceJump.sublime-settings"}}, +{"caption":"Preferences: AceJump Settings: Default" ,"command":"open_file" ,"args":{"file":"${packages}/AceJump/AceJump.sublime-settings"}}, +{"caption":"Preferences: AceJump Keybinds: Default" ,"command":"open_file" ,"args":{"file":"${packages}/AceJump/Default (${platform}).sublime-keymap"}}, +{"caption":"Preferences: AceJump Keybinds: User" ,"command":"open_file" ,"args":{"file":"${packages}/User/Default (${platform}).sublime-keymap"}}, +{"caption":"Preferences: AceJump Keybinds" ,"command":"edit_settings" ,"args":{ + "base_file":"${packages}/AceJump/Default (${platform}).sublime-keymap", + "user_file":"${packages}/User/Default (${platform}).sublime-keymap", + "default" :"{\n\t$0\n}\n"}}, +] diff --git a/README.md b/README.md index f431ff5..0ef042a 100644 --- a/README.md +++ b/README.md @@ -105,12 +105,37 @@ In case there are more places to jump to than labels available, labels will be b ## Customization -In order to access AceJump settings, go to ```Preferences > Package Settings > AceJump > Settings - User```. +In order to access AceJump settings, go to ```Preferences > Package Settings > AceJump > Settings - User``` or open command palette commands: + + - `Preferences: AceJump Settings` to open default and user settings side-by-side + - `Preferences: AceJump Settings: Default` + - `Preferences: AceJump Settings: User` + - `Preferences: AceJump Keybinds: Default` to open default and user (common `Default (OSX).sublime-keymap` file, not AceJump-specific) keybinds side-by-side + - `Preferences: AceJump Keybinds: User` + - `Preferences: AceJump Keybinds` ### Key bindings -Go to ```Preferences > Package Settings > AceJump > Key Bindings - User```. -You can then override the bindings for any of the following commands: +Default keybindings are disabled to avoid conflicts with your other keybinds, you can enable them by adding __either__ of the following settings to your `Preferences.sublime-settings` file via `Preferences: Settings` command palette command (NOT `AceJump.sublime-settings`): + + - `"ace_jump_key_single":true,` every command mapped to a single key combo + - `"ace_jump_key_chain" :true,` j as a prefix key ( on a Mac) with letter-based "mnemonics" like `W`ord + - `"ace_jump_key_chome" :true,` j as a prefix key ( on a Mac) with more convenient home-row based locations + +| Command | Single | Chain | CHome | +|------------------------ |-------------------------------------- |-------------------------------------------------- |----------------------------------------------------------------------------------------------------------------------------- | +| `ace_jump_word` | ; | j, w | j, k | +| `ace_jump_char` | ' | j, c | j, l | +| `ace_jump_line` | . | j, l | j, ; | +| `ace_jump_within_line` | , | j, i | j, j | +| ↓ Modes | | | | +| `ace_jump_add_cursor` | ' | j, c | j, a, k[^1] or l or ; or j | +| `ace_jump_select` | ; | j, s | j, s, k[^1] or l or ; or j | +| `ace_jump_after` | . | j, a | j, f, k[^1] or l or ; or j | + +[^1]: instead of enabling a mode completes the sequence in one keybind + +Or you can then override the bindings for any of the following commands via ```Preferences > Package Settings > AceJump > Key Bindings - User```: - ```ace_jump_word``` - ```ace_jump_char```