大部分编程语言写代码网页中英文切换源码的时候网页中英文切换源码,不能出现中文标点符号,必须使用英文网页中英文切换源码的标点符号,但是写代码的过程中,很多时候是需要写中文注释的,这样来回切换输入法呢,有点繁琐,有时候不小心忘记切换,就写错了,有的编辑器比较智能,立马就能检测到,但有的文本编辑器并不能检测到,会导致出现bug。
本来计划自己写一个,不过发现了一个插件,支持idea以及JetBrains 全家桶。
源码在↓↓↓↓↓↓
默认情况下,这个插件可以把下面的常用标点符号进行中英文转换,也可以自定义需要的各种标点符号。
, , 。 . : : ; ; ! ! ? ? “ \" ” \" ‘ ' ’ ' 【 [ 】 ] ( ( ) ) 「 { 」 } 《 < 》 >
它的原理是实时检测你的输入,如果输入的字符正好匹配配置的规则,那么就进行替换。
从代码的角度分析,它依赖于idea工具包com.intellij.openapi.editor.Editor
利用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输入中文标点符号,也是支持的,输入/斜杠+标点符号即可。
如果你也正好需要源码,可以关注+转发/收藏后,私信“fhym”即可
相关文章
本站已关闭游客评论,请登录或者注册后再评论吧~