Skip to content

Latest commit

 

History

History
64 lines (45 loc) · 2.09 KB

DEVELOPMENT.md

File metadata and controls

64 lines (45 loc) · 2.09 KB

Development

Setup

To work on the extension, you will need to have Node.js (version 16+) and Nova installed on your development machine. Then run:

# cd to/this/folder

# install NPM dependencies
npm install

Regular use

For development, use the Development task to build and run the extension locally. Build will compile the TypeScript into JavaScript into the extension folder. Run will do the build, install bundled dependencies and activate the extension in Nova. Nova will run the extension locally and restart when any file inside the .novaextension changes, i.e. by running the Build task.

Make sure to disable the extension if a published version is already installed.

When in development mode, the extension outputs extra information to the Debug Pane, which can be shown with ViewShow Debug Pane.

Use the files in the examples folder to test out different features of the language server.

Code formatting

This repository uses Prettier, yorkie and lint-staged to automatically format code when staging code git commits.

You can manually run the formatter with npm run format if you want.

Prettier ignores files using .prettierignore or specific lines after a // prettier-ignore comment.

Links

Notes

Files are cached at ~/.lemminx

Release procedure

  • Ensure the Language Server is downloaded
  • Check the core language definitions are still valid
  • Generate new screenshots if needed
  • Ensure the CHANGELOG.md is up to date
  • Run the build
  • Bump the version in extension.json
  • Commit as X.Y.Z
  • Tag as vX.Y.Z
  • ExtensionsSubmit to the Extension Library...