dotfiles

Repositório dotfiles
git clone git://git.sivaldodavi.com/dotfiles.git
Log | Files | Refs | README

vimrc (4558B)


      1 
      2 let mapleader=" "
      3 let g:pm_path = expand("$HOME/.config/vim/pack/plugins/start/")
      4 let g:plugins = [
      5     \ "https://github.com/ap/vim-css-color.git",
      6     \ "https://github.com/junegunn/goyo.vim.git",
      7     \ "https://github.com/tpope/vim-surround.git",
      8     \ "https://github.com/tpope/vim-commentary.git",
      9     \ "https://github.com/gpanders/vim-scdoc.git",
     10     \ "https://github.com/preservim/nerdtree.git",
     11     \ "https://github.com/jreybert/vimagit.git",
     12     \ "https://github.com/kaarmu/typst.vim.git",
     13     \ "https://github.com/vim-scripts/SyntaxRange.git"]
     14 
     15 set viminfofile=~/.cache/vim/viminfo
     16 silent !mkdir -p ~/.cache/vim > /dev/null 2>&1
     17 
     18 " ─── Aparência ───────────────────────────────────────────────
     19 set title
     20 set t_Co=256
     21 set laststatus=2
     22 set number relativenumber
     23 set nocursorline
     24 set nocursorcolumn
     25 set colorcolumn=0
     26 set notermguicolors
     27 
     28 " ─── Comportamento base ───────────────────────────────────────
     29 set nocompatible
     30 filetype plugin on
     31 syntax on
     32 set encoding=utf-8
     33 set ttyfast
     34 set nofoldenable
     35 set nobackup
     36 set noswapfile
     37 set notimeout
     38 set mouse=a
     39 set hlsearch
     40 
     41 " ─── Clipboard (sistema via xclip) ──────────────────────────
     42 vnoremap <leader>y :w !xclip -selection clipboard<CR><CR>
     43 nnoremap <leader>Y :%w !xclip -selection clipboard<CR><CR>
     44 
     45 " ─── Exibição de texto ───────────────────────────────────────
     46 set wrap
     47 set linebreak
     48 
     49 " ─── Autocompletar e formatação ──────────────────────────────
     50 set wildmode=longest,list,full
     51 autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
     52 
     53 " ─── Splits ──────────────────────────────────────────────────
     54 set splitbelow splitright
     55 nnoremap <C-h> <C-w>h
     56 nnoremap <C-j> <C-w>j
     57 nnoremap <C-k> <C-w>k
     58 nnoremap <C-l> <C-w>l
     59 
     60 " ─── Atalhos gerais ──────────────────────────────────────────
     61 nnoremap Y y$
     62 nnoremap cc :center<CR>
     63 nnoremap <leader>p :Ex<CR>
     64 
     65 " Remover espaços em branco finais
     66 nnoremap <silent> <leader>t :let _s=@/<Bar>:%s/\s\+$//e<Bar>:let @/=_s<Bar>:nohl<CR>
     67 
     68 " ─── Goyo ────────────────────────────────────────────────────
     69 nnoremap <leader>f :Goyo \| set linebreak<CR>
     70 nnoremap <leader>g :Goyo!<CR>
     71 
     72 " ─── Ortografia ──────────────────────────────────────────────
     73 nnoremap <leader>s :setlocal spell! spelllang=pt_br<CR>
     74 
     75 " ─── NERDTree ────────────────────────────────────────────────
     76 nnoremap <leader>n :NERDTreeToggle<CR>
     77 
     78 " ─── Typst ───────────────────────────────────────────────────
     79 autocmd FileType typst nnoremap <buffer> <leader>c :w<CR>:!typst compile "%" --root .<CR>
     80 autocmd FileType typst nnoremap <buffer> <leader>v :!zathura "%:p:r.pdf" &<CR>
     81 autocmd FileType typst nnoremap <buffer> <leader>o :w<CR>:!typst compile "%" --root . && zathura "%:p:r.pdf" &<CR>
     82 autocmd FileType typst nnoremap <buffer> <leader>W :!typst watch "%" --root . &<CR>
     83 
     84 " ─── Defaults por tipo de arquivo ────────────────────────────
     85 autocmd FileType text             setlocal tw=0
     86 
     87 " ─── Sintaxe para arquivos específicos ───────────────────────
     88 autocmd BufRead,BufNewFile *.ms,*.me,*.mom,*.man set filetype=groff
     89 
     90 " ─── Alternar barra de status ────────────────────────────────
     91 let s:bar_hidden = 0
     92 function! ToggleBar()
     93     if s:bar_hidden == 0
     94         let s:bar_hidden = 1
     95         set noshowmode noruler laststatus=0 noshowcmd
     96     else
     97         let s:bar_hidden = 0
     98         set showmode ruler laststatus=2 showcmd
     99     endif
    100 endfunction
    101 nnoremap <leader>b :call ToggleBar()<CR>