Swift autocompletion in Sublime Text using SourceKitten
Python Swift Shell
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
dependencies
images
src
test
.gitignore
Default.sublime-commands
LICENCE
README.md
run_tests
subl.py

README.md

SourceKittenSubl

Swift autocomplete and documentation in Sublime Text 3, using SourceKitten.

Autocomplete

Popup

Installation

  • Install SourceKitten (brew install sourcekitten)
  • Clone this repository to the Sublime packages directory
  • [Optionally for speed] Install a faster JSON parsing back-end: (brew install yajl)

Usage

  • Open your project top-most directory in Sublime (e.g. cd ~/projects/MyProject && subl .)

Notes

  • SourceKittenSubl doesn't read Xcode project files, but instead uses the top-most directory open in Sublime.
  • The source of SourceKittenSubl is simple so hopefully it should be easy to contribute to (please do!). I'm open for discussion on the repository issues if you want to discuss / you're at all unsure how to approach a problem.

For contributing

  • Run the test runner: ./run_tests
  • If you're contributing, try to write a test to capture the problem

These are the main components of the plugin:

  • subl.py: this file is entry point to the plugin from Sublime - on_query_completions is an event handler method provided by Sublime Text's API, so Sublime Text will call the method when attempting to autocomplete.
  • subl_source_kitten.py is purely to convert output from SourceKitten into a format that can be output in Sublime Text.
  • source_kitten.py communicates with the sourcekitten - exactly in the same way as you would from a bash shell. Parses the output from JSON into Python objects.
  • swift_project.py deals with the "project" (i.e. which source files should be passed in to SourceKitten)