我使用 Visual Studio Code 作为我的代码编辑器。我在谷歌上进行了搜索,但找不到任何关于我的问题的信息。
问题很简单,在编辑器中按 ⇥ Tab 什么也不做。我期待它插入4个空格。
任何人都知道我可以做些什么来让 ⇥ Tab 像预期的那样工作?
Ctrl + M
的 Toggle Tab Key Moves Focus
键绑定(请参阅@Addison 的答案)。奇怪的“功能”。
ctrl+M
为我修复了它。无需重新启动
我不小心为 tab 键启用了不同的模式。通过按 Cmd+Shift+M(对于 Mac)或 Ctrl+M(对于 Windows)来修复它。
从 Visual Studio Code Keybinding docs:
|钥匙 |命令 |命令编号 | | Ctrl + M | Toggle 使用 Tab 键设置焦点 | editor.action.toggleTabFocusMode |
当前的选项卡控制模式也应该显示在状态栏中:
https://i.stack.imgur.com/RTMqF.png
解决问题
按 ctrl+M 会导致 ⇥ Tab 键移动焦点,而不是插入 ⇥ Tab 字符。再次按下快捷方式将其关闭。
禁用快捷方式
使用 ctrl+K 打开“键盘快捷键”,然后按 ctrl+S。或转到文件 > 首选项 > 键盘快捷键。搜索切换选项卡键移动焦点。右键单击,删除键绑定。
ctrl + m
-> ctrl + k
-> ctrl + 0
折叠代码,几乎每天我都在此之前不小心破坏了我的标签 :)
点击状态栏右下角的“Tab Moves Focus”。而已。
我相信我点击了 ctrl+M。执行此操作时,“选项卡移动焦点”选项卡/按钮显示在右下角。单击它会使其消失并重新开始工作。
https://i.stack.imgur.com/O0wxo.png
单击资源管理器或任何其他不是编辑器的窗口,然后按 Ctrl + Shift(仅适用于 Mac)+ M,这是键盘快捷键上“切换 Tab 键移动焦点”的命令。
在我的情况下,我遵循 this advice 并将 vscode 中的这个 emmet 设置更改为 false
:
"emmet.triggerExpansionOnTab": false
我收到错误 Cannot read property 'value' of null
。它立即解决了问题。
尝试 CTR + M 它将像以前一样工作。
截至 2018 年 12 月,在使用 VSCode 1.29.1 的 macOS Mojave 10.14.2 上,“切换 Tab 键移动焦点”的默认键绑定设置为 Command+Shift+M
。如果您对此感到困惑,则使用该组合键应该可以解决问题。
如果要更改组合键,请执行 Command+K Command+S
以调出热键设置,然后搜索 Toggle Tab Key Moves Focus
或 editor.action.toggleTabFocusMode
。
Ctrl+M
默认为 Toggle Tab Key Moves Focus
。 Dan,这有点夸张,考虑到 Visual Studio 中格式化文档的默认设置实际上是 Ctrl+K,Ctrl+D - visualstudioshortcuts.com/2017
有这个问题。只需按“Ctrl + M”(在 Windows 上)。在 Mac 上可能是“CMD+M”。
我在 xfce 上使用代码 - 执行以下操作来修复 Tab 键行为:
文件 -> 首选项 -> 设置
搜索“keyboard.dispatch”
复制到右侧面板并将值从“code”更改为“keyCode”
重新加载代码
以上所有对我来说都失败了。但我注意到 shift + ⇥ Tab 按预期工作(超出线)。
所以我寻找“缩进线”快捷方式(分配给 alt + ctrl + cmd + 0 ),将其分配给制表符,现在我又高兴了。
第二天早上编辑...
我还使用标签来接受片段建议,因此我将“缩进行”的“时间”设置为 editorTextFocus && !editorReadonly && !inSnippetMode && !suggestWidgetVisible
。
when
条件。
[编辑] 这个答案适用于 MSVS(IDE,而不是 VS Code)。微软和谷歌似乎不遗余力地为新产品选择令人困惑的名称。我暂时将这个答案留在这里,同时我(继续)寻找关于 MSVS 的等效 stackoverflow 问题。如果您认为我应该删除它,请在评论中告诉我。或者更好的是,将我指向这个问题的 MSVS 版本。
我最近安装了 MSVS 2017。我见过的所有建议都没有解决这个问题。我想出的解决方案适用于 MSVS 2015 和 2017。如果您发现它适用于其他版本,请在下面添加评论。
https://i.stack.imgur.com/1fFou.png
也许另一个程序正在干扰?关闭 Teamviewer 为我解决了这个问题。
我以前也发生过这种情况,TeamViewer 客户端控制了 TAB 键。在您关闭在后台打开的电视窗口之前,您不会知道这一点。
确保未选中:
[ ] 工具 |选项 |文本编辑器 | C/C++ |格式化 |选项卡上的自动缩进
让我知道这是否有帮助!
对于那些不关心空格键生活的人(- _ - )( - _ -)
⇥ Tab 的键绑定未设置为任何内容,因此您必须手动进行导航到 Preferences/Environment/Keybindings 并搜索“tab”单击底部的 Edit Binding 并按 tab 键。按“应用”然后“确定”键绑定!
出于某种原因,更新后,我的选项卡键与“选项卡”默认行为解除绑定。所以我必须打开 File>Preferences>Keyboad Shortcuts,搜索简单的“tab”行,然后再次绑定到 tab 键。很尴尬,但工作。
https://i.stack.imgur.com/u0Fsu.png
检查您的键映射(文件 > 首选项 > 键映射)[Ctrl+K Ctrl+S]。在顶部的输入行中写入“选项卡”并使用选项卡键绑定选项卡命令。
这个对我有用。一些扩展覆盖它。
2022 年,以上不再工作,微软更改了键绑定
在 Mac 上,Cmd + shift + M 不再工作
相反,您应该使用: ctrl + shift + M
https://i.stack.imgur.com/SwnGP.jpg
以上都不适合我。对我来说,问题在于 VSCode 无法编辑该文件。您会在顶部的文件选项卡上看到一个小挂锁。只需关闭选项卡并再次打开文件。标签应该像往常一样工作。
不确定您使用的是什么操作系统,但在最新版本的 VS Code for Mac OS X 上存在一个已知问题。该错误已在最新版本 (0.10.9) 中修复。
在 Mac OS X 上,您可以通过打开 VS Code 然后转到 [Code > Check for Updates] 来检查最新更新。
来源和更多信息:
https://code.visualstudio.com/Updates
不定期副业成功案例分享
Ctrl + M, Ctrl + O
) 时发生在我身上。谢谢。Setting Focus
是什么?