factor/contrib/textmate/Factor.tmbundle/Syntaxes/Factor.tmLanguage

167 lines
3.9 KiB
Plaintext

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>factor</string>
<string>facts</string>
</array>
<key>foldingStartMarker</key>
<string>^\s*(M|C)?:|#(V|H|C)\{</string>
<key>foldingStopMarker</key>
<string>^\s*$</string>
<key>keyEquivalent</key>
<string>^~F</string>
<key>name</key>
<string>Factor</string>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>3</key>
<dict>
<key>name</key>
<string>keyword.colon.factor</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>keyword.colon.factor</string>
</dict>
<key>5</key>
<dict>
<key>name</key>
<string>keyword.colon.factor</string>
</dict>
<key>6</key>
<dict>
<key>name</key>
<string>entity.name.class.factor</string>
</dict>
<key>7</key>
<dict>
<key>name</key>
<string>comment.stack-effect.factor</string>
</dict>
</dict>
<key>match</key>
<string>^(((M:)\s+[^\s]+)|(:)|(C:))\s*([^\s]+)\s*(\(\s.*\))?</string>
<key>name</key>
<string>definition.word.factor</string>
</dict>
<dict>
<key>match</key>
<string>\b(drop|2drop|3drop|nip|2nip|dup|2dup|3dup|dupd|over|pick|tuck|swap|rot|-rot|2swap|swapd|&gt;r|r&gt;)\b</string>
<key>name</key>
<string>keyword.control.stack.factor</string>
</dict>
<dict>
<key>match</key>
<string>\b(if|when|unless)\*?\s+</string>
<key>name</key>
<string>keyword.control.flow.factor</string>
</dict>
<dict>
<key>match</key>
<string>\b(f|t)\s+</string>
<key>name</key>
<string>constant.language.factor</string>
</dict>
<dict>
<key>match</key>
<string>\bCHAR:\s+[^\s]+\s</string>
<key>name</key>
<string>constant.character.factor</string>
</dict>
<dict>
<key>match</key>
<string>\b(BIN:|HEX:|OCT:)?\s+-?\d+\s+</string>
<key>name</key>
<string>constant.numeric.integer.factor</string>
</dict>
<dict>
<key>match</key>
<string>\b-?+\d+\.\d+(E(\+|-)\d+)?\s+</string>
<key>name</key>
<string>constant.numeric.float.factor</string>
</dict>
<dict>
<key>match</key>
<string>\b-?\d+/-?\d+\s+</string>
<key>name</key>
<string>constant.numeric.rational.factor</string>
</dict>
<dict>
<key>begin</key>
<string>"</string>
<key>end</key>
<string>"</string>
<key>name</key>
<string>string.quoted.double.factor</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_characters</string>
</dict>
</array>
</dict>
<dict>
<key>match</key>
<string>inline</string>
<key>name</key>
<string>storage.modifier.factor</string>
</dict>
<dict>
<key>begin</key>
<string>#!|!</string>
<key>end</key>
<string>$</string>
<key>name</key>
<string>comment.line.factor</string>
</dict>
<dict>
<key>begin</key>
<string>\(\s+</string>
<key>end</key>
<string>\s+\)</string>
<key>name</key>
<string>comment.parens.factor</string>
</dict>
<dict>
<key>match</key>
<string>\b[A-Z]+:\s+[^\s]+(\s|$)</string>
<key>name</key>
<string>meta.postpone.factor</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>escaped_characters</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\(\\|[abefnprtv'"?]|[0-3]\d{,2}|[4-7]\d?|x[a-fA-F0-9]{,2})</string>
<key>name</key>
<string>constant.character.escape.factor</string>
</dict>
<dict>
<key>match</key>
<string>\\.</string>
<key>name</key>
<string>invalid.illegal.unknown-escape.factor</string>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.factor</string>
<key>uuid</key>
<string>3C9C9C2A-314A-475B-A4E4-A68BAAF3F36E</string>
</dict>
</plist>