我使用vim插件,我通常只需按住j就可以在vim中滚动。在VSCode中,j只执行一个j命令,无论它持有多长时间。
即使在vanilla vscode中,这也不起作用 - 如果您尝试输入长块#########################,则会出现问题##用于评论分隔符。知道如何启用此功能吗?
答案 0 :(得分:146)
要禁用Apple仅按住VSCode,请在终端中运行此命令:
defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false
然后重启VSCode。
要重新启用,请在终端中运行此命令:
defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool true
答案 1 :(得分:28)
你在OSX上,对吗?如果是这样,问题可能是Apple的“Press& Hold”,您可以在长按上选择其他字符。
您可以在终端中使用defaults命令禁用此“功能”:
defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool false
之后你必须重新启动VSCode。
重新启用之前的行为:
defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool true
答案 2 :(得分:11)
VS Code的official vim-plugin提到了如何在macOS上设置
defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false
defaults delete -g ApplePressAndHoldEnabled # If necessary, reset global default
答案 3 :(得分:7)
如果您使用的是Mac,并且使用VSCodium:
defaults write com.visualstudio.code.oss ApplePressAndHoldEnabled -bool false
其他针对com.microsoft.VSCode
的答案无效,因为您没有运行MS VSCode。 default write
命令在~/Library/Preferences/
后面的.plist
中生成/更新文件,您必须定位正确的文件。
我的软件和版本:
macOS Mojave 10.14.6
VSCodium 1.41.1
-启用neovim的Vim(由vscodevim发行)1.12.4
Neovim 0.4.3
Vim 8.1.2250
答案 4 :(得分:2)
史蒂夫上面的回答因为全局设置而对我不起作用。它还让我很好奇在哪里可以找到应用的com.microsoft.VScode
域名。以下是对我有用的和一般化的表述:
要为特定应用启用重复功能,例如VSCode,请首先确保没有覆盖全局设置。
defaults delete -g ApplePressAndHoldEnabled
然后启用特定应用程序的设置,您可以通过在安装它的Contents文件夹下的Info.plist
文档中找到该应用程序的域名来找到该域名。
实施例
<key>CFBundleIdentifier</key>
<string>com.microsoft.VSCode</string>
然后在命令行上设置设置。
defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false
您也可以使用此模式其他应用程序特定设置。只需确保您的设置不会被全局覆盖。
有关defaults
类型defaults help
的详细信息。还有一点需要注意,如果您的用户已经是管理员,则无需将其作为sudo
运行。
答案 5 :(得分:1)
Steve的最佳答案不适用于我的Mac,“默认写入com.microsoft.VSCode ApplePressAndHoldEnabled -bool false”,但是以下对我有用:
sudo defaults write -g ApplePressAndHoldEnabled -bool false
答案 6 :(得分:1)
对于我的新笔记本电脑,上述方法都不适合我,而是我必须使用:
defaults write -g ApplePressAndHoldEnabled -bool false
答案 7 :(得分:0)
Though I reset with above mentioned commands and even after reboot, Once I open VSCode they are getting reset, so I had 'code' script to set them back every time I open VSCode editor. $ cat code VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* & defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false defaults delete -g ApplePressAndHoldEnabled
答案 8 :(得分:0)
对于那些使用VS Code Insiders的人,只需将Bundle标识符更改为:
defaults write com.microsoft.VSCodeInsiders ApplePressAndHoldEnabled -bool false
答案 9 :(得分:0)
Mac 要启用重复键,请在终端中执行以下操作并重新启动 VS Code:
$ defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false # For VS Code
$ defaults write com.microsoft.VSCodeInsiders ApplePressAndHoldEnabled -bool false # For VS Code Insider
$ defaults write com.visualstudio.code.oss ApplePressAndHoldEnabled -bool false # For VS Codium
$ defaults delete -g ApplePressAndHoldEnabled # If necessary, reset global default
我们还建议在系统偏好设置 -> 键盘中增加按键重复和延迟直到重复设置。
这在我们的自述文件中https://github.com/VSCodeVim/Vim/blob/master/README.md#mac-setup