" ----------------------------------------------------------------------------- " Configurações gerais " ----------------------------------------------------------------------------- if has('termguicolors') set termguicolors " Habilita suporte a cores verdadeiras endif filetype plugin indent on " Habilita plugins e indentação automática syntax on " Ativa o destaque de sintaxe set encoding=utf-8 " Define codificação UTF-8 set title " Exibe título no terminal set confirm " Solicita confirmação antes de sair set hidden " Permite alternar buffers sem salvar set noswapfile " Desativa arquivos de swap set nobackup " Desativa backups set undodir=~/.vim/undodir " Define diretório para histórico de desfazer set undofile " Habilita histórico de desfazer persistente " ----------------------------------------------------------------------------- " Interface " ----------------------------------------------------------------------------- set number " Exibe números das linhas set relativenumber " Exibe números relativos set scrolloff=2 " Mantém 2 linhas de margem ao rolar set cursorline " Destaca a linha atual set nowrap " Evita quebra automática de linha set linebreak " Faz quebra de linha respeitar palavras set nolist " Não mostra caracteres invisíveis set listchars=tab:›-,trail:~,eol:↲,space:· " Define caracteres invisíveis set wildmenu " Mostra sugestões de autocomplete no menu set wildmode=longest:full " Define comportamento do autocomplete " ----------------------------------------------------------------------------- " Busca " ----------------------------------------------------------------------------- set ignorecase " Ignora maiúsculas/minúsculas set smartcase " Respeita maiúsculas se usadas na busca set incsearch " Mostra resultados enquanto digita set hlsearch " Destaca todas as ocorrências let @/ = "" " Remove destaque ao carregar o Vim " ----------------------------------------------------------------------------- " Indentação " ----------------------------------------------------------------------------- set autoindent " Indenta automaticamente set smartindent " Ajusta indentação de acordo com o contexto set expandtab " Converte tabulações em espaços set tabstop=2 " Define tabulação como 2 espaços set shiftwidth=2 " Define largura da indentação set softtabstop=2 " Define largura da tabulação lógica " ----------------------------------------------------------------------------- " Configuração da barra de status " ----------------------------------------------------------------------------- set laststatus=2 " Sempre mostra a barra de status set noshowmode " Remove indicação redundante de modo " Configuração visual da barra de status hi statusline cterm=NONE ctermfg=7 ctermbg=240 hi statuslinenc cterm=NONE ctermfg=7 ctermbg=236 augroup StatusLineColors autocmd! autocmd InsertEnter * hi statusline ctermbg=2 autocmd InsertLeave * hi statusline ctermbg=240 augroup END " Personalização da barra de status set statusline=%f " Nome do arquivo set statusline+=%m " Indica se o buffer está modificado set statusline+=%= " Alinha os itens à direita set statusline+=%l/%L,%c " Mostra linha/total, coluna " ----------------------------------------------------------------------------- " Cores e tema " ----------------------------------------------------------------------------- call plug#begin('~/.vim/plugged') " Gerenciador de plugins: temas e recursos Plug 'sainnhe/edge' " Tema Edge call plug#end() colorscheme edge " Aplica o tema Edge " Configurações visuais para destaque hi Normal guibg=NONE " Remove fundo sólido para transparência hi CursorLine ctermbg=236 " Define fundo da linha ativa hi Visual ctermbg=240 " Cor para modo Visual " ----------------------------------------------------------------------------- " Outros ajustes " ----------------------------------------------------------------------------- set path=.,** " Habilita busca recursiva hi VertSplit ctermfg=240 ctermbg=NONE guifg=#616270 guibg=NONE " ----------------------------------------------------------------------------- " Compatibilidade " ----------------------------------------------------------------------------- if v:version < 800 " Mensagem de aviso para versões antigas echom "Configuração otimizada para Vim 8.0+" endif