Tab in editor does something I can’t understand, certainly not what I would expect. It’s safe to say it’s not working at all.
The only way to select entry in Ctrl+P dialog is by mouse, Enter doesn’t work.
Tab in editor does something I can’t understand, certainly not what I would expect. It’s safe to say it’s not working at all.
The only way to select entry in Ctrl+P dialog is by mouse, Enter doesn’t work.
I’ve found the same issue with CTRL+P. I didn’t stick around long enough to find the other issues. I’m running ST3 again, but kinda thinking this might be the push to change editor altogether.
What keys are getting logged when you enable sublime.log_input(True)
in the console? What keyboard layout are you using?
Others have mentioned this problem in a different thread; turning on command logging shows that pressing the key is triggering an explicit insert
to add a newline. So in addition to double checking the input logging I would also suggest testing in safe mode to see if the same problem persists.
On turning on log inputs, I’m seeing enter being returned but still have the same problem. Go to searches don’t go to a result by hitting enter.
Tab in editor window shows “key evt: tab”, but doesn’t insert anything. Enter in Ctrl+Shift+P doesn’t register any key (neither main nor numpad), in editor window Enter sends “key evt: enter”. System is Xubuntu, keyboard layout is English (US). xev on Enter shows keycode 36 (keysym 0xff0d, Return)
Oops, my mistake. Enter works in Ctrl-Shift-P, I meant Ctrl-P, and it does register as “key evt: enter”, just not doing anything. I can type e.g. Ctrl-P :33 and editor will position cursor on line 33, but hitting Enter doesn’t do anything.
It could be that you’ve overridden the default keymap or another package is interfering.
Overriding the default keymap makes it such that changes to it won’t apply. It’s not a problem until an update requires it to change.
With ST4 you have to be more precise if you intend to modify the ‘enter’ behaviour in the editor.
Here’s what I use for ST4 (enter insert a new line and ctrl+enter split the current line, which is the obvious correct behaviour ). Note the contexts.
{ "keys": ["ctrl+enter"], "command": "insert", "args": {"characters": "\n"} },
{ "keys": ["ctrl+enter"], "command": "select", "args": { "extend": true }, "context":
[
{ "key": "overlay_has_focus", "operator": "equal", "operand": true },
{ "key": "overlay_name", "operator": "equal", "operand" : "goto" }
]
},
{ "keys": ["enter"], "command": "run_macro_file", "args": {"file": "Packages/Default/Add Line.sublime-macro"},
// taking SublimeREPL into account (so that commands can be evaluated as expected in this context)
"context":
[
{ "key": "setting.repl", "operator": "equal", "operand": false },
{ "key": "overlay_has_focus", "operator": "equal", "operand": false },
{ "key": "panel_has_focus", "operator": "equal", "operand": false }
]
},
Problem solved by copying default keymap to the user keymap (I only had a few changes at the bottom not related to either enter or tab, so it was easy). Few suggestions:
Since ST4 contains breaking changes (i.e. old default keymap doesn’t work anymore), it would be reasonable to set a different apt source for ST4 so that users update when they are ready to and prepared for trouble. I updated automatically using apt/stable
source which in the hindsight doesn’t look stable at all.
For the same reason it would be reasonable to use another config directory, not sublime-text-3
leaving old directory intact so users can downgrade to ST3, not everybody is ready to debug editor problems without a possibility to roll things back, at least for a while.
If you copied the bindings from the default to the user keymap, that would suggest that the defaults are fine ad something in either your user bindings or in the bindings of one of the packages you installed was blocking it. It’s entirely possible for packages to include key bindings without exposing them, for example. Bindings in User
always trump everything else, so copying the defaults there is enforcing that some other package can’t break them.
In case you’re not aware, you can create a folder in that location named sublime-text
, or manually duplicate the existing one and rename it, and ST4 will use that one instead, allowing you to easily run both.
Arguably it’s a much worse upgrade path to start a fresh version with no configuration whatsoever.
I get the feeling that @vmoroz has actually been copying the default keymap in its entirety to the user keymap. So the issue here was that he had the old default keymap from ST3 as his user keymap overriding everything else. User keymap should be blank, or contain only your custom modifications, NOT being a mirror of the default keymap.