fileTypes sql ddl dml foldingStartMarker (?i)^\s*(begin|if|loop)\b foldingStopMarker (?i)^\s*(end)\b keyEquivalent ^~S name PL/SQL (Oracle) patterns begin /\* end \*/ name comment.block.oracle match --.*$ name comment.line.double-dash.oracle captures 1 name keyword.other.oracle 2 name keyword.other.oracle match (?i)^\s*(create)(\s+or\s+replace)?\s+ name meta.create.oracle captures 1 name keyword.other.oracle 2 name keyword.other.oracle 3 name entity.name.type.oracle match (?i)\b(package)(\s+body)?\s+(\S+) name meta.package.oracle captures 1 name keyword.other.oracle 2 name entity.name.type.oracle match (?i)\b(type)\s+"([^"]+)" name meta.type.oracle captures 1 name keyword.other.oracle 2 name entity.name.function.oracle match (?i)^\s*(function|procedure)\s+([-a-z0-9_]+) name meta.procedure.oracle match [!<>:]?=|<>|<|>|\+|(?<!\.)\*|-|(?<!^)/|\|\| name keyword.operator.oracle match (?i)\b(true|false|null)\b name constant.language.oracle match \b\d+(\.\d+)?\b name constant.numeric.oracle match (?i)\b(if|elsif|else|end\s+if|loop|end\s+loop|for|case|end\s+case|continue|return|goto)\b name keyword.control.oracle match (?i)\b(or|and|not|like)\b name keyword.operator.oracle match (?i)\b(sysdate|%(isopen|found|notfound|rowcount)|commit|rollback|sqlerrm|substr|cast|decode|length|lower|upper)\b name support.function.oracle match (?i)\b(avg|count|sum|max|min|nvl|trim|to_date|to_char|lpad|ltrim|rpad|rtrim|trunc|to_number)\b name support.function.builtin.oracle match (?i)\b(sql|sqlcode)\b name variable.language.oracle match (?i)\b(p(i|o|io)_[-a-z0-9_]+)\b name variable.parameter.oracle match (?i)\b(l_[-a-z0-9_]+)\b name variable.other.oracle match (?i)\b(end|then|exception|when|others|begin|in|out|is|as|exit|open|fetch|into|close|type|rowtype|default|\.(extend|count|first|last|next|nextval|currval))\b name keyword.other.oracle match (?i)\b(select|from|where|order\s+by|group\s+by|asc|desc|update|set|insert|into|values|delete|from|distinct|union|having|limit|table|of)\b name keyword.other.sql.oracle match (?i)\b(dbms_lock|dbms_output)\b name support.class.oracle match (?i)\b(put_line)\b name support.function.oracle begin ' end ' name string.quoted.single.oracle begin " end " name string.quoted.double.oracle match (?i)\b(number|integer|varchar2|boolean|date)\b name storage.type.oracle scopeName source.plsql.oracle uuid 28DCE4DD-F5E1-4ED3-8847-64DA6B1F9163