@spgoding/datapack-language-server
v3.4.19
Published
A language server for Minecraft: Java Edition datapacks
Downloads
128
Readme
Data-pack Language Server can provide many heavy language features for documents in your datapack, including advancements, dimensions, dimension types, functions, loot tables, predicates, recipes, all kinds of tags, and all kinds of worldgen files.
Installation
For Use
Sublime Text 3
- Install Node.js if you haven't.
- Execute
npm i -g @spgoding/datapack-language-server
in your command line to install the language server. - Install Package Control if you haven't.
- Install Arcensoth's language-mcfunction package by following the instructions if you haven't.
- Install LSP package.
- Open the Command Palette and select
Preferences: LSP Settings
. - Configure LSP to add the Data-pack Language Server. Here's one example:
{
"clients": {
"datapack-language-server": {
"command": [
"datapack-language-server",
"--stdio"
],
"enabled": true,
"languages": [
{
"languageId": "mcfunction",
"scopes": [
"source.mcfunction"
],
"syntaxes": [
"Packages/language-mcfunction/mcfunction.tmLanguage"
]
},
{
"languageId": "json",
"scopes": [
"source.json"
],
"syntaxes": [
"Packages/JavaScript/JSON.sublime-syntax"
]
}
]
}
},
"only_show_lsp_completions": true
}
- Open the Command Palette, select
LSP: Enable Language Server Globally
, and choosedatapack-language-server
. - Enjoy. Do note that you need to execute the command in step 2 manually if you want to update the language server.
- TODO (for SPGoding): make a fine-tuned Sublime package, so that the language server can be updated automatically and the user doesn't need to set all these crazy stuff.
Visual Studio Code
We have a ready-for-use VS Code extension:
For Developers
See our wiki for more information.
Also please note that only the DatapackLanguageService
class and its methods are considered as public API. All other
exported classes/functions/variables, including but not limited to everything under the nodes
directory, are not part
of the public API and are subject to change breakingly in even patch/minor versions. Do not make your systems depend on
them.
Contributors
This project follows the all-contributors specification. Contributions of any kind are welcome!
Contributors for 3.1.0
Contributors for older versions
Contributing
If you'd like to contribute, check CONTRIBUTING.md for more information.