Skip to content

Commit

Permalink
Update README.mkd
Browse files Browse the repository at this point in the history
  • Loading branch information
cannorin authored Sep 2, 2022
1 parent 2e385bd commit 71ea450
Showing 1 changed file with 25 additions and 20 deletions.
45 changes: 25 additions & 20 deletions README.mkd
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@ Feel free to [request features and/or file bug reports](https://github.com/ionid
- Required to install and run FsAutoComplete.
- Very useful for command-line development.

* If you are using Vim or Neovim (below version 0.5):
* [LanguageClient-neovim](https://github.com/autozimu/LanguageClient-neovim)
* If you are using Vim or Neovim below version 0.5:
* [autozimu/LanguageClient-neovim](https://github.com/autozimu/LanguageClient-neovim)
- Required to communicate with FsAutoComplete.
* [fzf](https://github.com/junegunn/fzf) (optional)
* [junegunn/fzf](https://github.com/junegunn/fzf) (optional)
- Optional dependency of LanguageClient-neovim.
- Multi-entry selection UI.

Expand Down Expand Up @@ -96,22 +96,23 @@ If you are running Windows, you will have to set the value of `do` to `'powershe

### Install an autocompletion plugin

We recommend using [Shougo/deoplete.nvim](https://github.com/Shougo/deoplete.nvim).
We recommend using [hrsh7th/nvim-cmp](https://github.com/hrsh7th/nvim-cmp), but the setup is a bit complicated.
See [the example](https://github.com/ionide/Ionide-vim/wiki/Configuration-Examples#with-nvim-lspconfig-and-nvim-cmp-for-neovim-05) in our wiki for how to setup nvim-cmp to be used with Ionide-vim.

~~~.vim
if has('nvim')
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
else
Plug 'Shougo/deoplete.nvim'
Plug 'roxma/nvim-yarp'
Plug 'roxma/vim-hug-neovim-rpc'
endif
~~~

If you are using Neovim 0.5+ and *not* using LanguageClient-neovim, you should also install [deoplete-plugins/deoplete-lsp](https://github.com/deoplete-plugins/deoplete-lsp).
[Shougo/deoplete.nvim](https://github.com/Shougo/deoplete.nvim) is an easier alternative, but they say its development is complete and it won't get some features such as heredoc.

~~~.vim
" if you use nvim > 0.5:
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
Plug 'deoplete-plugins/deoplete-lsp'
" otherwise:
Plug 'Shougo/deoplete.nvim'
Plug 'roxma/nvim-yarp'
Plug 'roxma/vim-hug-neovim-rpc'
" also set this in both cases.
let g:deoplete#enable_at_startup = 1
~~~

### Install Ionide-vim
Expand All @@ -136,9 +137,16 @@ Clone Ionide-vim to some runtimepath.

Opening either `*.fs`, `*.fsi` or `*.fsx` files should trigger syntax highlighting and other depending runtime files as well.

### Commands
### LSP features (such as go-to-definition or rename)

Ionide-vim only handles F# specific features of FsAutoComplete, and any other generic features such as "go to definition" and
"rename" are provided by either Neovim or autozimu/LanguageClient-neovim.

Refer to [LanguageClient-neovim](https://github.com/autozimu/LanguageClient-neovim) for features provided via Language Server Protocol.
You should set your key bindings for those features on your own, so please refer to their documentation.
[The examples in our wiki](https://github.com/ionide/Ionide-vim/wiki/Configuration-Examples#with-nvim-lspconfig-and-nvim-cmp-for-neovim-05)
also contains an example bindings for both Neovim and LanguageClient-neovim.

### Commands

To be added as requested for F#-specific features.

Expand Down Expand Up @@ -187,9 +195,6 @@ You can customize the location of FSI, key mappings, etc. See [the documentation

### Settings

Refer to [LanguageClient-neovim's recommended settings](https://github.com/autozimu/LanguageClient-neovim/wiki/Recommended-Settings#recommended-settings)
for features provided via Language Server Protocol.

To be added as requested for F#-specific features.

See some examples in [our wiki](https://github.com/ionide/Ionide-vim/wiki/Configuration-Examples) if you're not sure what you would want to set.
Expand Down

0 comments on commit 71ea450

Please sign in to comment.