Sublime Text 2 move cursor out of parenthesis, quo

2019-01-30 00:08发布

I need a fast way to make the cursor jump outside the auto wrap qoutes or other syntax elements. I don't want to have to reach down to my arrow keys each time, and definitely don't want to go to my mouse.

enter image description here

Is there a quick and easy way to solve this for my workflow?

12条回答
甜甜的少女心
2楼-- · 2019-01-30 00:23

Ctrl + M is the default one that I have on windows machine. Just do it

查看更多
再贱就再见
3楼-- · 2019-01-30 00:26

You can use a shortcut (shift+space, or whatever you like) to move the cursor.

In your Key Bindings - User:

{ "keys": ["shift+space"], "command": "move", "args": {"by": "characters", "forward": true} }
查看更多
Deceive 欺骗
4楼-- · 2019-01-30 00:26

A more complete way to make a key binding would be:

    { "keys": ["shift+space"], "command": "move", "args": {"by": "characters", "forward": true}, "context":
        [
            { "key": "following_text", "operator": "regex_contains", "operand": "^[)\"\\]]", "match_all": true },
            { "key": "auto_complete_visible", "operator": "equal", "operand": false }
        ]   
    },

Assuming you want shift+space as the shortcut. Or you can change it to tab as well

As found in http://www.sublimetext.com/forum/viewtopic.php?f=3&t=5174#p23086

查看更多
再贱就再见
5楼-- · 2019-01-30 00:28

Following Riccardo Marotti's post;

If you would like to bypass the bracket on the next line, you can replace "characters" with "lines" in the args section.

{ "keys": ["shift+space"], "command": "move", "args": {"by": "lines", "forward": true} }
查看更多
仙女界的扛把子
6楼-- · 2019-01-30 00:29

I made a few key bindings out of macros as well.

You must make a macro for these, unless you want to spend more time building them, but it's really easy. Just go to Sublime Text, Tools > Record Macro, or hit ctrl Q. Save the file in Packages/User/ and then hit , to open up your User Settings. Paste the settings below in there and boom. ( The | below represents my cursor )

enter image description here

Here are the one's I chose:


Function auto-bracketizer

When the cursour is here:

totallyAwesomeness(|) 

Use the option + tilda shortcut.

⌥ ~

This prefills the function with brackets and the text ' # code... ' highlighted. It only works when inside the parenthesis.

Sublime User Settings

{
"keys": ["option+`"], "command": "run_macro_file", "args": {"file": "Packages/User/superBracketizeFunction.sublime-macro"}
},

Download Macro


Auto-End Line With Semicolon

When the cursour is here:

echo 'say what!!??|'

Use the command + semicolon shortcut.

⌘ ;

This adds a closing ; at the end of current line and moves you to the line below it. It actually works wherever you are on the line.

Sublime User Settings

{
"keys": ["super+;"], "command": "run_macro_file", "args": {"file":  "Packages/User/superEndLineWiSemiColin.sublime-macro"}
},

Download Macro


Exit Argument & Exit Function

When your cursor is anywhere inside the function it will end up here:

public function totallyAwesomeness()
    {
        echo 'say what!!??';
    } |
    echo 'yep... that just happened';

Use the command + enter shortcut.

⌘ Enter

This will let you jump outside the argument and a space to the right as well as anywhere from within the function it will jump you out of it just being the closing bracket.

Sublime User Settings

{
"keys": ["option+enter"], "command": "run_macro_file", "args": {"file": "Packages/User/superExitFunctionArg.sublime-macro"}
},

Download Macro


Just in case you don't know what the path is to your User folder is, it is shown below.

/Users/alexcory/Library/Application Support/Sublime Text 3/Packages/User/

Also the Library folder is usually hidden, so you can download a program called Revealer that will allow you to toggle those hidden files.

If you want to know how I made these just hit me up and I'll show you! :D

查看更多
贪生不怕死
7楼-- · 2019-01-30 00:30

I use ctrl+f to move cursor one space forward. Also, on mac, I interchanged caps lock with ctrl. caps lock+f is much easier to reach. It works fairly well for me.

查看更多
登录 后发表回答