java - 是否可以根据内容更改 Eclipse Java 编辑器中一行文本的颜色?

标签 java eclipse

特别是对于编辑 Java 代码,我想知道是否可以更改以字符串 LOG. 开头的任何代码行的文本颜色,这表示日志记录语句。

在这个例子中,我希望能够使 LOG 语句以灰色显示。这在阅读大量记录的代码时会有所帮助。

public class Foo
{
    private static final Logger LOG = LoggerFactory.getLogger(Foo.class);

    public void doSomething() {
        LOG.info("About to do something");

        // code
    }
}

这可能比仅识别单行更困难,因为日志记录可以拆分为多行,和/或什至包含在 if(LOG.isDebugEnabled) {...} block 中。

在视觉上,我希望这些 LOG 语句/ block 看起来像//comments/* */的默认颜色

最佳答案

您可以通过编写一个 eclipse 自定义插件来实现相同的目的。
Eclipse 根据规则为语法着色。

ITokenScanner scanner = new RuleBasedScanner();
IToken string = createToken(colorString);    
IRule[] rules = new IRule[3];    
// Add rule for double quotes  
rules[0] = new SingleLineRule("\"", "\"", string, '\\');  
// Add a rule for single quotes   
rules[1] = new SingleLineRule("'", "'", string, '\\');   
// Add generic whitespace rule.    
rules[2] = new WhitespaceRule(whitespaceDetector);  
scanner.setRules(rules);  
scanner.setDefaultReturnToken(createToken(colorTag));  

createToken 方法为特定颜色实例化 Token 对象:

private IToken createToken(Color color) {
      return new Token(new TextAttribute(color));
   }

要进一步实现相同目标,您可以引用 Eclipse FAQ

关于java - 是否可以根据内容更改 Eclipse Java 编辑器中一行文本的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30208836/

相关文章:

java - 将 JTextArea 文本写入字符串

android - Eclipse 中的 Logcat 在物理设备上不断清除

Android sdk内容加载器错误

java - 为什么我在 Android Studio 中收到此错误 "Expected resource of type raw"?

Mac OSX 上的 Java 进程不释放套接字

android - AndroidManifest 中的 Google Play Services v13 错误元数据

java - Diameter协议(protocol)库.net C#或java

java - JIT 去优化,原因 ="constraint"。为什么 JIT 会去优化方法?

java - Dropwizard 抽象资源设计

java - activemq 5.9.0 在 Windows 和 Maven 中失败