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
Support command substitution in .merlin
files
#411
Comments
cc @pirbo with which I discussed the issue (as the evil coq-libraries-compilation plan master). |
I am not sure relying on shell-expansion is fixing the problem at the right level (although it might be the "unixy"-way). Your suggestion to use findlib looks much better to me. (In the meantime Coq users can either use elisp code to automatically do the setup when opening a new buffer, or maybe write a temporary META file while waiting for a proper one from upstream). |
I think you definitively want to keep |
Isn't generation of .merlin as a byproduct of configuration/build process a viable option? (I would love living in a world without configure and with proper declarative build systems, but that doesn't seem to be a major concern of unixes :)). The other option I consider would be to extend .merlin files with a shebang-like mechanism. |
I have mixed feelings about the idea of "staying declarative" when that means more pain for users down the road that have to hack their needs around the tool in various ways. System command expansion is a time-honored "most flexible way to do things" that is supported by all systems (Windows included), and while all the use-cases that have been discussed here and elsewhere (accessing opam variables, accessing ocamlfind variables, asking Coq where it is installed) would work fine under all operating systems, while the complex and possibly-over-engineered workaround suggested here have gone nowhere and seem insufficient to handle some of them. (Re. security: |
(Note: I would also be fine with support the |
@gasche as far as I understand, coq users are converging are dune. The best way to support them would be to improve the integration of merlin + dune. Adding new features in .merlin is unlikely to help things because these .merlin files are almost impossible to write correctly by hand, so I'm closing this issue. If you have any objections, please re-open :) |
Again for Coq users, it would be convenient to have something like
for their
.merlin
files in plugins. The reason why is that they have an ossified workflow where Coq is installed in various places and not tracked by ocamlfind (don't ask).I think the feature could be of general interest for other Merlin users, but there would be two arguments against this:
.merlin
files that are not portable to some systems (by using non-portable shell commands)Do you think the feature request is a good idea? If so, I might try to implement it myself if you don't have time.
The text was updated successfully, but these errors were encountered: