TLDR: I think my usecase would be greatly helped by exporting completionState
and startCompletionEffect
from the autocompletion plugin
Just some background - currently, I have a highly customised project with quite a lot of extension to the autocomplete plugin - a custom (forked from Python with quite a few changes) language package, almost all the UI is custom, and it shows a highly customised information panel when inside function arguments. It also overrides the keymap to have more contextual autocomplete behaviour (such as adding a comma and opening the autocomplete panel again for the next function argument).
All this is to say - I want to have an Excel-like effect where the autocomplete is virtually always open in some form, mainly when inside function arguments (an “ArgList” node in the grammar) - and the best idea I have to achieve this is adding the startCompletionEffect
effect to certain transactions in a transactionFilter
or transactionExtender
facet. I may be going about this wrong (in which case feel free to throw rotten eggs at me), but the problem I have is that the startCompletionEffect
and other such things simply aren’t exported from the library, and as such I cannot add those effects myself.
Would it be possible to have these exported in the next version?
PS: another hack I had to do to get around things not being exported from the library is this:
const cState: any = view.state.field((autocomplete as any[])[0])
Because I wanted to make some slight changes to acceptCompletion
, but I couldn’t just copy the code across and modify because it relies on module-level constants that simply aren’t exported. If these could be exported too, that would be very helpful.