Skip to content
SBT build tool integration for Sublime Text 2 and Sublime Text 3.
Python JavaScript
Find file
Latest commit e865445 @jarhart Merge pull request #41 from dickwall/master
Add test:compile and ~test:compile commands
Failed to load latest commit information.
.gitignore Hide output coloring definitions from UI
Default (Linux).sublime-keymap Add commands to recall, re-submit and edit command history
Default (OSX).sublime-keymap Add commands to recall, re-submit and edit command history
Default (Windows).sublime-keymap Add commands to recall, re-submit and edit command history
Default.sublime-commands Add test:compile and ~test:compile commands
LICENSE Initial commit
Main.sublime-menu Add README and keybindings to Package Settings menu
README.md Add doc to README for command history initialisation changes
SBTError.hidden-tmLanguage Hide output coloring definitions from UI
SBTOutput.hidden-tmLanguage Hide output coloring definitions from UI
SBTOutput.hidden-tmTheme Hide output coloring definitions from UI
SublimeSBT.sublime-settings Add commands to recall, re-submit and edit command history
errormarker.py Make ErrorMarker._highlighter lazy to avoid settings loading issue
errorreport.py Ignore errors in files that aren’t in the current project (#17)
errorreporter.py Make update_status run on UI thread. Add way to update status immedia…
errorview.py Improve clearing of errors (#21)
highlighter.py Add bookmark icon to current error line when cycling through errors.
outputmon.py Add a test failure parser for multi-line failures
project.py Make per-window object caching DRY and thread-safe
sbterror.py Ignore errors in files that aren’t in the current project (#17)
sbtrunner.py Add support for global and project-specific history initialisation
sbtsettings.py Sublime Text 3 compatibility!
sbtview.py Always show the selection position in the sbt output panel
sublimesbt.py Improve clearing of errors (#21)
util.py Make per-window object caching DRY and thread-safe

README.md

SublimeSBT

Scala SBT build tool integration for Sublime Text 2 and Sublime Text 3.

Features

  • Compatible with Sublime Text 2 and Sublime Text 3.
  • Runs SBT as an interactive REPL inside Sublime Text's output panel.
  • Detects compile errors and test failures in SBT's output and highlights the errant lines in the source code.
  • Lists compile errors and test failures in a quick panel for easy navigation to the errant lines.
  • Cycles through errors for even faster navigation.
  • Displays the error text in an output panel for easy reading.
  • Detects Play Framework projects and runs SBT using play instead of sbt.
  • Supports project-specific configuration.

Installing

Download Package Control and use the Package Control: Install Package command from the command palette. Using Package Control ensures SublimeSBT will stay up to date automatically.

Using

SublimeSBT is mostly used through the Command Palette. To open the pallete, press ctrl+shift+p (Windows, Linux) or cmd+shift+p (OS X). The SublimeSBT commands are all prefixed with SBT:. The commands only show up in the command palette if SublimeSBT detects that your project is an SBT project.

Start SBT

  • Start an SBT session for the current project. If the project looks like a Play Framework project, the play command is used instead of the sbt command.

Stop SBT

  • Stop the currently running SBT session.

Kill SBT

  • Force the currently running SBT session to stop.

Show SBT Output

  • Show the SBT output panel if it's not already showing. This also focuses the output panel and puts the cursor at the end.

Compile, Test, Run, Package, Start Console

  • Run the compile, test, run, package, or console SBT command. If SBT is currently running the command is run in interactive mode, otherwise it's run in batch mode.

Start Continuous Compiling, Start Continuous Testing

  • Run ~ compile or ~ test. If SBT is currently running the command is run in interactive mode, otherwise it's run in batch mode.

Test-Only, Test-Quick

  • Run the test-only or test-quick command, prompting for an argument. If SBT is currently running the command is run in interactive mode, otherwise it's run in batch mode.

Start Continuous Test-Only, Start Continuous Test-Quick

  • Run ~ test-only or ~ test-quick, prompting for an argument. If SBT is currently running the command is run in interactive mode, otherwise it's run in batch mode.

Reload

  • Run the reload command if SBT is currently running.

Show Error List

  • Show a quick panel with any compile errors or test failures. Selecting an error opens the file at the line with the error and shows the error text in the error output panel.

Show Next Error

  • Jump to the next error in the error list. Opens the file at the line with the error and shows the error text in the error output panel.

Show Error Output

  • Show the error output panel if it's not already showing.

Clear Errors

  • Clear any compile errors or test failures and remove any highlighting thereof.

Show History

  • Show a quick panel with the history of submitted commands. Selecting a command submits it again.

Show History and Edit

  • As for Show History but also provides an opportunity to edit the selected command before it is re-submitted.

Clear History

  • Clear the command history.

Configuring

The default settings can be viewed by accessing the Preferences > Package Settings > SublimeSBT > Settings – Default menu entry. To ensure settings are not lost when the package is upgraded, make sure all edits are saved to Settings – User.

sbt_command

  • An array representing the command line to use to start sbt. Depending on your setup you may need to put the full path to the file here.

play_command

  • An array representing the command line to use to start sbt for a Play Framework project. Depending on your setup you may need to put the full path to the file here.

test_command

  • A string representing the sbt command to use to run tests.

run_command

  • A string representing the sbt command to use to run the project.

error_marking, failure_marking, warning_marking

  • How to mark errors, failures, and warnings in the source code:

    style

    • The mark style to use. Valid values are "dot", "outline", or "both".

    scope

    • The scope to use to color the outline.

color_scheme

  • The color scheme to use for the output panel.

Project-specific settings can be configured by accessing the Project > Edit Project menu entry and putting settings in a "SublimeSBT" object inside of "settings" in your project file, e.g.:

{
    "folders":
    [
        {
            "path": "/Users/jarhart/scalakoansexercises"
        }
    ],
    "settings":
    {
        "SublimeSBT":
        {
            "sbt_command": ["./sbt"],
            "test_command": "test-only org.functionalkoans.forscala.Koans"
        }
    }
}

history

  • An array that contains commands that should be added to the command history when a project is opened.

history_length

  • The maximum number of unique commands to keep in the command history. The default setting is 20.

Project-Specific Configuring

If the file .SublimeSBT_history exists at the top level of a project, each line of that file will be added to the command history when the project is opened.

Contributors

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Copyright

Copyright (c) 2012 Jason Arhart. See LICENSE for further details.

Something went wrong with that request. Please try again.