diff --git a/src/preserves/pegs.nim b/src/preserves/pegs.nim index 2afdbe1..bfdc527 100644 --- a/src/preserves/pegs.nim +++ b/src/preserves/pegs.nim @@ -40,7 +40,7 @@ grammar "Preserves": exp <- 'e' * ?('-'|'+') * +Digit flt <- int * ((frac * exp) | frac | exp) - String <- '"' * *(escaped | (utf8.any - '"')) * '"' + String <- '"' * *(escape * escaped | (utf8.any - '"')) * '"' ByteString <- charByteString | hexByteString | b64ByteString charByteString <- '#' * >('"' * >(*binchar) * '"') @@ -67,7 +67,7 @@ grammar "Preserves": unescaped <- utf8.any - escaped unicodeEscaped <- 'u' * Xdigit[4] - escaped <- '\\' * ({'{', '"', '|', '\\', 'b', 'f', 'n', 'r', 't'} | unicodeEscaped) + escaped <- {'{', '"', '|', '\\', 'b', 'f', 'n', 'r', 't'} | unicodeEscaped escape <- '\\' ws <- *(' ' | '\t' | '\r' | '\n' | ',')