I am having issue with backspace
key binding which is not deleting words in Sublime Text 2 only. In order to back space, either I have to highlight the character(s) that I want to delete and hit backspace or use ctrl + z
to go back. And, ctrl + backspace
erases the enter word rather than just one character(s). Also, shift + backspace
has no effect eventhough it suppose to do the same thing as backspace.
I enabled sublime_log_commands(True)
to display the key binding in real time and the log displays the proper binding taking place however it does not deleting any character(s) at all.
backpace
=> command: left_delete
shift + backspace
=> command: left_delete
&
Ctrl + backspace
=> command: delete_word {"forward": false}
( this one I am fine with)
Then, I installed FindKeyConflicts
plug-in to see if there was any conflicts but the out put seems fine, IMO.
[shift+backspace]
left_delete Default
.
.
.
[ctrl+shift+backspace]
left_delete Default
run_macro_file Default
.
.
[ctrl+backspace]
delete_word Default
.
.
[backspace]
left_delete Default
run_macro_file Default
[{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":
"regex_contains", "operand": "^\"", "match_all": true, "key": "following_text"}, {"operator":
"regex_contains", "operand": "\"$", "match_all": true, "key": "preceding_text"}, {"operator":
"equal", "operand": true, "match_all": true, "key": "selection_empty"}]
run_macro_file Default
[{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":
"regex_contains", "operand": "^'", "match_all": true, "key": "following_text"}, {"operator":
"regex_contains", "operand": "'$", "match_all": true, "key": "preceding_text"}, {"operator":
"equal", "operand": true, "match_all": true, "key": "selection_empty"}]
run_macro_file Default
[{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":
"regex_contains", "operand": "^\\)", "match_all": true, "key": "following_text"},
{"operator": "regex_contains", "operand": "\\($", "match_all": true, "key": "preceding_text"},
{"operator": "equal", "operand": true, "match_all": true, "key": "selection_empty"}]
run_macro_file Default
[{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":
"regex_contains", "operand": "^\\]", "match_all": true, "key": "following_text"}, {"operator":
"regex_contains", "operand": "\\[$", "match_all": true, "key": "preceding_text"}, {"operator":
"equal", "operand": true, "match_all": true, "key": "selection_empty"}]
run_macro_file Default
[{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":
"regex_contains", "operand": "^\\}", "match_all": true, "key": "following_text"},
{"operator": "regex_contains", "operand": "\\{$", "match_all": true, "key":
"preceding_text"}, {"operator": "equal", "operand": true, "match_all": true, "key":
"selection_empty"}]
run_macro_file CSS
[{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":
"regex_contains", "operand": "^;", "match_all": true, "key": "following_text"}, {"operator":
"regex_contains", "operand": ":$", "match_all": true, "key": "preceding_text"}, {"operator":
"equal", "operand": true, "match_all": true, "key": "selection_empty"}, {"operator":
"equal", "operand": "source.css - meta.selector.css", "match_all": true, "key": "selector"}]
If anyone has any suggestion or work around on how to restore normal backspace
operation, I would love to hear it.
Since you said it fixed the issue, I will add it as an answer:
Close all instances, go to your Sublime Text 2 folder and rename to Sublime Text 2 - Backup (for linux, sublime-text-2.backup). So that you don't lose any important stuff. Reopen sublime. This will re-add the aforementioned folder with the default bindings and no extra plugins.
To see what is causing the issue: start adding back the plugins you were using, one by one, and see which breaks backspace. It could also be an issue with conflicting key bindings. So add personal bindings in the same manner as plugins.