当我在Sublime Text 3中突出显示一段代码并按下Tab键时,它不会像过去那样缩进整个块。相反,它会删除突出显示的代码。
有人知道如何解决这个问题吗?
答案 0 :(得分:158)
我发现当我错过了“购买此软件”对话并且没有将其解雇时,就会发生这种情况。
Alt-tab(或Mac上的Cmd-tab)检查是否有对话框等待响应并将其关闭。这将解决问题。
答案 1 :(得分:34)
对于任何从谷歌来到这里的人,请先阅读此内容:
SublimeText 2(也适用于3)今天突然开始对我这样做而不改变任何设置。我所要做的就是重新启动程序并自行修复。
答案 2 :(得分:13)
这是Sublime Text的默认行为。如果选择多行,它将缩进,但如果选择单行(选择不包含\n
),它将运行insert_best_completion
命令并删除选择。
在您的用户.sublime-keymap
中添加以下内容:
{ "keys": ["tab"], "command": "indent", "context":
[
{ "key": "text", "operator": "regex_contains", "operand": "." }
]
},
这将使您的Tab键始终缩进。如果你在 Tab 键上设置它,它不确定它是否会与自动完成冲突。
与 shift + 标签进行联系同样如此:
{ "keys": ["shift+tab"], "command": "unindent", "context":
[
{ "key": "text", "operator": "regex_contains", "operand": "." }
]
},
答案 3 :(得分:3)
与上面的Dom的答案类似,当sublime的升级消息出现并且不在焦点时也会发生这种情况。我还发现,如果你打开Sublime启用另一台显示器,那么升级消息也会在屏幕外显示。
唯一的修复方法似乎是重启sublime。这也使对话框重新居中。
答案 4 :(得分:1)
这也发生在我身上,这是因为我选择的文本似乎是一个块,但实际上是一行包装文本。默认情况下,ST3将使用tab
字符替换单个选定的行。
对我来说,取消/缩进选择更方便,无论它们是否为多行,因此我将以下内容添加到用户特定的sublime-keymap文件中。
{ "keys": ["tab"], "command": "indent", "context":
[
{ "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true },
]
}
答案 5 :(得分:1)
当我单击“选项卡”并检查底部的状态栏时,我发现了问题,它应该告诉您它为什么发生。
找到相关软件包后,我就
现在效果很好。
答案 6 :(得分:0)
同样的事发生在我身上。只需转到首选项 - >键绑定然后在用户(右)键绑定中添加:
[
{ "keys": ["tab"], "command": "indent" },
{ "keys": ["shift+tab"], "command": "unindent" },
]
然后重新启动sublime,它应该可以正常工作!
注意:这确实会破坏选项卡的完成,但复制选项卡默认值将解决此问题。此外,如果您使用输入它也可以正常工作。祝你好运!
答案 7 :(得分:0)
您可以检查以下可能导致此问题的点