From bf4fc2574c06132fece7342219fe6ea589e42f6d Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 12 Oct 2010 08:21:56 -0600 Subject: [PATCH] fix syntax colorer for #true and #false --- collects/syntax-color/scheme-lexer.rkt | 9 ++++++++- collects/tests/syntax-color/scheme-lexer.rkt | 19 +++++++++++++++---- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/collects/syntax-color/scheme-lexer.rkt b/collects/syntax-color/scheme-lexer.rkt index f8e7798abc..9021bcfef5 100644 --- a/collects/syntax-color/scheme-lexer.rkt +++ b/collects/syntax-color/scheme-lexer.rkt @@ -302,7 +302,14 @@ (lexer [(:+ scheme-whitespace) (ret lexeme 'white-space #f start-pos end-pos 'continue)] - [(:or "#t" "#f" "#T" "#F" character + [(:: (:or "#true" "#false" "#t" "#f" "#T" "#F") + (:* (:~ identifier-delims))) + (ret lexeme + (if (member lexeme '("#true" "#false" "#t" "#f" "#T" "#F")) + 'constant + 'error) + #f start-pos end-pos 'datum)] + [(:or character (make-num digit2 radix2) (make-num digit8 radix8) (make-num digit10 (:? radix10)) diff --git a/collects/tests/syntax-color/scheme-lexer.rkt b/collects/tests/syntax-color/scheme-lexer.rkt index bf680d12d1..f178e6ee2f 100644 --- a/collects/tests/syntax-color/scheme-lexer.rkt +++ b/collects/tests/syntax-color/scheme-lexer.rkt @@ -89,10 +89,21 @@ (test "}" "p") ;; # -(test "#fq" "cci") -(test "#Fq" "cci") -(test "#tq" "cci") -(test "#Tq" "cci") +(test "#fq" "xxx") +(test "#Fq" "xxx") +(test "#tq" "xxx") +(test "#Tq" "xxx") +(test "#true" "ccccc") +(test "#false" "cccccc") +(test "#f q" "cc i") +(test "#F q" "cc i") +(test "#t q" "cc i") +(test "#T q" "cc i") +(test "#true q" "ccccc i") +(test "#false q" "cccccc i") +(test "#f(q" "ccpi") +(test "#T(q" "ccpi") +(test "#true{q" "cccccpi") (test "#012423(a" "ppppppppi") (test "#1{a" "pppi") (test "#1[a" "pppi")