monaco-languages/README.md

3.0 KiB

Monaco Languages

Colorization and configuration supports for multiple languages for the Monaco Editor:

monaco-languages

  • bat
  • coffee script
  • cpp
  • csharp
  • fsharp
  • go
  • ini
  • jade
  • lua
  • objective-c
  • postiats
  • powershell
  • python
  • r
  • ruby
  • sql
  • swift
  • vb
  • xml

Also css dialects:

  • css
  • less
  • scss

Installing

This npm module is bundled and distributed in the monaco-editor npm module.

Dev: cheat sheet

  • initial setup with npm install .
  • compile with npm run watch
  • test with npm run test
  • There is a problem with nls.js while running under the test environment. If you get Uncaught Error: Evaluating node_modules/monaco-editor-core/dev/vs/nls.js as module "vs/nls" failed with error: TypeError: Cannot read property 'Plugin' of undefined you must edit for now $/node_modules/monaco-editor-core/dev/vs/nls.js and around line 27 use var global = _nlsPluginGlobal || {};. A fix will come soon.
  • bundle with npm run prepublish

Dev: Running monaco-languages from source

[Optional] Running monaco-editor-core from source

Dev: Adding a new language

  • create $/src/myLang.ts
  • create $/test/myLang.test.ts
  • update tsconfig.json with $> node_modules/.bin/tscg .
  • restart compilation with $> npm run watch
  • edit $/src/monaco.contribution.ts and register your new language:
registerLanguage({
	id: 'sql',
	extensions: [ '.sql' ],
	aliases: [ 'SQL' ],
	module: './sql'
});
  • edit $/test/all.js and load your new language while testing
'out/test/sql.test',
  • edit $/gulpfile.js and ship your new language
bundleOne('src/sql'),

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

License

MIT