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

Autocomplete with expand arguments in snippet #654

Closed
kvaneesh opened this issue Apr 7, 2016 · 8 comments
Closed

Autocomplete with expand arguments in snippet #654

kvaneesh opened this issue Apr 7, 2016 · 8 comments

Comments

@kvaneesh
Copy link

kvaneesh commented Apr 7, 2016

I am writing this to check whether we support argument expansion while autocomplete ?. Something similar to http://emacs.stackexchange.com/questions/9526/extending-autocomplete-for-go-to-insert-function-arguments

@mkwork
Copy link

mkwork commented Apr 7, 2016

Imho, such feature requires to sent full set of completion model, just like tokens to client side.

So, if I can ask for some additional requirements for such interfaces changes:
Please implement such kind of output interfaces changes in json format, while it's needed to implement good enough plugin implementation in vim-rtags to compete with ycm's c++ semantic completion implementation.

As reference implementation of completion string mapping in format like json model, you can use such python bindings. Their completion string mappings have rest of detail which are enough for the most full completion implementation on the client side.

@kvaneesh
Copy link
Author

https://code.visualstudio.com/blogs/2016/06/27/common-language-protocol
This looks interesting. If we get an emacs implementation then we could possible make the language server available to other editors too.

@Andersbakken
Copy link
Owner

Incidentally. This is now implemented. There might be bugs but you can now
do something like this:

rc --code-complete-at /Users/abakken/dev/rtags/src/rdm.cpp:50:1:
--synchronous-completions --json

Note that I suspect there's too much info there for it to be performant. I
think the ideal solution maybe filters out something on the server side.

Anders

On Thu, Apr 7, 2016 at 2:46 PM, Maxim Kot notifications@github.com wrote:

Imho, such feature requires to sent full set of completion model, just
like tokens
http://clang.llvm.org/doxygen/group__CINDEX__CODE__COMPLET.html#ga82570056548565efdd6fc74e57e75bbd
to client side.

So, if I can ask for some additional requirements for such interfaces
changes:
Please implement such kind of output interfaces changes in json
http://www.json.org/ format, while it's needed to implement good enough
plugin implementation in vim-rtags https://github.com/lyuts/vim-rtags
to compete with ycm's https://github.com/Valloric/YouCompleteMe c++
semantic completion implementation.

As reference implementation of completion string mapping in format like
json model, you can use such python bindings
https://github.com/llvm-mirror/clang/tree/master/bindings/python. Their
completion string mappings have rest of detail which are enough for the
most full completion implementation on the client side.


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#654 (comment)

@kvaneesh
Copy link
Author

Is the emacs part of this done ? I guess company mode integration will also need an update to show the details ?

@Andersbakken
Copy link
Owner

Not really. I don't entirely know what one would need to do to implement it
at this point.

Anders

On Fri, Aug 26, 2016 at 10:24 AM, Aneesh Kumar K.V <notifications@github.com

wrote:

Is the emacs part of this done ? I guess company mode integration will
also need an update to show the details ?


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
#654 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEdSmJnyyeELjJ3BX5Bb3NlFV8SHeV2ks5qjyFmgaJpZM4ICH1D
.

@kvaneesh
Copy link
Author

https://github.com/company-mode/company-mode/blob/master/company-gtags.el that indicate that we can insert argument template if the company backend support it when building completions. I am not expert in elisp to code that. But i noticed that even rc --code-complete-at --elisp returns the argument details. So we may be able to skip the all the json part and just get the arguments in completion with simple hack ?

@Andersbakken
Copy link
Owner

Hm. You know what. We already do this apparently. I think Philippe Vaucher
added this in his initial company contribution. My bad.

Anders

On Thu, Apr 7, 2016 at 7:31 AM, Aneesh Kumar K.V notifications@github.com
wrote:

I am writing this to check whether we support argument expansion while
autocomplete ?. Something similar to http://emacs.stackexchange.
com/questions/9526/extending-autocomplete-for-go-to-insert-
function-arguments


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#654

@casch-at
Copy link
Collaborator

casch-at commented Apr 6, 2017

I think we can close this.

@casch-at casch-at closed this as completed Apr 6, 2017
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

4 participants