vscode+vim配置小记

news/2025/1/6 21:14:19/文章来源:https://www.cnblogs.com/shenleblog/p/18642576

引入

在windows系统下使用vscode+vim编写代码时会遇到一个令人略有不爽的小麻烦。
在vim的normal模式下,首先需要进入insert模式才能正常编写。这里一般是在英文输入法键入相应字母才能进入,比如“i”和“o”
我们进入insert模式之后,在敲代码的过程中难免会需要增加些中文注释,这个时候我们的输入法就从英文切换到中文了。
按esc退回normal模式时,输入法却保留在了中文输入法,这时想再进入insert模式就需要再次切换到英文输入法,我经常忘记这回事就经常被输入法卡住。

解决

终于有意上网查找解决这个不大不小的麻烦的方法:
以下是我自己的基于windows系统下对于vscode+vim插件关于自动切换输入法的解决方案小结

使用im-select插件
github链接:https://github.com/daipeihust/im-select

  • 在github上下载项目到本地,将项目内的exe执行文件移到特定路径下,可自定,最好是不会被轻易清理的路径。
    img
    img
  • 插件作者建议windows用户使用git的git-bash来查看不同输入法的句柄值,由于我的电脑下载了git,这里就没有额外配置了
  • 打开git-bash,进入我刚刚放置im-select.exe的路径,在不同的输入法状态下分别执行bash命令
./im-select.exe

即可查看当前输入法的句柄值,我这里分别是2051和1033,分别对应微软拼音和美式键盘
img

  • 接下来在vscode的settings.json文件中添加以下配置
   // 自动切换输入法"vim.autoSwitchInputMethod.enable": true,"vim.autoSwitchInputMethod.defaultIM": "1033",  // 这里输入刚刚获得的英文输入法名称"vim.autoSwitchInputMethod.obtainIMCmd": "D:\\apps\\tools\\im-select.exe","vim.autoSwitchInputMethod.switchIMCmd": "D:\\apps\\tools\\im-select.exe {im}&& D:\\apps\\tools\\im-select.exe 2052",

其中"vim.autoSwitchInputMethod.switchIMCmd": "D:\\apps\\tools\\im-select.exe {im}",即表示按esc退出insert模式时,自动切换到句柄为1033的英文输入法 但是来回切换不同输入法不如在一个输入法内切换中英文来的方便。
所以我在代码后增加了&& D:\\apps\\tools\\im-select.exe 2052,表示同时切换到微软拼音,在系统设置里面将微软拼音的默认语言改为英语,这样在切换微软拼音时,微软拼音会自动切换为英文。
虽然有点曲折,不过实现效果是达到了的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/863372.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为客户制定个性化健身,我选择用看板软件

借助看板软件可以为客户定制更加个性化的健身计划,提高训练效果和客户满意度。同时,看板软件还能够帮助教练更好地管理训练计划和客户关系,提升工作效率和服务质量。健身机构为客户定制个性化健身计划时,借助看板软件可以极大地提升效率和效果。以下是一个详细的步骤指南,…

有没有一款好用的Win桌面日程安排软件?

之前做了一个小调研,问周围的同事,你觉得一款好用的电脑日程软件应该具有哪些功能? 大多数的同事都回答了以下几个功能:列清单、设提醒、标记完成、日历月视图、可多端同步使用。 我又问,你有好用的日程安排软件推荐吗?大家都表示没有找到特别合适的日程APP。经过一番调研…

【Spring Cloud】8.Spring Cloud Alibaba Nacos——服务注册和配置中心

之前,我已经学习过Nacos的下载和启动。 Nacos 介绍 官网说明:https://nacos.io/docs/latest/quickstart/quick-start/ github地址:https://github.com/alibaba/nacos Nacos: Dynamic Naming And Configuration Service , 动态命名和配置服务 。一个更易于构建云原生应用的动…

中考英语优秀范文-006 How to get on well with others 如何与他人相处融洽

中考英语优秀范文-006 How to get on well with others 如何与他人相处融洽 1 写作要求 当今社会,与人交往越来越成为一种不可或缺的能力,作为中学生,学会如何与人相处尤为重要。假如上周你们班对 “如何与人相处” 展开了讨论,请根据以下的讨论结果,以 “How to get on …

SI24R2 超低功耗高性能 2.4GHz GFSK 无线发射芯片SI24R2重磅出击

SI24R2是一颗工作在2.4GHz ISM频段,专为低功耗无线场合设计,集成嵌入式发射基带的无线发射芯片。工作频率范围为2400MHz-2525MHz,共有126个1MHz带宽的信道。 SI24R2采用GFSK/FSK数字调制与解调技术。数据传输速率与PA输出功率都可以调节,支持2Mbps,1Mbps,250Kbps 三种数据…

揭秘如何用Monaco Editor打造功能强大的日志查看器

Monaco Editor 是一个基于浏览器的代码编辑器,由 Microsoft 开发,是 Visual Studio Code 的核心编辑器组件。为用户提供了一个功能丰富、性能优异的代码编辑环境,常用于 web 应用。 下面本文将从 Monaco Editor 的使用方法、使用逻辑作为切入点,讲述在网页中如何通过 Monac…

【新兴产业】人形机器人

产业链 人形机器人产业链上游为原材料、零部件以及软件平台,核心零部件包括伺服系统、执行器、减速器、控制系统、驱动器等,成本占比最高、技术难度大,具备较高的壁垒。 产业链中游为人形机器人的本体设计、制造及系统集成。 产业链下游为场景应用,目前较有潜力的人形机器人…

PVE 备份快照

PVE 备份快照 - 知乎 抄一个备份 vmware压缩整个虚拟机文件夹就可以连带快照一起打包。 PVE 自带的vzdump备份并不包含快照信息,备份之后再还原,会丢失快照信息。 备份时提示:snapshots found (not included into backup) 快照信息在循序渐进的开发模式中十分重要,遇到错误…

借助Atrribute扩展UnityEdior

借助Atrribute扩展UnityEdiorC# Attribute 简介 Attribute 是 C# 提供的一种强大的元数据机制,可以用来为代码的程序元素(如类、方法、属性等)附加额外的信息。这些附加信息可以在运行时通过反射机制读取,从而影响程序的行为。Attribute 的特性轻量级 Attribute 不会直接影…

C#实现LALR(1)解析器的生成器

Yet Another Compiler 参考lex和yacc的输入格式,参考虎书《现代编译原理-C语言描述》的算法,大力整合优化,实现了LALR(1)的C#生成器(暂命名为bitParser)。 词法分析器根据DFA和最小化DFA分别生成词法分析器代码(状态转换表、保留字、Token类型等)支持全Unicode字符。支持…

【新兴产业】量子信息

产业链 量子信息主要包括量子计算、量子通信和量子测量三大领域,在提升计算困难问题运算处理能力、加强信息安全保护能力、提高传感测量精度等方面,具备超越经典信息技术的潜力。 量子信息产业链从上游到下游主要包含基础光电元器件、量子通信 核心元器件、量子通信传输干线、…

【新兴产业】元宇宙

产业链 •顶层设计:政府从宏观角度为元宇宙的发展做出顶层设计,尤其在金融交易体系、社会治理制度方面给出明确定调和指明方向。 • 市场培育:地方政府因地制宜制定符合当地产业特色的元宇宙发展规划,并出台产业扶持政策、落地措施,制定未来执行计划。 • 产业联盟:建立与…