Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document differences with YCM #10

Open
msanders opened this issue May 16, 2018 · 2 comments
Open

Document differences with YCM #10

msanders opened this issue May 16, 2018 · 2 comments

Comments

@msanders
Copy link
Contributor

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).

@jerrymarino
Copy link
Owner

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 and YouCompleteMe 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.

@msanders
Copy link
Contributor Author

Thanks @jerrymarino! This looks really promising, I'm excited to use it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants