Skip to content

Commit 49609a0

Browse files
percontationinfininight
authored andcommitted
Improve syntax highlighting of SQL queries
Previously, triple-quoted block strings that started with whitespace (excluding newlines) then a SQL word were highlighted to be SQL queries. This commit removes the "excluding newlines" caveat. Here's an example of something that gets SQL-highlighted when it didn't used to be: ```python really_long_idk_wtf_bbq.connection.execute(""" SELECT * FROM blah WHERE blah blah blah blah """) ```
1 parent f17f1f1 commit 49609a0

1 file changed

Lines changed: 84 additions & 106 deletions

File tree

Syntaxes/Python.tmLanguage

Lines changed: 84 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -2874,51 +2874,6 @@
28742874
</dict>
28752875
</array>
28762876
</dict>
2877-
<dict>
2878-
<key>begin</key>
2879-
<string>(""")(?=\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))</string>
2880-
<key>beginCaptures</key>
2881-
<dict>
2882-
<key>1</key>
2883-
<dict>
2884-
<key>name</key>
2885-
<string>punctuation.definition.string.begin.python</string>
2886-
</dict>
2887-
</dict>
2888-
<key>comment</key>
2889-
<string>double quoted string</string>
2890-
<key>end</key>
2891-
<string>"""</string>
2892-
<key>endCaptures</key>
2893-
<dict>
2894-
<key>0</key>
2895-
<dict>
2896-
<key>name</key>
2897-
<string>punctuation.definition.string.end.python</string>
2898-
</dict>
2899-
</dict>
2900-
<key>name</key>
2901-
<string>string.quoted.double.block.sql.python</string>
2902-
<key>patterns</key>
2903-
<array>
2904-
<dict>
2905-
<key>include</key>
2906-
<string>#constant_placeholder</string>
2907-
</dict>
2908-
<dict>
2909-
<key>include</key>
2910-
<string>#escaped_unicode_char</string>
2911-
</dict>
2912-
<dict>
2913-
<key>include</key>
2914-
<string>#escaped_char</string>
2915-
</dict>
2916-
<dict>
2917-
<key>include</key>
2918-
<string>source.sql</string>
2919-
</dict>
2920-
</array>
2921-
</dict>
29222877
<dict>
29232878
<key>begin</key>
29242879
<string>(")(?=\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))</string>
@@ -3010,16 +2965,50 @@
30102965
<key>patterns</key>
30112966
<array>
30122967
<dict>
3013-
<key>include</key>
3014-
<string>#constant_placeholder</string>
3015-
</dict>
3016-
<dict>
3017-
<key>include</key>
3018-
<string>#escaped_unicode_char</string>
2968+
<key>begin</key>
2969+
<string>(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))</string>
2970+
<key>end</key>
2971+
<string>(?=""")</string>
2972+
<key>patterns</key>
2973+
<array>
2974+
<dict>
2975+
<key>include</key>
2976+
<string>#constant_placeholder</string>
2977+
</dict>
2978+
<dict>
2979+
<key>include</key>
2980+
<string>#escaped_unicode_char</string>
2981+
</dict>
2982+
<dict>
2983+
<key>include</key>
2984+
<string>#escaped_char</string>
2985+
</dict>
2986+
<dict>
2987+
<key>include</key>
2988+
<string>source.sql</string>
2989+
</dict>
2990+
</array>
30192991
</dict>
30202992
<dict>
3021-
<key>include</key>
3022-
<string>#escaped_char</string>
2993+
<key>begin</key>
2994+
<string>(?=\S)</string>
2995+
<key>end</key>
2996+
<string>(?=""")</string>
2997+
<key>patterns</key>
2998+
<array>
2999+
<dict>
3000+
<key>include</key>
3001+
<string>#constant_placeholder</string>
3002+
</dict>
3003+
<dict>
3004+
<key>include</key>
3005+
<string>#escaped_unicode_char</string>
3006+
</dict>
3007+
<dict>
3008+
<key>include</key>
3009+
<string>#escaped_char</string>
3010+
</dict>
3011+
</array>
30233012
</dict>
30243013
</array>
30253014
</dict>
@@ -3811,51 +3800,6 @@
38113800
</dict>
38123801
</array>
38133802
</dict>
3814-
<dict>
3815-
<key>begin</key>
3816-
<string>(''')(?=\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))</string>
3817-
<key>beginCaptures</key>
3818-
<dict>
3819-
<key>1</key>
3820-
<dict>
3821-
<key>name</key>
3822-
<string>punctuation.definition.string.begin.python</string>
3823-
</dict>
3824-
</dict>
3825-
<key>comment</key>
3826-
<string>single quoted string</string>
3827-
<key>end</key>
3828-
<string>'''</string>
3829-
<key>endCaptures</key>
3830-
<dict>
3831-
<key>0</key>
3832-
<dict>
3833-
<key>name</key>
3834-
<string>punctuation.definition.string.end.python</string>
3835-
</dict>
3836-
</dict>
3837-
<key>name</key>
3838-
<string>string.quoted.single.block.python</string>
3839-
<key>patterns</key>
3840-
<array>
3841-
<dict>
3842-
<key>include</key>
3843-
<string>#constant_placeholder</string>
3844-
</dict>
3845-
<dict>
3846-
<key>include</key>
3847-
<string>#escaped_unicode_char</string>
3848-
</dict>
3849-
<dict>
3850-
<key>include</key>
3851-
<string>#escaped_char</string>
3852-
</dict>
3853-
<dict>
3854-
<key>include</key>
3855-
<string>source.sql</string>
3856-
</dict>
3857-
</array>
3858-
</dict>
38593803
<dict>
38603804
<key>begin</key>
38613805
<string>(')(?=\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))</string>
@@ -3947,16 +3891,50 @@
39473891
<key>patterns</key>
39483892
<array>
39493893
<dict>
3950-
<key>include</key>
3951-
<string>#constant_placeholder</string>
3952-
</dict>
3953-
<dict>
3954-
<key>include</key>
3955-
<string>#escaped_unicode_char</string>
3894+
<key>begin</key>
3895+
<string>(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))</string>
3896+
<key>end</key>
3897+
<string>(?=''')</string>
3898+
<key>patterns</key>
3899+
<array>
3900+
<dict>
3901+
<key>include</key>
3902+
<string>#constant_placeholder</string>
3903+
</dict>
3904+
<dict>
3905+
<key>include</key>
3906+
<string>#escaped_unicode_char</string>
3907+
</dict>
3908+
<dict>
3909+
<key>include</key>
3910+
<string>#escaped_char</string>
3911+
</dict>
3912+
<dict>
3913+
<key>include</key>
3914+
<string>source.sql</string>
3915+
</dict>
3916+
</array>
39563917
</dict>
39573918
<dict>
3958-
<key>include</key>
3959-
<string>#escaped_char</string>
3919+
<key>begin</key>
3920+
<string>(?=\S)</string>
3921+
<key>end</key>
3922+
<string>(?=''')</string>
3923+
<key>patterns</key>
3924+
<array>
3925+
<dict>
3926+
<key>include</key>
3927+
<string>#constant_placeholder</string>
3928+
</dict>
3929+
<dict>
3930+
<key>include</key>
3931+
<string>#escaped_unicode_char</string>
3932+
</dict>
3933+
<dict>
3934+
<key>include</key>
3935+
<string>#escaped_char</string>
3936+
</dict>
3937+
</array>
39603938
</dict>
39613939
</array>
39623940
</dict>

0 commit comments

Comments
 (0)