All Projects → nathankot → Company Sourcekit

nathankot / Company Sourcekit

Completion for Swift projects via SourceKit with the help of SourceKitten

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Company Sourcekit

Academic Phrases
Bypass that mental block when writing your papers.
Stars: ✭ 244 (+20.2%)
Mutual labels:  emacs, autocomplete
Cmake Ide
Use Emacs as a C/C++ IDE
Stars: ✭ 661 (+225.62%)
Mutual labels:  emacs, autocomplete
Mypy boto3 builder
Type annotations builder for boto3 compatible with VSCode, PyCharm, Emacs, Sublime Text, pyright and mypy.
Stars: ✭ 123 (-39.41%)
Mutual labels:  emacs, autocomplete
Org Books
Reading list management with org mode
Stars: ✭ 186 (-8.37%)
Mutual labels:  emacs
Emacs History
Historical Emacs Software Preservation
Stars: ✭ 184 (-9.36%)
Mutual labels:  emacs
Dimmer.el
Interactively highlight which buffer is active by dimming the others.
Stars: ✭ 194 (-4.43%)
Mutual labels:  emacs
Literate Calc Mode.el
🧮 Literate programming for M-x calc
Stars: ✭ 201 (-0.99%)
Mutual labels:  emacs
El Patch
✨ Future-proof your Emacs Lisp customizations!
Stars: ✭ 184 (-9.36%)
Mutual labels:  emacs
Hackernews.el
Hacker News client for Emacs
Stars: ✭ 200 (-1.48%)
Mutual labels:  emacs
Snippets
Atom snippets package
Stars: ✭ 191 (-5.91%)
Mutual labels:  autocomplete
Emacs
🧛🏻‍♂️ Dark theme for Emacs
Stars: ✭ 190 (-6.4%)
Mutual labels:  emacs
Smudge
Control the Spotify app from within Emacs.
Stars: ✭ 186 (-8.37%)
Mutual labels:  emacs
Emacs Direnv
direnv integration for emacs
Stars: ✭ 194 (-4.43%)
Mutual labels:  emacs
Elispcheatsheet
Quick reference to the core language of Emacs ---Editor MACroS.
Stars: ✭ 186 (-8.37%)
Mutual labels:  emacs
Lsp Treemacs
lsp-mode ❤️ treemacs
Stars: ✭ 200 (-1.48%)
Mutual labels:  emacs
Super Save
Save Emacs buffers when they lose focus
Stars: ✭ 184 (-9.36%)
Mutual labels:  emacs
Evil Snipe
2-char searching ala vim-sneak & vim-seek, for evil-mode
Stars: ✭ 196 (-3.45%)
Mutual labels:  emacs
Know Your Http Well
HTTP headers, media-types, methods, relations and status codes, all summarized and linking to their specification.
Stars: ✭ 2,205 (+986.21%)
Mutual labels:  emacs
El Compilador
An SSA-based compiler for Emacs Lisp
Stars: ✭ 187 (-7.88%)
Mutual labels:  emacs
Build Emacs For Macos
Somewhat hacky script to automate building of Emac.app on macOS.
Stars: ✭ 192 (-5.42%)
Mutual labels:  emacs

company-sourcekit

Melpa Status

company-mode completion for Swift projects via SourceKit with the help of SourceKittenDaemon.

Limitations

  • Only works when there is a *.xcodeproj up the directory tree.
  • OSX-only, since this communicates with SourceKit which only runs on OSX (AFAIK)
  • You need to have curl on your machine

Installation

First install SourceKittenDaemon. Make sure that it's in the exec-path of your Emacs.

And then you can install company-sourcekit in the following ways:

MELPA

M-x package-install <RET> company-sourcekit <RET>

Source

Make sure this repository is in your load-path, and then:

(require 'company-sourcekit)
(add-to-list 'company-backends 'company-sourcekit)

Configuration

  • company-sourcekit-use-yasnippet - Use yasnippet for completion expansion. By default this is enabled if yasnippet is detected.
  • company-sourcekit-verbose - Log company-related messages to *messages* with verbosity
  • sourcekit-available-ports - A list of ports that sourcekittendaemon is allowed to listen on.
  • sourcekit-sourcekittendaemon-executable - Location of the sourcekittendaemon executable
  • sourcekit-curl-executable - Location of the curl executable
  • sourcekit-verbose - Log sourcekittendaemon-related messages to *messages* with verbosity

How it works

  • company-sourcekit communicates with sourcekittendaemon via HTTP.
  • Which in turn communicates with SourceKit using the sourcekitten framework.
  • sourcekittendaemon will read your .xcodeproj file and determine the best configuration options to pass to sourcekit.

Credits

Contributing

Is most welcome. Please use a feature branch and format your code with indent-region d(^.^)b

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].