All Projects → clojure-vim → async-clj-omni

clojure-vim / async-clj-omni

Licence: other
Async Clojure Completion for various (n)vim completion engines

Programming Languages

python
139335 projects - #7 most used programming language
Vim Script
2826 projects

Projects that are alternatives of or similar to async-clj-omni

coc-toml
Toml extension for coc-nvim, using taplo for lsp engine
Stars: ✭ 52 (+1.96%)
Mutual labels:  coc
ncm2-bufword
completion words from current buffer
Stars: ✭ 22 (-56.86%)
Mutual labels:  ncm2-source
coc-stylelint
Stylelint language server extension for coc.nvim
Stars: ✭ 42 (-17.65%)
Mutual labels:  coc
coc-rime
Rime input method source for coc.nvim
Stars: ✭ 22 (-56.86%)
Mutual labels:  coc
code-of-conduct
The rule of St. Benedict as your Code of Conduct
Stars: ✭ 21 (-58.82%)
Mutual labels:  coc
ncm2-otherbuf
ncm2 plugin for completing words in other buffers
Stars: ✭ 19 (-62.75%)
Mutual labels:  ncm2-source
coc-discord-rpc
😎 An awesome and fully customizable coc-extension to get Discord Rich Presence integration with NeoVim.
Stars: ✭ 139 (+172.55%)
Mutual labels:  coc
code-of-conduct
Internal documentation of the DSF Code of Conduct committee
Stars: ✭ 30 (-41.18%)
Mutual labels:  coc
coc-webview
Using an external browser to support the webview in coc.nvim.
Stars: ✭ 21 (-58.82%)
Mutual labels:  coc
vim-setup
👾 My NeoVim configuration for Scala & Haskell development (permanently moved to https://github.com/gvolpe/dotfiles)
Stars: ✭ 31 (-39.22%)
Mutual labels:  coc
ncm2-pyclang
Cached, fast C/C++ completion for ncm2
Stars: ✭ 47 (-7.84%)
Mutual labels:  ncm2-source
asyncomplete-nextword.vim
Provides intelligent English autocomplete for asyncomplete.vim via nextword
Stars: ✭ 43 (-15.69%)
Mutual labels:  asyncomplete
coc-neco
viml completion source for coc.nvim
Stars: ✭ 22 (-56.86%)
Mutual labels:  coc
pycon-code-of-conduct
PyCon Korea's code of conduct
Stars: ✭ 24 (-52.94%)
Mutual labels:  coc
macsimus
A custom editor based on NeoVim and inspired from Vim and Emacs to maximise productivity.
Stars: ✭ 18 (-64.71%)
Mutual labels:  coc
vim-nayvy
🌑 Enriching python coding in Vim 🐍
Stars: ✭ 66 (+29.41%)
Mutual labels:  coc
coc-elixir
Elixir language server extension based on elixir-ls for coc.nvim
Stars: ✭ 150 (+194.12%)
Mutual labels:  coc
deoplete-julia
deoplete.nvim source for julia. Providing julia Syntax Completions for julia, in Neovim (deprecated for julia 0.6+)
Stars: ✭ 12 (-76.47%)
Mutual labels:  deoplete
ibpt
Tabela De Olho no Imposto - IBPT em JSON usando CDN
Stars: ✭ 45 (-11.76%)
Mutual labels:  ncm
deoplete-solargraph
deoplete.nvim source for Ruby with solargraph.
Stars: ✭ 73 (+43.14%)
Mutual labels:  deoplete

clj-async.nvim

Provides async clojure completion for:

Trying to use Fireplace's omnicompletion with auto-complete is painfully slow at times, making typing blocked. Using this module will be faster as it does not block, it runs in it's own thread.

Installation

CIDER

For this plugin to work, your nREPL must have CIDER available. You can install it for lein and boot.

Deoplete

Follow the install instructions for deoplete.nvim. Then just include with your favourite plugin manager, mine is vim-plug

Plug 'clojure-vim/async-clj-omni'

You also need to include the following line in your init.vim:

call deoplete#custom#option('keyword_patterns', {'clojure': '[\w!$%&*+/:<=>?@\^_~\-\.#]*'})

Nvim Completion Manager 2

  1. Follow the install instructions for ncm2.
  2. Add this plugin using your favourite plugin manager,
    Plug 'clojure-vim/async-clj-omni'

asyncomplete.vim

Registration:

au User asyncomplete_setup call asyncomplete#register_source({
    \ 'name': 'async_clj_omni',
    \ 'whitelist': ['clojure'],
    \ 'completor': function('async_clj_omni#sources#complete'),
    \ })

coc.nvim

  1. Follow the install instructions for coc.nvim.
  2. Add this plugin using your favourite plugin manager,
    Plug 'clojure-vim/async-clj-omni'

nvim-cmp

  1. Follow the install instructions for nvim-cmp.
  2. Add { name = 'async_clj_omni' }, a complete example:
    cmp.setup({
      sources = {
        { name = 'async_clj_omni' },
      }
    })

Developing

Deoplete

A few snippets and tidbits for development:

:call deoplete#custom#set('async_clj', 'debug_enabled', 1)
:call deoplete#enable_logging("DEBUG", "/tmp/deopletelog")

Then you can this command to watch debug statements:

$ tail -f /tmp/deopletelog

Debug statements can be made in the source via:

self.debug(msg)

Nvim Completion Manager

NVIM_PYTHON_LOG_FILE=logfile NVIM_PYTHON_LOG_LEVEL=DEBUG nvim

FAQ

  1. Why do you include nrepl-python-client via submodule.

    I made the decision that it was more complex to have users try and manage a version of nrepl-python-client, than it was for them to "just" have it included. In an ideal world, I'd be able to use virtualenv with the Python/Neovim, but this isn't currently a realistic expectation for all users to be able to use.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].