summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Aglassinger <roskakori@users.sourceforge.net>2016-03-22 20:16:48 +0100
committerThomas Aglassinger <roskakori@users.sourceforge.net>2016-03-22 20:16:48 +0100
commit895d02d4202b0962d3be6a9d06d6da38626e1d95 (patch)
tree55c0f26cf854140851016d9e3acd4198dfc7b612
parent1d5aed09f1f7fcfa27c73d03ffc1a61e686658da (diff)
downloadpygments-895d02d4202b0962d3be6a9d06d6da38626e1d95.tar.gz
Fixed minus operator for Transact-SQL.
-rw-r--r--pygments/lexers/_tsql_builtins.py2
-rw-r--r--pygments/lexers/sql.py6
-rw-r--r--tests/examplefiles/test_transact-sql.txt4
3 files changed, 7 insertions, 5 deletions
diff --git a/pygments/lexers/_tsql_builtins.py b/pygments/lexers/_tsql_builtins.py
index 7e2f4a3e..4eae8aa7 100644
--- a/pygments/lexers/_tsql_builtins.py
+++ b/pygments/lexers/_tsql_builtins.py
@@ -26,7 +26,7 @@ OPERATORS = (
'>',
'>=',
'+',
- '+='
+ '+=',
'-',
'-=',
'*',
diff --git a/pygments/lexers/sql.py b/pygments/lexers/sql.py
index f6539c36..a4cbc941 100644
--- a/pygments/lexers/sql.py
+++ b/pygments/lexers/sql.py
@@ -494,13 +494,13 @@ class TransactSqlLexer(RegexLexer):
filenames = ['*.sql']
mimetypes = ['text/x-tsql']
+ # Use re.UNICODE to allow non ASCII letters in names.
flags = re.IGNORECASE | re.UNICODE
tokens = {
'root': [
(r'\s+', Whitespace),
(r'--.*?\n', Comment.Single),
(r'/\*', Comment.Multiline, 'multiline-comments'),
- (r'(-=|-)', Operator), # HACK: For some reason these operators do not work as part of OPERATORS.
(words(_tsql_builtins.OPERATORS), Operator),
(words(_tsql_builtins.OPERATOR_WORDS, suffix=r'\b'), Operator.Word),
(words(_tsql_builtins.TYPES, suffix=r'\b'), Name.Class),
@@ -520,8 +520,8 @@ class TransactSqlLexer(RegexLexer):
(r'@@\w+', Name.Builtin),
(r'@\w+', Name.Variable),
(r'(\w+)(:)', bygroups(Name.Label, Punctuation)),
- (r'#?#?\w+', Name),
- (r'\?', Name.Variable.Magic), # Parameter for prepared statements
+ (r'#?#?\w+', Name), # names for temp tables and anything else
+ (r'\?', Name.Variable.Magic), # parameter for prepared statements
],
'multiline-comments': [
(r'/\*', Comment.Multiline, 'multiline-comments'),
diff --git a/tests/examplefiles/test_transact-sql.txt b/tests/examplefiles/test_transact-sql.txt
index 90e06c34..5e737ff4 100644
--- a/tests/examplefiles/test_transact-sql.txt
+++ b/tests/examplefiles/test_transact-sql.txt
@@ -29,9 +29,11 @@ declare @TextToFind nvarchar(100) = N'some
text across
multiple lines';
-set @TextToFind = 'hello' + ' world';
+set @TextToFind varchar(32) = 'hello' + ' world';
set @TextTiFind += '!';
+declare @Count int = 17 * (3 - 5);
+
delete from
[server].[database].[schema].[table]
where