Commit f91448dc authored by Tomáš Hájek's avatar Tomáš Hájek
Browse files

Merge branch '99-update-page-for-vsc-plugin' into 'dux'

docs: Update VSC extension page to serve as redirect to VSC marketplace

See merge request inject/inject-docs!177
parents 7d4f4bdc de804ff3
Loading
Loading
Loading
Loading
+5 −92
Original line number Diff line number Diff line
<style>
.md-typeset .md-button {
      display: block;
      margin: 0 auto;
      text-align: center;
}
</style>

# Visual Studio Code Extension

## Information
@@ -14,92 +6,13 @@ This page contains information about an extension that can be installed in **Vis

## Installation

[Download Visual Studio Code Extension](https://gitlab.fi.muni.cz/inject/inject-docs/-/raw/dux/files-from-repos/vscode-extension-ixp-definition-1.0.0.vsix?ref_type=heads&inline=false){ .md-button }

1. [Install Visual Studio Code](https://code.visualstudio.com/)
2. In the left pannel click on Extensions icon.
3. In the Extension tab, click on `...` - *Views and More Actions...*.
4. Click `Install from VSIX...`.
5. Select downloaded extension file - *vscode-extension-ixp-definition-1.0.0.vsix*.
6. Install any required extensions - *YAML Language Support by Red Hat*.
2. In Visual Studio Code, in the left panel, click on the Extensions icon.
3. In the Extension tab, search for `IXP-Definition` and click **Install**.
4. Install any required extensions, if necessary - *YAML Language Support by Red Hat*.

**You have successfully installed the extension**

## Features

- Multiple templates (snippets) for parts of the exercise definition:

```
full-config
basic-email
template-email
info-inject
email-inject
objective
activity
questionnaire
q-radio
q-multiple-choice
q-free-form
q-auto-free-form
basic-tool
multi-tool
```

- Instant syntax check for definition version 0.23.3.
- Upgrade of definition syntax from version 0.18.1 to 0.23.3 ([See upgrade manual](../tech/architecture/definitions/upgrade.md)).
- Ignoring of hidden files during definiton zipping ([solves known issue](../known-issues.md/#definition-validation)).
- Support for repository-like definition structure (multiple subdirectories).

### Commands

- Creates a new definition folder with the selected name and prepopulated files like `config.yml` and `channels.yml`

Command: `Create New Definition Folder`

- Zips selected definition to be uploaded to IXP.

Command: `Zip Definition`

- Upgrades definition from version 0.18.1 (Citadel) to 0.23.3 (Dux)

Command: `Upgrade Definition 0.18.1 to 0.23.3`

#### Keybindings

- Zip command - Windows: `Ctrl + Alt + g`, MacOS: `Control + Option + g`
- Open command palette - Windows: `Ctrl + Shift + p`, MacOS: `Command + Shift + p`

## Known Issues

- The Upgrade definition command does not support definitions created in the editor (all the "" needs to be stripped first).
- Snippets are global and work in all files, e.g., questionnaire snippets could be used in `injects.yml`

## Changelog

### 1.0.0

- First working prototype with all the features mentioned below.

### 0.0.4

- Zipping of definition now ignores hidden files starting with ".".

### 0.0.3

- Added command for upgrading definition from version 0.18.1 to 0.23.3 (Citadel to Dux).

### 0.0.2

- Milestone completion for injects.yml turned off
- Enhanced zipping feature for definition
- Added multiplatform zipping
- Enhanced snippets

### 0.0.1

- Minimal working version with syntax check

## License
## More information

**MIT license**
- For more information see **[IXP-Definition](https://marketplace.visualstudio.com/items?itemName=inject-muni.ixp-definition)** on Visual Studio Code Marketplace.