JCShell Tools ============= Language definition for NXP's JCShell scripts on Sublime Text 2/3. Contains syntax highlighting, snippets and auto-completion. ## Screenshots Two color scheme are provided. The default Monokai: ![Monokai screenshot](support/screenshots/window_monokai.png) And Seti_UX (for [Seti theme](https://github.com/ctf0/Seti_ST3)): ![Seti screenshot](support/screenshots/window_seti.png) ## Installation #### Automatically via Package Control The preferred and easiest way to install the package for Sublime Text is the following: 1. Install [Package Control](https://sublime.wbond.net/installation) if not done already 2. Open `Tools` → `Command Palette...` (cmd+shift+P) 3. Select `Package Control: Install Package` 4. Search for `JCShell Tools` package and install it #### Manual installation If you want to do the installation manually (for example on an offline computer): 1. Clone (or [download](https://github.com/nxp/jcshell-tools/archive/master.zip)) this repository 2. Open your `Packages` folder (`Preferences: Browse Packages` in the Command Palette) 3. Create a folder `JCShell Tools` and copy the repository content inside #### Configuration You can change the default color scheme for `.jcsh` files. For that create a new file `JCShell Tools.sublime-settings` inside your User folder (`Packages/User`) and set the desired `color_scheme` value. For example if you want to use the provided Seti_UX color scheme the file should contains: ``` { "color_scheme": "Packages/JCShell Tools/Seti_UX JCShell Tools.tmTheme" } ``` ## Custom color scheme If you want to add support in a different color scheme the following supplementary scopes needs to be defined: - `variable.other` - `string.unquoted` - `keyword.control.label` - `keyword.function.definition` - `keyword.modifier.variable` - `punctuation.definition.variable.reference` - `keyword.assignment` You can see the [Monokai JCShell Tools.tmTheme](Monokai JCShell Tools.tmTheme#L10#L94) file for example values. ## Known limitations Even though the following syntaxes are valid, JCShell Tools is not accepting it: - When a function/script name contains a closing parenthese (`)`) - When a variable assignment made by operator (`=`) contains a space or a quote (e.g.: `test$(func param)var= value`) ## About Licensed under the BSD 3-Clause license. See [license file](LICENSE) for more information. Developed by [Michael Roy](https://github.com/Mikaz-fr), based on a draft from [Connor Röhricht](https://github.com/c-roehricht). Please create an [issue](https://github.com/nxp/jcshell-tools/issues) for any bug you may find.