2026-02-09
Environment
00

目录

输入法切换脚本
添加设置
其他VSC Vim插件常见设置
ubuntu中原生Vim9设置

info

OS: Ubuntu 24.04.3 LTS (Noble Numbat) x86_64

Vim Extension: Vim (vscodevim)

Fcitx Version: 4

其中部分按键的还原仅个人习惯,各位根据自己习惯调整即可

Vim好啊,还是得用Vim啊,VSCode舒服啊,这咋办呢

下载好插件后即可按下方操作继续,如果一上来怕出问题,可以在左下角临时关闭VIM

输入法切换脚本

  • INSERT -> NORMAL 强制切换英文输入法
  • NORMAL -> INSERT 记忆上次INSERT模式下的输入法类型

在喜欢的位置建立如下脚本

fcitx-switch.sh

bash
#!/bin/bash if [ "$1" = "2" ]; then /usr/bin/fcitx-remote -o else /usr/bin/fcitx-remote -c fi

记录文件绝对路径[DIR]/fcitx-switch.sh

添加设置

打开VSCode的Settings.json, 添加下面内容

json
"vim.autoSwitchInputMethod.enable": true, "vim.autoSwitchInputMethod.defaultIM": "1", "vim.autoSwitchInputMethod.obtainIMCmd": "/usr/bin/fcitx-remote", "vim.autoSwitchInputMethod.switchIMCmd": "[DIR]/fcitx-switch.sh {im}"

其他VSC Vim插件常见设置

仅个人习惯

json
"vim.useSystemClipboard": true, // 使用系统剪切板 "vim.smartRelativeLine": true, // 智能相对行号 "vim.mouseSelectionGoesIntoVisualMode": false, // 鼠标选中不自动切换至Visual "vim.handleKeys": { // 按件设置 "<C-c>": false, // 还原原生复制 "<C-v>": false, // 还原原生粘贴 "<C-x>": false, // 还原原生剪切 "<C-a>": false, // 还原原生全选 "<C-f>": false, // 还原原生查找 "<C-l>": false, // 还原原生跳转行/清除通知 "<C-s>": false, // 还原原生保存 "<C-z>": false, // 还原原生回退 "<C-n>": false, // 还原原生新建窗口 "<C-p>": false, // 还原原生搜索工具 "<C-i>": false, // continue快捷键 "<C-d>": false, // 还原muti cursor功能 // ... "<C-w>": true // 强制让 Vim 处理 Ctrl+w (用于窗口切换、关闭等) },

ubuntu中原生Vim9设置

修改vimr: vim ~/.vimrc

标准Vim9当中,在~/.vimrc中最后添加如下代码可以使得终端中的Vim得到相同的f4代码切换体验,但是可能会有点儿慢

bash
if executable('fcitx-remote') let g:fcitx_state = 0 autocmd InsertLeave * \ let g:fcitx_state = str2nr(system('fcitx-remote')) | \ call system('fcitx-remote -c') autocmd InsertEnter * \ if g:fcitx_state == 2 | \ call system('fcitx-remote -o') | \ endif endif

本文作者:XLY23333

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!