惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

人人都是产品经理
人人都是产品经理
Blog — PlanetScale
Blog — PlanetScale
MyScale Blog
MyScale Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
WordPress大学
WordPress大学
Vercel News
Vercel News
D
Docker
博客园 - 聂微东
T
Tailwind CSS Blog
aimingoo的专栏
aimingoo的专栏
云风的 BLOG
云风的 BLOG
D
DataBreaches.Net
B
Blog RSS Feed
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
Microsoft Security Blog
Microsoft Security Blog
美团技术团队
F
Fortinet All Blogs
MongoDB | Blog
MongoDB | Blog
T
The Blog of Author Tim Ferriss
GbyAI
GbyAI
N
Netflix TechBlog - Medium
G
Google Developers Blog
腾讯CDC

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
JetBrains IntelliJ支持自动切换输入法,写代码如丝般顺滑 - ...
2023-03-03 · via 少数派

背景

对于母语为中文的开发者,写代码过程中经常需要在中/英输入法之间进行切换,而且由于不清楚当前处于哪种输入状态,有时输入到一半发现输入法错了,删除重新输入,有时切换了好几次都没有成功,实在太影响写代码了。

其实,在哪个位置需要使用哪种输入法是可以确定的,既然这样就可以让IDE帮助我们自动切换输入法。

JetBrains IntelliJ IDE可以通过Smart Input Pro插件实现自动切换输入法,其核心功能是根据输入位置的上下文智能分析当前应该使用哪种输入法并自动切换,而且还可以通过光标的颜色来提醒当前是什么输入法。废话少说,先看效果。

注释场景

以Java举例,Java代码有三种注释方式,注释场景也是使用中文频率比较高的场景,下面动图演示了两种注释场景的效果。

图片

识别到单行注释场景,自动切换为中文输入法。换行后编码,识别到光标位于编码区域,自动切换为英文输入法。整个过程无需主动切换输入法,写代码如丝般顺滑。光标红色表示当前使用中文输入法,灰色表示英文输入法。场景切换的时候会有浮层提示,熟悉后也可以关闭提示。

图片


对代码进行文档注释时,自动识别到当前处于文档注释场景,自动为您切换为中文输入法。中文输入法状态也可以进行简单的英文输入。

Commit Message场景

一般我们都是使用中文写git的提交信息,该插件可以做到当Commit Message输入框获取到焦点时切换为中文输入法。

图片

IdeaVim场景

习惯使用IdeaVim插件的人都知道在vim命令模式必须使用英文输入法,Smart Input插件可以在进入命令模式时自动切换为英文输入法。下图中光标为方块时表示进入了命令模式。

图片

工具窗口场景

在命令终端需要使用英文输入法,Smart Input插件可以识别到Terminal工具窗口获取到输入焦点时候就会切换到英文输入法,省心省力。还有Project、Structure工具窗口也是只需要英文输入法,还支持通过窗口名称自定义。

图片

SearchEveryWhere场景

双击Shift键可以唤起SearchEveryWhere对话框,用来搜索类、方法等,这里也是可以确定必须使用英文输入法,Smart Input插件支持SearchEveryWhere对话框获取到焦点后切换为英文输入法。

字符串字面量场景

字符串字面量是无法确认唯一一种输入法,插件支持设置字符串字面量场景的默认输入法,插件也支持根据字符串变量名或者方法参数名判断是否需要切换为中文输入法。演示插件已经提前配置好了自定义中文场景:chineseName;func(chineseName)。

图片

上图中识别到字符串变量名称为chineseName,则当光标在字符串字面量中时自动切换为中文输入法。第二个配置的意思是如果识别到方法func的参数名称为chineseName,则在赋予字符串字面量时自动切换为中文输入法。

主动切换输入法

编码场景肯定使用的是英文,只有在注释、字符串字面量等场景才会使用中文,当然也有可能需要使用英文,简短的英文可以使用中文输入法输入,您也可以主动切换输入法,光标的颜色会随着输入法的改变而改变,始终准确的表示输入法状态。

图片

为了避免主动切换输入法后因为光标的移动又自动切换输入法,因此提供三种锁定输入法的策略,可在设置页面进行选择,默认策略为:主动切换输入法后锁定自动切换直到光标跨行移动或进入编码区域。

中文输入补救功能

不使用Smart Input插件情况下,写代码的时候不知道当前处于什么输入状态,经常会出现如下的不好体验,编码需要英文输入法,字符串需要中文输入法,如果不在恰当的时机准确切换输入法,就会出现想要输入中文,但是在英文输入法状态下输入了,需要切换输入法并删除已经输入的部分重新输入。
 

图片

使用Smart Input插件情况下,中文输入补救功能可以帮助你避免删除已经输入的部分重新输入,Smart Input插件识别到你切换为中文输入法之后帮助你完成重新输入的动作,你只需要切换输入法并接着继续输入就好,如下动图所示。
 

图片

下载安装

Smart Input Pro插件可以在IntelliJ官方插件市场下载安装,更多信息请看Smart Input Pro 插件介绍

Smart Input Pro插件已经支持了IntelliJ IDEA、Android Studio、PyCharm、WebStorm、GoLand、CLion等JetBrains全系列产品。