- Syntax highlighting for Haxe2 and Haxe3 sources and hxml build files
- Haxe compiler auto-completion, code hints, smart snippets, error highlighting / navigation and "goto definition" feature
- NME, openfl and Flambe support with completion, target selection and compilation
- Package and classes discovery/suggestion including classpath (-cp) and haxelib libraries (-lib)
- Multiple build management and automatic generation of hxml files
- Haxelib integration (install / remove / upgrade libs) with -lib autocompletion
- Code snippets, auto-import, Sublime build system integration
- HScript, Erazor and HSS support
and more to come :)
Sublime Package Control
The most straight-forward way to install the bundle and to keep it up-to-date is through Package Control.
If you want to develop on a forked repo, you can clone it into the Packages folder:
cd ~/Library/Application\ Support/Sublime\ Text\ 2/Packages git clone https://github.com/<fork author>/haxe-sublime-bundle.git Haxe
cd ~/.config/sublime-text-2/Packages git clone https://github.com/<fork author>/haxe-sublime-bundle.git Haxe
Using git bash
cd /c/Users/<username>/AppData/Roaming/Sublime\ Text\ 2/Packages git clone https://github.com/<fork author>/haxe-sublime-bundle.git Haxe
Restart Sublime Text.
Sublime Text 3
See How to install Package Control on Sublime Text 3.
For manual installation, the folders should be
sublime-text-3 (Linux) or
Sublime\ Text\ 3 (Windows, Mac OSX).
- Open your project directory (where the .hxml or .nmml resides) in Sublime Text, the build file should be detected automatically,
- Create new types through the sidebar's context menu
- Edit your classes (check the cool snippets, like 'prop'-Tab)
- Open parenthesis and comma keys display Haxe type hints in the status bar and inserts smart snippets
- Press Ctrl+Shift+B to either select among multiple builds, automatically generate an hxml file if none exist, or edit the build file if only one build exists
- Press Ctrl+Enter to run the current/selected build
- Press Ctrl+I on a qualified class name to shorten it and generate the import statement. Safe to use if the class is already imported.
- Press Ctrl+Shift+H and then :
- Ctrl+Shift+C to create a new class,
- Ctrl+Shift+I to create a new interface,
- Ctrl+Shift+E to create a new enum,
- Ctrl+Shift+T to create a new typedef
- Press Ctrl+< to go to definition (Haxe 3.1.3+ required)
- Press Ctrl+Shift+F1 to show documentation on cursor (when previously autocompleted)
haxe_path: Full path to the Haxe compiler, if not already in your
PATH(ex:"/usr/bin/haxe" or "C:\Program Files\Haxe\haxe.exe")
haxe_library_path: Full path to the standard lib, overriding
haxelib_path: Full path to Haxelib, if not already in your PATH (ex:"/usr/bin/haxelib" or "C:\Program Files\Haxe\haxelib.exe")
trueby default) : Uses compilation server for building.
trueby default) : Uses compilation server for autocompletion.
trueby default) : Inserts smart snippets based on compiler hints after
hxmlfiles to your project, and disable
hxmlfile scan (see above).
Haxe NME is based on a specific
.nmml file (the
.hxml is generated) which is supported by this bundle.
To target openfl, use
.xml instead, like
- press Ctrl+Shift+B to select a NME target
- press Ctrl+Enter to build and run (regular Sublime Text build system won't work)
Build selection / discovery
The bundle should find your
hxml file automatically, to provide autocompletion and build functionnality. It will search for
hxml files as follows :
If you opened only a file, it will scan from the file path up to your filesystem root.
If you opened folders, it will scan from the file path you opened up to the folder you opened that contains it. It will also scan the root of other opened folders.
In addition to that, you can manually add
hxml files to your project by either right-clicking them and 'Add Haxe build file to project', or adding them manually to your
haxe_builds project setting.
In ST3, if you use projects, the paths will persist across sessions.
When this feature is used, the bundle will only use the
hxml files you provided, and no longer scan for other
haxe_builds setting is an array of either simple
hxml paths (eg:
"build/html5.hxml"), or of the form of 'current/working/dir@build/path.hxml'.
For example, if you add
"my_project/haxe_sources@build/test.hxml", the bundle will run
haxe build/test.hxml from
(Please notice that only ST3 allows paths to be relative to project-file path)
- You'll need a working installation of Haxe (
haxelib): start by trying to compile your project directly through a terminal.
- Open the Sublime Text Console (in View menu) to see what's going on.
- Don't hesitate to open an issue in case anything goes wrong.
Tips & tricks
As this bundle displays code hinting for method calls in the “status bar”, you may find it useful to increase its font-size.