特别是为了编辑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
}
}
Run Code Online (Sandbox Code Playgroud)
这可能比识别单行更困难,因为日志记录可以分成多行,和/或甚至包含在if(LOG.isDebugEnabled) {...}块中.
Visualy我希望这些LOG语句/块看起来像// 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));
Run Code Online (Sandbox Code Playgroud)
createToken 方法实例化特定颜色的 Token 对象:
private IToken createToken(Color color) {
return new Token(new TextAttribute(color));
}
Run Code Online (Sandbox Code Playgroud)
要进一步实现相同的目标,您可以参考Eclipse FAQ