mirror of
https://github.com/LunarVim/LunarVim.git
synced 2024-09-20 18:45:08 +02:00
update formatters
This commit is contained in:
parent
0ae61fee04
commit
896f0e456c
3 changed files with 63 additions and 32 deletions
70
README.md
70
README.md
|
@ -1,10 +1,11 @@
|
|||
# NVCode
|
||||
|
||||
If you are looking for my old configs checkout the two snapshot branches on this repo, there is one for CoC and one for Native LSP
|
||||
If you are looking for my old configs checkout the two snapshot branches
|
||||
on this repo, there is one for CoC and one for Native LSP
|
||||
|
||||
## Get the latest version of Neovim
|
||||
## Get the latest version of Neovim
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
cd ~
|
||||
sudo rm -r neovim
|
||||
git clone https://github.com/neovim/neovim
|
||||
|
@ -16,17 +17,18 @@ sudo rm -r neovim
|
|||
|
||||
## VSCode support
|
||||
|
||||
After installing the [Neovim extension](https://github.com/asvetliakov/vscode-neovim) in VSCode
|
||||
After installing the [Neovim
|
||||
extension](https://github.com/asvetliakov/vscode-neovim) in VSCode
|
||||
|
||||
I recommend using this alongside the VSCode which-key extension
|
||||
|
||||
Along with some of my config files you can find in utils/vscode_config
|
||||
Along with some of my config files you can find in utils/vscode\_config
|
||||
|
||||
Point the nvim path to your `nvim` binary
|
||||
|
||||
Point your `init.lua` path to:
|
||||
|
||||
```vim
|
||||
``` vim
|
||||
$HOME/.config/nvim/lua/nv-vscode/init.lua
|
||||
```
|
||||
|
||||
|
@ -36,21 +38,22 @@ $HOME/.config/nvim/lua/nv-vscode/init.lua
|
|||
|
||||
- Ubuntu
|
||||
|
||||
```bash
|
||||
```bash
|
||||
sudo apt install xsel
|
||||
```
|
||||
```
|
||||
|
||||
- Arch
|
||||
|
||||
```bash
|
||||
```bash
|
||||
sudo pacman -S xsel
|
||||
```
|
||||
```
|
||||
|
||||
## LSP
|
||||
|
||||
Some example language servers, if you just install them they will work with this config
|
||||
Some example language servers, if you just install them they will work
|
||||
with this config
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
npm i -g pyright
|
||||
npm i -g bash-language-server
|
||||
npm install -g vscode-css-languageserver-bin
|
||||
|
@ -61,23 +64,23 @@ npm install -g typescript typescript-language-server
|
|||
npm install -g vscode-json-languageserver
|
||||
npm install -g vim-language-server
|
||||
npm install -g yaml-language-server
|
||||
npm install markdownlint --save-dev
|
||||
```
|
||||
|
||||
For a more in depth LSP support: [link](https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md)
|
||||
|
||||
|
||||
For a more in depth LSP support:
|
||||
[link](https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md)
|
||||
|
||||
## efm server is slow on close
|
||||
|
||||
Install the latest with:
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
go get github.com/mattn/efm-langserver@HEAD
|
||||
```
|
||||
|
||||
## Useful Programs
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
ranger
|
||||
ueberzug
|
||||
fd
|
||||
|
@ -93,7 +96,7 @@ neovim-remote
|
|||
|
||||
**Python**
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
pyright
|
||||
flake8
|
||||
yapf
|
||||
|
@ -101,7 +104,7 @@ yapf
|
|||
|
||||
**Lua**
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
ninja
|
||||
lua-format
|
||||
sumneko-lua
|
||||
|
@ -109,26 +112,33 @@ sumneko-lua
|
|||
|
||||
**Yaml, Json, Javascript, HTML, CSS**
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
prettier
|
||||
```
|
||||
|
||||
**Markdown**
|
||||
|
||||
``` bash
|
||||
pandoc
|
||||
```
|
||||
|
||||
## Vim Gists
|
||||
|
||||
To use vim-gists you will need to configure the following:
|
||||
|
||||
```bash
|
||||
``` bash
|
||||
git config --global github.user <username>
|
||||
```
|
||||
|
||||
## Snippets
|
||||
|
||||
If you are looking for snippets checkout this github topic: [Snippet Topic](https://github.com/topics/vscode-snippets)
|
||||
If you are looking for snippets checkout this github topic: [Snippet
|
||||
Topic](https://github.com/topics/vscode-snippets)
|
||||
|
||||
## TODO
|
||||
|
||||
|
||||
**HIGH PRIORITY**
|
||||
|
||||
- learn nvim-dap in depth
|
||||
- add utf8 line col and spaces (maybe blame)
|
||||
- potentially switch to dashboard
|
||||
|
@ -136,12 +146,15 @@ If you are looking for snippets checkout this github topic: [Snippet Topic](http
|
|||
- learn what opt is
|
||||
|
||||
**LOW PRIORITY**
|
||||
- Implement what I can from this java config: [link](https://github.com/mfussenegger/nvim-jdtls/wiki/Sample-Configurations)
|
||||
- better ui for code actions
|
||||
- formatting
|
||||
- setup junit tests for java
|
||||
|
||||
- Implement what I can from this java config:
|
||||
[link](https://github.com/mfussenegger/nvim-jdtls/wiki/Sample-Configurations)
|
||||
- better ui for code actions - formatting
|
||||
- setup junit tests for java
|
||||
- neovim lightbulb config
|
||||
- better autoimport
|
||||
- can' find global bianry for markdownlint
|
||||
- spell not activated in readme Markdown
|
||||
- list all binaries needed for functionality
|
||||
- keep and eye on indent guides plugin for thin lines
|
||||
- look into autoinstall lsp
|
||||
|
@ -149,6 +162,7 @@ If you are looking for snippets checkout this github topic: [Snippet Topic](http
|
|||
- get logo
|
||||
- configure neogit
|
||||
- toggle virtual text diagnostics
|
||||
- move language servers not installed with npm to neovim local share location
|
||||
- move language servers not installed with npm to neovim local share
|
||||
location
|
||||
- json config file (luajson)
|
||||
- better install script, support both nvim and nvcode paths
|
||||
|
|
|
@ -36,12 +36,25 @@ local shfmt = {
|
|||
formatStdin = true
|
||||
}
|
||||
|
||||
local markdownlint = {
|
||||
-- TODO default to global lintrc
|
||||
-- lintcommand = 'markdownlint -s -c ./markdownlintrc',
|
||||
lintCommand = 'markdownlint -s',
|
||||
lintStdin = true,
|
||||
lintFormats = { '%f:%l %m', '%f:%l:%c %m', '%f: %l: %m' }
|
||||
}
|
||||
|
||||
local markdownPandocFormat = {
|
||||
formatCommand = 'pandoc -f markdown -t gfm -sp --tab-stop=2',
|
||||
formatStdin = true
|
||||
}
|
||||
|
||||
|
||||
|
||||
require"lspconfig".efm.setup {
|
||||
-- init_options = {initializationOptions},
|
||||
init_options = {documentFormatting = true, codeAction = false},
|
||||
filetypes = {"lua", "python", "javascriptreact", "javascript", "sh", "html", "css", "json", "yaml"},
|
||||
filetypes = {"lua", "python", "javascriptreact", "javascript", "sh", "html", "css", "json", "yaml", "markdown"},
|
||||
settings = {
|
||||
rootMarkers = {".git/"},
|
||||
languages = {
|
||||
|
@ -54,11 +67,11 @@ require"lspconfig".efm.setup {
|
|||
css = {prettier},
|
||||
json = {prettier},
|
||||
yaml = {prettier_yaml},
|
||||
-- markdown = {markdownPandocFormat, markdownlint},
|
||||
markdown = {markdownPandocFormat},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
-- TODO turn these eslint and prettier examples into something good
|
||||
-- TODO also shellcheck and shell formatting
|
||||
-- Also find way to toggle format on save
|
||||
-- maybe this will help: https://superuser.com/questions/439078/how-to-disable-autocmd-or-augroup-in-vim
|
||||
|
|
|
@ -32,7 +32,11 @@ nv_utils.define_augroups({
|
|||
{'FileType', 'java', 'luafile ~/.config/nvim/lua/lsp/java-ls.lua'},
|
||||
{'FileType', 'java', 'nnoremap ca <Cmd>lua require(\'jdtls\').code_action()<CR>'},
|
||||
{'FileType', 'java', 'nnoremap ca <Cmd>lua require(\'jdtls\').code_action()<CR>'},
|
||||
{'FileType', 'markdown', 'set wrap'}
|
||||
{'FileType', 'markdown', 'setlocal wrap'},
|
||||
-- {'BufWinEnter', '.sol', 'setlocal filetype=solidity'},
|
||||
{'BufRead', '*.sol', 'setlocal filetype=solidity'},
|
||||
{'BufNewFile', '*.sol', 'setlocal filetype=solidity'}
|
||||
-- autocmd! BufRead,BufNewFile *.{jsx,jx,js} setlocal filetype=javascript.jsx
|
||||
-- {'User', 'GoyoLeave', 'lua require(\'galaxyline\').disable_galaxyline()'},
|
||||
-- {'User', 'GoyoEnter', 'lua require(\'galaxyline\').galaxyline_augroup()'},
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue