Skip to content
Better Erlang Support for Sublime Text
JavaScript Python
Find file
Latest commit ab1cf5b Feb 9, 2015 @fjl Fix GotoExactDefinition for ST build > 3069
The GotoDefinition command from the Default package has changed
because there is now a second command that implements the goto definition
context menu item. GotoExactDefinition is now less clever and should continue
working for the next few months.
Failed to load latest commit information.
build Add custom grammar build system May 17, 2013
st3 Fix GotoExactDefinition for ST build > 3069 Feb 9, 2015
.gitignore Ignore *.sublime-workspace May 17, 2013
Builtin Types.sublime-completions small typo Nov 12, 2011
Case-Expression.sublime-snippet init with Erlang Package contents from build 2131 Oct 7, 2011
Comments.tmPreferences Support commenting in Yecc files Aug 22, 2012
Default (Linux).sublime-keymap Enable <<>> auto-match for source.erlang only Dec 10, 2013
Default (OSX).sublime-keymap Enable <<>> auto-match for source.erlang only Dec 10, 2013
Default (Windows).sublime-keymap Enable <<>> auto-match for source.erlang only Dec 10, 2013
Delete 2 Characters Left And Right.sublime-macro Auto-match bindings for binaries (<<>>) Aug 30, 2013
Directives.sublime-completions Prevent directive completions from firing in expression context May 22, 2013
EScript (Erlang).JSON-tmLanguage Handle spaces in escript shebang line Aug 27, 2013
EScript (Erlang).tmLanguage Handle spaces in escript shebang line Aug 27, 2013
Erlang Expression.JSON-tmLanguage Stop matching the 'query' keyword (fixes #33) Feb 9, 2015
Erlang Expression.tmLanguage Stop matching the 'query' keyword (fixes #33) Feb 9, 2015
Erlang.JSON-tmLanguage Fix highlighting of integer type ranges one more time Jul 19, 2013
Erlang.sublime-build Make erlc the default compiler for Leex files Feb 2, 2013
Erlang.sublime-settings Add ? to word_separators (fixes #25) Aug 30, 2013
Erlang.tmLanguage Fix highlighting of integer type ranges one more time Jul 19, 2013
Fun-Expression.sublime-snippet Fun snippet expands into single line Oct 7, 2011
Function Symbols.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
Guard Functions.sublime-completions make guard function completion available in expression guards Nov 12, 2011
HTML (Erlang).tmLanguage init with Erlang Package contents from build 2131 Oct 7, 2011
If-Expression.sublime-snippet init with Erlang Package contents from build 2131 Oct 7, 2011
Indentation Rules.tmPreferences improve indentation rules for '->' and 'after' (closes #1) Nov 11, 2011
Leex (Erlang).JSON-tmLanguage Refactor grammar files May 17, 2013
Leex (Erlang).tmLanguage Make Erlang snippets work in Leex and Yecc files Jan 31, 2013
Leex Directives.sublime-completions Add grammar for Leex files (.xrl) Jan 31, 2013
Macro Symbols.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
Module Definition Symbols.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
OTP Application Resource File.sublime-snippet Add OTP templates Feb 5, 2013
OTP application Callbacks.sublime-snippet Add OTP templates Feb 5, 2013
OTP gen_event Callbacks.sublime-snippet Add OTP templates Feb 5, 2013
OTP gen_fsm Callbacks.sublime-snippet Add OTP templates Feb 5, 2013
OTP gen_server Callbacks.sublime-snippet Add OTP templates Feb 5, 2013
OTP supervisor Callbacks.sublime-snippet Add OTP templates Feb 5, 2013
README.md Advertise auto-match fixes in the README Aug 30, 2013
Receive-Expression.sublime-snippet init with Erlang Package contents from build 2131 Oct 7, 2011
Record Symbols.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
Special Symbols.sublime-completions Prevent directive completions from firing in expression context May 22, 2013
Sublime-Erlang.sublime-project Autoselect JSON grammar compiler May 17, 2013
Symbol Overrides.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
Try-Expression.sublime-snippet init with Erlang Package contents from build 2131 Oct 7, 2011
Type Symbols.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
Yecc (Erlang).JSON-tmLanguage Refactor grammar files May 16, 2013
Yecc (Erlang).tmLanguage Refactor grammar files May 16, 2013
Yecc Directives.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
Yecc Rule Symbols.tmPreferences Make symbol definitions play nice with global indexing Jan 29, 2013
plugin.py Add rebar build system Jul 23, 2013
rebar.sublime-build fixed trailing coma issue for ST2 May 6, 2014

README.md

Better Erlang Support for Sublime Text

Sublime Text comes with basic support for the Erlang programming language, but most of it is just copied from TextMate and suffers from annoying bugs. This repository contains a much-improved Erlang package.

  • Hand-tuned grammar definitions for Erlang, Leex and Yecc
  • Goto Symbol works correctly
  • Improved auto-match
  • Snippets that make your life easier when writing Erlang code

Build Systems

This package comes with a build system definition for rebar. It runs rebar in the project folder containing the current file.

There is also a build system that runs erlc.

Installation

  • clone this repository into the ST Packages folder
  • remove the Erlang folder inside your ST2 Packages folder or (more elegant) disable the Erlang package in your User Settings file.

This package is not yet available through Package Control. I recommend tracking this repository using Package Control's "Add Repository" command.

Contributing

The syntax files (.tmLanguage) are built from JSON sources using a custom build system. If you modify a grammar, please do so in the JSON file and then regenerate the XML. The XML files should be committed alongside your changes to the JSON source.

You are kindly invited to use the included Sublime Text project file.

To build all grammar files from the command line, run:

build/all.py

Pull requests and issues are welcome.

Something went wrong with that request. Please try again.