Closed atanasj closed 2 years ago
Please open an issue on the ESS issue tracker instead. What do you mean by crashing? It could be that ESS doesn't handle interrupts well. You could then wrap the Capf with cape-wrap-noninterruptible.
Thanks @minad, I'll do that. Could you please give me an example of what wrapping the capf would look like? Sorry if this is obvious, but elisp
is a language I'm still trying to wrap my head around...
Okay, so I think this is more related to cape
than corfu
, would you agree? I've tried this:
(setq-local completion-at-point-functions
(mapcar #'cape-company-to-capf
(list #'company-files #'company-ispell #'company-dabbrev
#'company-elisp #'company-css #'company-etags
#'company-R-library #'company-R-args #'company-R-objects
)))
(advice-add #'company-R-library :around #'cape-wrap-noninterruptible)
(advice-add #'company-R-args :around #'cape-wrap-noninterruptible)
(advice-add #'company-R-objects :around #'cape-wrap-noninterruptible)
Is that the right way to do it?
The first problem here is that your configuration is too complicated. You should start with the most minimal configuration which reproduces the problem (starting from emacs -Q, not Doom Emacs). This will help with debugging the issue.
;; Try this first:
(setq-local completion-at-point-functions
(cape-company-to-capf #'company-R-objects))
;; Then that:
(setq-local completion-at-point-functions
(cape-company-to-capf
(apply-partially #'company--multi-backend-adapter
'(company-R-library
company-R-args
company-R-objects
:separate))))
If this doesn't work, you have to dig deeper on why the process crashes. Is there some process logging? Try the Elisp debugger, try function tracing, ... Did you ask in the Doom Discord if there is someone who can help you debug this?
Thanks so much @minad, this is very helpful. I'll try your suggestions and reach out to others. I also not tried the other suggestions you mentioned. I will give that a go too if I need. Thanks for the help, the lessons, and the great packages!
Hi,
corfu
is really excellent… seems lightweight and works well everywhere... But, it seems to be making the inferioress-R-process
crash.I'm sorry for the vagueness of this issue, and it could well be a config issue on my part, but I would love to get to the bottom of this. I would be open to any guidance on what you think could be causing the issue or how to go about providing the relevant info. My config for
corfu
can be found here... But have included an excerpt of what should be the main config below:I'm not sure if there is some conflict with my
ess
config, but I have included the config belo.Other relevant info: