idea插件開發,寫Java代碼時中文字符替換為英文字符的多種方法

大部分編程語言寫代碼的時候,不能出現中文標點符號,必須使用英文的標點符號,但是寫代碼的過程中,很多時候是需要寫中文註釋的,這樣來回切換輸入法呢,有點繁瑣

,有時候不小心忘記切換,就寫錯了,有的編輯器比較智能,立馬就能檢測到,但有的文本編輯器並不能檢測到,會導致出現bug。

本來計劃自己寫一個,不過發現了一個插件,支持idea以及JetBrains 全家桶。

源碼在↓↓↓↓↓↓

默認情況下,這個插件可以把下面的常用標點符號進行中英文轉換,也可以自定義需要的各種標點符號。

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

idea插件開發,寫Java代碼時中文字符替換為英文字符的多種方法

它的原理是實時檢測你的輸入,如果輸入的字符正好匹配配置的規則,那麼就進行替換。

從代碼的角度分析,它依賴於idea工具包com.intellij.openapi.editor.Editor

idea插件開發,寫Java代碼時中文字符替換為英文字符的多種方法

利用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代碼時中文字符替換為英文字符的多種方法

這個插件還有有一個優點就是,不會影響別的軟件標點符號,同時如果想在idea輸入中文標點符號,也是支持的,輸入/斜槓+標點符號即可。

如果你也正好需要源碼,可以關注+轉發/收藏後,私信“fhym”即可


分享到:


相關文章: