Bug#607851: gtksourceview2: Please add syntax highlighting file for Opal

Benjamin Drung bdrung at ubuntu.com
Wed Dec 22 23:52:57 UTC 2010


Package: gtksourceview2
Version: 2.10.4-1
Severity: wishlist
Tags: patch

Please add the syntax highlighting file for Opal [1]. Quilt patch is attached.

Upstream bug: https://bugzilla.gnome.org/show_bug.cgi?id=632935

[1] http://en.wikipedia.org/wiki/Opal_programming_language 
-------------- next part --------------
Description: Add syntax highlighting file for Opal.
Author: Benjamin Drung <bdrung at ubuntu.com>
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=632935

--- /dev/null
+++ gtksourceview2-2.10.5/gtksourceview/language-specs/opal.lang
@@ -0,0 +1,337 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Authors: Alexander Eichner
+ Copyright (C) 2007 Alexander Eichner <aeichner at freitagsrunde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+-->
+<language id="opal" _name="Opal" version="2.0" _section="Sources">
+    <metadata>
+      <property name="mimetypes"/>
+      <property name="globs">*.sign;*.impl</property>
+      <property name="line-comment-start">--</property>
+      <property name="block-comment-start">/*</property>
+      <property name="block-comment-end">*/</property>
+    </metadata>
+
+    <styles>
+        <style id="module-handler" _name="Module Handler" map-to="def:preprocessor"/>
+        <style id="comment" _name="Comment" map-to="def:comment"/>
+        <style id="common-defines" _name="Common Defines" map-to="def:special-constant"/>
+        <style id="error" _name="Error" map-to="def:error"/>
+        <style id="string" _name="String" map-to="def:string"/>
+        <style id="keyword" _name="Keyword" map-to="def:keyword"/>
+        <style id="boolean" _name="Boolean value" map-to="def:boolean"/>
+        <style id="decimal" _name="Decimal number" map-to="def:decimal"/>
+        <style id="type" _name="Data Type" map-to="def:type"/>
+        <style id="keysymbol" _name="Keysymbol" map-to="def:keyword"/>
+    </styles>
+
+    <definitions>
+
+        <context id="opal">
+            <include>
+
+                <define-regex id="number">[1-9][0-9]*</define-regex>
+                <!-- Comments -->
+                <context id="comment" style-ref="comment" end-at-line-end="true">
+                    <start>--</start>
+                    <include>
+                      <context ref="def:in-line-comment"/>
+                    </include>
+                </context>
+
+                <context id="decimal" style-ref="decimal">
+                  <match>(?&lt;![\w\.])([1-9][0-9]*|0)[lL]?(?![\w\.])</match>
+                </context>
+
+                <context id="comment-multiline" style-ref="comment">
+                    <start>/\*</start>
+                    <end>\*/</end>
+                    <include>
+                        <context ref="def:in-comment"/>
+                    </include>
+                </context>
+
+                <context id="close-comment-outside-comment" style-ref="error">
+                    <match>\*/(?!\*)</match>
+                </context>
+
+                <context id="string" style-ref="string" end-at-line-end="true">
+                    <start>"</start>
+                    <end>"</end>
+                </context>
+
+                <context id="module-handler" style-ref="module-handler">
+                  <keyword>IMPORT</keyword>
+                  <keyword>COMPLETELY</keyword>
+                  <keyword>ONLY</keyword>
+                </context>
+
+                <!-- Keywords -->
+                <context id="keywords" style-ref="keyword">
+                    <keyword>ALL</keyword>
+                    <keyword>AND</keyword>
+                    <keyword>ANDIF</keyword>
+                    <keyword>ANY</keyword>
+                    <keyword>AS</keyword>
+                    <keyword>ASSERT</keyword>
+                    <keyword>AXM</keyword>
+                    <keyword>DATA</keyword>
+                    <keyword>DEF</keyword>
+                    <keyword>DERIVE</keyword>
+                    <keyword>DFD</keyword>
+                    <keyword>DESCRIMINATORS</keyword>
+                    <keyword>ELSE</keyword>
+                    <keyword>EX</keyword>
+                    <keyword>EXTERNAL</keyword>
+                    <keyword>FI</keyword>
+                    <keyword>FIX</keyword>
+                    <keyword>FUN</keyword>
+                    <keyword>IF</keyword>
+                    <keyword>IMPLEMENTATION</keyword>
+                    <keyword>IMPLIES</keyword>
+                    <keyword>IN</keyword>
+                    <keyword>INHERIT</keyword>
+                    <keyword>INJECTIONS</keyword>
+                    <keyword>INTERFACE</keyword>
+                    <keyword>INTERNAL</keyword>
+                    <keyword>LAW</keyword>
+                    <keyword>LAZY</keyword>
+                    <keyword>LEFTASSOC</keyword>
+                    <keyword>LET</keyword>
+                    <keyword>MODULE</keyword>
+                    <keyword>NOT</keyword>
+                    <keyword>NOR</keyword>
+                    <keyword>OR</keyword>
+                    <keyword>ORIF</keyword>
+                    <keyword>OTHERWISE</keyword>
+                    <keyword>POST</keyword>
+                    <keyword>PRE</keyword>
+                    <keyword>PRED</keyword>
+                    <keyword>PRIORITY</keyword>
+                    <keyword>PROPERTIES</keyword>
+                    <keyword>REALIZES</keyword>
+                    <keyword>REQUIRE</keyword>
+                    <keyword>RIGHTASSOC</keyword>
+                    <keyword>SELECTORS</keyword>
+                    <keyword>SIGNATURE</keyword>
+                    <keyword>SORT</keyword>
+                    <keyword>SPC</keyword>
+                    <keyword>SPEC</keyword>
+                    <keyword>SPECIFICATION</keyword>
+                    <keyword>STRUCTURE</keyword>
+                    <keyword>THE</keyword>
+                    <keyword>THEN</keyword>
+                    <keyword>THEORY</keyword>
+                    <keyword>THM</keyword>
+                    <keyword>TYPE</keyword>
+                    <keyword>UNIQ</keyword>
+                    <keyword>WHERE</keyword>
+                </context>
+
+                <context id="keysymbol" style-ref="keyword">
+                  <keyword>::</keyword>
+                  <keyword>==</keyword>
+                  <keyword>-&gt;</keyword>
+                </context>
+
+                <context id="types" style-ref="type">
+                    <keyword>aEntry</keyword>
+                    <keyword>agent</keyword>
+                    <keyword>align</keyword>
+                    <keyword>anchor</keyword>
+                    <keyword>ans</keyword>
+                    <keyword>arg</keyword>
+                    <keyword>arg1</keyword>
+                    <keyword>arg2</keyword>
+                    <keyword>array</keyword>
+                    <keyword>arrowWhere</keyword>
+                    <keyword>bag</keyword>
+                    <keyword>bitmap</keyword>
+                    <keyword>bool</keyword>
+                    <keyword>bstree</keyword>
+                    <keyword>byte</keyword>
+                    <keyword>callback</keyword>
+                    <keyword>canvasEditor</keyword>
+                    <keyword>capStyle</keyword>
+                    <keyword>channel</keyword>
+                    <keyword>char</keyword>
+                    <keyword>childstat</keyword>
+                    <keyword>codom</keyword>
+                    <keyword>codomFrom</keyword>
+                    <keyword>codomTo</keyword>
+                    <keyword>color</keyword>
+                    <keyword>colorModel</keyword>
+                    <keyword>com</keyword>
+                    <keyword>composeOp</keyword>
+                    <keyword>config</keyword>
+                    <keyword>configCom</keyword>
+                    <keyword>cursor</keyword>
+                    <keyword>dArray</keyword>
+                    <keyword>data</keyword>
+                    <keyword>data1</keyword>
+                    <keyword>data11</keyword>
+                    <keyword>data2</keyword>
+                    <keyword>data21</keyword>
+                    <keyword>data3</keyword>
+                    <keyword>data31</keyword>
+                    <keyword>data4</keyword>
+                    <keyword>data41</keyword>
+                    <keyword>dataFrom</keyword>
+                    <keyword>dataTo</keyword>
+                    <keyword>defaultPrio</keyword>
+                    <keyword>denotation</keyword>
+                    <keyword>device</keyword>
+                    <keyword>dist</keyword>
+                    <keyword>distOut</keyword>
+                    <keyword>dom</keyword>
+                    <keyword>domFrom</keyword>
+                    <keyword>domTo</keyword>
+                    <keyword>drawing</keyword>
+                    <keyword>dyn</keyword>
+                    <keyword>emitter</keyword>
+                    <keyword>env</keyword>
+                    <keyword>event</keyword>
+                    <keyword>eventInfo</keyword>
+                    <keyword>file</keyword>
+                    <keyword>filemode</keyword>
+                    <keyword>filestat</keyword>
+                    <keyword>filetype</keyword>
+                    <keyword>first</keyword>
+                    <keyword>first1</keyword>
+                    <keyword>first2</keyword>
+                    <keyword>first3</keyword>
+                    <keyword>fission</keyword>
+                    <keyword>fmt</keyword>
+                    <keyword>font</keyword>
+                    <keyword>from</keyword>
+                    <keyword>from1</keyword>
+                    <keyword>from2</keyword>
+                    <keyword>funct</keyword>
+                    <keyword>group</keyword>
+                    <keyword>groupid</keyword>
+                    <keyword>heap</keyword>
+                    <keyword>iconfig</keyword>
+                    <keyword>image</keyword>
+                    <keyword>in</keyword>
+                    <keyword>inData</keyword>
+                    <keyword>index</keyword>
+                    <keyword>inode</keyword>
+                    <keyword>input</keyword>
+                    <keyword>int</keyword>
+                    <keyword>inter</keyword>
+                    <keyword>interdom</keyword>
+                    <keyword>interpreter</keyword>
+                    <keyword>iseq</keyword>
+                    <keyword>items</keyword>
+                    <keyword>joinStyle</keyword>
+                    <keyword>justifyHow</keyword>
+                    <keyword>long</keyword>
+                    <keyword>manager</keyword>
+                    <keyword>managerRequest</keyword>
+                    <keyword>map</keyword>
+                    <keyword>mapEntry</keyword>
+                    <keyword>mark</keyword>
+                    <keyword>mid</keyword>
+                    <keyword>modifier</keyword>
+                    <keyword>nat</keyword>
+                    <keyword>natMap</keyword>
+                    <keyword>OBJECT</keyword>
+                    <keyword>option</keyword>
+                    <keyword>orient</keyword>
+                    <keyword>out</keyword>
+                    <keyword>outData</keyword>
+                    <keyword>output</keyword>
+                    <keyword>packOp</keyword>
+                    <keyword>pair</keyword>
+                    <keyword>parser</keyword>
+                    <keyword>permission</keyword>
+                    <keyword>point</keyword>
+                    <keyword>positionRequest</keyword>
+                    <keyword>process</keyword>
+                    <keyword>procstat</keyword>
+                    <keyword>quad</keyword>
+                    <keyword>range</keyword>
+                    <keyword>real</keyword>
+                    <keyword>regulator</keyword>
+                    <keyword>rel</keyword>
+                    <keyword>relief</keyword>
+                    <keyword>res</keyword>
+                    <keyword>res1</keyword>
+                    <keyword>res2</keyword>
+                    <keyword>result</keyword>
+                    <keyword>role</keyword>
+                    <keyword>sap</keyword>
+                    <keyword>script</keyword>
+                    <keyword>scroller</keyword>
+                    <keyword>scrollView</keyword>
+                    <keyword>scrollWindow</keyword>
+                    <keyword>searchOpt</keyword>
+                    <keyword>second</keyword>
+                    <keyword>seekMode</keyword>
+                    <keyword>selector</keyword>
+                    <keyword>semaphor</keyword>
+                    <keyword>seq</keyword>
+                    <keyword>seqEntry</keyword>
+                    <keyword>set</keyword>
+                    <keyword>setEntry</keyword>
+                    <keyword>short</keyword>
+                    <keyword>sigaction</keyword>
+                    <keyword>sighandler</keyword>
+                    <keyword>sigmask</keyword>
+                    <keyword>signal</keyword>
+                    <keyword>size</keyword>
+                    <keyword>sizeRequest</keyword>
+                    <keyword>some</keyword>
+                    <keyword>sreal</keyword>
+                    <keyword>state</keyword>
+                    <keyword>stateId</keyword>
+                    <keyword>stateRequest</keyword>
+                    <keyword>string</keyword>
+                    <keyword>subrel</keyword>
+                    <keyword>tag</keyword>
+                    <keyword>textEditor</keyword>
+                    <keyword>time</keyword>
+                    <keyword>to</keyword>
+                    <keyword>tree</keyword>
+                    <keyword>triple</keyword>
+                    <keyword>union</keyword>
+                    <keyword>user</keyword>
+                    <keyword>userid</keyword>
+                    <keyword>version</keyword>
+                    <keyword>view</keyword>
+                    <keyword>void</keyword>
+                    <keyword>wconfig</keyword>
+                    <keyword>wconfigCom</keyword>
+                    <keyword>wday</keyword>
+                    <keyword>widget</keyword>
+                    <keyword>window</keyword>
+                    <keyword>wrapStyle</keyword>
+                </context>
+
+                <!-- booleans -->                
+                <context id="boolean" style-ref="boolean">
+                    <keyword>true</keyword>
+                    <keyword>false</keyword>
+                </context>
+
+            </include>
+        </context>
+    </definitions>
+</language>
\ No newline at end of file
--- gtksourceview2-2.10.5.orig/gtksourceview/language-specs/Makefile.am
+++ gtksourceview2-2.10.5/gtksourceview/language-specs/Makefile.am
@@ -56,6 +56,7 @@ LANGUAGES =			\
 	ocl.lang		\
 	octave.lang		\
 	ooc.lang		\
+	opal.lang		\
 	pascal.lang		\
 	perl.lang		\
 	php.lang		\
--- gtksourceview2-2.10.5.orig/gtksourceview/language-specs/Makefile.in
+++ gtksourceview2-2.10.5/gtksourceview/language-specs/Makefile.in
@@ -292,6 +292,7 @@ LANGUAGES = \
 	ocl.lang		\
 	octave.lang		\
 	ooc.lang		\
+	opal.lang		\
 	pascal.lang		\
 	perl.lang		\
 	php.lang		\


More information about the pkg-gnome-maintainers mailing list