Swift autocomplete and documentation in Sublime Text 3, using SourceKitten.
- 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)
- Open your project top-most directory in Sublime (e.g.
cd ~/projects/MyProject && subl .)
- 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.
- Run the test runner:
- 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_completionsis an event handler method provided by Sublime Text's API, so Sublime Text will call the method when attempting to autocomplete.
subl_source_kitten.pyis purely to convert output from SourceKitten into a format that can be output in Sublime Text.
source_kitten.pycommunicates 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.pydeals with the "project" (i.e. which source files should be passed in to SourceKitten)