如何通过用随机字符串替换Intellij来停止Intellij隐藏静态常量名称?

时间:2019-04-03 06:23:09

标签: intellij-idea

Intellij一直用随机字符串替换最终的静态变量名称。我知道这个想法来自代码风格/最佳实践等,但是我觉得这很烦人。如何禁用此功能?

例如如果我创建此变量:

private static final Logger logger 
        = LoggerFactory.getLogger(AuthController.class);

当我键入“ logger”并按空格/回车键时,它将用一些随机字符串(例如, “ asdoiasdk”;在编辑器中,它看起来像:

private static final Logger asdoiasdk 
        = LoggerFactory.getLogger(AuthController.class);

以下屏幕截图:

  1. 我开始添加一个称为“ logger”的私有静态最终变量-屏幕快照显示了在我键入变量名称之后但尚未添加“ =”的状态:

before

  1. 然后我按空格键并等于(“ =”),变量名更改为该随机字符串“ jmeecp”:

after

1 个答案:

答案 0 :(得分:1)

我花了一天的时间找出原因和原因,然后加上原因,希望其他可怜的人将从中受益。基本上,如果您使用“ Fantasque Sans Mono”作为编辑器字体,则会发生此问题。我认为这与IntelliJ错别字应用的突出显示效果不佳。例如:在下面的示例中,单词“ REQUESTSTART”是一个错字,因此由IntelliJ突出显示(此屏幕截图中的字体是“ Droid Sans Mono”):

enter image description here

当我将字体更改为“ Fantasque Sans Mono”时,问题浮出水面:

enter image description here

在原始字符串和使用该字体显示的字符串之间有一个模式-ASCII代码似乎返回了两个位置,例如R-> P,E-> C等。非常有趣。

编辑2019-04-15:有关为我解决此问题的变通办法,请参见this主题。