You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The following causes the extension quite a bit of trouble
dataCab=Cabdataa `D` b= a `D` bdataa `E` bwheredata (:>) ab= (:>) a b
dataa:<b= a :< b
dataa:=b= a := b
data (:<>) abwhere(:<>)::a->b-> (:<>) abdataa:><bwheretypeFab=Cabtypea `G` b=a `D` btype (:>>) ab=a:>btypea:<<b=a:<btypea:==b=a:=b
The text was updated successfully, but these errors were encountered:
I think the most important is to get the following two scopes right
storage.type.haskell, applies to non-reserved identifiers in a type context starting with a capital letter (prefix and infix) or any allowed symbol (not necessarily :)
constant.other.haskell applies to non-reserved identifiers in a value context starting with a capital letter (prefix or infix) or the symbol :
dataXab=DabdataYab= (:>) a b
dataZab= a :& b
Less importantly, additional scopes can be added for the infix forms, something along the lines of:
operator.custom.haskell for symbolic operators in a value context that do not start with :,
type.operator.custom.haskell for any symbolic operator in a type context,
constant.custom.haskell (or some other suggestion) for symbolic constructors, i.e. non-reserved symbolic identifiers at the value level that start with :,
type.operator.infix.haskell and constant.infix.haskell for infix applications of identifiers starting with a capital letter, at the type and value level respectively.
Fixed with 34df8d0 and 7217f36. I'm quite happy as I think this is very helpful for newcomers, to highlight the type and the constructor differently even though they might have the same name.
The following causes the extension quite a bit of trouble
The text was updated successfully, but these errors were encountered: