Skip to content

Commit c43512b

Browse files
committed
kate: restrict char escapes to ones accepted by Rust and highlight hex escapes
1 parent 6002d10 commit c43512b

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

src/etc/kate/rust.xml

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -229,13 +229,20 @@
229229
</context>
230230
<context attribute="String" lineEndContext="#stay" name="String">
231231
<LineContinue attribute="String" context="#stay"/>
232-
<HlCStringChar attribute="String Char" context="#stay"/>
232+
<DetectChar char="\" attribute="CharEscape" context="CharEscape"/>
233233
<DetectChar attribute="String" context="#pop" char="&quot;"/>
234234
</context>
235235
<context attribute="Character" lineEndContext="#pop" name="Character">
236-
<HlCStringChar attribute="Character" context="#stay"/>
236+
<DetectChar char="\" attribute="CharEscape" context="CharEscape"/>
237237
<DetectChar attribute="Character" context="#pop" char="&apos;"/>
238238
</context>
239+
<context attribute="CharEscape" lineEndContext="#pop" name="CharEscape">
240+
<AnyChar String="nrt\&apos;&quot;" attribute="CharEscape" context="#pop"/>
241+
<RegExpr String="x[0-9a-fA-F]{2}" attribute="CharEscape" context="#pop"/>
242+
<RegExpr String="u[0-9a-fA-F]{4}" attribute="CharEscape" context="#pop"/>
243+
<RegExpr String="U[0-9a-fA-F]{8}" attribute="CharEscape" context="#pop"/>
244+
<RegExpr String="." attribute="Error" context="#pop"/>
245+
</context>
239246
<context attribute="Comment" lineEndContext="#pop" name="Commentar 1"/>
240247
<context attribute="Comment" lineEndContext="#stay" name="Commentar 2">
241248
<DetectSpaces/>
@@ -256,11 +263,12 @@
256263
<itemData name="Scope" defStyleNum="dsNormal" color="#0055AA"/>
257264
<itemData name="Number" defStyleNum="dsDecVal" color="#116644"/>
258265
<itemData name="String" defStyleNum="dsString" color="#FF0000"/>
259-
<itemData name="String Char" defStyleNum="dsChar" color="#FF0000"/>
266+
<itemData name="CharEscape" defStyleNum="dsChar" color="#FF0000" bold="1"/>
260267
<itemData name="Character" defStyleNum="dsChar" color="#FF0000"/>
261268
<itemData name="Macro" defStyleNum="dsOthers"/>
262269
<itemData name="Attribute" defStyleNum="dsOthers"/>
263270
<itemData name="Lifetime" defStyleNum="dsOthers" bold="1"/>
271+
<itemData name="Error" defStyleNum="dsError"/>
264272
</itemDatas>
265273
</highlighting>
266274
<general>

0 commit comments

Comments
 (0)