-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathFileMaker.tmLanguage
151 lines (151 loc) · 7.02 KB
/
FileMaker.tmLanguage
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
<?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">
<dict>
<key>fileTypes</key>
<array>
<string>calc</string>
<string>fmfn</string>
</array>
<key>firstLineMatch</key>
<string>\s*(Case|Let)\s*\(</string>
<key>foldingStartMarker</key>
<string>/\*|\{\s*$|\(\[*\s*$</string>
<key>foldingStopMarker</key>
<string>\*/|^\s*\}|^\s*\)|^\s*\]</string>
<key>keyEquivalent</key>
<string>^~F</string>
<key>name</key>
<string>FileMaker</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\b(Average|Count|List|Max|Min|StDev|StDevP|Sum|Variance|VarianceP|Date|Day|DayName|DayNameJ|DayOfWeek|DayOfYear|Month|MonthName|MonthNameJ|WeekOfYear|WeekOfYearFiscal|Year|YearName|DatabaseNames|FieldBounds|FieldComment|FieldIDs|FieldNames|FieldRepetitions|FieldStyle|FieldType|GetNextSerialValue|LayoutIDs|LayoutNames|LayoutObjectNames|RelationInfo|ScriptIDs|ScriptNames|TableIDs|TableNames|ValueListIDs|ValueListItems|ValueListNames|WindowNames|External|FV|NPV|PMT|PV|Case|Choose|Evaluate|EvaluationError|GetAsBoolean|GetField|GetFieldName|GetLayoutObjectAttribute|GetNthRecord|If|IsEmpty|IsValid|IsValidExpression|Let|Lookup|LookupNext|Self|Abs|Ceiling|Combination|Div|Exp|Factorial|Floor|Int|Lg|Ln|Log|Mod|Random|Round|SetPrecision|Sign|Sqrt|Truncate|Extend|GetRepetition|Last|GetSummary|Char|Code|Exact|Filter|FilterValues|GetAsCSS|GetAsDate|GetAsNumber|GetAsSVG|GetAsText|GetAsTime|GetAsTimestamp|GetAsURLEncoded|GetValue|Hiragana|KanaHankaku|KanaZenkaku|KanjiNumeral|Katakana|Left|LeftValues|LeftWords|Length|Lower|Middle|MiddleValues|MiddleWords|NumToJText|PatternCount|Position|Proper|Quote|Replace|Right|RightValues|RightWords|RomanHankaku|RomanZenkaku|SerialIncrement|Substitute|Trim|TrimAll|Upper|ValueCount|WordCount|RGB|TextColor|TextColorRemove|TextFont|TextFontRemove|TextFormatRemove|TextSize|TextSizeRemove|TextStyleAdd|TextStyleRemove|Hour|Minute|Seconds|Time|Timestamp|Acos|Asin|Atan|Cos|Degrees|Pi|Radians|Sin|Tan|Get|GetHeight|GetThumbnail|GetWidth|VerifyContainer|ExecuteSQL|Location|LocationValues)\b</string>
<key>name</key>
<string>support.function.builtin_functions.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>\b(FMSAUC_FindPlugin|FMSAUC_UpdatePlugIn|FMSAUC_Version)\b</string>
<key>name</key>
<string>support.function.external_functions.filemaker</string>
</dict>
<dict>
<key>begin</key>
<string>"</string>
<key>end</key>
<string>"</string>
<key>name</key>
<string>string.quoted.double.filemaker</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\"</string>
<key>name</key>
<string>constant.character.escape.filemaker</string>
</dict>
<dict>
<key>include</key>
<string>text.filemaker.hash</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>/\*</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.filemaker</string>
</dict>
</dict>
<key>end</key>
<string>\*/</string>
<key>name</key>
<string>comment.block.filemaker</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.filemaker</string>
</dict>
</dict>
<key>match</key>
<string>(//).*?($\n?)</string>
<key>name</key>
<string>comment.line.double-slash.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>(?i)\b(AccountName|ActiveFieldContents|ActiveFieldName|ActiveFieldTableName|ActiveLayoutObjectName|ActiveModifierKeys|ActiveRepetitionNumber|ActiveSelectionSize|ActiveSelectionStart|AllowAbortState|AllowToolbarState|ApplicationLanguage|ApplicationVersion|CalculationRepetitionNumber|CurrentDate|CurrentHostTimestamp|CurrentTime|CurrentTimestamp|CustomMenuSetName|DesktopPath|DocumentsPath|DocumentsPathListing|ErrorCaptureState|ExtendedPrivileges|FileMakerPath|FileName|FilePath|FileSize|FoundCount|HighContrastColor|HighContrastState|HostApplicationVersion|HostIPAddress|HostName|LastError|LastMessageChoice|LastODBCError|LayoutAccess|LayoutCount|LayoutName|LayoutNumber|LayoutTableName|LayoutViewState|MultiUserState|NetworkProtocol|PageNumber|PortalRowNumber|PreferencesPath|PrinterName|PrivilegeSetName|RecordAccess|RecordID|RecordModificationCount|RecordNumber|RecordOpenCount|RecordOpenState|RequestCount|RequestOmitState|ScreenDepth|ScreenHeight|ScreenWidth|ScriptName|ScriptParameter|ScriptResult|SortState|StatusAreaState|SystemDrive|SystemIPAddress|SystemLanguage|SystemNICAddress|SystemPlatform|SystemVersion|TemporaryPath|TextRulerVisible|TotalRecordCount|TriggerKeystroke|TriggerModifierKeys|UserCount|UserName|UseSystemFormatsState|WindowContentHeight|WindowContentWidth|WindowDesktopHeight|WindowDesktopWidth|WindowHeight|WindowLeft|WindowMode|WindowName|WindowTop|WindowVisible|WindowWidth|WindowZoomLevel|Roman|Greek|Cryllic|CentralEurope|ShiftJIS|TraditionalChinese|SimplifiedChinese|OEM|Symbol|Other|Plain|Bold|Italic|Underline|Condense|Extend|Strikethrough|SmallCaps|Superscript|Subscript|Uppercase|Lowercase|Titlecase|WordUnderline|DoubleUnderline|AllStyles|objectType|hasFocus|containsFocus|isFrontTabPanel|bounds|left|right|top|bottom|width|height|rotation|startPoint|endPoint|source|content|enclosingObject|containedObjects|ConnectionState|InstalledFMPlugins|PersistentID|UUID|WindowStyle)\b</string>
<key>name</key>
<string>constant.language.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>(\$)[a-zA-Z_][a-zA-Z0-9_]*?\b</string>
<key>name</key>
<string>variable.script_variable.local.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>(\$\$)[a-zA-Z_][a-zA-Z0-9_]*?\b</string>
<key>name</key>
<string>variable.script_variable.global.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>\b-?[1-9]\d*(\.[0-9]+)?\b</string>
<key>name</key>
<string>constant.numeric.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>\b(?:True|true|False|false)\b</string>
<key>name</key>
<string>constant.language.boolean.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>(\-|\+|\*|/)</string>
<key>name</key>
<string>keyword.operator.arithmetic.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>\b(and|or|xor|not)\b</string>
<key>name</key>
<string>keyword.operator.logical.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>(=|<=|≤|>=|≥|<>|≠|<|>)</string>
<key>name</key>
<string>keyword.operator.comparison.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>&</string>
<key>name</key>
<string>keyword.operator.string.filemaker</string>
</dict>
<dict>
<key>match</key>
<string>=</string>
<key>name</key>
<string>keyword.operator.assignment.filemaker</string>
</dict>
</array>
<key>scopeName</key>
<string>source.filemaker</string>
<key>uuid</key>
<string>B60B1704-B890-43ED-80B5-E5E827CD55A3</string>
</dict>
</plist>