-
Notifications
You must be signed in to change notification settings - Fork 89
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
Omnicompletion #23
Comments
I think it's viable to do a first pass in Nu and then convert the slow parts to Objective-C as needed. Since you can see the Objective-C source, you can access anything that's in Vico's runtime from Nu, as long as you're not dealing in const char *s and such. |
@Shadowfiend I am not sure where do I start with Nu approach though, where do I put my code? Any suggestions on where to start or maybe I need to RTFM? |
I mean, you've already outlined what looks like a pretty solid approach. You can take that approach in Nu just as well as anywhere else. You can access any Vico class by name from Nu, though you may have to The only part you'd have trouble with is adding complete_omni, but you don't need to. You can map |
Oh, and sorry, as to where to put your code, I would start off by just putting it in a bundle and evaling it as you go. There are a couple of caveats (like you can't eval an ival block more than once in Nu; but they're also optional), but that's how I've developed my plugins to date. |
@Shadowfiend would you consider "completion as you type" within the scope of your improvements? |
I think @vgrichina was talking about implementing this, not me. At least not yet. I may get around to this if no one else has sometime soonish as I continue work on |
@jordow I think its a topic for separate plugin, as I don't like such functionality :) I think once I'm done with my stuff, you can hack something together based on it too. |
@vgrichina: Have you had time to explore this? I'd like to take a stab at adding the auto-ness to whatever you end up with. |
@jordow no, haven't come to it yet |
@vgrichina: I was taking a look at the autocomplete code last night. To make auto-complete-as-you-type possible, it seems I had to make |
This sounds good to me. |
As a side note, #15 implements completion as you type. It'll probably get merged in in the next week or so, as I've been using it and it's generally been performing pretty well. I'm thinking about implementing some improvements/pluggable completion, omni-completion style. |
I think vico's completion mechanism can be much improved from the current state. I think at least the following can be added without too big effort:
I plan to implement at least some of the above and to submit pull request, however I'd like to get feedback beforehand on general approach.
As I understand I need to add some command to
ViTextView-vi_commands.m
, e.g.complete_omni
similar tocomplete_keyword
. Then I can map it to<c-x><c-o>
inkeys.nu
. For the completion itself I'd have to implementViOmniCompletion
class analogous toViWordCompletion
.So basically most of the stuff will have to be done in Objective-C and by editing Vico source itself. However maybe I mistake and this can be done just by writing in Nu and making custom bundle, etc.?
I'm open to suggestions on which approach I should take.
The text was updated successfully, but these errors were encountered: