Skip to content

Instantly share code, notes, and snippets.

@bosmacs
Created December 13, 2012 16:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bosmacs/4277650 to your computer and use it in GitHub Desktop.
Save bosmacs/4277650 to your computer and use it in GitHub Desktop.
BBEdit Codeless Language Module for GLSL
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<!-- The smallest CLM that will color keywords.
Copyright (c) 2012 Bare Bones Software, Inc. -->
<dict>
<!-- You must identify the plist as a CLM: -->
<key>BBEditDocumentType</key>
<string>CodelessLanguageModule</string>
<!-- You must identify your language: -->
<key>BBLMLanguageDisplayName</key>
<string>GLSL</string>
<key>BBLMLanguageCode</key>
<string>GLSL</string>
<!-- Not required, but there’s not much point to
a language module if it doesn’t color syntax: -->
<key>BBLMColorsSyntax</key>
<true/>
<key>BBLMScansFunctions</key>
<true/>
<key>BBLMSuffixMap</key>
<array>
<dict>
<key>BBLMLanguageSuffix</key>
<string>.glsl</string>
</dict>
</array>
<!-- Specify some keywords. This isn’t required, either,
but it provides something to color: -->
<key>BBLMKeywordList</key>
<array>
<string>if</string>
<string>else</string>
<string>end</string>
<string>do</string>
<string>for</string>
<string>return</string>
<string>uniform</string>
<string>const</string>
<string>in</string>
<string>out</string>
<string>layout</string>
</array>
<key>BBLMPredefinedNameList</key>
<array>
<!-- types -->
<string>void</string>
<string>bool</string>
<string>int</string>
<string>float</string>
<string>vec2</string>
<string>vec3</string>
<string>vec4</string>
<string>ivec2</string>
<string>ivec3</string>
<string>ivec4</string>
<string>bvec2</string>
<string>bvec3</string>
<string>bvec4</string>
<string>mat3</string>
<string>mat4</string>
<!-- functions -->
<string>sampler1D</string>
<string>sampler2D</string>
<string>sampler2D</string>
<string>sampler2DRect</string>
<string>sampler3D</string>
<string>texture</string>
<string>texelFetch</string>
<string>min</string>
<string>max</string>
<string>any</string>
<string>all</string>
<string>greaterThan</string>
<string>lessThan</string>
<string>dot</string>
<string>step</string>
<string>smoothstep</string>
</array>
<!-- Specify a comment-out string: -->
<key>BBLMCommentLineDefault</key>
<string>//</string>
<!-- You must specify the character set for
keywords and identifiers. Substitute your own: -->
<key>Language Features</key>
<dict>
<key>Identifier and Keyword Character Class</key>
<string>A-Za-z0-9_\?!</string>
<key>Open Block Comments</key> <string>/*</string>
<key>Close Block Comments</key> <string>*/</string>
<key>Open Line Comments</key> <string>//</string>
<key>Open Statement Blocks</key> <string>{</string>
<key>Close Statement Blocks</key> <string>}</string>
<key>Open Parameter Lists</key> <string>(</string>
<key>Close Parameter Lists</key> <string>)</string>
</dict>
</dict>
</plist>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment