Syntax highlighting support for the MLscript programming language.
- Highlight MLscript source files (ending with
.mlsor.wit). - Highlight most keywords and identifiers.
- Highlight comments created by
DiffTests. - This is not a language server.
This extension does not have settings currently.
This repository includes .github/workflows/publish.yml.
On pushes to main, the workflow compares the current package.json version to
the previous commit. If the version changed, it builds the extension, packages a
.vsix, uploads that file as a workflow artifact, and publishes it to the VS
Code Marketplace.
To enable publishing:
- Make sure the
publisherfield inpackage.jsonmatches your Visual Studio Marketplace publisher ID. - Create an Azure DevOps Personal Access Token with Marketplace
Managescope. - Add that token to GitHub Actions as a repository or environment secret named
VSCE_PAT. - Push a commit to
mainthat updates the extension version inpackage.json.
- Some token scopes might be wrong.
- Types, terms and declarations in comments are not highlighted.
- Highlight MLscript source files ending with
.witin the same way as.mls. - Highlight
withas a keyword anywhere it appears, not just at the end of a line.
- Add a document symbol provider for the VS Code outline view.
- Improve keyword and declaration handling used by the extension parser and symbols.
- Support
openstatements. - Highlight more MLscript keywords.
- Highlight
typeinclass Foo[type A]. - Highlight nested
DiffTestsflags (e.g.:ducs:postprocess.result).
- Include trailing single quotes as a part of entity names.
- Recognize trailing single quotes as a part of words. So, if you press ⌥← or ⌥→, the editor will select names including the trailing single quotes.
- Comments can follow
DiffTestsflags.
- Support hexidecimal, octal, and binary integer literals. #199
- Support floating-point decimal literals. #199
- The rule for parameter lists should not be at top-level.
- Highlight some keywords even they are not in a valid declaration.
- Highlight keyword
rec. - Highlight normal variables.
- Highlight modifiers
declareandvirtualfor function declarations. - Highlight modifiers
declare,private,abstract, anddatafor class declarations. - Highlight modifier
privatefor trait declarations. - Highlight modifiers
declareandprivatefor module declarations. - Highlight
mixindeclarations. - Highlight keyword
super. - Highlight modifiers
declareandvirtualfor function declarations. - Highlight
valdeclarations with modifiersdeclare,private, andlazy. - Highlight
in/outvariance modifiers and type variables starting with a single quote in parameter lists. - Highlight field selections. For example, the
sizeinthis.size. Note that the highlighting isn’t based on semantics, it simply matches identifiers after a period.
- Set the scope of
[ERROR]and[WARNING]tomarkup.boldas I found many VSCode themes does not colorize scopemessage.error. - Set
this,true,false, andnullto the correctconstantscope. - Do not automatically close single quotations becuase they are also used in
variable names and type variable names. (The
notInproperty ofautoClosingPairsdoes not support user-defined scope names.)
- Highlight functions with user-defined symbolic operators (#177).
- Support folding error and warning blocks generated by DiffTests.
- Add two simple snippets. I'm just trying it out.
- Fix minor bugs.
- Only
stringinstringOfwill be highlighted.
- Only
- Add more string escape sequences.
Create the extension and add basic syntax support.