diff --git a/public/css/global.css b/public/css/global.css index 48ab81a..30c5620 100644 --- a/public/css/global.css +++ b/public/css/global.css @@ -51,6 +51,7 @@ --c-primary: rgb(255, 180, 180); --c-pink: #374259; --c-link: #0284c7; + --c-border-1: #909090; --c-nav-bg: rgb(255, 247, 255, 0.5); --c-secondary: rgba(255, 255, 240, 0.5); diff --git a/public/css/pages.css b/public/css/pages.css index b52cfd5..881321e 100644 --- a/public/css/pages.css +++ b/public/css/pages.css @@ -60,6 +60,10 @@ padding: 0.5rem 0; } +.markdown > p > code { + border: solid 1px var(--c-border-1); +} + .markdown > pre { margin: 0.5em 0; padding: 0.75em 0.75em; diff --git a/src/lexer/highlighter.ts b/src/lexer/highlighter.ts index 88cdb67..8f5f91d 100644 --- a/src/lexer/highlighter.ts +++ b/src/lexer/highlighter.ts @@ -1,7 +1,7 @@ import { spawn } from "node:child_process"; import { leftTrimDedent } from "../components/utils"; import { HighlightLevel } from "./types"; -import type { LexError, SyntaxError, SemanticError, Token, TokenizeResult, TokenType } from "./types"; +import type { LexError, SyntaxError, Token, TokenizeResult, TokenType } from "./types"; const error_classes = "underline underline-offset-4 decoration-wavy decoration-red-500"; diff --git a/src/pages/spec/tokens/numbers.mdx b/src/pages/spec/tokens/numbers.mdx index 6b20cb9..cb17f6c 100644 --- a/src/pages/spec/tokens/numbers.mdx +++ b/src/pages/spec/tokens/numbers.mdx @@ -10,23 +10,30 @@ import Code from "../../../components/Code.astro" ```ebnf Int = hexadecimal_number + | octal_number + | binary_number | decimal_number hexadecimal_number = "0", ("x" | "X"), hexadecimal_digit+ decimal_number = decimal_digit+ +octal_number = "0", ("o" | "O"), octal_digit+ +binary_number = "0", "b", binary_digit + ``` -`TODO`: Implement octal `0o777` and binary `0b0110`. - `TODO`: Allow underscores `_` between any number: `1_000_000`. +`TODO`: Make it an error to have a number start with a leading zero, +to eliminate confusion with proper octal and legacy PHP octal. + ## Float