c# .net sql wpf avalonedit

c# - Solicitud WPF AvalonEdit SQL xhsd



.net (3)

Para el PL / SQL de Oracle ...

<!-- Oracle''s "reserved words", which CANNOT be used in custom names. --> <Keywords fontWeight=''bold'' foreground=''Blue''> <Word>access</Word> <Word>add</Word> <Word>all</Word> <Word>alter</Word> <Word>and</Word> <Word>any</Word> <Word>array</Word> <Word>arraylen</Word> <Word>as</Word> <Word>asc</Word> <Word>audit</Word> <Word>authid</Word> <Word>begin</Word> <Word>between</Word> <Word>bfile</Word> <Word>blob</Word> <Word>body</Word> <Word>boolean</Word> <Word>bulk</Word> <Word>bulk_rowcount</Word> <Word>by</Word> <Word>case</Word> <Word>char</Word> <Word>check</Word> <Word>clob</Word> <Word>close</Word> <Word>cluster</Word> <Word>collect</Word> <Word>column</Word> <Word>comment</Word> <Word>commit</Word> <Word>compress</Word> <Word>connect</Word> <Word>constant</Word> <Word>continue</Word> <Word>create</Word> <Word>current</Word> <Word>current_user</Word> <Word>cursor</Word> <Word>date</Word> <Word>day</Word> <Word>decimal</Word> <Word>declare</Word> <Word>default</Word> <Word>definer</Word> <Word>delete</Word> <Word>deleting</Word> <Word>desc</Word> <Word>deterministic</Word> <Word>distinct</Word> <Word>drop</Word> <Word>else</Word> <Word>elsif</Word> <Word>end</Word> <Word>exception</Word> <Word>exceptions</Word> <Word>exclusive</Word> <Word>execute</Word> <Word>exists</Word> <Word>exit</Word> <Word>external</Word> <Word>false</Word> <Word>fetch</Word> <Word>file</Word> <Word>float</Word> <Word>for</Word> <Word>forall</Word> <Word>found</Word> <Word>from</Word> <Word>function</Word> <Word>goto</Word> <Word>grant</Word> <Word>group</Word> <Word>having</Word> <Word>hour</Word> <Word>identified</Word> <Word>if</Word> <Word>immediate</Word> <Word>in</Word> <Word>increment</Word> <Word>index</Word> <Word>indices</Word> <Word>initial</Word> <Word>insert</Word> <Word>inserting</Word> <Word>int</Word> <Word>integer</Word> <Word>intersect</Word> <Word>into</Word> <Word>is</Word> <Word>isopen</Word> <Word>language</Word> <Word>level</Word> <Word>like</Word> <Word>limit</Word> <Word>lock</Word> <Word>long</Word> <Word>long_raw</Word> <Word>loop</Word> <Word>maxextents</Word> <Word>minus</Word> <Word>minute</Word> <Word>mod</Word> <Word>mode</Word> <Word>modify</Word> <Word>month</Word> <Word>name</Word> <Word>nchar</Word> <Word>nclob</Word> <Word>noaudit</Word> <Word>nocompress</Word> <Word>nocopy</Word> <Word>not</Word> <Word>notfound</Word> <Word>nowait</Word> <Word>null</Word> <Word>number</Word> <Word>nvarchar2</Word> <Word>of</Word> <Word>offline</Word> <Word>on</Word> <Word>online</Word> <Word>open</Word> <Word>option</Word> <Word>or</Word> <Word>order</Word> <Word>others</Word> <Word>out</Word> <Word>package</Word> <Word>parallel_enable</Word> <Word>pctfree</Word> <Word>pipelined</Word> <Word>positive</Word> <Word>pragma</Word> <Word>prior</Word> <Word>privileges</Word> <Word>procedure</Word> <Word>public</Word> <Word>raise</Word> <Word>raw</Word> <Word>real</Word> <Word>record</Word> <Word>ref</Word> <Word>rename</Word> <Word>replace</Word> <Word>resource</Word> <Word>result_cache</Word> <Word>return</Word> <Word>returning</Word> <Word>revoke</Word> <Word>rollback</Word> <Word>row</Word> <Word>rowcount</Word> <Word>rowid</Word> <Word>rowlabel</Word> <Word>rownum</Word> <Word>rows</Word> <Word>rowtype</Word> <Word>save</Word> <Word>savepoint</Word> <Word>second</Word> <Word>select</Word> <Word>session</Word> <Word>set</Word> <Word>share</Word> <Word>show</Word> <Word>size</Word> <Word>smallint</Word> <Word>sql</Word> <Word>sqlbuf</Word> <Word>start</Word> <Word>subtype</Word> <Word>successful</Word> <Word>synonym</Word> <Word>sysdate</Word> <Word>table</Word> <Word>then</Word> <Word>timestamp</Word> <Word>timezone_abbr</Word> <Word>timezone_hour</Word> <Word>timezone_minute</Word> <Word>timezone_region</Word> <Word>to</Word> <Word>transaction</Word> <Word>trigger</Word> <Word>true</Word> <Word>uid</Word> <Word>union</Word> <Word>unique</Word> <Word>update</Word> <Word>updating</Word> <Word>urowid</Word> <Word>user</Word> <Word>using</Word> <Word>validate</Word> <Word>values</Word> <Word>varchar</Word> <Word>varchar2</Word> <Word>varray</Word> <Word>varying</Word> <Word>view</Word> <Word>when</Word> <Word>whenever</Word> <Word>where</Word> <Word>while</Word> <Word>with</Word> <Word>year</Word> </Keywords> <!-- Oracle''s "keywords", which can be used in custom names. --> <Keywords foreground=''Blue''> <Word>errors</Word> <Word>exceptions</Word> <Word>found</Word> <Word>indices</Word> <Word>mod</Word> <Word>name</Word> <Word>at</Word> <Word>replace</Word> <Word>rowcount</Word> <Word>save</Word> <Word>show</Word> <Word>type</Word> <Word>a</Word> <Word>automatic</Word> <Word>binary_double</Word> <Word>binary_float</Word> <Word>binary_integer</Word> <Word>block</Word> <Word>both</Word> <Word>breadth</Word> <Word>byte</Word> <Word>cast</Word> <Word>character</Word> <Word>cluster_set</Word> <Word>connect_by_root</Word> <Word>constraint</Word> <Word>count</Word> <Word>cross</Word> <Word>cube</Word> <Word>cursor</Word> <Word>cycle</Word> <Word>dbtimezone</Word> <Word>dec</Word> <Word>decrement</Word> <Word>dense_rank</Word> <Word>depth</Word> <Word>dimension</Word> <Word>double</Word> <Word>empty</Word> <Word>end</Word> <Word>equals_path</Word> <Word>escape</Word> <Word>exclude</Word> <Word>extract</Word> <Word>first</Word> <Word>following</Word> <Word>full</Word> <Word>grouping</Word> <Word>ignore</Word> <Word>include</Word> <Word>infinite</Word> <Word>inner</Word> <Word>interval</Word> <Word>iterate</Word> <Word>join</Word> <Word>keep</Word> <Word>last</Word> <Word>leading</Word> <Word>left</Word> <Word>like2</Word> <Word>like4</Word> <Word>likec</Word> <Word>limit</Word> <Word>listagg</Word> <Word>lnnvl</Word> <Word>local</Word> <Word>locked</Word> <Word>log</Word> <Word>main</Word> <Word>matched</Word> <Word>maxvalue</Word> <Word>measures</Word> <Word>member</Word> <Word>merge</Word> <Word>mivalue</Word> <Word>mlslabel</Word> <Word>model</Word> <Word>multiset</Word> <Word>nan</Word> <Word>national</Word> <Word>natural</Word> <Word>nav</Word> <Word>nocycle</Word> <Word>nulls</Word> <Word>numeric</Word> <Word>nvarchar</Word> <Word>only</Word> <Word>outer</Word> <Word>over</Word> <Word>partition</Word> <Word>percent_rank</Word> <Word>percentile_cont</Word> <Word>percentile_disc</Word> <Word>pivot</Word> <Word>pls_integer</Word> <Word>preceding</Word> <Word>precision</Word> <Word>present</Word> <Word>range</Word> <Word>read</Word> <Word>reference</Word> <Word>regexp_like</Word> <Word>reject</Word> <Word>respect</Word> <Word>return</Word> <Word>returning</Word> <Word>right</Word> <Word>rollup</Word> <Word>rules</Word> <Word>sample</Word> <Word>scn</Word> <Word>search</Word> <Word>seed</Word> <Word>sequential</Word> <Word>sessiontimezone</Word> <Word>sets</Word> <Word>siblings</Word> <Word>single</Word> <Word>skip</Word> <Word>some</Word> <Word>sql</Word> <Word>submultiset</Word> <Word>subpartition</Word> <Word>the</Word> <Word>time</Word> <Word>to</Word> <Word>trailing</Word> <Word>trim</Word> <Word>unbounded</Word> <Word>under_path</Word> <Word>unlimited</Word> <Word>unpivot</Word> <Word>until</Word> <Word>updated</Word> <Word>upsert</Word> <Word>using</Word> <Word>value</Word> <Word>varying</Word> <Word>versions</Word> <Word>wait</Word> <Word>when</Word> <Word>within</Word> <Word>xml</Word> <Word>zone</Word> </Keywords>

He buscado en Internet (una y otra vez) y no pude encontrar un archivo SQL.vshd para AvalonEdit, he usado la versión de formato anterior pero produce un error en el editor (ya no aparece) , Entonces me pregunto que tal vez alguien haya hecho tal archivo porque no quiero perder mi tiempo haciendo esto si ya se hizo.

Si pudieras compartir el tuyo conmigo sería apreciado :)

Gracias por adelantado


Paso a paso:

  1. Si aún no lo ha hecho, use nuget para instalar AvalonEdit en su proyecto
  2. Agregue el Editor de Avalon a su ventana, se verá algo así:

    <avalonEdit:TextEditor xmlns:avalonEdit="http://icsharpcode.net/sharpdevelop/avalonedit" Name="MyAvalonEdit" FontFamily="Consolas" FontSize="10pt" ShowLineNumbers="True" LineNumbersForeground="#FF2B91AF" />

  3. Agregue un nuevo archivo xml a su proyecto (póngalo en la carpeta ''recursos'', o puede ponerlo en cualquier lugar), y asígnele el nombre sql.xshd (definición de resaltado de sintaxis xml) (o puede nombrarlo como quiera)

  4. Pegue en la definición de sintaxis de uno las respuestas aquí
  5. Cambia la acción de compilación a ''Recurso incrustado''
  6. Tome nota del espacio de nombres predeterminado del proyecto (haga clic con el botón derecho en proyecto -> propiedades -> aplicación)
  7. Agregue el siguiente código en la carga de su ventana para conectar la iluminación de sintaxis; Reemplace DefaultNameSpace y Folder como corresponda

    private void Window_Loaded(object sender, RoutedEventArgs e) { using (var stream = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("DefaultNamespace.Folder.sql.xshd")) { using (var reader = new System.Xml.XmlTextReader(stream)) { MyAvalonEdit.SyntaxHighlighting = ICSharpCode.AvalonEdit.Highlighting.Xshd.HighlightingLoader.Load(reader, ICSharpCode.AvalonEdit.Highlighting.HighlightingManager.Instance); } } }

  8. Si tiene problemas con el nombre del recurso, puede encontrar los nombres de todos los recursos en el ensamblaje con esto:

    // Get names of embedded resources var resourceNames = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceNames();

Encontré un buen xshd para SQL del editor de código abierto de Dirk Bahle aquí: https://github.com/Dirkster99/Edi/blob/master/Edi/Edi/AvalonEdit/Highlighting/SQL.xshd

<?xml version="1.0"?> <!-- Shades of Red-Brown: #a31515, #cf4315, #ffb96e, #ffdc95 --> <!-- Shades of Bright-Blue: #0077dc #008fe4 #8dbbdc #8de8ff --> <SyntaxDefinition name="SQL" extensions=".sql" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008"> <!-- T-SQL Reference: http://msdn.microsoft.com/de-de/library/ms189826%28v=sql.90%29.aspx --> <Color name="Digits" foreground="DarkBlue" exampleText="3.1415f"/> <Color name="Comment" foreground="Green" exampleText="string text = &quot;Hello, World!&quot;"/> <Color name="Punctuation" foreground="Red" exampleText="string text = &quot;Hello, World!&quot;"/> <Color name="String" foreground="Olive" exampleText="string text = &quot;Hello, World!&quot;"/> <Color name="String2" foreground="#993" exampleText="string text = &quot;Hello, World!&quot;"/> <Color name="Keyword" fontWeight="bold" foreground="Blue" exampleText="SELECT"/> <Color name="Keyword1" fontWeight="normal" foreground="Blue" exampleText="NOCOUNT"/> <Color name="GoKeyword" fontWeight="bold" foreground="Red" exampleText="GO"/> <Color name="MethodCall" foreground="MidnightBlue" fontWeight="bold" /> <Color name="Variable" foreground="Red" exampleText="@Variable" /> <Color name="Variable1" foreground="Red" exampleText="@@Variable" /> <Color name="ObjectReference" foreground="Teal" exampleText="Customer.Name" /> <Color name="ObjectReference1" foreground="Teal" exampleText="dbo.Customer.Name" /> <Color name="ObjectReferenceInBrackets" foreground="Teal" exampleText="[Customer].[Name]" /> <Color name="ObjectReferenceInBrackets1" foreground="Teal" exampleText="[dbo].[Customer].[Name]" /> <Color name="CommentMarkerSetTodo" foreground="Red" fontWeight="bold" /> <Color name="CommentMarkerSetHackUndone" foreground="#E0E000" fontWeight="bold" /> <RuleSet name="CommentMarkerSet"> <Keywords color="CommentMarkerSetTodo"> <Word>TODO</Word> <Word>FIXME</Word> </Keywords> <Keywords color="CommentMarkerSetHackUndone"> <Word>HACK</Word> <Word>UNDONE</Word> </Keywords> </RuleSet> <RuleSet ignoreCase="true"> <Span color="String" multiline="true" > <Begin>''</Begin> <End>''</End> </Span> <Span color="String2" multiline="true" > <Begin>"</Begin> <End>"</End> </Span> <!-- span for escape sequences --> <Span color="Comment" begin="--" end="/n" ruleSet="CommentMarkerSet"/> <Span color="Comment" multiline="true" ruleSet="CommentMarkerSet"> <Begin>//*</Begin> <End>/*/</End> </Span> <Keywords color="Keyword" > <Word>ABORT</Word> <Word>BETWEEN</Word> <Word>CRASH</Word> <Word>DIGITS</Word> <Word>ACCEPT</Word> <Word>BINARY_INTEGER</Word> <Word>CREATE</Word> <Word>DISPOSE</Word> <Word>ACCESS</Word> <Word>BODY</Word> <Word>CURRENT</Word> <Word>DISTINCT</Word> <Word>ADD</Word> <Word>BOOLEAN</Word> <Word>CURRVAL</Word> <Word>DO</Word> <Word>ALL</Word> <Word>BY</Word> <Word>CURSOR</Word> <Word>DROP</Word> <Word>ALTER</Word> <Word>CASE</Word> <Word>DATABASE</Word> <Word>ELSE</Word> <Word>AND</Word> <Word>CHAR</Word> <Word>DATA_BASE</Word> <Word>ELSIF</Word> <Word>ANY</Word> <Word>CHAR_BASE</Word> <Word>DATE</Word> <Word>END</Word> <Word>ARRAY</Word> <Word>CHECK</Word> <Word>DBA</Word> <Word>ENTRY</Word> <Word>ARRAYLEN</Word> <Word>CLOSE</Word> <Word>DEBUGOFF</Word> <Word>EXCEPTION</Word> <Word>AS</Word> <Word>CLUSTER</Word> <Word>DEBUGON</Word> <Word>EXCEPTION_INIT</Word> <Word>ASC</Word> <Word>CLUSTERS</Word> <Word>DECLARE</Word> <Word>EXISTS</Word> <Word>ASSERT</Word> <Word>COLAUTH</Word> <Word>DECIMAL</Word> <Word>EXIT</Word> <Word>ASSIGN</Word> <Word>COLUMNS</Word> <Word>DEFAULT</Word> <Word>FALSE</Word> <Word>AT</Word> <Word>COMMIT</Word> <Word>DEFINITION</Word> <Word>FETCH</Word> <Word>AUTHORIZATION</Word> <Word>COMPRESS</Word> <Word>DELAY</Word> <Word>FLOAT</Word> <Word>AVG</Word> <Word>CONNECT</Word> <Word>DELETE</Word> <Word>FOR</Word> <Word>BASE_TABLE</Word> <Word>CONSTANT</Word> <Word>DELTA</Word> <Word>FORM</Word> <Word>BEGIN</Word> <Word>COUNT</Word> <Word>DESC</Word> <Word>FROM</Word> <Word>FUNCTION</Word> <Word>NEW</Word> <Word>RELEASE</Word> <Word>SUM</Word> <Word>GENERIC</Word> <Word>NEXTVAL</Word> <Word>REMR</Word> <Word>TABAUTH</Word> <Word>GOTO</Word> <Word>NOCOMPRESS</Word> <Word>RENAME</Word> <Word>TABLE</Word> <Word>GRANT</Word> <Word>NOT</Word> <Word>RESOURCE</Word> <Word>TABLES</Word> <Word>GROUP</Word> <Word>NULL</Word> <Word>RETURN</Word> <Word>TASK</Word> <Word>HAVING</Word> <Word>NUMBER</Word> <Word>REVERSE</Word> <Word>TERMINATE</Word> <Word>IDENTIFIED</Word> <Word>NUMBER_BASE</Word> <Word>REVOKE</Word> <Word>THEN</Word> <Word>IF</Word> <Word>OF</Word> <Word>ROLLBACK</Word> <Word>TO</Word> <Word>IN</Word> <Word>ON</Word> <Word>ROWID</Word> <Word>TRUE</Word> <Word>INDEX</Word> <Word>OPEN</Word> <Word>ROWLABEL</Word> <Word>TYPE</Word> <Word>INDEXES</Word> <Word>OPTION</Word> <Word>ROWNUM</Word> <Word>UNION</Word> <Word>INDICATOR</Word> <Word>OR</Word> <Word>ROWTYPE</Word> <Word>UNIQUE</Word> <Word>INSERT</Word> <Word>ORDER</Word> <Word>RUN</Word> <Word>UPDATE</Word> <Word>INTEGER</Word> <Word>OTHERS</Word> <Word>SAVEPOINT</Word> <Word>USE</Word> <Word>INTERSECT</Word> <Word>OUT</Word> <Word>SCHEMA</Word> <Word>VALUES</Word> <Word>INTO</Word> <Word>PACKAGE</Word> <Word>SELECT</Word> <Word>VARCHAR</Word> <Word>IS</Word> <Word>PARTITION</Word> <Word>SEPARATE</Word> <Word>VARCHAR2</Word> <Word>LEVEL</Word> <Word>PCTFREE</Word> <Word>SET</Word> <Word>VARIANCE</Word> <Word>LIKE</Word> <Word>POSITIVE</Word> <Word>SIZE</Word> <Word>VIEW</Word> <Word>LIMITED</Word> <Word>PRAGMA</Word> <Word>SMALLINT</Word> <Word>VIEWS</Word> <Word>LOOP</Word> <Word>PRIOR</Word> <Word>SPACE</Word> <Word>WHEN</Word> <Word>MAX</Word> <Word>PRIVATE</Word> <Word>SQL</Word> <Word>WHERE</Word> <Word>MIN</Word> <Word>PROCEDURE</Word> <Word>SQLCODE</Word> <Word>WHILE</Word> <Word>MINUS</Word> <Word>PUBLIC</Word> <Word>SQLERRM</Word> <Word>WITH</Word> <Word>MLSLABEL</Word> <Word>RAISE</Word> <Word>START</Word> <Word>WORK</Word> <Word>MOD</Word> <Word>RANGE</Word> <Word>STATEMENT</Word> <Word>XOR</Word> <Word>MODE</Word> <Word>REAL</Word> <Word>STDDEV</Word> <Word>NATURAL</Word> <Word>RECORD</Word> <Word>SUBTYPE</Word> <Word>TRUNCATE</Word> </Keywords> <Keywords color="Keyword1"> <Word>NOCOUNT</Word> </Keywords> <Keywords color="GoKeyword" > <Word>GO</Word> </Keywords> <Rule color="ObjectReference1">([/d/w]+)/.([/d/w]+)/.([/d/w]+)</Rule> <Rule color="ObjectReference">([/d/w]+)/.([/d/w]+)</Rule> <Rule color="ObjectReferenceInBrackets1">([/d/w]+)/.([/d/w]+)/.([/d/w]+)</Rule> <Rule color="ObjectReferenceInBrackets">/[([/d/w]+)/]/./[([/d/w]+)/]/./[([/d/w]+)/]</Rule> <Rule color="ObjectReferenceInBrackets">/[([/d/w]+)/]/./[([/d/w]+)/]</Rule> <Rule color="Punctuation"> [?,.;()/[/]{}+/-/%*&lt;&gt;^+~!|&amp;]+ </Rule> <Rule color="MethodCall">[/d/w_]+(?=(/s*/())</Rule> <Rule color="Variable1">@@([/w]+)</Rule> <Rule color="Variable">@([/w]+)</Rule> <!-- Digits --> <Rule color="Digits"> /b0[xX][0-9a-fA-F]+ # hex number | ( /b/d+(/.[0-9]+)? #number with optional floating point | /.[0-9]+ #or just starting with floating point ) ([eE][+-]?[0-9]+)? # optional exponent </Rule> </RuleSet> </SyntaxDefinition>


<?xml version="1.0"?> <SyntaxDefinition name="sql" extensions=".sql" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008"> <Color name="String" foreground="Olive" exampleText="string text = &quot;Hello, World!&quot;"/> <Color name="String2" foreground="#993" exampleText="string text = &quot;Hello, World!&quot;"/> <Color name="Comment" foreground="Green" exampleText="string text = &quot;Hello, World!&quot;"/> <Color name="Punctuation" foreground="Red" exampleText="string text = &quot;Hello, World!&quot;"/> <RuleSet ignoreCase="true"> <Span color="String" multiline="true" > <Begin>''</Begin> <End>''</End> </Span> <Span color="String2" multiline="true" > <Begin>"</Begin> <End>"</End> </Span> <!-- span for escape sequences --> <Span color="Comment" begin="--" end="/n"/> <Span color="Comment" multiline="true"> <Begin>//*</Begin> <End>/*/</End> </Span> <Keywords fontWeight="bold" foreground="Blue" > <Word>ABORT</Word> <Word>BETWEEN</Word> <Word>CRASH</Word> <Word>DIGITS</Word> <Word>ACCEPT</Word> <Word>BINARY_INTEGER</Word> <Word>CREATE</Word> <Word>DISPOSE</Word> <Word>ACCESS</Word> <Word>BODY</Word> <Word>CURRENT</Word> <Word>DISTINCT</Word> <Word>ADD</Word> <Word>BOOLEAN</Word> <Word>CURRVAL</Word> <Word>DO</Word> <Word>ALL</Word> <Word>BY</Word> <Word>CURSOR</Word> <Word>DROP</Word> <Word>ALTER</Word> <Word>CASE</Word> <Word>DATABASE</Word> <Word>ELSE</Word> <Word>AND</Word> <Word>CHAR</Word> <Word>DATA_BASE</Word> <Word>ELSIF</Word> <Word>ANY</Word> <Word>CHAR_BASE</Word> <Word>DATE</Word> <Word>END</Word> <Word>ARRAY</Word> <Word>CHECK</Word> <Word>DBA</Word> <Word>ENTRY</Word> <Word>ARRAYLEN</Word> <Word>CLOSE</Word> <Word>DEBUGOFF</Word> <Word>EXCEPTION</Word> <Word>AS</Word> <Word>CLUSTER</Word> <Word>DEBUGON</Word> <Word>EXCEPTION_INIT</Word> <Word>ASC</Word> <Word>CLUSTERS</Word> <Word>DECLARE</Word> <Word>EXISTS</Word> <Word>ASSERT</Word> <Word>COLAUTH</Word> <Word>DECIMAL</Word> <Word>EXIT</Word> <Word>ASSIGN</Word> <Word>COLUMNS</Word> <Word>DEFAULT</Word> <Word>FALSE</Word> <Word>AT</Word> <Word>COMMIT</Word> <Word>DEFINITION</Word> <Word>FETCH</Word> <Word>AUTHORIZATION</Word> <Word>COMPRESS</Word> <Word>DELAY</Word> <Word>FLOAT</Word> <Word>AVG</Word> <Word>CONNECT</Word> <Word>DELETE</Word> <Word>FOR</Word> <Word>BASE_TABLE</Word> <Word>CONSTANT</Word> <Word>DELTA</Word> <Word>FORM</Word> <Word>BEGIN</Word> <Word>COUNT</Word> <Word>DESC</Word> <Word>FROM</Word> <Word>FUNCTION</Word> <Word>NEW</Word> <Word>RELEASE</Word> <Word>SUM</Word> <Word>GENERIC</Word> <Word>NEXTVAL</Word> <Word>REMR</Word> <Word>TABAUTH</Word> <Word>GOTO</Word> <Word>NOCOMPRESS</Word> <Word>RENAME</Word> <Word>TABLE</Word> <Word>GRANT</Word> <Word>NOT</Word> <Word>RESOURCE</Word> <Word>TABLES</Word> <Word>GROUP</Word> <Word>NULL</Word> <Word>RETURN</Word> <Word>TASK</Word> <Word>HAVING</Word> <Word>NUMBER</Word> <Word>REVERSE</Word> <Word>TERMINATE</Word> <Word>IDENTIFIED</Word> <Word>NUMBER_BASE</Word> <Word>REVOKE</Word> <Word>THEN</Word> <Word>IF</Word> <Word>OF</Word> <Word>ROLLBACK</Word> <Word>TO</Word> <Word>IN</Word> <Word>ON</Word> <Word>ROWID</Word> <Word>TRUE</Word> <Word>INDEX</Word> <Word>OPEN</Word> <Word>ROWLABEL</Word> <Word>TYPE</Word> <Word>INDEXES</Word> <Word>OPTION</Word> <Word>ROWNUM</Word> <Word>UNION</Word> <Word>INDICATOR</Word> <Word>OR</Word> <Word>ROWTYPE</Word> <Word>UNIQUE</Word> <Word>INSERT</Word> <Word>ORDER</Word> <Word>RUN</Word> <Word>UPDATE</Word> <Word>INTEGER</Word> <Word>OTHERS</Word> <Word>SAVEPOINT</Word> <Word>USE</Word> <Word>INTERSECT</Word> <Word>OUT</Word> <Word>SCHEMA</Word> <Word>VALUES</Word> <Word>INTO</Word> <Word>PACKAGE</Word> <Word>SELECT</Word> <Word>VARCHAR</Word> <Word>IS</Word> <Word>PARTITION</Word> <Word>SEPARATE</Word> <Word>VARCHAR2</Word> <Word>LEVEL</Word> <Word>PCTFREE</Word> <Word>SET</Word> <Word>VARIANCE</Word> <Word>LIKE</Word> <Word>POSITIVE</Word> <Word>SIZE</Word> <Word>VIEW</Word> <Word>LIMITED</Word> <Word>PRAGMA</Word> <Word>SMALLINT</Word> <Word>VIEWS</Word> <Word>LOOP</Word> <Word>PRIOR</Word> <Word>SPACE</Word> <Word>WHEN</Word> <Word>MAX</Word> <Word>PRIVATE</Word> <Word>SQL</Word> <Word>WHERE</Word> <Word>MIN</Word> <Word>PROCEDURE</Word> <Word>SQLCODE</Word> <Word>WHILE</Word> <Word>MINUS</Word> <Word>PUBLIC</Word> <Word>SQLERRM</Word> <Word>WITH</Word> <Word>MLSLABEL</Word> <Word>RAISE</Word> <Word>START</Word> <Word>WORK</Word> <Word>MOD</Word> <Word>RANGE</Word> <Word>STATEMENT</Word> <Word>XOR</Word> <Word>MODE</Word> <Word>REAL</Word> <Word>STDDEV</Word> <Word>NATURAL</Word> <Word>RECORD</Word> <Word>SUBTYPE</Word> </Keywords> <Rule color="Punctuation"> [?,.;()/[/]{}+/-/%*&lt;&gt;^+~!|&amp;]+ </Rule> </RuleSet> </SyntaxDefinition>