lexer.*.fs=fsharp

keywords.*.fs= \
async task backgroundTask \
abstract and as assert base begin class default delegate do done downcast \
downto elif else end exception extern false finally fixed for fun function \
global if in inherit inline interface internal lazy let let! match match! \
member module mutable namespace new null of open or override private public \
rec return return! select static struct then to true try type upcast use use! \
val void when while with yield yield! atomic break checked component const \
constraint constructor continue eager event external fixed functor global \
include method mixin object parallel process protected pure sealed tailcall \
trait virtual volatile

keywords2.*.fs= \
asr land lor lsl lsr lxor mod sig abs acos add allPairs append asin atan atan2 \
average averageBy base1 base2 blit cache cast ceil choose \
chunkBySize collect compareWith concat contains containsKey copy cos cosh count \
countBy create createBased delay difference distinct distinctBy empty eprintf except \
exists exists2 exactlyOne failwith fill filter find findBack findIndex findIndexBack \
findKey floor fold fold2 foldBack foldBack2 forall forall2 fprintf fst get groupBy head ignore indexed \
init initBased initInfinite intersect intersectMany invalidArg isEmpty isProperSubset \
isProperSuperset isSubset isSuperset item iter iter2 iteri iteri2 last length \
length1 length2 length3 length4 map map2 map3 mapFold mapFoldBack mapi mapi2 \
max maxBy maxElement min minBy minElement nameof not ofArray ofList ofSeq pairwise partition \
permute pick pown printf printfn raise readonly rebase reduce reduceBack remove replicate rev round scan \
scanBack seq set sin sinh singleton skip skipWhile snd sort sortBy sortByDescending sortDescending \
sortInPlace sortInPlaceBy sortInPlaceWith sortWith splitAt splitInto sprintf sqrt sub sum \
sumBy tail take takeWhile tan tanh toArray toList toSeq transpose truncate \
tryExactlyOne tryFind tryFindBack tryFindIndex tryFindIndexBack tryHead \
tryItem tryFindKey tryLast tryPick typeof unfold union unionMany unzip unzip3 where \
windowed zeroCreate zeroCreateBased zip zip3

keywords3.*.fs= \
ArgumentException Array Array2D Array3D Array4D BigInteger Boolean Byte Char Collections Core CultureInfo DateTime Decimal Double \
Environment Expr Float FSharp Globalization Int16 Int32 Int64 IntPtr IO Linq List Map Math Microsoft NumberStyles \
Object Parallel Printf Random ResizeArray SByte Seq Set Single String System UInt16 UInt32 UInt64 UIntPtr \
array bigint bool byte byref char comparison decimal double enum equality Error Exception exn float float32 inref int int8 int16 \
int32 int64 list nativeint nativeptr None obj Ok option Option outref ref Result sbyte Some single string unmanaged unativeint \
uint uint8 uint16 uint32 uint64 unit void voidptr voption

fold.fsharp.preprocessor=1
fold.fsharp.quotes=1
fold.comment=1

