我使用Visual Studio Code作为我的代码编辑器。 我在谷歌上做了一个搜索,但没有找到任何关于我的问题。

问题很简单,在编辑器中按⇥Tab没有任何作用。我期望它插入4个空格。

有人知道我可以做什么来让⇥标签像预期的工作吗?


当前回答

有这个问题。只需按“Ctrl + M”(Windows)。在Mac上可能是“CMD+M”。

其他回答

我在xfce上使用代码-做了以下修复Tab键行为:

File -> Preferences -> Settings

搜索“keyboard.dispatch”

复制到右边面板并将值从"code"改为"keyCode"

重新加载代码

以上这些对我来说都失败了。 但我注意到shift +⇥Tab按预期工作(突出行)。

所以我寻找“缩进行”快捷键(它被分配给alt + ctrl + cmd + 0),分配给制表符,现在我又高兴了。 第二天早上编辑……

我还使用选项卡来接受片段建议,所以我已经设置了“缩进行”的“当”到editorTextFocus && !editorReadonly && !inSnippetMode && !

[编辑]这个答案是针对MSVS (IDE,而不是VS Code)。微软和谷歌似乎特意为新产品选择了令人困惑的名字。我现在把这个答案留在这里,而我(继续)寻找关于MSVS的等效stackoverflow问题。如果你认为我应该删除它,请在评论中告诉我。或者更好的是,给我指出这个问题的MSVS版本。

我最近安装了MSVS 2017。我所看到的建议都没有解决这个问题。我想出的解决方案适用于MSVS 2015和2017。如果您发现它适用于其他版本,请在下面添加注释。

在“工具->选项->文本编辑器-> C/ c++ ->格式->通用”下,尝试取消选中“键入制表符时自动缩进”框。这似乎有违直觉,但它为我解决了问题。

点击资源管理器或任何其他不是编辑器的窗口,然后按Ctrl + Shift(仅适用于Mac) + M,这是命令“切换Tab键移动焦点”的键盘快捷键。

在我的案例中,我遵循了这个建议,并将vscode中的emmet设置更改为false:

"emmet.triggerExpansionOnTab": false

我收到错误不能读取属性“值”为空。它立即解决了问题。