Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Better Erlang Support for Sublime Text
branch: master

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.
latest commit ab1cf5b6fb
Felix Lange authored
Failed to load latest commit information.
build Add custom grammar build system
st3 Fix GotoExactDefinition for ST build > 3069
.gitignore Ignore *.sublime-workspace
Builtin Types.sublime-completions small typo
Case-Expression.sublime-snippet init with Erlang Package contents from build 2131
Comments.tmPreferences Support commenting in Yecc files
Default (Linux).sublime-keymap
Default (OSX).sublime-keymap Enable <<>> auto-match for source.erlang only
Default (Windows).sublime-keymap
Delete 2 Characters Left And Right.sublime-macro Auto-match bindings for binaries (<<>>)
Directives.sublime-completions Prevent directive completions from firing in expression context
EScript (Erlang).JSON-tmLanguage Handle spaces in escript shebang line
EScript (Erlang).tmLanguage Handle spaces in escript shebang line
Erlang Expression.JSON-tmLanguage Stop matching the 'query' keyword (fixes #33)
Erlang Expression.tmLanguage Stop matching the 'query' keyword (fixes #33)
Erlang.JSON-tmLanguage Fix highlighting of integer type ranges one more time
Erlang.sublime-build Make erlc the default compiler for Leex files
Erlang.sublime-settings Add ? to word_separators (fixes #25)
Erlang.tmLanguage Fix highlighting of integer type ranges one more time
Fun-Expression.sublime-snippet Fun snippet expands into single line
Function Symbols.tmPreferences Make symbol definitions play nice with global indexing
Guard Functions.sublime-completions make guard function completion available in expression guards
HTML (Erlang).tmLanguage init with Erlang Package contents from build 2131
If-Expression.sublime-snippet init with Erlang Package contents from build 2131
Indentation Rules.tmPreferences improve indentation rules for '->' and 'after' (closes #1)
Leex (Erlang).JSON-tmLanguage Refactor grammar files
Leex (Erlang).tmLanguage Make Erlang snippets work in Leex and Yecc files
Leex Directives.sublime-completions Add grammar for Leex files (.xrl)
Macro Symbols.tmPreferences Make symbol definitions play nice with global indexing
Module Definition Symbols.tmPreferences Make symbol definitions play nice with global indexing
OTP Application Resource File.sublime-snippet Add OTP templates
OTP application Callbacks.sublime-snippet Add OTP templates
OTP gen_event Callbacks.sublime-snippet Add OTP templates
OTP gen_fsm Callbacks.sublime-snippet Add OTP templates
OTP gen_server Callbacks.sublime-snippet Add OTP templates
OTP supervisor Callbacks.sublime-snippet Add OTP templates
README.md Advertise auto-match fixes in the README
Receive-Expression.sublime-snippet init with Erlang Package contents from build 2131
Record Symbols.tmPreferences Make symbol definitions play nice with global indexing
Special Symbols.sublime-completions Prevent directive completions from firing in expression context
Sublime-Erlang.sublime-project Autoselect JSON grammar compiler
Symbol Overrides.tmPreferences Make symbol definitions play nice with global indexing
Try-Expression.sublime-snippet init with Erlang Package contents from build 2131
Type Symbols.tmPreferences Make symbol definitions play nice with global indexing
Yecc (Erlang).JSON-tmLanguage Refactor grammar files
Yecc (Erlang).tmLanguage Refactor grammar files
Yecc Directives.tmPreferences Make symbol definitions play nice with global indexing
Yecc Rule Symbols.tmPreferences Make symbol definitions play nice with global indexing
plugin.py Add rebar build system
rebar.sublime-build fixed trailing coma issue for ST2

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.