Ma config neovim

Cher blog, je suis en train de migrer vers neovim. Voici donc une prise de notes pour la config.

fichier de config

Ça n’est plus .vimrc, maintenant c’est bien rangé dans ~/.config/nvim/init.vim Le miens est constitué ainsi pour le moment :

" me
let g:Author = "Jean-Paul Martoni"
let g:EmailAuthor = "Moi je dit qu'il @ bluff"

" pour avoir le mulot
set mouse=a

"enregistrer sans help
map <F1> :wall<CR>
imap <F1> <ESC>:wall<CR>i

map <F1> :wall<CR>

set textwidth=80

filetype plugin on
" Alternative: use the following to also enable language-dependent indenting.
" filetype plugin indent on

lua require('plugins')

" better tab completion :
set wildmode=longest,list

" my standard tab config
set tabstop=4
set shiftwidth=4
set expandtab

Langage du code : HTML, XML (xml)

Sensibilité à la casse de la recherche

Par défault neovim est sensible à la casse, ce qui n’était pas le cas de mon ancien vim. Par contre si on place une majuscule dans le mot recherché, vim devenait sensible à la casse. C’est le «smartcase». Pour obtenir se comportement il suffit d’ajouter cette ligne à son init.vim :

" case search
set ignorecase smartcase

Copier coller clique milieu

Pour faire fonctionner le copier/coller clique milieu depuis un autre programme il faut ajouter la ligne suivante à son fichier de config :

set clipboard+=unnamedplusLangage du code : JavaScript (javascript)

Par contre pour le moment ça ne fonctionne pas dans l’autre sens (neovim -> autre programme)

Paramètres d’indentations spécifique à un langage

Pour définir mes propres paramètres pour chaque langages j’utilise ftplugin que j’active dans init.vim :

filetype plugin on

Puis j’ajoute mes config dans le fichier de configuration portant le nom du langage. Par exemple, pour avoir des «TAB» transmuté en deux espaces en C++, j’ajoute les lignes suivantes dans le fichier ~./config/nvim/ftplugin/cpp.vim :

set tabstop=2
set shiftwidth=2
set expandtabLangage du code : JavaScript (javascript)

Folding

Pour replier du texte, la doc est par là. Je me suis fait quelques raccourcis dans ~/.config/nvim/init.vim

"folding
map f zfap

Correction orthographique

La config de Vincent-Roger fonctionne parfaitement chez moi.

"~/.config/nvim/init.vim
" spell languages
set spelllang=fr
nnoremap <silent> <C-s> :set spell!<cr>
inoremap <silent> <C-s> <C-O>:set spell!<cr>Langage du code : HTML, XML (xml)

Mapping des chiffres ronds

Les chiffres entourés d’un disque plein en unicode permettent de marquer des références dans un code quand on fait de la doc. C’est bien pratique d’y avoir accès avec le clavier plutôt que de faire des copier/coller incessant.

" mapping des chiffres ronds
imap œ0 ⓿
imap œ1 ➊
imap œ2 ➋
imap œ3 ➌
imap œ4 ➍
imap œ5 ➎
imap œ6 ➏
imap œ7 ➐
imap œ8 ➑
imap œ9 ➒
imap œ10 ➓

Problèmes

Les problèmes que j’ai encore à résoudre sont :

  • Je n’ai pas l’historique du shell quand je relance une commande avec «:!»

Ce contenu a été publié dans Non classé, avec comme mot(s)-clé(s) , . Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *