diff options
-rw-r--r-- | pygments/lexers/postgres.py | 2 | ||||
-rw-r--r-- | tests/examplefiles/psql_session.txt | 11 |
2 files changed, 12 insertions, 1 deletions
diff --git a/pygments/lexers/postgres.py b/pygments/lexers/postgres.py index 4b4ad44c..21185b30 100644 --- a/pygments/lexers/postgres.py +++ b/pygments/lexers/postgres.py @@ -166,7 +166,7 @@ class PsqlRegexLexer(PostgresLexer): (r"[^\s]+", String.Symbol), ] -re_prompt = re.compile(r'^.*?[=\-\(][#>]') +re_prompt = re.compile(r'^(\S.*?)??[=\-\(][#>]') re_psql_command = re.compile(r'\s*\\') re_end_command = re.compile(r';\s*(--.*?)?$') re_psql_command = re.compile(r'(\s*)(\\.+?)(\s+)$') diff --git a/tests/examplefiles/psql_session.txt b/tests/examplefiles/psql_session.txt index 2458c407..565f7c33 100644 --- a/tests/examplefiles/psql_session.txt +++ b/tests/examplefiles/psql_session.txt @@ -94,6 +94,17 @@ INSERT 0 1 regression=# ROLLBACK ; ROLLBACK +=> EXPLAIN SELECT * FROM tenk1 +-> WHERE unique1 < 100; -- Don't take -> in the plan as a prompt + + QUERY PLAN +------------------------------------------------------------------------------ + Bitmap Heap Scan on tenk1 (cost=2.37..232.35 rows=106 width=244) + Recheck Cond: (unique1 < 100) + -> Bitmap Index Scan on tenk1_unique1 (cost=0.00..2.37 rows=106 width=0) + Index Cond: (unique1 < 100) + + -- don't swallow the end of a malformed line test=> select 1, 'this line must be emitted' |