我使用Visual Studio Code作为我的代码编辑器。 我在谷歌上做了一个搜索,但没有找到任何关于我的问题。
问题很简单,在编辑器中按⇥Tab没有任何作用。我期望它插入4个空格。
有人知道我可以做什么来让⇥标签像预期的工作吗?
我使用Visual Studio Code作为我的代码编辑器。 我在谷歌上做了一个搜索,但没有找到任何关于我的问题。
问题很简单,在编辑器中按⇥Tab没有任何作用。我期望它插入4个空格。
有人知道我可以做什么来让⇥标签像预期的工作吗?
当前回答
[编辑]这个答案是针对MSVS (IDE,而不是VS Code)。微软和谷歌似乎特意为新产品选择了令人困惑的名字。我现在把这个答案留在这里,而我(继续)寻找关于MSVS的等效stackoverflow问题。如果你认为我应该删除它,请在评论中告诉我。或者更好的是,给我指出这个问题的MSVS版本。
我最近安装了MSVS 2017。我所看到的建议都没有解决这个问题。我想出的解决方案适用于MSVS 2015和2017。如果您发现它适用于其他版本,请在下面添加注释。
在“工具->选项->文本编辑器-> C/ c++ ->格式->通用”下,尝试取消选中“键入制表符时自动缩进”框。这似乎有违直觉,但它为我解决了问题。
其他回答
截至2018年12月,在使用VSCode 1.29.1的macOS Mojave 10.14.2上,“切换Tab键移动焦点”的默认键绑定设置为Command+Shift+M。如果你遇到这个问题,使用这个组合键应该可以解决这个问题。
做Command+K Command+S拉出热键设置,然后搜索切换Tab键移动焦点或editor.action.toggleTabFocusMode如果你想改变键组合。
确保这个没有被选中:
[]工具|选项|文本编辑| C/ c++ |格式化|自动缩进标签
如果有帮助,请告诉我!
在2022年,上面不再工作,微软改变了密钥绑定
在Mac上,Cmd + shift + M不再工作
相反,你应该使用:ctrl + shift + M
证据如下:
在我的案例中,我遵循了这个建议,并将vscode中的emmet设置更改为false:
"emmet.triggerExpansionOnTab": false
我收到错误不能读取属性“值”为空。它立即解决了问题。
我不小心为tab键启用了不同的模式。固定按Cmd+Shift+M (Mac),或Ctrl+M (Windows)。
来自Visual Studio Code Keybinding文档:
|关键字|命令|命令id | | Ctrl + M |切换使用Tab键设置焦点| editor.action.toggleTabFocusMode |
当前选项卡控制模式也应该显示在状态栏中: