This Language Server works for plain text files of type .map, .struct, and .dest. It has the following language features (though they may not be fully implemented):
Completions (soon™)
Diagnostics regenerated on each file change or configuration change
Example:
Structure
.
├── client // Language Client
│ ├── src
│ │ ├── test // End to End tests for Language Client / Server
│ │ └── extension.ts // Language Client entry point
├── package.json // The extension manifest.
└── server // Language Server
└── src
└── server.ts // Language Server entry point
Running from Source
git clone ${PROJECT_URL}
Run npm install in the resulting folder.
This installs all necessary npm modules in both the client and server folder
Open VS Code on this folder.
Press Ctrl+Shift+B to compile the client and server.
Switch to the Debug viewlet.
Select Launch Client from the drop down.
Run the launch config.
If you want to debug the server as well use the launch configuration Attach to Server
In the [Extension Development Host] instance of VSCode, open a document in 'plain text' language mode.
Type j or t to see Javascript and TypeScript completion.
Enter text content such as source table Patient!. The extension will emit diagnostics for the improperly specified source table name.
Contributing
Pull Request Process
Ensure any install or build dependencies are removed before the end of the layer when doing a build.
Include in your PR details of changes to the client/server, this includes new configurations, added tests, new lint checks, etc.
Increase the version numbers in any examples files and the README.md to the new version that this Pull Request would represent. The versioning scheme we use is SemVer.
You may merge the Pull Request in once you have the sign-off of two other developers, or if you do not have permission to do that, you may request the second reviewer to merge it for you.