/usr/share/gtksourceview-3.0/language-specs/supercollider.lang is in supercollider-gedit 1:3.6.6~repack-2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 | <?xml version="1.0" encoding="UTF-8"?>
<language id="supercollider" _name="SuperCollider" version="2.0" _section="Sources">
<metadata>
<property name="mimetypes">text/x-sc</property>
<property name="globs">*.sc;*.scd</property>
<property name="line-comment-start">//</property>
<property name="block-comment-start">/*</property>
<property name="block-comment-end">*/</property>
</metadata>
<styles>
<style id="comment" _name="Comment" map-to="def:comment"/>
<style id="error" _name="Error" map-to="def:error"/>
<style id="keyword" _name="Keyword" map-to="def:keyword"/>
<style id="number" _name="Number" map-to="def:number"/>
<!-- characters -->
<style id="string" _name="String" map-to="def:string"/>
<style id="symbol" _name="Symbol" map-to="def:string"/>
<!-- identifiers -->
<style id="class-name" _name="Class Name" map-to="def:type"/>
<style id="special-value" _name="Special Value" map-to="def:special-constant"/>
<style id="pseudo-variable" _name="Pseudo Variable" map-to="def:identifier"/>
</styles>
<definitions>
<context id="line-comment" style-ref="comment" end-at-line-end="true">
<start>//</start>
<include>
<context ref="def:in-comment"/>
</include>
</context>
<context id="block-comment" style-ref="comment">
<start>/\*</start>
<end>\*/</end>
<include>
<context ref="def:in-comment"/>
<context ref="block-comment"/> <!-- nested comments are okay -->
</include>
</context>
<context id="close-comment-outside-comment" style-ref="error">
<match>\*/(?!\*)</match>
</context>
<!-- numbers -->
<context id="numbers" style-ref="number">
<!--
1. pi
2. default notation
3. base-n. "-" (in some cases) can be placed before and after 'r' (one or both means negative)
4. exponential notation supports only digits (not letters) after the "e" sign
-->
<match extended="true">
(?<![\w\.])
(
\-?pi |
(\-?)([0-9]+)(\.[0-9]+)?(pi)? |
(\-?)([0-9]+[rR]{1,1})((\-?)[0-9A-Za-z\.]*)(pi)? |
(\-?)([0-9]+)(\.[0-9]+)?e(\-?)([0-9]+)(pi)?
)
(?!\w)
</match>
</context>
<!-- characters -->
<!-- XXX $\x evaluates as well as $x -->
<!-- $\t, $\n, etc. work as expected -->
<context id="characters" style-ref="string">
<match>\$(\\?).</match>
</context>
<!-- strings -->
<context id="strings" style-ref="string" end-at-line-end="false">
<start>"</start>
<end>"</end>
<include>
<context ref="def:escape"/>
</include>
</context>
<!-- symbols (quoted) -->
<context id="quoted-symbols" style-ref="symbol" end-at-line-end="true">
<start>'</start>
<end>'</end>
<include>
<context ref="def:escape"/>
</include>
</context>
<!-- symbols -->
<context id="symbols" style-ref="symbol">
<match>\\\w+</match>
</context>
<!-- identifiers -->
<!-- classes may not start with "_" -->
<context id="class-names" style-ref="class-name">
<keyword>[A-Z]\w*</keyword>
</context>
<context id="special-values" style-ref="special-value">
<keyword>true</keyword>
<keyword>false</keyword>
<keyword>nil</keyword>
<keyword>inf</keyword>
</context>
<context id="keywords" style-ref="keyword">
<keyword>var</keyword>
<keyword>arg</keyword>
<keyword>classvar</keyword>
<keyword>const</keyword>
</context>
<context id="control-operators" style-ref="keyword">
<keyword>if</keyword>
<keyword>while</keyword>
<keyword>forBy</keyword>
<keyword>for</keyword>
<keyword>do</keyword>
<keyword>switch</keyword>
<keyword>case</keyword>
<keyword>loop</keyword> <!-- not in Control-Structures.html -->
</context>
<context id="pseudo-variables" style-ref="pseudo-variable">
<keyword>super</keyword>
<keyword>thisFunctionDef</keyword>
<keyword>thisFunction</keyword>
<keyword>thisMethod</keyword>
<keyword>thisProcess</keyword>
<keyword>thisThread</keyword>
<keyword>this</keyword>
</context>
<context id="supercollider">
<include>
<context ref="line-comment"/>
<context ref="block-comment"/>
<context ref="close-comment-outside-comment"/>
<context ref="numbers"/>
<context ref="characters"/>
<context ref="strings"/>
<context ref="quoted-symbols"/>
<context ref="symbols"/>
<context ref="class-names"/>
<context ref="special-values"/>
<context ref="keywords"/>
<context ref="control-operators"/>
<context ref="pseudo-variables"/>
</include>
</context>
</definitions>
</language>
|