[aprendizado vim] arquivo de configuração, plugins e find
Até agora eu evitei utilizar qualquer configuração permanente pois, já tentei utilizar anteriormente outras configurações prontas como the ultimate vim configuration e sempre me senti sobrecarregado com tanta informação.
Mas agora preciso configurar algumas alterações permanentes então chegou a hora de aprender mais. Vou adicionado configurações conforme a necessidade e tentando evitar algo muito complexo.
Arquivos de configuração
Como indicado por essa man page do neovim encontramos o caminho do arquivo de configuração:
The config file is located at:
Unix ~/.config/nvim/init.vim (or init.lua)
Windows ~/AppData/Local/nvim/init.vim (or init.lua)
|$XDG_CONFIG_HOME| $XDG_CONFIG_HOME/nvim/init.vim (or init.lua)
No vim o mesmo arquivo é encontrado em ~/.vimrc
.
Plugins
Estarei utilizando o gestor de plugins chamado vim-plug. Segui normalmente os comandos de instalação. E adiciono no início do arquivo de configuração:
call plug#begin()
call plug#end()
[...]
Após adicionar as linhas é preciso usar o seguinte comando para instalar:
:PlugInstall
Por padrão os plugins são instalados em ~/.local/share/nvim/plugged
. Para
desinstalar basta:
:PlugClean
Ou de maneira manual:
$ cd ~/.local/share/nvim/plugged
$ rm -rf <pasta-do-plugin>
Plugins que usarei inicialmente:
Obs: resolvendo problema de modo desaparecer quando nome de arquivo for muito grande e mudando o tema para onedark no lightline:
" Configuração do lightline
let g:lightline = {
\ 'colorscheme': 'onedark',
\ 'active': {
\ 'left': [
\ ['mode', 'paste'],
\ ['filename', 'readonly', 'modified']],
\ 'right': [
\ ['lineinfo'],
\ ['percent'],
\ ['filetype', 'fileencoding', 'fileformat']] },
\ 'component': {
\ 'filename': '%<%{LightLineFilename()}' } }
function! LightLineFilename()
let l:fname = expand('%:t')
let l:fpath = expand('%')
return &filetype ==# 'dirvish' ?
\ (l:fpath ==# getcwd() . '/' ? fnamemodify(l:fpath, ':~') :
\ fnamemodify(l:fpath, ':~:.')) :
\ &filetype ==# 'fzf' ? 'fzf' :
\ '' !=# l:fname ? fnamemodify(l:fpath, ':~:.') : '[No Name]'
endfunction
Comando find
No post anterior quando falei de buffer eu utilizei o comando :e
(abreviação de :edit
) para abrir outros arquivos. Mas uma opção melhor
é utilizar o :find
.
:find <caminho>
A grande diferença é que o :find
utiliza a variável path
para completar
o nome do arquivo que está sendo digitado. Então esse comando se torna
extremamente útil quando adicionamos no nosso init.vim
a seguinte linha:
:set path+=**
Essa linha significa que adicionamos no path
para ser pesquisado todos
os diretórios e subdiretórios da pasta atual em que o vim foi invocado.
A partir de agora ao invés de digitar o caminho todo até o arquivo usando
:edit
, apenas precisamos digitar :find
e alguma string que esteja no
nome do arquivo que queremos abrir e usar <Tab>
para navegar nas opções
disponíveis.