首先我我需要找到RGB颜色码,175,172,102(HTML#AFAC66)
显然,其用于突出显示出现在垂直栏中的颜色在NetBeans是硬编码来源,所以它不可能改变它的设置或任何配置文件。
这里是竖线标志出现时的样子默认:
的PHP模块会从类中的高亮颜色:
org.netbeans.modules.csl.editor.semantic.MarkOccurrencesHighlighter.java
所提到的类位于模块/罐:
$installation_folder/netbeans-8.0/ide/modules/org-netbeans-modules-csl-api.jar
您可以在http://hg.netbeans.org/中查看该类的来源,也可以使用反编译器。
要更改颜色,可以获取源代码并重新编译模块,或者只需简单地修改字节代码。就个人而言,因为我只想修改3个值(RGB),所以我选择了改变字节码。要做到这一点,你可以按照下面的步骤:
- 使
org-netbeans-modules-csl-api.jar
副本复制到另一个文件夹(我要去指的是文件夹$folder
)。
- 从
org-netbeans-modules-csl-api.jar
中提取类org.netbeans.modules.csl.editor.semantic.MarkOccurrencesHighlighter.class
。为简单起见,请确保您解压缩程序包/文件夹层次在罐子里的副本位于同一个文件夹($folder
),使您获得:
$folder/org/netbeans/modules/csl/editor/semantic/MarkOccurrencesHighlighter.class
$folder/org-netbeans-modules-csl-api.jar
- 打开一个反编译的类,我用JD(http://jd.benow.ca/)
- 找到要修改(
ES_COLOR
)代码:
- 打开的字节码编辑器类,我用REJ(http://rejava.sourceforge.net/),并找到值175,172,102。 (您将不得不更改操作码
bipush
至sipush
,如果你想使用的值大于127)
- 修改的值,我选择了蓝色(0,0,255):
- 保存修改。类,以及与这些值已经被改变的反编译验证:
- 在终端或命令行,导航到
$folder
,并执行以下命令来替换在罐中的修改后的类:
jar -uf org-netbeans-modules-csl-api.jar org/netbeans/modules/csl/editor/semantic/MarkOccurrencesHighlighter.class
- 现在,您可以使用反编译器来验证jar是否确实被修改了.class
- 最后,您可以将修改的jar /模块复制到原始位置
$installation_folder/netbeans-8.0/ide/modules/
,或者您可以将其复制到$user_directory/modules
文件夹。后者似乎更好,因为它不会修改安装。
- 启动Netbeans并享受新的色彩。
这里是竖条现在看起来如何标记出现时:
如果要更改用于突出显示了Java模块竖线出现的颜色,你会修改位于 $installation_folder/netbeans-8.0/java/modules/org-netbeans-modules-java-editor.jar
之内的另一个类org.netbeans.modules.java.editor.semantic.MarkOccurrencesHighlighter.java
,遵循相同的步骤。
如果我错过了某些东西,或者如果有更简单的方法来更改竖线中显示的颜色,请随时添加它。 (使用Netbeans 8.0测试)