gtksourceview r2056 - in trunk: . gtksourceview/language-specs



Author: pborelli
Date: Mon Sep  8 18:52:33 2008
New Revision: 2056
URL: http://svn.gnome.org/viewvc/gtksourceview?rev=2056&view=rev

Log:
2008-09-08  Paolo Borelli  <pborelli katamail com>

	* gtksourceview/language-specs/java.lang: highlight escaped chars
	in strings



Modified:
   trunk/ChangeLog
   trunk/gtksourceview/language-specs/java.lang

Modified: trunk/gtksourceview/language-specs/java.lang
==============================================================================
--- trunk/gtksourceview/language-specs/java.lang	(original)
+++ trunk/gtksourceview/language-specs/java.lang	Mon Sep  8 18:52:33 2008
@@ -33,7 +33,9 @@
   <styles>
     <style id="comment" _name="Comment" map-to="def:comment"/>
     <style id="error" _name="Error" map-to="def:error"/>
+    <style id="escaped-character" _name="Escaped Character" map-to="def:special-char"/>
     <style id="string" _name="String" map-to="def:string"/>
+    <style id="char" _name="Character" map-to="def:character"/>
     <style id="external" _name="External" map-to="def:preprocessor"/>
     <style id="declaration" _name="Declaration" map-to="def:type"/>
     <style id="storage-class" _name="Storage Class" map-to="def:type"/>
@@ -48,15 +50,27 @@
 
   <definitions>
 
+    <define-regex id="escaped-character" extended="true">
+      \\(               # leading backslash
+      [\\\"\'nrbtf] |   # escaped character
+      [0-9]{1,3}    |   # latin encoded char
+      u[0-9]{1,4}       # unicode char
+      )
+    </define-regex>
+
     <context id="string" style-ref="string" end-at-line-end="true">
       <start>"</start>
       <end>"</end>
+      <include>
+        <context id="escaped-character" style-ref="escaped-character">
+          <match>\%{escaped-character}</match>
+        </context>
+      </include>
     </context>
 
-    <context id="string-2" style-ref="string" end-at-line-end="true">
-      <start>'</start>
-      <end>'</end>
-    </context>
+   <context id="char" style-ref="char">
+     <match>'(\%{escaped-character}|.)'</match>
+   </context>
 
     <context id="line-comment" style-ref="comment" end-at-line-end="true">
       <start>//</start>
@@ -172,7 +186,7 @@
     <context id="java">
       <include>
         <context ref="string"/>
-        <context ref="string-2"/>
+        <context ref="char"/>
         <context ref="line-comment"/>
         <context ref="block-comment"/>
         <context ref="close-comment-outside-comment"/>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]