From 4a84f5ebbe2d04c0e4127f9694fce33602f99327 Mon Sep 17 00:00:00 2001 From: Oleg Broytman Date: Sun, 16 Jun 2024 15:01:39 +0300 Subject: [PATCH] =?utf8?q?Feat(parser):=20=D0=9E=D0=BF=D0=B5=D1=80=D0=B0?= =?utf8?q?=D1=82=D0=BE=D1=80=D1=8B=20=D0=98,=20=D0=98=D0=9B=D0=98,=20?= =?utf8?q?=D0=9D=D0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- parser/grammar.ebnf | 6 ++++++ parser/parser.py | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/parser/grammar.ebnf b/parser/grammar.ebnf index ccfe6eb..2877e8f 100644 --- a/parser/grammar.ebnf +++ b/parser/grammar.ebnf @@ -57,12 +57,18 @@ name : /[A-Za-z ?and_word : "AND" | "and" + | "é" + | "É" ?or_word : "OR" | "or" + | "éìé" + | "ÉÌÉ" ?not_word : "NOT" | "not" + | "îå" + | "ÎÅ" %import common.WS %ignore WS diff --git a/parser/parser.py b/parser/parser.py index 0d9351b..da5c6e5 100755 --- a/parser/parser.py +++ b/parser/parser.py @@ -1,4 +1,5 @@ #! /usr/bin/env python3 +# coding: koi8-r import os from lark import Lark, Transformer @@ -58,9 +59,10 @@ if __name__ == '__main__': print(parse('not test')) print(parse('foo or bar')) print(parse('foo && bar')) - print(parse('foo && bar && baz')) + print(parse('Foo && bar && baz')) print(parse('!foo && bar && baz')) print(parse('(test)')) print(parse('(foo || bar)')) print(parse('(foo and !bar)')) + print(parse(u'(ôÅÓÔ ÉÌÉ ÔÅÓÔ)')) print('----------') -- 2.39.2