Mac中vscode的vim为什么不能一直长按j或者长按k。

在VS Code中使用vim插件时,无法一直长按jk键进行持续移动的问题,主要是由于Mac系统的一个特定功能所导致的,而不是VS Code或vim插件本身的问题。这个功能被称为"Press and Hold for Keys",它允许用户在按住某个键时显示一个额外的字符选择菜单,而不是直接重复该键的功能。

为了解决这个问题,可以在Mac的终端中通过修改系统偏好设置来禁用这个功能。以下是一些具体的步骤和命令:

解决方案

  1. 通过终端命令禁用"Press and Hold"功能

    打开终端(Terminal),并输入以下命令之一来禁用VS Code(或VS Code Insiders)中的"Press and Hold"功能:

    bash 复制代码
    defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false

    如果你同时使用了VS Code和VS Code Insiders,你可能还需要对VS Code Insiders执行相同的命令:

    bash 复制代码
    defaults write com.microsoft.VSCodeInsiders ApplePressAndHoldEnabled -bool false

    注意:这些命令是特定于VS Code和VS Code Insiders应用的。如果你希望全局禁用这个功能,可以使用以下命令:

    bash 复制代码
    defaults write -g ApplePressAndHoldEnabled -bool false

    或者

    bash 复制代码
    defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool false

    使用全局设置可能会影响所有应用程序,包括系统应用。

  2. 重启VS Code

    修改设置后,需要重启VS Code以使更改生效。

  3. 调整键盘按键重复延迟(可选)

    如果希望进一步改善按键重复的效果,可以在Mac的系统偏好设置中的"键盘"部分调整"按键重复"和"重复前延迟"的设置。降低"重复前延迟"可以让按键重复响应更快。

其他注意事项

  • 在某些情况下,可能需要重启电脑才能使更改完全生效。
  • 如果将来需要重新启用"Press and Hold"功能,可以将上述命令中的-bool false更改为-bool true,并执行相应的命令。

通过上述步骤,能够解决在VS Code的vim插件中无法长按jk键进行持续移动的问题。

相关推荐
九天轩辕2 小时前
跨平台符号表生成规则详解:Windows/Linux/macOS/OHOS
linux·windows·macos
1-1=03 小时前
Visual Studio Code 简介
ide·vscode·编辑器
π同学5 小时前
ESP-IDF+vscode开发ESP32第一讲——GPIO
vscode·esp32·esp-idf
阿捏利5 小时前
详解Mach-O(三十三)Mach-O __mod_term_func节
macos·ios·c/c++·mach-o
零千叶6 小时前
养龙虾,本地部署OpenClaw
人工智能·macos·openclaw
c++之路6 小时前
Vim 完整安装与配置指南(Ubuntu 系统 + Vimplus 增强)
ubuntu·编辑器·vim
HookJames6 小时前
在VSCode中部署OpenRouter的时候,遇到的问题
ide·chrome·vscode
2501_916007477 小时前
提高开发效率的尝试,用快蝎(kxapp)完成 iOS 项目的创建、调试与构建
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
Mr_sun.7 小时前
Mac中通过PD安装Rockly、Centos版本的linux并设置静态ip与安装Docker
linux·macos·centos
OYangxf8 小时前
vscode在Linux环境下,怎么才能装插件codex以保证不发生token exchange failed
ide·vscode