ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Wolfram​Language

Official Sublime Text package for Wolfram Language

Details

Installs

  • Total 2K
  • Win 832
  • Mac 694
  • Linux 416
Sep 29 Sep 28 Sep 27 Sep 26 Sep 25 Sep 24 Sep 23 Sep 22 Sep 21 Sep 20 Sep 19 Sep 18 Sep 17 Sep 16 Sep 15 Sep 14 Sep 13 Sep 12 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6 Sep 5 Sep 4 Sep 3 Sep 2 Sep 1 Aug 31 Aug 30 Aug 29 Aug 28 Aug 27 Aug 26 Aug 25 Aug 24 Aug 23 Aug 22 Aug 21 Aug 20 Aug 19 Aug 18 Aug 17 Aug 16 Aug 15
Windows 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 2 0 0 0 1 1 1 0 0 0 1 0 0 0 0 2 1 0 0 0 0 1 2
Mac 0 0 0 1 0 0 0 0 0 0 2 0 1 0 0 0 1 0 1 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 2 0 0 0 1 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

Wolfram System Integration with Sublime Text

Official Sublime Text package for Wolfram Language

Developing Wolfram Language Code in Other Editors and IDEs with LSP from WTC 2021: Watch Video (youtube)

Forked from https://github.com/ViktorQvarfordt/Sublime-WolframLanguage

Thanks Viktor!

Features

  • Syntax Highlighting
  • Goto Definition
  • Auto complete
  • Diagnostics and suggestions for fixes
  • Formatting files and selections
  • Expand and shrink selection
  • Color swatches
  • Symbol references
  • Documentation on hover
  • New menu items (Open in System Editor)

Syntax Highlighting

Support for the entire Wolfram Language syntax and all built-in functions.

highlighting

Setup

Compatible with Sublime Text 3 and Sublime Text 4.

If the LSP package (https://github.com/sublimelsp/LSP) is installed, then additional features will be available.

LSP functionality uses a Wolfram kernel to run as a language server.

This requires Wolfram System 12.1 or higher.

  1. Install Package Control
  2. Open Tools > Command Palette…
  3. Select Package Control: Install Package
  4. Install LSP
  5. Install WolframLanguage

The package must be installed from Wolfram Research.

The WolframLanguage package depends on LSPServer paclet to provide LSP functionality.

Install LSPServer paclet and its dependencies by running this Wolfram Language code:

PacletInstall["CodeParser"]
PacletInstall["CodeInspector"]
PacletInstall["CodeFormatter"]
PacletInstall["LSPServer"]

If properly setup, you should have syntax highlighting and linting of Wolfram Language .wl files.

Test this by typing this into a new .wl file and saving it:

Which[a, b, a, b]

You should see warnings about duplicate clauses.

Settings

If you have Wolfram System installed in the default location on your system, you may not have to change any settings.

If Wolfram System is not in the default location, then specify the actual location:

Go to the menu item: Package Settings > Wolfram Language > Settings

Add a kernel setting:

{
  …

  "kernel": "/Applications/Mathematica.app/Contents/MacOS/WolframKernel"
  …
}

You may also change the command that is used to start the server:

{
  …

  "lsp_server_command":
    [
      "`kernel`",
      "-noinit",
      "-noprompt",
      "-nopaclet",
      "-noicon",
      "-nostartuppaclets",
      "-run",
      "Needs[\"LSPServer`\"];LSPServer`StartServer[]"
    ]
  …
}

You may disable Wolfram language server by specifying:

{
  …
  "lsp_server_enabled": false
  …
}

Other Settings

You may use a special Light color scheme that emulates the syntax coloring of the notebook editor:

{
  …
  "color_scheme": "WolframLanguage.sublime-color-scheme"
  …
}

Experimental Settings

You can enable experimental settings. These are not supported.

implicitTokens controls the display of implicit tokens.

{
  …

  "implicitTokens": ["*", ",", ";;", "?"]
  …
}
  • "*": display implicit Times character ×
  • ",": display Null around stray commas
  • ;;: display 1 and All around ;;
  • ;: display Null after ;
  • ?: display in place of missing arguments

Troubleshooting

Troubleshooting LSP for Sublime Text

Make sure that LSPServer paclet and its dependencies are up-to-date and can be found on your system:

PacletInstall["CodeParser"]
PacletInstall["CodeInspector"]
PacletInstall["CodeFormatter"]
PacletInstall["LSPServer"]

Needs["LSPServer`"]

If the kernel cannot start, then follow the instructions in the dialog that pops up after 15 seconds for more information.

Server settings

Check WolframLanguage.sublime-settings for errors.

Turn on debug logging from the kernel by giving a string argument to StartServer[].

This is a directory that kernel logs will be written to.

Needs["LSPServer`"];LSPServer`StartServer["/path/to/log/directory/"]