diff options
author | Erich Reitz <erichreitz12@gmail.com> | 2023-12-01 00:21:42 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-01 07:21:42 +0100 |
commit | 5dfa1345fa2c046a42730a6357b12245e5ee3f06 (patch) | |
tree | 43db024ed5c69ec6cc7088f5b4ed37beaf61a962 | |
parent | ab7faa73ef879548be2eaa462eb95c4c8ffd6ef2 (diff) | |
download | Nim-5dfa1345fa2c046a42730a6357b12245e5ee3f06.tar.gz |
related #22534; fixes documentation rendering of custom number literal routine declaration (#23015)
I'm not sure if this is a complete fix, as it does not match the expected output given in the issue. The expected output given in the issue highlights the identifier after the `'` the same color as numeric literals (blue), and this change does not address that. I think that would involve simplifying `nimNumberPostfix`. However, this fixes the issue where the routine declaration was rendered as a string. New rendering: ![Screenshot from 2023-11-30 22-17-17](https://github.com/nim-lang/Nim/assets/80008541/b604ce27-a4ad-496b-82c3-0b568d99a8bf)
-rw-r--r-- | lib/packages/docutils/highlite.nim | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/lib/packages/docutils/highlite.nim b/lib/packages/docutils/highlite.nim index f0da1545c..f8376f46c 100644 --- a/lib/packages/docutils/highlite.nim +++ b/lib/packages/docutils/highlite.nim @@ -324,17 +324,18 @@ proc nimNextToken(g: var GeneralTokenizer, keywords: openArray[string] = @[]) = pos = nimNumber(g, pos) of '\'': inc(pos) - g.kind = gtCharLit - while true: - case g.buf[pos] - of '\0', '\r', '\n': - break - of '\'': - inc(pos) - break - of '\\': - inc(pos, 2) - else: inc(pos) + if g.kind != gtPunctuation: + g.kind = gtCharLit + while true: + case g.buf[pos] + of '\0', '\r', '\n': + break + of '\'': + inc(pos) + break + of '\\': + inc(pos, 2) + else: inc(pos) of '\"': inc(pos) if (g.buf[pos] == '\"') and (g.buf[pos + 1] == '\"'): |