iCompleteMe
iCompleteMe copied to clipboard
Document differences with YCM
As it stands the editor portion of this plugin looks pretty close to YouCompleteMe. It would be helpful to document what changed against upstream to ease adding support for other editors. Speaking as someone who would really like to see this in Emacs as well, I'm not sure if the best approach would be a new package or adding functionality to one of the existing ones (e.g. emacs-ycmd).
Hey @msanders I've started some notes inline and will work towards getting them into the readme. I'd be curious to hear how the emacs integration plays out 👍
The plugin is quite similar to YouCompleteMe
as of today. It was originally intended to be part of YouCompleteMe.
iCompleteMe: The Vim client
- Forked from
YouCompleteMe
- Has experimental Swift specific logic to handle placeholders.
- Is namespaced under
i*
all the way down to avoid conflicts in Vim's python plugin process.iCompleteMe
andYouCompleteMe
can run in the same process.
icmd: The http backend
- Forked from
ycmd
- Includes a custom
Completer
subclass that integrates Swift completions via http requests. This was the recommended way to add a new language to YCMD at the original time of writing.
SwiftySwiftVim - Swift icmd
service
- This project was spawned as the recommended way to integrate Swift via the YouCompleteMe authors ( see above ).
For the path of least resistance into emacs-ycmd, it may be possible to patch the ycmd
additions including SwiftCompleter
and build hook directly ycmd
.
Future direction
Now that this project and Swift completion is somewhat stable, it could be interesting to open a thread around integrating back into YouCompleteMe
master. This might make it easier to add into emacs.
I've also been considering rewriting the entire system under a fast, simple, architecture in Swift. The heavy usage of Python has been a constant pain for this project ( and YCM ) for maintainability and deployment. If rewriting in Swift makes it better for users and contributors, the latter path is quite appealing.
I don't have plans in 2018 for such a project, but who knows.
Thanks @jerrymarino! This looks really promising, I'm excited to use it.