diff options
author | Matth?us G. Chajdas <dev@anteru.net> | 2019-01-04 15:07:51 +0100 |
---|---|---|
committer | Matth?us G. Chajdas <dev@anteru.net> | 2019-01-04 15:07:51 +0100 |
commit | 5aa7fd79de2d137fb77cc60410b831312a7908aa (patch) | |
tree | 7c91083e7932f75bc00f24cafe4fef1331446dea | |
parent | 739365558e04bc7bdc67fc522b47f5baa1259d74 (diff) | |
download | pygments-5aa7fd79de2d137fb77cc60410b831312a7908aa.tar.gz |
Fix a small bug in the SQL analysis.
Updated CHANGES as well, and moved the LLVM PR to the right list.
-rw-r--r-- | CHANGES | 3 | ||||
-rw-r--r-- | pygments/lexers/sql.py | 10 |
2 files changed, 10 insertions, 3 deletions
@@ -14,11 +14,12 @@ Version 2.4.0 * FloScript (PR#750) * Hspec (PR#790) - * LLVM (PR#792) * Slurm (PR#760) - Updated lexers: + * LLVM (PR#792) + * SQL (PR#672) * Stan (PR#774) * Terraform (PR#787) diff --git a/pygments/lexers/sql.py b/pygments/lexers/sql.py index d3bc8e23..8884db22 100644 --- a/pygments/lexers/sql.py +++ b/pygments/lexers/sql.py @@ -550,7 +550,11 @@ class TransactSqlLexer(RegexLexer): name_between_backtick_re.findall((text))) name_between_bracket_count = len( name_between_bracket_re.findall(text)) - if name_between_bracket_count >= 2 * name_between_backtick_count: + # We need to check if there are any names using + # backticks or brackets, as otherwise both are 0 + # and 0 >= 2 * 0, so we would always assume it's true + dialect_name_count = name_between_backtick_count + name_between_bracket_count + if dialect_name_count >= 1 and name_between_bracket_count >= 2 * name_between_backtick_count: # Found at least twice as many [name] as `name`. rating += 0.5 elif name_between_bracket_count > name_between_backtick_count: @@ -642,7 +646,9 @@ class MySqlLexer(RegexLexer): name_between_backtick_re.findall((text))) name_between_bracket_count = len( name_between_bracket_re.findall(text)) - if name_between_backtick_count >= 2 * name_between_bracket_count: + # Same logic as above in the TSQL analysis + dialect_name_count = name_between_backtick_count + name_between_bracket_count + if dialect_name_count >= 1 and name_between_backtick_count >= 2 * name_between_bracket_count: # Found at least twice as many `name` as [name]. rating += 0.5 elif name_between_backtick_count > name_between_bracket_count: |