Когда я выделяю блок кода в Sublime Text 3 и нажимаю клавишу Tab, это не означает, что весь блок, как он использовался. Вместо этого он удаляет выделенный код.
Кто-нибудь знает, как это исправить?
Когда я выделяю блок кода в Sublime Text 3 и нажимаю клавишу Tab, это не означает, что весь блок, как он использовался. Вместо этого он удаляет выделенный код.
Кто-нибудь знает, как это исправить?
Я обнаружил, что это происходит, когда я пропустил диалог "купить это программное обеспечение" и не отклонил его.
Alt-tab (или Cmd-tab на Mac), чтобы проверить, есть ли диалоговое окно, ожидающее ответа, и отпустите его. Это устранит проблему.
Для всех, кто приходит сюда из Google, сначала прочтите это:
SublimeText 2 (работает и для 3) вдруг начал делать это со мной сегодня, не меняя никаких настроек. Все, что мне нужно было сделать, это перезапустить программу, и она исправлена.
Это поведение по умолчанию для Sublime Text. Если вы выберете несколько строк, это будет отступ, но если вы выберете одну строку (выбор не содержит \n
), она запустит команду insert_best_completion
и удалит выделение.
В вашем пользователе .sublime-keymap
добавьте следующее:
{ "keys": ["tab"], "command": "indent", "context":
[
{ "key": "text", "operator": "regex_contains", "operand": "." }
]
},
Это сделает ваш ключ вкладки всегда отступом. Не уверен, что он будет конфликтовать с автозаполнением, если вы настроили его на клавише Tab.
То же самое для unindenting с shift + Tab:
{ "keys": ["shift+tab"], "command": "unindent", "context":
[
{ "key": "text", "operator": "regex_contains", "operand": "." }
]
},
Как и в ответе Dom выше, это также происходит, когда сообщение об обновлении для возвышенности появляется и не находится в фокусе. Я также обнаружил, что если вы откроете Sublime, включите другой монитор, тогда сообщение об обновлении также появится на экране.
Единственное исправление, похоже, перезапускает возвышенное. Это также повторно центрирует диалоговое окно.
Это происходило и со мной, и это было связано с тем, что мой выделенный текст оказался блоком, но на самом деле это была одна строка обернутого текста. По умолчанию ST3 заменит одну выделенную строку символом tab
.
Для меня удобнее выбирать un/indent, будь то несколько строк или нет, поэтому я добавил следующее в свой файл Sublime-keymap для пользователя.
{ "keys": ["tab"], "command": "indent", "context":
[
{ "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true },
]
}
То же самое случилось со мной. Просто перейдите к настройкам- > привязки клавиш, а затем в пользовательские (справа) ключевые слова добавьте это:
[
{ "keys": ["tab"], "command": "indent" },
{ "keys": ["shift+tab"], "command": "unindent" },
]
Затем перезапустите sublime, и он будет работать нормально!
Примечание: это нарушает вкладку, дополняя все, но копирование настроек по умолчанию будет исправлять это. Также, если вы используете enter, он отлично работает. Удачи!