Почему ghc-mod powered neco-ghc работает только в корневом каталоге проекта?

Я новичок в Haskell, поэтому у меня нет глубокого понимания того, как ghc-mod работает и как cabal-install-подобные инструменты сборки миров Haskell движутся под капотом.

Но я как-то нашел плагины vim haskell от github, включая плагин neco-ghc для автозаполнения, работающий на ghc-mod что мне показалось очень привлекательным.

Проблема заключалась в том, что он работает только на исходных кодах haskell уровня проекта cabal-install инициализированные проекты, пока он не работает вообще на stackИнициализированные проекты.

Моя структура каталогов генерируется следующими командами:

~ $ mkdir my_project && cd my_project
~/my_project $ cabal init
~/my_project $ cabal sandbox init

который дает

my_project  
|-- Setup.hs  
|-- cabal.sandbox.config  
|-- src / Lib.hs

Автозаполнение работает (предлагает ключевые слова модуля Prelude), когда я редактирую Setup.hs но я ничего не предлагаю, когда я пытаюсь редактировать src/Lib.hs,

мой :NecoGhcDiagnotics выходы команды

Current filetype: haskell                                                                                                                                                                                                    
ghc-mod is executable: 1                                                                                                                                                                                                     
omnifunc: necoghc#omnifunc                                                                                                                                                                                                   
neocomplete.vim: 0                                                                                                                                                                                                           
neocomplcache.vim: 2                                                                                                                                                                                                         
YouCompleteMe: 0                                                                                                                                                                                                             
vimproc.vim: 900                                                                                                                                                                                                             
ghc-mod: 5.4.0.0                                                                                                                                                                                                             
Imported modules: Prelude                                                                                                                                                                                                    
Number of symbols in Prelude: 0     

когда я редактирую src/Lib.hs в то время как

Current filetype: haskell                                                                                                                                                                                                    
ghc-mod is executable: 1                                                                                                                                                                                                     
omnifunc: necoghc#omnifunc                                                                                                                                                                                                   
neocomplete.vim: 0                                                                                                                                                                                                           
neocomplcache.vim: 2                                                                                                                                                                                                         
YouCompleteMe: 0                                                                                                                                                                                                             
vimproc.vim: 900                                                                                                                                                                                                             
ghc-mod: 5.4.0.0                                                                                                                                                                                                             
Imported modules: Distribution.Simple, Prelude                                                                                                                                                                               
Number of symbols in Prelude: 235   

это вывод команды при редактировании Setup.hs,

Это явно выглядит ghc-mod не обнаруживает никаких символов при редактировании src/Lib.hs.. почему это происходит?

1 ответ

Решение

Отправка ответа по запросу: ghc-mod 5.4.0 настаивает на запуске из корневого каталога проекта. Это нарушает различные сторонние программы, которые зависят от ghc-mod, neco-ghc Плагин был обновлен, чтобы справиться с этим, другие программы прекращают поддержкуghc-mod,

Другие вопросы по тегам