LSL Alternate Editors
From Second Life Wiki
|LSL Portal||Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials|
There are several off-world editors available for free or purchase. Some have syntax highlighting for LSL that will make your code easier to follow. At least two will compile and execute a large subset of LSL. Below are some of the more popular editors for use with LSL.
If you have a favorite that is missing from the list, please feel free to add it.
Why use an alternate editor?
Alternate editors with syntax highlighting color the code you write based on its syntax, some even let you use the colors used in the Second Life viewer. This greatly improves the readability of your code (for yourself!) and helps you to quickly scan the code for a particular part during review.
But these editors don't just help you with code review, but with writing code. Autocompletion lets you write scripts faster, with less typos and greatly improves readability by preformatting your code with the snippets you use.
Below is a screen cast that shows syntax highlighting and autocompletion.
Colors used in the Second Life viewer by Linden Lab:
|part of LSL grammar||hexadecimal triple||RGB Decimal||RGB Percentage|
|default text||#000000||0, 0, 0||0, 0, 0|
|comments||#cd4d26||205, 77, 38||0.804, 0.302, 0.149|
|states||#801a4d||128, 26, 77||0.502, 0.102, 0.302|
|events||#004d80||0, 77, 128||0, 0.302, 0.502|
|functions||#820124||130, 1, 36||0.510, 0.004, 0.141|
|integer constants||#1a1a80||26, 26, 128||0.102, 0.102, 0.502|
|string constants||#1a4d80||26, 77, 128||0.102, 0.302, 0.502|
|float constants||#4d1a80||77, 26, 128||0.302, 0.102, 0.502|
|vector & rotation constants||#663366||102, 51, 102||0.400, 0.200, 0.400|
|operators||#000000||0, 0, 0||0, 0, 0|
|storage type||#1a4d1a||26, 77, 26||0.102, 0.302, 0.102|
|strings||#003300||0, 51, 0||0, 0.200, 0|
|numbers||#ff0000||255, 0, 0||1, 0, 0|
|keywords||#0000cd||0, 0, 205||0, 0, 0.804|
Online LSL Generators
Online LSL generators create and edit LSL scripts via a website, some may have syntax highlighting for better reading. Sites are multi-platform editors without downloads:
Syntax Highlighting Files
These projects may have more current LSL highlighting files:
Syntax highlighting and code completion files by the Builder's Brewery:
|Software:||Commercial software:||Windows:||Mac:||Linux:||Browser||Direct URL:||Issue tracker:||Autocomplete:||Syntax highlight:|
|Ace Editor for the web||No||requires a browser||requires a browser||requires a browser||Yes||Ace Editor for the web||Issue tracker||Yes||yes, doesn't include LL viewer theme|
|ConTEXT Text Editor||No||Yes||No||No||No||Files for ConTEXT||Issue tracker||Yes||Yes|
|gedit Text Editor||No||Yes||Yes||for GNOME||No||Files for gedit||Issue tracker||Yes||Yes|
|GeSHi SyntaxHighlight - wikimedia extension||No||requires a browser||requires a browser||requires a browser||Yes||Files for GeSHi||Issue tracker||no, static web view only||Yes|
|jEdit||No||requires JavaVM||requires JavaVM||requires JavaVM||No||Files for jEdit||Issue tracker||Yes||yes, doesn't include LL viewer theme|
|Kate Editor||No||via KDE for Windows||via KDE for Mac||Yes||No||Files for Kate Editor||Issue tracker||Yes||Yes|
|Notepad++||No||Yes||No||No||No||Files for Notepad++||Issue tracker||Yes||Yes|
|SubEthaEdit||Yes||No||Yes||No||No||Files for SubEthaEdit||Issue tracker||Yes||Yes|
|UltraEdit||Yes||Yes||Yes||Yes||No||Files for UltraEdit||Issue tracker||Yes||Yes|
|Vim Text Editor||No||Yes||Yes||Yes||No||Files for Vim||Issue tracker||Yes||yes, doesn't include LL viewer theme|
LSL Integrated Development Environments (coding and testing environments)
- Con Wylie's LSL Script Generator has been ported from a website into a free downloadable program, anyone can use the program as it is very easy to use.
Con Wylie's LSL program is multi-platform on Windows, Linux and Mac. The generator, editor and compiler has been build from the ground up to give the user ease of use.
LslPre is a full featured LSL script editor, preprocessor and optimiser for windows.
LSL Editor Community Edition for Windows is a standalone LSL script editor, compiler and debugger. Binary and Source as of 2013-03-14.
Its compiler and debugger are already now reasonably accurate. Please blog any LSL-Editor bugs you find into such places as our LSL-Editor Bugs article or via the project's SourceForge bug tracker located at: Bug Tracker.
- Alphons van der Heijden, author of LSLEditor, the great off-line editor and debugging tool for scripting in Second Life, has donated his opus magnum to the free and open source community where it can grow and keep pace with the SL platform!
- Details, executable and source can be found at http://sourceforge.net/projects/lsleditor/
Development of LSL-Editor was originally done by Alphons van der Heijden at http://www.lsleditor.org/.
For Windows, Mac, and Linux, the LSL Plus Eclipse plugin is a Editor/Unit Test environment for LSL implemented in Eclipse. It is a FLOSS project (Free/Libre Open Source Software). The latest release (0.13.0 - 2010-01-06) features multi-script execution with source level debugging (setting breakpoints, single stepping through code, examining variables on the call stack, etc.), making it unique among LSL IDEs. It now supports both multi-script execution in a simulated environment (with avatars, prims, inventory, (limited) physics, etc.) and unit testing - allowing you to test individual handlers and functions by precisely controlling the setup/teardown and interaction with the execution environment (including support for 'mocking' the LL function call that interact with the script environment). It also has some additional code management features that encourage code re-use without having to cut-and-paste, as well as code optimization (inlining, constant folding).
By using the Eclipse IDE you get features such as integration with source code control systems like CVS or Subversion, task management, integration with 3rd party bug tracking software, and so on. It supports development on Windows, Mac, and Linux platforms.
- Missing bracket matching and certain highlighting features.
LSLForge Eclipse For Windows/Linux/OS X, LSLForge is a derivative of LSL-Plus, forked in September 2011. LSLForge aims to further advance and mature the LSL-Plus project and support the Eclipse LSL developer community.
MiceOnABeam is a visual programming tool that generates LSL scripts for SL. You choose among graphical modeling components to specify the program flow of your script in terms of states and the events that transition between the states. You can then use the built-in LSL Action Wizard or insert your own LSL code to specify what happens when an event occurs. The program then generates the LSL code for the model to form a complete script for the SL environment. Check out the demo video here or on YouTube. A Free version can be downloaded from here.
Off-world syntax checker
You can build a syntax checker yourself and hook it into whatever editor you fancy if you have the viewer source installed and compiled on your machine. The C++ source to build one yourself is here (JB Kraft).
Based on Eclipse, the ByronStar SL IDE includes most modern program editor features. It also includes custom features for LSL, such as variable checking, error markers, and code formatting. Eclipse is available for Macintosh, Linux, Windows, and many UNIX flavors.
- No longer maintained.
There's an Emacs LSL Mode available on this wiki, which provides syntax highlighting and indentation features. If you want some tips on writing LSL in emacs, read Xah Lee's page. Emacs is available for many Unix flavors, Macintosh and Windows.
Easy to use, features syntax highlighting, folding, auto complete, help that opens the appropriate wiki page, and is setup to use the c preprocessor, and lslint.
Windows only 
Files for Linux or Windows Forum thread scite_lsl.tar.gz
Developed in Java, this mature, cross-platform editor runs on any operating system with a Java 2 version 1.3 or higher virtual machine. It has all the features you'd expect from a full-GUI text editor. Syntax highlighting and tailored editing behavior is supported through "modes." (You can get the LSL 'modes' file here updated 18-Apr-13.) The editor supports a rich plug-in API; many third-party plug-ins exist to facility editing, formatting, communications, etc.
You can find jEdit here.
Shill - LSL syntax files for a variety of editors
The Shill project provides up-to-date syntax files for many LSL editors. You might find files there that are more current than those here on the wiki. Last update: 19Aug09 for Second Life 1.23.4. New in this release: lslint
GNU Midnight Commander (mc) is a free cross-platform orthodox file manager and a clone of Norton Commander.
Midnight Commander is a console application with a text user interface.
OS: Unix-like, Microsoft Windows
For Linux see User:Kuraiko_Yoshikawa/sandbox/LSL_Goodies/mc for a manual and syntax file download.
UltraEdit-32/UEStudio is a powerful text, HTML, and HEX editor. It is a commercial editor with a 30 day trial version available at the website. Important features:
- column/block mode editing
- brackets/braces matching
- configurable syntax highlighting via custom wordfiles
- autocomplete (using keywords defined in the wordfile)
- bookmarks, incremental searching, CTAG support
- automatic conversion between Unix/Dos/MAC/UTF-8, etc
- built-in FTP/SFTP client
OS: Linux, Mac and Windows.
The following syntax files are available for UltraEdit
- User:Lum Pfohl/LSL Syntax Highlighting For UltraEdit Last updated November 28th, 2007.
Sublime Text 
Sublime Text is a sophisticated text editor for code, markup and prose. You'll love the slick user interface, extraordinary features and amazing performance. Key Bindings, Menus, Snippets, Macros, Completions and more - just about everything in Sublime Text is customizable with simple JSON files. This system gives you flexibility as settings can be specified on a per-file type and per-project basis. Sublime Text uses a custom UI toolkit, optimized for speed and beauty, while taking advantage of native functionality on each platform.
Sublime Text may be downloaded and evaluated for free, however a license must be purchased for continued use. There is no enforced time limit for the evaluation.
The following syntax highlighting files are available for Sublime Text.
- Sublime Text 2 LSL Syntex Last updated October 28, 2012.
What you will get via Package Control is the following. Simply go "Package Control: Install Package" and search for "LSL".
(including not only syntax highlighting, but also smooth LSL functions/events/constants completions, lslint as build system, and inworld editor look-and-feel theme)
- LSL Bundle for Sublime Text 2 Active as of June 21, 2013.
Sublime Text is available for OS X, Windows and Linux.
The e Editor is a port of TextMate to Windows, and can use the TextMate LSL bundle listed below.
Notepad++ is probably one of the best Windows editor around. Packed with features, extremely powerful and easy to use for beginners too. Best of all, it is GPL code.
Shan Bright's Notepad++ LSL syntax file 'BrightLSL' is at the Bright Corporation website: BrightLSL (Updated December 10, 2010)
Nexii Malthus's Notepad++ LSL syntax file, includes latest functions and constants  (3rd December, 2011)
WhiteStar Magic's Notepad++ LSL syntax file is being updated regularly, and is available on Github: NotePad---userdef (Last Update: May.03.2012)
Gwen Setzer's Notepad++ (6.3 and above) LSL Syntax Files: (Generated from Firestorm 4.4.0) Language description: lslLanguage.xml (Language->Define your Language->Import) Autocompletion support: lsl.xml (Copy the file lsl.xml in the API plugin directory of Notepad++. ex: C:\Program Files\Notepad++\plugins\APIs, I also recommend enabling Settings->Preferences->Autocompletion->Function parameters hint on input)
Hint: to ensure code folding works properly, change line endings to Windows style if they are not already set as such. (Edit / EOL conversion / Windows format)
ConTEXT is a small, fast and powerful freeware text editor, developed mainly to serve as secondary tool for software developers.
The following syntax files are available for ConTEXT.
- Last Activity July 2012
- Last Announcement by developer of ConTEXT Friday, 07 September 2007
- Site and Newsletter Sign Up - DOWNLOAD September 2007
- Shyan Graves Last updated March 01, 2007.
- Sir.Grelling Last updated July 10, 2006.
Crimson Editor is a professional source code editor for Windows. The following syntax files are available for Crimson Editor.
- Aakanaar - Last updated September 10, 2006 for Second Life version 1.10.0.
- Emerald Editor 2011 Open Source version of Crimson Editor
LSL-Editor is a standalone Windows LSL editor, compiler and debugger. All the usual editing, plus you can compile and execute.
- This project is no longer maintained at LSLEditor.org. See below.
LSL Editor Community Addition
LSL-Editor is the frequently updated version of the LSL Editor with editing, compiling, and debugging abilities. When the path to the editor is added to the viewer's Debug Setting: ExternalEditor one can have a nice round trip external editor. See the LSL-Editor entry just above, above in the Integrated section, and the wiki page LSL-Editor for more information.
TextPad is a powerful, but easy to use general purpose text editor. It is a commercial product, but there is a 30 day trial version available for free on the website.
The following syntax files are available for TextPad.
- Events ClipBook Last updated March 5, 2007. Based on the LSL Portal event entries.
- Prodigal Maeterlinck & Patrick2 Chama Last updated February 20, 2007. Extracted from the Second Life viewer source code.
- Ben Gray Last updated August 23, 2006. As of version 1.12.0, with the deprecated functions in a separate keyword list.
- Matthias Huber Last updated September 23, 2004.
EditPad Pro 
EditPad Pro is a text editor with many great features for programming. It is a commercial program, with a demo version available. There is also a Lite version, but that has no syntax-highlighting support.
There is an LSL syntax file available for download from inside the program. However, it is from October 2006 so some new features may not be available.
This a great text editor with extensible language support. It also happens to be an incredible collaborative editor. Info at: http://www.subethaedit.net/
There is a contributed LSL mode by Zarf Vantongerloo. The mode is a little out of date and could use some love. But in general works great, doing syntax hilighting of LSL funcitons and adding a pop-up menu of all functions, states and event handlers to the top of the window.
An updated LSL mode by Mark Lentczner is available now from the SubEthaEditor User contributed modes Repository.
An updated (but still out of date) version of Mark Lentczner's mode is available on Solo Mornington's Github: https://github.com/SoloMornington/LSL_mode Note that this mode was developed for Coda 1.
Coda is 'one-window web development,' but it's a very pleasing text editor for a wide variety of uses. You can set up 'sites' which are web sites, but can represent any remote filesystem, which is echoed locally through ftp and/or subversion.
Coda can use SubEthaEdit syntax coloring 'modes,' so LSL is supported. Also available is a plug-in editor which lets you run arbitrary scripts on the selection or document.
BBEdit and TextWrangler
You can get an LSL language plugin for all versions of BBEdit and TextWrangler at Erik Scholtz' Blog
For older versions of BBEdit (7.0 or less) and TextWrangler (1.0 only), there is a module available at http://adammarker.org/bbedit
Nano is a curses-based text editor for Unix and Unix-like systems.
Since February 2001, nano is an official part of the GNU Project.
See User:Kuraiko_Yoshikawa/sandbox/LSL_Goodies/nano for a manual and syntax file download.
Based on the vi editor common to Unix-like systems, Vim is designed for use both from a command line interface and as a standalone application in a graphical user interface.
Vim comes standard with LSL hilighting support.
|Name||Integrated development environment||Platforms||Code Completion||Highlighting||Actively Maintained|
|LSL Editor Community Edition||Yes||Windows-Only||Custom Vars and Functions also||Yes||Yes|
|MiceOnABeam Visual Scripting Tool||Yes||Windows(.Net)||Custom Vars and Functions also||Yes||Yes|