Visual Studio Code 选项卡键不插入选项卡
Posted
技术标签:
【中文标题】Visual Studio Code 选项卡键不插入选项卡【英文标题】:Visual Studio Code Tab Key does not insert a tab 【发布时间】:2016-06-01 20:47:32 【问题描述】:我使用 Visual Studio Code 作为我的代码编辑器。 我在 Google 上进行了搜索,但找不到任何关于我的问题的信息。
问题很简单,在编辑器中按 ⇥ Tab 什么也没做。我希望它插入 4 个空格。
有人知道我可以做些什么来让 ⇥ Tab 像预期的那样工作吗?
【问题讨论】:
我遇到了一个问题,即选项卡只会在编辑器之外进行选项卡(在 UI 元素之间导航)。重新启动编辑器修复它。 不回答操作问题,但对于在搜索“visual studio tab not working”或在 Visual Studio 中点击 Tab 时出现问题后登陆此处的任何人选择块而不是添加缩进。可以参考this answerKarel Tamayo 自 2020 年 6 月起在 Code v1.45.1 中仍然存在问题。解决方案是删除Ctrl + M
的 Toggle Tab Key Moves Focus
键绑定(请参阅 @Addison 的答案)。奇怪的“功能”。
见VS reference for Tab trapping
谢谢!按ctrl+M
为我修复了它。无需重启
【参考方案1】:
我不小心为 Tab 键启用了不同的模式。通过按 Cmd+Shift+M(对于 Mac)或 Ctrl+M(适用于 Windows)。
来自Visual Studio Code Keybinding docs:
| Key | Command | Command id | | Ctrl + M | Toggle Use of Tab Key for Setting Focus | editor.action.toggleTabFocusMode |
当前的选项卡控制模式也应该显示在状态栏中:
【讨论】:
当我尝试使用代码折叠 (Ctrl + M, Ctrl + O
) 时发生在我身上。谢谢。
Setting Focus
是什么?
如果你误按了Ctrl+M,底部状态栏会有一个亮绿色的“Tab Moves Focus”。
@Jannunen 你是对的,可悲的是,对于我们这些拥有 25 英寸屏幕的人来说,没有人会注意到角落里那个小小的东西......
多么奇特的环境啊。这尤其令人困惑,因为 Ctrl-M 用于在 android 模拟器中打开开发菜单(用 React Native / Expo 编写)。当 VSCode 打开而不是模拟器时,我一定是不小心按下了它。不过,这是一个多么令人眼花缭乱的奇怪功能。【参考方案2】:
解决问题
按 ctrl+M 会使 ⇥ Tab 键移动焦点,而不是插入 ⇥ Tab 字符. 再次按下快捷键将其关闭。
禁用快捷方式
-
用 ctrl+K 打开“键盘快捷键”,然后用 ctrl+S。
或转到文件 > 首选项 > 键盘快捷键。
搜索
toggle tab key moves focus
。
右键,Remove Keybinding
。
【讨论】:
谢谢你!我使用ctrl + m
-> ctrl + k
-> ctrl + 0
折叠代码,几乎每天我都会在此之前不小心破坏我的标签:)
我刚刚安装了 MSVS 2019。我没有在“文件”选项卡下看到“首选项”。 ctrl-k, ctrl-s 打开一个 sn-ps 列表。我没有看到“切换 Tab 键移动焦点”选项。您使用的是哪个版本的 MSVS?
@riderBill - 这是最新的 VS Code 1.39.2 (2019-10-15)。您使用的是Microsoft Visual Studio,请不要与Visual Studio Code 混淆。
哦。 <: google messages>
没有明显的迹象表明发生了什么,多么愚蠢的 UI 设计。感谢您的回答。 :)【参考方案3】:
点击状态栏右下角的“Tab Moves Focus”。就是这样。
我相信我点击了 ctrl+M。执行此操作时,“选项卡移动焦点”选项卡/按钮显示在右下角。单击它会使其消失并重新开始工作。
【讨论】:
救了我,我不知道我是如何启用它的,但我安装了一个新键盘,突然 TAB 跳到不同的窗口。 微软产品内置了很多垃圾。另一个著名的是Windows 10中的Multiple Desktop,或者无法在Windows 10中创建桌面快捷方式。因此,当您尝试将 Skype 应用程序的快捷方式添加到桌面时,祝您好运【参考方案4】:单击资源管理器或任何其他不是编辑器的窗口,然后按 Ctrl + Shift(仅适用于 Mac)+ M,这是键盘快捷键上“切换 Tab 键移动焦点”的命令。
【讨论】:
有什么办法可以禁用这个“功能”吗? @AlexanderRyanBaggett 只需删除键绑定【参考方案5】:在我的情况下,我关注this advice并将vscode中的这个emmet设置更改为false
:
"emmet.triggerExpansionOnTab": false
我收到了错误Cannot read property 'value' of null
。它立即解决了问题。
【讨论】:
【参考方案6】:试试 CTR + M,它会像以前一样工作。
【讨论】:
【参考方案7】:截至 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
,如果您想更改组合键。
【讨论】:
在 Windows 上它只是Ctrl+M
默认为 Toggle Tab Key Moves Focus
。 Dan,这有点夸张,考虑到 Visual Studio 中格式化文档的默认设置实际上是 Ctrl+K、Ctrl+D - visualstudioshortcuts.com/2017【参考方案8】:
有这个问题。只需按“Ctrl + M”(在 Windows 上)。在 Mac 上可能是“CMD+M”。
【讨论】:
【参考方案9】:我在 xfce 上使用代码 - 执行以下操作来修复 Tab 键行为:
文件 -> 首选项 -> 设置
搜索“keyboard.dispatch”
复制到右侧面板并将值从“code”更改为“keyCode”
重新加载代码
【讨论】:
【参考方案10】:[编辑] 此答案适用于 MSVS(IDE,与 VS Code 相对)。微软和谷歌似乎不遗余力地为新产品选择令人困惑的名称。我暂时将这个答案留在这里,同时我(继续)寻找关于 MSVS 的等效 *** 问题。如果您认为我应该删除它,请在 cmets 中告诉我。或者更好的是,请指出这个问题的 MSVS 版本。
我最近安装了 MSVS 2017。我见过的所有建议都没有解决这个问题。我想出的解决方案适用于 MSVS 2015 和 2017。如果您发现它适用于其他版本,请在下面添加评论。
在工具 -> 选项 -> 文本编辑器 -> C/C++ -> 格式 -> 常规下,尝试取消选中“键入制表符时自动缩进”框。这似乎违反直觉,但它为我解决了这个问题。
【讨论】:
【参考方案11】:以上所有对我来说都失败了。 但我注意到 shift + ⇥ Tab 按预期工作(超出了行)。
所以我寻找“缩进线”快捷方式(分配给 alt + ctrl + cmd + 0 ),将其分配给选项卡,现在我又高兴了。
第二天早上编辑...
我也使用tab来接受sn-p建议,所以我将“Indent Line”的“when”设置为editorTextFocus && !editorReadonly && !inSnippetMode && !suggestWidgetVisible
。
【讨论】:
完美!感谢您找出有效的when
条件。【参考方案12】:
也许另一个程序正在干扰?关闭 Teamviewer 为我解决了这个问题。
【讨论】:
我也一样!!!我从来没有打开过 TeamViewer,而且我不小心把它打开了。添加更多信息:我运行了另一个 VS Code 实例,其中的选项卡工作正常,而在另一个选项卡中则无法正常工作。关闭 TeamViewer 后,选项卡在两种情况下都有效!【参考方案13】:我以前也遇到过这种情况,TeamViewer 客户端控制了 TAB 键。直到您关闭在后台打开的电视窗口,您才会知道这一点。
【讨论】:
【参考方案14】:确保未选中此项:
[ ] 工具 |选项 |文本编辑器 | C/C++ |格式化 |选项卡自动缩进
如果这有帮助,请告诉我!
【讨论】:
这与 Visual Studio 有关吗?我猜这个问题是针对 VS Code 提出的。【参考方案15】:对于那些不喜欢空格键的人 (- _ - )( - _ -)
⇥ Tab 的键绑定未设置为任何内容,因此您必须手动进行
导航到 Preferences/Environment/Keybindings 并搜索“tab”
单击底部的编辑绑定,然后按 Tab 键。
按“应用”,然后按“Ok”
键绑定!
【讨论】:
【参考方案16】:由于某种原因,更新后,我的 tab 键被解除了“tab”默认行为的绑定。所以我必须打开File>Preferences>Keyboad Shortcuts,搜索简单的“tab”行,然后再次绑定到tab键。很尴尬,但很有效。
【讨论】:
【参考方案17】:检查您的键映射(文件 > 首选项 > 键映射)[Ctrl+K Ctrl+S]。 在顶部的输入行中写入 'tab' 并将 tab 命令 与 tab 键 绑定。
它对我有用。一些扩展会覆盖它。
【讨论】:
【参考方案18】:在 Mac 上,
首选项 -> 设置 -> 搜索“选项卡”
取消选中Insert spaces when pressing tab
【讨论】:
【参考方案19】:不确定您使用的是什么操作系统,但在最新版本的 VS Code for Mac OS X 上存在一个已知问题。该错误已在最新版本 (0.10.0) 中修复。 9).
在 Mac OS X 上,您可以通过打开 VS Code 然后转到 [Code > Check for Updates] 来检查最新更新。
来源和更多信息:
https://code.visualstudio.com/Updates【讨论】:
最新的更新对我没有帮助 - 我取消了 3 月的内部人员发布,效果很好。以上是关于Visual Studio Code 选项卡键不插入选项卡的主要内容,如果未能解决你的问题,请参考以下文章
如何更改 Visual Studio Code 中的格式选项?
如何在 Visual Studio Code 快速打开视图中设置默认选项?
Visual Studio Code 中是不是有快速更改选项卡功能?
在 Visual Studio Code 中更改无标题选项卡的标题