diff --git a/PSReadLine/Render.cs b/PSReadLine/Render.cs index df6c9e9ad..aa85311b7 100644 --- a/PSReadLine/Render.cs +++ b/PSReadLine/Render.cs @@ -663,7 +663,7 @@ private string GetTokenColor(Token token) return _options._keywordColor; } - if ((token.TokenFlags & (TokenFlags.BinaryOperator | TokenFlags.UnaryOperator | TokenFlags.AssignmentOperator)) != 0) + if (token.Kind != TokenKind.Generic && (token.TokenFlags & (TokenFlags.BinaryOperator | TokenFlags.UnaryOperator | TokenFlags.AssignmentOperator)) != 0) { return _options._operatorColor; } diff --git a/test/RenderTest.cs b/test/RenderTest.cs index dc76374ed..d2dac1e28 100644 --- a/test/RenderTest.cs +++ b/test/RenderTest.cs @@ -37,7 +37,7 @@ public void Render() TestSetup(KeyMode.Cmd); Test("", Keys( - "abc -def <#123#> \"hello $name\"", + "abc -def <#123#> \"hello $name\" 1 + (1-2)", _.Home, CheckThat(() => AssertScreenIs(1, @@ -49,7 +49,14 @@ public void Render() TokenClassification.None, " ", TokenClassification.String, "\"hello ", TokenClassification.Variable, "$name", - TokenClassification.String, "\"")), + TokenClassification.String, "\"", + TokenClassification.None, " ", + TokenClassification.Number, "1", + TokenClassification.None, " + (", + TokenClassification.Number, "1", + TokenClassification.Operator, "-", + TokenClassification.Number, "2", + TokenClassification.None, ")")), _.Ctrl_c, InputAcceptedNow ));