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

Wolfram​Language

Official Sublime Text package for Wolfram Language

Details

Installs

  • Total 2K
  • Win 793
  • Mac 666
  • Linux 404
May 17 May 16 May 15 May 14 May 13 May 12 May 11 May 10 May 9 May 8 May 7 May 6 May 5 May 4 May 3 May 2 May 1 Apr 30 Apr 29 Apr 28 Apr 27 Apr 26 Apr 25 Apr 24 Apr 23 Apr 22 Apr 21 Apr 20 Apr 19 Apr 18 Apr 17 Apr 16 Apr 15 Apr 14 Apr 13 Apr 12 Apr 11 Apr 10 Apr 9 Apr 8 Apr 7 Apr 6 Apr 5 Apr 4 Apr 3 Apr 2
Windows 0 0 0 0 1 0 1 1 0 0 0 1 0 0 2 0 1 1 1 1 0 1 0 0 0 0 0 2 0 0 1 0 1 0 2 0 0 0 0 0 0 0 0 0 0 0
Mac 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 2 0 1 0 1 1 0 0 0 0 0 2 0 0 0 0 0 2 0 0 1 2 0 1
Linux 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 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 10 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/"]