大部分编程语言写代码的时候,不能出现中文标点符号,必须使用英文的标点符号,但是写代码的过程中,很多时候是需要写中文注释的,这样来回切换输入法呢,有点繁琐,有时候不小心忘记切换,就写错了,有的编辑器比较智能,立马就能检测到,但有的文本编辑器并不能检测到,会导致出现bug。

本来计划自己写一个,不过发现了一个插件,支持idea以及JetBrains 全家桶。

源码在↓↓↓↓↓↓

默认情况下,这个插件可以把下面的常用标点符号进行中英文转换,也可以自定义需要的各种标点符号。

, , 。 . : : ; ; ! ! ? ? “ \" ” \" ‘ ' ’ ' 【 [ 】 ] ( ( ) ) 「 { 」 } 《 < 》 >

idea如何把中文设置成英文(写Java代码时中文字符替换为英文字符的多种方法)(1)

它的原理是实时检测你的输入,如果输入的字符正好匹配配置的规则,那么就进行替换。

从代码的角度分析,它依赖于idea工具包com.intellij.openapi.editor.Editor

idea如何把中文设置成英文(写Java代码时中文字符替换为英文字符的多种方法)(2)

利用Editor对象,获取文本对象

Document document = editor.getDocument();

如果检测到匹配字符,那么删除本字符,替换为目标字符

document.deleteString(caretOffset - 1, caretOffset);

document.insertString(caretOffset - 1, String.valueOf(c));

这几行代码是核心代码,这个方法也是重写工具jar包自带的方法即可,因此如果有别的需求,也可以参考这个思路进行开发一个插件。


idea插件开发也比较容易上手,可以按照这个步骤,搭建一个简易的插件工程:

Create new project -> IntelliJ Platform Plugin -> 输入project name

然后创建action,配置plugin.xml,这个类似Struts的配置文件。

最后打jar包,添加到idea插件即可。


其实这个功能,很多输入法也支持,中文输入标点符号按照英文显示,但是输入法设置以后,如果需要中文标点符号,就需要切换输入法,相对来说还是比较不智能。

idea如何把中文设置成英文(写Java代码时中文字符替换为英文字符的多种方法)(3)

这个插件还有有一个优点就是,不会影响别的软件标点符号,同时如果想在idea输入中文标点符号,也是支持的,输入/斜杠 标点符号即可。

如果你也正好需要源码,可以关注 转发/收藏后,私信“fhym”即可

,