Skip to content

LSL for Sublime Text 4073+ with linting, tooltips & completions with your indent style of choice.

License

Notifications You must be signed in to change notification settings

buildersbrewery/sublime-lsl

Repository files navigation

License Requires Sublime Text Build 4073 or later Download =BB= LSL from Package Control Latest tag SublimeHQ Discord

Table of contents


=BB= LSL package for Sublime

Bringing Linden Scripting Language (LSL) support to Sublime Text.

About

With regards to the development of this package, supporting new features of Sublime Text as they become available takes precedence over ensuring backwards compatibility. Therefore this package targets and is tested against the latest Build of Sublime Text, releases are frequent and the requirements for this package will be updated accordingly. Implicitly this might require you to be on the dev release channel and consequently have a valid Sublime Text license.

Requirements

Installation

Make sure your setup meets the requirements before you:

  • open Sublime Text
  • open the command palette
    • via Tools > Command Palette
  • select Package Control: Install Package
  • select =BB= LSL

To get LSL syntax highlighting in tooltips, refer to the settings section.

Close and re-open Sublime Text.

Usage

When editing scripts in the viewer, click the EDIT button in the script edit window. Save and close view (tab) when done.

To use Sublime Text for editing your script in-world:

  • Enable: Me > Preferences > Advanced > Show Advanced menu
  • Go to: Advanced > Show Debug Settings
  • Edit: ExternalEditor

Setting consists of these three parts:

  • Path to editor (use quotes if path has spaces)
  • Optional command line params
  • "%s" will paste script path automatically (do NOT change this)

For a list of Sublime arguments run subl --help and/or refer to the OSX Command Line documentation.

Usage on Linux

"/usr/bin/subl" "%s"

Usage on macOS

"/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" "%s"

Usage on Windows

"C:\Program Files\Sublime Text\subl.exe" "%s"

Building

runs lslint

  • Select Tools > Build on Linux or macOS.
  • Select Tools > Build with … on Windows and select a binary to use.

Output to a Build results panel, in which you can double click (possible) errors to move the cursor to that point in your file.

Color Scheme

Sublime Text 3 Color Scheme documentation

You can toggle using the official Color Scheme for LSL files by selecting Preferences > Package Settings > =BB= LSL > Settings > Use official color scheme for LSL files from the main menu.

The color scheme file can be overridden via Packages/User/LSL.hidden-color-scheme.

Contributing

The issue tracker can be found at https://github.com/buildersbrewery/sublime-lsl/issues.

Please read CONTRIBUTING.md and make sure tests pass before sending a pull request.

Linting

Requires the SublimeLinter package, uses the included binaries lslint if not found in PATH.

Linting of LSL files using the Firestorm preprocessor was deprecated in v5.0.0.

SublimeLinter with lslint

Indent styles

LSL Indent Styles

You can change the indent style of all LSL completions and snippets to:

  • Allman
  • GNU
  • Horstmann
  • K & R
  • Lisp
  • Pico
  • Ratliff
  • or Whitesmiths

by:

  • selecting Preferences > Package Settings > =BB= LSL > Settings > Choose indent style from the main menu
  • or selecting Preferences: LSL: Settings - Indent Style in the command palette

Settings

Sublime Text 3 Settings documentation

Open Preferences > Settings from the main menu.

These mdpopups.* settings are needed to get LSL syntax highlighting in tooltips:

//  "Packages/User/Preferences.sublime-settings"

{
    "mdpopups.sublime_user_lang_map":
    {
        "lsl":
        [
            [ "lsl" ],
            [ "=BB= LSL/.sublime/syntaxes/LSL" ]
        ]
    },
    "mdpopups.use_sublime_highlighter": true
}

Tooltips

LSL Tooltips

To get LSL syntax highlighting in tooltips, refer to the settings section.

Disclaimer

Second Life (R) and the Linden Scripting Language are trademarks of Linden Research, Inc.

The Builder's Brewery is neither affiliated with nor sponsored by Linden Research.