Open geraldus opened 8 years ago
Thanks for the summary.
Note that pragmas, options, extensions could work without REPL, but it is not connected.
research if
haskell-completions-sync-completions-at-point
should cover a case when REPL is not available, e.g. provide dabbrev completions (at least Emacs and company)
It was decided not to deal with dabbrev, company-mode
seems to handle this already. In case of vanilla Emacs, users can run dabbrev-expansion directly or add another dabbrev completion provider to completion-at-point-functions
hook
There is some mess around completions. We have:
haskell-completions.el
provides:haskell-complete-module.el
provides:haskell-complete-module-read
— very complicated function, interactively completes module name using mini-bufferhaskell-modules.el
depends onhaskell-complete-module.el
provides:haskell-add-import
— this is major use function, others seem to be for internal use; all functions depend on REPL, if it's not availablehaskell-add-import
reads module name from mini-bufferhaskell-complete-module-read
is used in[1]:haskell-mode-contextual-space
fromhaskell.el
(I didn't understand what does this function do yet)haskell-process-suggest-imports
fromhaskell-load.el
haskell-add-import
fromhaskell-modules.el
haskell-completions-sync-completions-at-point
should cover a case when REPL is not available, e.g. provide dabbrev completions (at least Emacs and company)[2]haskell-modules.el
andhaskell-complete-module.el
haskell-completions.el
Related to #215