diff --git a/cli/SQL.sublime-syntax b/cli/SQL.sublime-syntax index 511725452..09e4dccab 100644 --- a/cli/SQL.sublime-syntax +++ b/cli/SQL.sublime-syntax @@ -11,7 +11,7 @@ variables: simple_identifier_break: (?!\w) toplevel_reserved: |- - (?xi: alter | create | cross | delete | drop | from | grant | group | inner | insert | join + (?xi: alter | analyze | create | cross | delete | drop | explain | from | grant | group | inner | insert | join | left | on | order | outer | right | select | set | truncate | union | update | where ) additional_toplevel_reserved: (?!) @@ -75,6 +75,8 @@ contexts: - include: dml-statements - include: grant-statements - include: revoke-statements + - include: explain-statements + - include: analyze-statements - include: other-statements ###[ COMMENTS ]################################################################ @@ -560,6 +562,19 @@ contexts: - meta_scope: meta.statement.revoke.sql - include: immediately-pop + ###[ EXPLAIN STATEMENTS ]###################################################### + + explain-statements: + - match: \b(?i:explain)\b + scope: keyword.other.ddl.sql + + ###[ ANALYZE STATEMENTS ]###################################################### + + analyze-statements: + - match: \b(?i:analyze)\b + scope: keyword.other.ddl.sql + set: expect-table-name + ###[ OTHER STATEMENTS ]######################################################## other-statements: []