Contextive is an IntelliJ Platform Plugin to assist developers in environments with a complex domain or project specific language, where words have a special meaning in the context of the project.
It should help new team members get up to speed more quickly in understanding domain-specific terms. By storing the term definitions in your repository, and surfacing the definitions as you work on the code, it encourages the use of the domain-specific terms in your code, and regularly updating the definitions as the team's understanding evolves.
- - +Create a folder in your project root called .contextive
. Create a file in that folder called definitions.yml
.
Start defining your definitions following the schema specified in our usage guide. You might like to start by copying our default definitions file that defines the terms used in the definitions file itself.
- -The plugin uses the IntelliJ Language Server Protocol support, so it's only available in the IDEs where that feature is offered. See the JetBrains LSP Documentation for the latest list.
+The plugin uses the IntelliJ Language Server Protocol support, so it's only available in the IDEs where that feature is offered. See the JetBrains LSP Documentation for the latest list.
At time of writing, it includes:
See our usage guide for details on the definitions file format and available options.
- +F1
while the auto-complete list is shown to see the definition, and choose Show Automatically During Completion
from the documentation panel's '3-dots' menu to have it show every time.)The plugin does not currently support configuration. The definitions file must be in ./contextive/definitions.yml
in your current project folder.
This is pending IntelliJ support for the LSP workspace/configuration
feature.
workspace/configuration
(#58) (7e06396)workspace/configuration
(#58) (7e06396)vscode-languageclient
fixed by update. (fixes #44) (a3f7ed8)vscode-languageclient
fixed by update. (fixes #44) (a3f7ed8)This is a release label attached to the existing v0.0.1-beta release, in order to serve as a baseline for starting to use semantic-release to manage releases.
-This is a release label attached to the existing v0.0.1-beta release, in order to serve as a baseline for starting to use semantic-release to manage releases.
+contextive.path
configuration parameter which defines which file contains the definitions