-
Notifications
You must be signed in to change notification settings - Fork 4
Completion improvements #11
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
Comments
I was thinking as well that it would be nice to use merlin in utop for completion. I remember talking briefly about it with @let-def once. IIRC, we concluded that there was no fundamental blocker. |
This is somewhat orthogonal to the ideas in this issue, but I recently played with reimplementing completion using Upsides:
Downsides:
(*) is probably a blocker for an external project such as this, but it would disappear if this code was ever upstreamed into OCaml itself :) Cheers! |
I would love for the expunge process to go. I can appreciate and understand its idea but since we need to improve The other problem is that AFAIR loading |
A propos @nojb if these things are in the |
But it seems
|
Uh oh!
There was an error while loading. Please reload this page.
As mentioned in the manual completion support is rather crude at the moment.
Here are a few directions that could be taken:
Patch
#directory
directives viaTopdirs
to collect which directories are included and pass corresponding-I
arguments toocp-index
. This doesn't however allow us to determine which modules areopen
ed and we miss those-I
option that may have been specified on theocaml
invocation. Best for this would be to solve point 2. in this issue upstream as this would have benefits for other projects aswell (ocamlfind
,utop
,omod
).Along with working on the various points in Improve the toplevel API ocaml/ocaml#7589, try to convince merlin authors to provide support for toplevel sessions via the cli. @pqwy mentioned almost getting to something with
ocamlmerlin single complete-prefix
, but that "it falls short because it heavily assumes you are editing a file in a project".In general it seems better to isolate completion via the cli and try to improve the
Toploop
API so that compiler-libs is not needed (also using compiler-libs inocamlnat
is a no-go). This allowsdown
to work for the rest (readline, history, sessions) even though the underlying completion engine may not have been updated for the latest version of the compiler.The text was updated successfully, but these errors were encountered: