Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
This project is an integration of Sublime Text Editor 2 with Ensime for Scala development
branch: master

This branch is 11 commits ahead, 3 commits behind casualjim:master

Merge pull request #5 from vicapow/master

code completion seems to be broken
latest commit 20856313bb
Michael Nash authored
Failed to load latest commit information.
.gitignore Starting and stopping the ensime server works now
Context.sublime-menu Adds type inspection
Default (Linux).sublime-keymap
Default (OSX).sublime-keymap Initial commit
Default (Windows).sublime-keymap
Default.sublime-commands Fix for refactor, add command.
Ensime.sublime-settings Update paths to sublime-ensime
LICENSE Starting and stopping the ensime server works now
Main.sublime-menu update keymaps and main menu
README.md Modify readme to point to new repo
SBT.sublime-build use external sbt launcher scripts
ensime_client.py somewhat fixed code completion but periodically forces sublime to crash.
ensime_commands.py Adds type inspection
ensime_completions.py somewhat fixed code completion but periodically forces sublime to crash.
ensime_environment.py slightly improve string encoding detection for #3
ensime_notes.py Adds crude autocomplete from ensime
ensime_server.py adds poison pill for #5, improves code completion for long messages
install-ensime-server Allow ensime version to be updated easily, bump to latest RC (RC4)
sbt.bat use external sbt launcher scripts
sbt.sh use external sbt launcher scripts
sexp.py Use alternate sexp module that goes to and from sexp. Fix a few ENSIM…
sexpr_parser.py Replace S-expression parser to a working version

README.md

Sublime Ensime

This project provides an integration with ensime and Sublime Text Editor 2. Sublime as an outstanding API so it should be possible to get all of ensime's features in Sublime Text Editor 2.

What's working?

The plugin is able to communicate with an ensime server and it should also be able to do reformat source. For some reason it seems that the java server doesn't get killed when you close the sublime application. There is NO support yet for the subprojects in an .ensime file.

  • Reformat source
  • Organize imports
  • highlighting syntax errors, shows message in status bar
  • Type inspection, needs a delay and cancellable queue currently accessible via context menu

How to install?

  1. Install the package itself:

    a. If you use Package Control, add repository https://github.com/michaelpnash/sublime-ensime and install package sublime-ensime.

    b. Otherwise, in your Sublime Text Packages dir (you can find it by Preferences -> Browse Packages),

    git clone git@github.com:michaelpnash/sublime-ensime.git sublime-ensime
    
  2. Install Ensime.

    a. In Unix (including Mac OS X), cd into the just created sublime-ensime directory and run

    ./install-ensime-server
    

    b. In Windows, just download the version of Ensime listed in the ./install-ensime-server file from https://github.com/aemoncannon/ensime/downloads. It will contain a directory with the same name as Ensime version. Extract it into the just created sublime-ensime directory and rename to server.

  3. (Re)start Sublime Text editor.

Once you're in a project that has a .ensime file in the root folder, you can start a server from the file context menu. Or run:

window.run_command("ensime_server", { "start": True})

What's planned?

To implement all the features of ensime.

Wishlist?

I'd like to use the information we get back from ensime to provide semantic highlighting.

Something went wrong with that request. Please try again.