project: remove unused files
- Removes unused files. - Delete the kickstart project README. - Documents the fact that the documentation is missing. Co-Authored-by: iGor milhit <igor@milhit.ch>main
parent
cb115340d5
commit
721a2c02a8
|
@ -1,20 +0,0 @@
|
||||||
# `vim-plug` plugins
|
|
||||||
plugged/*
|
|
||||||
autoload
|
|
||||||
|
|
||||||
# netrw
|
|
||||||
.netrwhist
|
|
||||||
|
|
||||||
<<<<<<< HEAD
|
|
||||||
# spell *.spl
|
|
||||||
=======
|
|
||||||
# spell
|
|
||||||
*.spl
|
|
||||||
>>>>>>> c47fcd7 (gitignore: try to improve the spell rule)
|
|
||||||
spell/*
|
|
||||||
|
|
||||||
tags
|
|
||||||
test.sh
|
|
||||||
.luarc.json
|
|
||||||
nvim
|
|
||||||
lazy-lock.json
|
|
19
LICENSE.md
19
LICENSE.md
|
@ -1,19 +0,0 @@
|
||||||
MIT License
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all
|
|
||||||
copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
152
README.md
152
README.md
|
@ -1,146 +1,14 @@
|
||||||
# kickstart.nvim
|
---
|
||||||
|
title: My neovim setup
|
||||||
|
date: 2024-05-16T12:16:06+0200
|
||||||
|
id: 20240516121606
|
||||||
|
tags: [neovim, editor, configuration, README]
|
||||||
|
---
|
||||||
|
|
||||||
### Introduction
|
# [Neovim setup][1]
|
||||||
|
|
||||||
A starting point for Neovim that is:
|
Missing documentation. :-P
|
||||||
|
|
||||||
* Small
|
<!-- references -->
|
||||||
* Single-file (with examples of moving to multi-file)
|
|
||||||
* Documented
|
|
||||||
* Modular
|
|
||||||
|
|
||||||
This repo is meant to be used as by **YOU** to begin your Neovim journey; remove the things you don't use and add what you miss.
|
[1]: ./README.md
|
||||||
|
|
||||||
Kickstart.nvim targets *only* the latest ['stable'](https://github.com/neovim/neovim/releases/tag/stable) and latest ['nightly'](https://github.com/neovim/neovim/releases/tag/nightly) of Neovim. If you are experiencing issues, please make sure you have the latest versions.
|
|
||||||
|
|
||||||
Distribution Alternatives:
|
|
||||||
- [LazyVim](https://www.lazyvim.org/): A delightful distribution maintained by @folke (the author of lazy.nvim, the package manager used here)
|
|
||||||
|
|
||||||
### Installation
|
|
||||||
|
|
||||||
* Backup your previous configuration (if any exists)
|
|
||||||
|
|
||||||
### Archive Installation
|
|
||||||
* On the home/landing page for the project find the blue "<> CODE" button click it and select Local > Download ZIP.
|
|
||||||
* Extract the archive to:
|
|
||||||
`~/.config/nvim` (Linux)
|
|
||||||
`~/.config/nvim` (MacOS)
|
|
||||||
`%userprofile%\AppData\Local\nvim-data\` (Windows)
|
|
||||||
* Ensure your extraction method did not extract with a parent folder. For example in ~/.config/nvim you should have init.lua not another folder called kickstart.nvim.
|
|
||||||
|
|
||||||
### Git Clone Installation
|
|
||||||
* From a terminal cd/dir to:
|
|
||||||
`~/.config/nvim` (Linux)
|
|
||||||
`~/.config/nvim` (MacOS)
|
|
||||||
`%userprofile%\AppData\Local\nvim\` (Windows)
|
|
||||||
|
|
||||||
* run: `git clone https://github.com/nvim-lua/kickstart.nvim.git ~/.config/nvim` OR: `gh repo clone nvim-lua/kickstart.nvim`
|
|
||||||
* Run Neovim (from terminal or shortcut) and allow lazy.nvim to download files and set up the basics.
|
|
||||||
* Once the setup is complete, restart Neovim.
|
|
||||||
* **You're ready to go!**
|
|
||||||
|
|
||||||
* (Recommended/Optional) Fork this repo (so that you have your own copy that you can modify).
|
|
||||||
* Clone the kickstart repo into `$HOME/.config/nvim/` (Linux/Mac) or `%userprofile%\AppData\Local\nvim-data\` (Windows)
|
|
||||||
* If you don't want to include it as a git repo, you can just clone it and then move the files to this location
|
|
||||||
|
|
||||||
Additional system requirements:
|
|
||||||
- Make sure to review the readmes of the plugins if you are experiencing errors. In particular:
|
|
||||||
- [ripgrep](https://github.com/BurntSushi/ripgrep#installation) is required for multiple [telescope](https://github.com/nvim-telescope/telescope.nvim#suggested-dependencies) pickers.
|
|
||||||
- See [Windows Installation](#Windows-Installation) if you have trouble with `telescope-fzf-native`
|
|
||||||
|
|
||||||
### Configuration And Extension
|
|
||||||
|
|
||||||
* Inside of your copy, feel free to modify any file you like! It's your copy!
|
|
||||||
* Feel free to change any of the default options in `init.lua` to better suit your needs.
|
|
||||||
* For adding plugins, there are 3 primary options:
|
|
||||||
* Add new configuration in `lua/custom/plugins/*` files, which will be auto sourced using `lazy.nvim`
|
|
||||||
* Modify `init.lua` with additional plugins.
|
|
||||||
* Include the `lua/kickstart/plugins/*` files in your configuration.
|
|
||||||
|
|
||||||
You can also merge updates/changes from the repo back into your fork, to keep up-to-date with any changes for the default configuration.
|
|
||||||
|
|
||||||
#### Example: Adding an autopairs plugin
|
|
||||||
|
|
||||||
In the file: `lua/custom/plugins/autopairs.lua`, add:
|
|
||||||
|
|
||||||
```lua
|
|
||||||
-- File: lua/custom/plugins/autopairs.lua
|
|
||||||
|
|
||||||
return {
|
|
||||||
"windwp/nvim-autopairs",
|
|
||||||
-- Optional dependency
|
|
||||||
dependencies = { 'hrsh7th/nvim-cmp' },
|
|
||||||
config = function()
|
|
||||||
require("nvim-autopairs").setup {}
|
|
||||||
-- If you want to automatically add `(` after selecting a function or method
|
|
||||||
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
|
|
||||||
local cmp = require('cmp')
|
|
||||||
cmp.event:on(
|
|
||||||
'confirm_done',
|
|
||||||
cmp_autopairs.on_confirm_done()
|
|
||||||
)
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
This will automatically install [windwp/nvim-autopairs](https://github.com/windwp/nvim-autopairs) and enable it on startup. For more information, see documentation for [lazy.nvim](https://github.com/folke/lazy.nvim).
|
|
||||||
|
|
||||||
#### Example: Adding a file tree plugin
|
|
||||||
|
|
||||||
In the file: `lua/custom/plugins/filetree.lua`, add:
|
|
||||||
|
|
||||||
```lua
|
|
||||||
-- Unless you are still migrating, remove the deprecated commands from v1.x
|
|
||||||
vim.cmd([[ let g:neo_tree_remove_legacy_commands = 1 ]])
|
|
||||||
|
|
||||||
return {
|
|
||||||
"nvim-neo-tree/neo-tree.nvim",
|
|
||||||
version = "*",
|
|
||||||
dependencies = {
|
|
||||||
"nvim-lua/plenary.nvim",
|
|
||||||
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
|
|
||||||
"MunifTanjim/nui.nvim",
|
|
||||||
},
|
|
||||||
config = function ()
|
|
||||||
require('neo-tree').setup {}
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
This will install the tree plugin and add the command `:Neotree` for you. You can explore the documentation at [neo-tree.nvim](https://github.com/nvim-neo-tree/neo-tree.nvim) for more information.
|
|
||||||
|
|
||||||
### Contribution
|
|
||||||
|
|
||||||
Pull-requests are welcome. The goal of this repo is not to create a Neovim configuration framework, but to offer a starting template that shows, by example, available features in Neovim. Some things that will not be included:
|
|
||||||
|
|
||||||
* Custom language server configuration (null-ls templates)
|
|
||||||
* Theming beyond a default colorscheme necessary for LSP highlight groups
|
|
||||||
|
|
||||||
Each PR, especially those which increase the line count, should have a description as to why the PR is necessary.
|
|
||||||
|
|
||||||
### FAQ
|
|
||||||
|
|
||||||
* What should I do if I already have a pre-existing neovim configuration?
|
|
||||||
* You should back it up, then delete all files associated with it.
|
|
||||||
* This includes your existing init.lua and the neovim files in `~/.local` which can be deleted with `rm -rf ~/.local/share/nvim/`
|
|
||||||
* You may also want to look at the [migration guide for lazy.nvim](https://github.com/folke/lazy.nvim#-migration-guide)
|
|
||||||
* What if I want to "uninstall" this configuration:
|
|
||||||
* See [lazy.nvim uninstall](https://github.com/folke/lazy.nvim#-uninstalling) information
|
|
||||||
* Are there any cool videos about this plugin?
|
|
||||||
* Current iteration of kickstart (coming soon)
|
|
||||||
* Here is one about the previous iteration of kickstart: [video introduction to Kickstart.nvim](https://youtu.be/stqUbv-5u2s). Note the install via init.lua no longer works as specified. Please follow the install instructions in this file instead as they're up to date.
|
|
||||||
|
|
||||||
### Windows Installation
|
|
||||||
|
|
||||||
Installation may require installing build tools, and updating the run command for `telescope-fzf-native`
|
|
||||||
|
|
||||||
See `telescope-fzf-native` documentation for [more details](https://github.com/nvim-telescope/telescope-fzf-native.nvim#installation)
|
|
||||||
|
|
||||||
This requires:
|
|
||||||
|
|
||||||
- Install CMake, and the Microsoft C++ Build Tools on Windows
|
|
||||||
|
|
||||||
```lua
|
|
||||||
{'nvim-telescope/telescope-fzf-native.nvim', build = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build' }
|
|
||||||
```
|
|
||||||
|
|
289
init.vim.save
289
init.vim.save
|
@ -1,289 +0,0 @@
|
||||||
" plugins (vim-plug)
|
|
||||||
call plug#begin('~/.config/nvim/plugged')
|
|
||||||
Plug 'sheerun/vim-polyglot' " Many languages syntax support. Should be on top to be overwritten by pandoc
|
|
||||||
Plug 'tpope/vim-sensible' " Default sensible settings
|
|
||||||
Plug 'vim-pandoc/vim-pandoc' " Pandoc support
|
|
||||||
Plug 'vim-pandoc/vim-pandoc-syntax' " Markdown syntax support
|
|
||||||
Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app & yarn install' } " Markdown preview
|
|
||||||
Plug 'jakewvincent/mkdnflow.nvim' " Create, follow, display links in a directory of md files
|
|
||||||
Plug 'dhruvasagar/vim-table-mode', { 'on': 'TableModeEnable' } " Helper for table in markdown
|
|
||||||
Plug 'junegunn/goyo.vim', { 'on': 'Goyo' } " Distraction free mode for writing
|
|
||||||
Plug 'junegunn/limelight.vim', { 'on': 'Goyo' } " Dime the color of the text that is not being updated
|
|
||||||
Plug 'lervag/vimtex' " Filetype and syntax plugin for LaTeX files
|
|
||||||
Plug 'dpelle/vim-Grammalecte' " French ortho/grammar spelling
|
|
||||||
Plug 'arcticicestudio/nord-vim' " Nord color scheme
|
|
||||||
Plug 'sonph/onehalf', { 'rtp': 'vim' } " OneHalf color scheme
|
|
||||||
Plug 'sainnhe/edge' " Edge color schemes
|
|
||||||
Plug 'vim-airline/vim-airline' " Fancy bottom line in vim/neovim
|
|
||||||
Plug 'vim-airline/vim-airline-themes' " Themes for vim-airlines
|
|
||||||
Plug 'jiangmiao/auto-pairs' " Pairs autocomplete
|
|
||||||
Plug 'tpope/vim-surround' " To manipulate surroundings
|
|
||||||
Plug 'tpope/vim-unimpaired' " Toggle shortcut
|
|
||||||
Plug 'tpope/vim-commentary' " Easy commenting
|
|
||||||
Plug 'tpope/vim-repeat' " Add repeat support for plugin mapping
|
|
||||||
Plug 'osyo-manga/vim-over', { 'on': 'OverCommandLine' } " Search Multiple Highlighting
|
|
||||||
Plug 'scrooloose/nerdtree' " Side window files navigation
|
|
||||||
Plug 'tpope/vim-fugitive' " Git commands, useful for other plugins such as nerdtree or fzf
|
|
||||||
Plug 'Xuyuanp/nerdtree-git-plugin' " To see new or modified files in the nerdtree window
|
|
||||||
Plug 'https://github.com/editorconfig/editorconfig-vim' " Support of '.editorconfig' files
|
|
||||||
Plug 'shmargum/vim-sass-colors' " Highlight sass/scss/less/css colors and color variables
|
|
||||||
" Auto completion
|
|
||||||
Plug 'neoclide/coc.nvim', {'branch': 'release'}
|
|
||||||
Plug 'pappasam/coc-jedi', { 'do': 'yarn install --frozen-lockfile && yarn build' } "Python, using jedi
|
|
||||||
Plug 'stsewd/isort.nvim', { 'do': ':UpdateRemotePlugins' }
|
|
||||||
Plug 'vitalk/vim-simple-todo' " Allow to manage todo list easily
|
|
||||||
" Search
|
|
||||||
Plug 'jremmen/vim-ripgrep' " Use ripgrep as vimgrep
|
|
||||||
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } " Fuzzy search, ensure fzf is fresh installed
|
|
||||||
Plug 'junegunn/fzf.vim' " fzf for vim/neovim
|
|
||||||
Plug 'stsewd/fzf-checkout.vim' " Fuzzy search in git branches
|
|
||||||
Plug 'ryanoasis/vim-devicons' " Add icons to plugins
|
|
||||||
Plug 'chrisbra/csv.vim' " To diplay and manage CSV files
|
|
||||||
Plug 'akinsho/toggleterm.nvim', {'tag' : '2.*'}
|
|
||||||
call plug#end()
|
|
||||||
|
|
||||||
" Format indentation
|
|
||||||
if has("autocmd")
|
|
||||||
filetype plugin indent on
|
|
||||||
endif
|
|
||||||
|
|
||||||
" add some tags for html indentations
|
|
||||||
let g:html_indent_inctags="html,body,head,tbody"
|
|
||||||
|
|
||||||
set smartindent
|
|
||||||
set tabstop=4
|
|
||||||
set expandtab
|
|
||||||
set softtabstop=4
|
|
||||||
set shiftwidth=4
|
|
||||||
set showcmd " Show (partial) command in status line.
|
|
||||||
set showmode " Show indication of having changed modes
|
|
||||||
set showmatch " Show matching brackets.
|
|
||||||
set ignorecase " Do case insensitive matching
|
|
||||||
set smartcase " Do smart case matching
|
|
||||||
let g:rg_highlight='true' " Activate ripgrep Highlighting
|
|
||||||
nnoremap <silent> <C-l> :nohlsearch<CR><C-l> " set C-l to :nohlsearch
|
|
||||||
set autowrite " Automatically save before commands like :next and :make
|
|
||||||
set hidden " Hide buffers when they are abandoned
|
|
||||||
set mouse=a " Enable mouse usage (all modes)
|
|
||||||
set linebreak " Line wrap
|
|
||||||
set tw=79 " Lines longer than 79 chars will be wrapped
|
|
||||||
autocmd FileType gitcommit set textwidth=72 " Wrap lines longer than 72 chars for git messages
|
|
||||||
set colorcolumn=+1 " Colors the tw+1 column
|
|
||||||
autocmd FileType gitcommit set colorcolumn+=51 " Add a colored column at 51 chars for git message titles
|
|
||||||
set number " Line numbering
|
|
||||||
set cursorline " Color the cursor line
|
|
||||||
set modeline " Support modelines
|
|
||||||
set termguicolors
|
|
||||||
|
|
||||||
" Do not keep history when opening files on autofs mounted directories
|
|
||||||
set shada+=r/home/igor/net
|
|
||||||
|
|
||||||
" Terminal buffer options
|
|
||||||
" Start terminal buffer without line numbering
|
|
||||||
au TermOpen * setlocal listchars= nonumber norelativenumber
|
|
||||||
|
|
||||||
" Spelling activated, by default for French and English
|
|
||||||
set spell
|
|
||||||
set spelllang=fr,en
|
|
||||||
" Specific spelling configuration for git commit messages
|
|
||||||
autocmd FileType gitcommit setlocal spell
|
|
||||||
autocmd FileType gitcommit setlocal spelllang=en
|
|
||||||
" Path for grammalecte-cli to get grammar check in French
|
|
||||||
let g:grammalecte_cli_py='/usr/bin/grammalecte-cli'
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Status line options
|
|
||||||
set statusline^=%{coc#status()}
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Fold
|
|
||||||
set foldmethod=syntax
|
|
||||||
set foldlevel=1
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Default filetype configuration
|
|
||||||
|
|
||||||
" Markdown
|
|
||||||
autocmd FileType pandoc set tabstop=2
|
|
||||||
autocmd FileType pandoc set softtabstop=2
|
|
||||||
autocmd FileType pandoc set shiftwidth=2
|
|
||||||
|
|
||||||
" JSON
|
|
||||||
" Consider `.jsonld` as JSON
|
|
||||||
autocmd BufNewFile,BufRead *.jsonld set filetype=json
|
|
||||||
autocmd FileType json setlocal foldmethod=syntax
|
|
||||||
autocmd FileType json set foldlevel=2
|
|
||||||
autocmd FileType json set tabstop=2
|
|
||||||
autocmd FileType json set softtabstop=2
|
|
||||||
au FileType json set shiftwidth=2
|
|
||||||
|
|
||||||
" HTML
|
|
||||||
autocmd FileType html set tabstop=2
|
|
||||||
autocmd FileType html set softtabstop=2
|
|
||||||
autocmd FileType html set shiftwidth=2
|
|
||||||
au FileType xml setlocal foldmethod=indent
|
|
||||||
autocmd FileType xml set foldlevel=2
|
|
||||||
|
|
||||||
" XML
|
|
||||||
let g:xml_syntax_folding=3
|
|
||||||
au FileType xml setlocal foldmethod=syntax
|
|
||||||
autocmd FileType xml set foldlevel=1
|
|
||||||
|
|
||||||
" Use the system clipboard
|
|
||||||
set clipboard+=unnamedplus
|
|
||||||
|
|
||||||
" Airline
|
|
||||||
let g:airline_powerline_fonts=1
|
|
||||||
let g:airline#extensions#wordcount#filetypes='pandoc\|text\|' "Add support when pandoc is activated
|
|
||||||
let g:airline_theme='edge'
|
|
||||||
|
|
||||||
" Vim-table-mode. Set the table separator
|
|
||||||
let g:table_mode_corner='|'
|
|
||||||
|
|
||||||
" NERDTree. By default, NERDTree is open when no file is provided when launching vim/neovim
|
|
||||||
" autocmd StdinReadPre * let s:std_in=1
|
|
||||||
" autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif
|
|
||||||
let g:NERDTreeWinSize=40
|
|
||||||
|
|
||||||
" vim-json, don't conceal
|
|
||||||
let g:vim_json_syntax_conceal=0
|
|
||||||
|
|
||||||
" Pandoc
|
|
||||||
" Autoformatting with hardwrap
|
|
||||||
let g:pandoc#formatting#mode="hA"
|
|
||||||
" ctrl+s switch to softwrap
|
|
||||||
nnoremap <C-s> :call pandoc#formatting#UseSoftWraps()
|
|
||||||
" ctrl+h switch to hardwrap
|
|
||||||
nnoremap <C-h> :call pandoc#formatting#UseHardWraps()
|
|
||||||
" ctrl+t toggle autoformat (mainly to deactivate it when necessary)
|
|
||||||
nnoremap <C-t> :call pandoc#formatting#ToggleAutoformat()
|
|
||||||
let g:mkdp_filetypes = ['markdown', 'pandoc', 'pandoc.markdown']
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" autocompletion, mainly coc configuration
|
|
||||||
" as inspired from the project README
|
|
||||||
|
|
||||||
" Give more space for displaying messages
|
|
||||||
set cmdheight=2
|
|
||||||
" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
|
|
||||||
" delays and poor user experience
|
|
||||||
set updatetime=300
|
|
||||||
|
|
||||||
" Always show the signcolumn, otherwise it would shift the text each time
|
|
||||||
" diagnostics appear/become resolved.
|
|
||||||
if has("patch-8.1.1564")
|
|
||||||
" Recently vim can merge signcolumn and number column into one
|
|
||||||
set signcolumn=number
|
|
||||||
else
|
|
||||||
set signcolumn=yes
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Use `[g` and `]g` to navigate diagnostics
|
|
||||||
" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list.
|
|
||||||
nmap <silent> [g <Plug>(coc-diagnostic-prev)
|
|
||||||
nmap <silent> ]g <Plug>(coc-diagnostic-next)
|
|
||||||
|
|
||||||
" GoTo code navigation.
|
|
||||||
nmap <silent> gd <Plug>(coc-definition)
|
|
||||||
nmap <silent> gy <Plug>(coc-type-definition)
|
|
||||||
nmap <silent> gi <Plug>(coc-implementation)
|
|
||||||
nmap <silent> gr <Plug>(coc-references)
|
|
||||||
|
|
||||||
" Use K to show documentation in preview window.
|
|
||||||
nnoremap <silent> K :call <SID>show_documentation()<CR>
|
|
||||||
|
|
||||||
function! s:show_documentation()
|
|
||||||
if (index(['vim','help'], &filetype) >= 0)
|
|
||||||
execute 'h '.expand('<cword>')
|
|
||||||
elseif (coc#rpc#ready())
|
|
||||||
call CocActionAsync('doHover')
|
|
||||||
else
|
|
||||||
execute '!' . &keywordprg . " " . expand('<cword>')
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Install missing coc extensions
|
|
||||||
let g:coc_global_extensions = ['coc-html', 'coc-json', 'coc-css', 'coc-markdownlint', 'coc-git', 'coc-vimtex', 'coc-yaml', 'coc-esbonio']
|
|
||||||
autocmd FileType scss setl iskeyword+=@-@ " Add @ to iskeyword option
|
|
||||||
let g:coc_filetype_map = { 'pandoc': 'markdown' } " Allow markdownlint to recognized pandoc filetype
|
|
||||||
|
|
||||||
" Set the Semantic Menu highlight group
|
|
||||||
hi CocMenuSel ctermbg=252
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Python provider in a pyenv
|
|
||||||
let g:python3_host_prog='$HOME/.pyenv/versions/neovim3/bin/python'
|
|
||||||
|
|
||||||
" Imports sorting
|
|
||||||
let g:isort_command='isort'
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Vimtex configuration
|
|
||||||
let g:vimtex_compiler_method = 'tectonic'
|
|
||||||
let g:vimtex_compiler_tectonic = {}
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Key bindings for FZF
|
|
||||||
nnoremap <leader>gf :GFiles<CR>
|
|
||||||
nnoremap <leader>gs :GFiles?<CR>
|
|
||||||
nnoremap <leader>h :History<CR>
|
|
||||||
nnoremap <leader>hc :History:<CR>
|
|
||||||
nnoremap <leader>hs :History/<CR>
|
|
||||||
nnoremap <leader>l :Lines<CR>
|
|
||||||
nnoremap <leader>bl :BLines<CR>
|
|
||||||
nnoremap <leader>c :Commits<CR>
|
|
||||||
nnoremap <leader>bc :BCommits<CR>
|
|
||||||
nnoremap <leader>? :Helptags<CR>
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
let g:goyo_width=85
|
|
||||||
|
|
||||||
" Integrate Limelight into Goyo
|
|
||||||
autocmd! User GoyoEnter Limelight
|
|
||||||
autocmd! User GoyoLeave Limelight!
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Syntax coloration and color theme
|
|
||||||
syntax enable
|
|
||||||
set background=dark
|
|
||||||
" let g:edge_style = "light"
|
|
||||||
colorscheme nord
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Snippets
|
|
||||||
autocmd BufNewFile *.html 0r ~/.config/nvim/snippets/boilerplate.html
|
|
||||||
autocmd BufNewFile *.md 0r ~/.config/nvim/snippets/template.md
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" Terminal: use zsh
|
|
||||||
set shell=/usr/bin/zsh
|
|
||||||
lua require("toggleterm").setup()
|
|
||||||
|
|
||||||
" #########################################
|
|
||||||
" #########################################
|
|
||||||
" mkdnflow configuration
|
|
||||||
lua <<EOF
|
|
||||||
require('mkdnflow').setup({
|
|
||||||
-- Config goes here; leave blank for defaults
|
|
||||||
links = {
|
|
||||||
conceal = true
|
|
||||||
},
|
|
||||||
modules = {
|
|
||||||
folds = false,
|
|
||||||
lists = false,
|
|
||||||
tables = false
|
|
||||||
-- TODO: evaluate if it could replace vim-table
|
|
||||||
}
|
|
||||||
})
|
|
||||||
EOF
|
|
|
@ -1,36 +0,0 @@
|
||||||
" plugins (vim-plug)
|
|
||||||
call plug#begin('~/.config/nvim/plugged')
|
|
||||||
Plug 'arcticicestudio/nord-vim' " Nord color scheme
|
|
||||||
Plug 'sheerun/vim-polyglot'
|
|
||||||
Plug 'tpope/vim-sensible' " default settings
|
|
||||||
Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app & yarn install' } " Markdown preview
|
|
||||||
Plug 'vim-pandoc/vim-pandoc' " pandoc support
|
|
||||||
Plug 'vim-pandoc/vim-pandoc-syntax' " markdown syntax support
|
|
||||||
Plug 'vim-airline/vim-airline'
|
|
||||||
Plug 'vim-airline/vim-airline-themes'
|
|
||||||
call plug#end()
|
|
||||||
|
|
||||||
" Filetype detection
|
|
||||||
filetype plugin on
|
|
||||||
|
|
||||||
" Format indentation
|
|
||||||
if has("autocmd")
|
|
||||||
filetype plugin indent on
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Python provider in a pyenv
|
|
||||||
let g:python3_host_prog='/home/igor/.pyenv/versions/neovim3/bin/python'
|
|
||||||
|
|
||||||
" Pandoc
|
|
||||||
let g:pandoc#formatting#mode = "hA"
|
|
||||||
let g:mkdp_filetypes = ['markdown', 'pandoc', 'pandoc.markdown'] " filetypes for markdown preview
|
|
||||||
|
|
||||||
" airline
|
|
||||||
let g:airline_powerline_fonts = 1
|
|
||||||
let g:airline#extensions#wordcount#filetypes = 'pandoc\|text\|' "Add support when pandoc is activated
|
|
||||||
let g:airline_theme='nord'
|
|
||||||
|
|
||||||
" Syntax coloration and color theme
|
|
||||||
syntax enable
|
|
||||||
set background=dark
|
|
||||||
colorscheme nord
|
|
|
@ -1,22 +0,0 @@
|
||||||
certifi
|
|
||||||
charset-normalizer
|
|
||||||
docstring-to-markdown
|
|
||||||
flake8
|
|
||||||
greenlet
|
|
||||||
idna
|
|
||||||
jedi
|
|
||||||
jedi-language-server
|
|
||||||
mccabe
|
|
||||||
msgpack
|
|
||||||
neovim
|
|
||||||
parso
|
|
||||||
pycodestyle
|
|
||||||
pydantic
|
|
||||||
pyflakes
|
|
||||||
pygls
|
|
||||||
pygrammalecte
|
|
||||||
pynvim
|
|
||||||
requests
|
|
||||||
typeguard
|
|
||||||
typing_extensions
|
|
||||||
urllib3
|
|
Loading…
Reference in New Issue