Skip to content

Commit

Permalink
Add first version
Browse files Browse the repository at this point in the history
  • Loading branch information
jrmmendes committed Jan 20, 2020
0 parents commit d9c07ea
Show file tree
Hide file tree
Showing 10 changed files with 289 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .netrwhist
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
let g:netrw_dirhistmax =10
let g:netrw_dirhist_cnt =2
let g:netrw_dirhist_1='/home/romildo/.config/nvim/general'
let g:netrw_dirhist_2='/home/romildo/.config/nvim/plug.vim'
42 changes: 42 additions & 0 deletions general.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
"Colorscheme
set background=dark
set termguicolors
let g:airline_theme='deep_space'
colorscheme deep-space

set rtp+=~/.fzf " fzf config

set guifont=FireCode:h12
" disable tabline
set number
set showtabline=0
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set expandtab
set textwidth=80
set hidden

" Buffer controls
nnoremap <C-N> :bnext<CR>
nnoremap <C-P> :bprev<CR>
nnoremap <C-D> :bdelete %<CR>
" keep buffer of lines above and below cursor
set scrolloff=5

" display incomplete commands
set showcmd

" Sass and CSS files autocomplete
autocmd FileType css,sass,scss setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType javascript,json,yaml,yml,jsx,vue setlocal shiftwidth=2 tabstop=2

" Always set the current file as working directory
autocmd BufEnter * lcd %:p:h

" augroup twig_ft
" au!
" autocmd BufNewFile,BufRead *.vue set filetype=javascript
" augroup END
8 changes: 8 additions & 0 deletions init.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
" Plugins
source $HOME/.config/nvim/plug.vim

" General settings
source $HOME/.config/nvim/general.vim

" General settings
source $HOME/.config/nvim/keys.vim
11 changes: 11 additions & 0 deletions keys.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
" Key remaps

nnoremap <C-q> :NERDTree <CR>
nnoremap <C-a> :e $HOME/.config/nvim/config/plugins.vim <CR>
nnoremap <C-h> :bprevious <CR>
nnoremap <C-l> :bnext <CR>
nnoremap <C-d> :bd %<CR>
nnoremap <A-left> :tabp <CR>
nnoremap <A-right> :tabn <CR>
nnoremap <A-up> :tabl <CR>
map <Leader><Space> :noh<CR>;
46 changes: 46 additions & 0 deletions plug.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
call plug#begin('~/.vim/plugged')

" Colorschemes
Plug 'tyrannicaltoucan/vim-deep-space'

" Interface
Plug 'scrooloose/nerdtree'
Plug 'Yggdroot/indentLine'
Plug 'junegunn/goyo.vim'
Plug 'junegunn/fzf.vim'
Plug 'ddollar/nerdcommenter'
Plug 'mileszs/ack.vim'
Plug 'wakatime/vim-wakatime'
Plug 'mhinz/vim-startify'
Plug 'Shougo/denite.nvim', { 'do': ':UpdateRemotePlugins' }

Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'

" Miscellaneous
Plug 'metakirby5/codi.vim'
Plug 'ludovicchabant/vim-gutentags'
Plug 'tpope/vim-surround'
Plug 'w0rp/ale'

" Intelisense & Snippets
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'sirver/UltiSnips'
Plug 'honza/vim-snippets'

" Javascript & Web Environment
Plug 'chemzqm/vim-jsx-improve'
Plug 'mattn/emmet-vim'
Plug 'jrmmendes/vim-vue'
Plug 'cakebaker/scss-syntax.vim'

" Plug 'ternjs/tern_for_vim', { 'do': 'npm install && npm install -g tern' }

call plug#end()

" Load config files for each plugin
source $HOME/.config/nvim/plugins/airline.vim
source $HOME/.config/nvim/plugins/coc.vim
source $HOME/.config/nvim/plugins/emmet.vim
source $HOME/.config/nvim/plugins/NERDTree.vim
source $HOME/.config/nvim/plugins/startify.vim
5 changes: 5 additions & 0 deletions plugins/NERDTree.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
" autocmd StdinReadPre * let s:std_in=1
" autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | exe 'cd '.argv()[0] | endif
" autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
let NERDTreeDirArrows = 1
let NERDTreeShowHidden = 1
24 changes: 24 additions & 0 deletions plugins/airline.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
let g:airline_powerline_fonts = 1
let g:Powerline_sybols = 'unicode'
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#show_tab_nr = 1
let g:airline#extensions#tabline#tab_nr_type= 2
let g:airline#extensions#tabline#show_tab_type = 1
" let g:airline_theme='deep'

" let g:airline_symbols = {}
" Unicode simbols
let g:airline_left_sep = ''
let g:airline_left_alt_sep = ''
let g:airline_right_sep = ''
let g:airline_right_alt_sep = ''
" let g:airline_symbols.branch = ''
" let g:airline_symbols.readonly = ''
" let g:airline_symbols.linenr = ''
" let g:airline_symbols.maxlinenr= ''

let g:airline#extensions#tabline#show_tab_nr = 1
let g:airline#extensions#tabline#tab_nr_type= 2
let g:airline#extensions#tabline#show_tab_type = 1
let g:airline#extensions#tabline#buffers_label = 'BUFFERS'
let g:airline#extensions#tabline#tabs_label = 'TABS'
128 changes: 128 additions & 0 deletions plugins/coc.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
" if hidden is not set, TextEdit might fail.
set hidden

" Some servers have issues with backup files, see #649
set nobackup
set nowritebackup

" Better display for messages
set cmdheight=2

" You will have bad experience for diagnostic messages when it's default 4000.
set updatetime=300

" don't give |ins-completion-menu| messages.
set shortmess+=c

" always show signcolumns
set signcolumn=yes

" Use tab for trigger completion with characters ahead and navigate.
" Use command ':verbose imap <tab>' to make sure tab is not mapped by other plugin.
inoremap <silent><expr> <TAB>
\ pumvisible() ? "\<C-n>" :
\ <SID>check_back_space() ? "\<TAB>" :
\ coc#refresh()
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"
function! s:check_back_space() abort
let col = col('.') - 1
return !col || getline('.')[col - 1] =~# '\s'
endfunction

" Use <c-space> to trigger completion.
inoremap <silent><expr> <c-space> coc#refresh()
" Use <cr> to confirm completion, `<C-g>u` means break undo chain at current position.
" Coc only does snippet and additional edit on confirm.
inoremap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"
" Or use `complete_info` if your vim support it, like:
" inoremap <expr> <cr> complete_info()["selected"] != "-1" ? "\<C-y>" : "\<C-g>u\<CR>"

" Use `[g` and `]g` to navigate diagnostics
nmap <silent> [g <Plug>(coc-diagnostic-prev)
nmap <silent> ]g <Plug>(coc-diagnostic-next)
" Remap keys for gotos
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>')
else
call CocAction('doHover')
endif
endfunction

" Highlight symbol under cursor on CursorHold
autocmd CursorHold * silent call CocActionAsync('highlight')

" Remap for rename current word
nmap <leader>rn <Plug>(coc-rename)
" Remap for format selected region
xmap <leader>f <Plug>(coc-format-selected)
nmap <leader>f <Plug>(coc-format-selected)
augroup mygroup
autocmd!
" Setup formatexpr specified filetype(s).
autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected')
" Update signature help on jump placeholder
autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp')
augroup end

" Remap for do codeAction of selected region, ex: `<leader>aap` for current paragraph
xmap <leader>a <Plug>(coc-codeaction-selected)
nmap <leader>a <Plug>(coc-codeaction-selected)
" Remap for do codeAction of current line
nmap <leader>ac <Plug>(coc-codeaction)
" Fix autofix problem of current line
nmap <leader>qf <Plug>(coc-fix-current)
" Create mappings for function text object, requires document symbols feature of languageserver.
xmap if <Plug>(coc-funcobj-i)
xmap af <Plug>(coc-funcobj-a)
omap if <Plug>(coc-funcobj-i)
omap af <Plug>(coc-funcobj-a)
" Use <C-d> for select selections ranges, needs server support, like: coc-tsserver, coc-python
nmap <silent> <C-d> <Plug>(coc-range-select)
xmap <silent> <C-d> <Plug>(coc-range-select)
" Use `:Format` to format current buffer
command! -nargs=0 Format :call CocAction('format')

" Use `:Fold` to fold current buffer
command! -nargs=? Fold :call CocAction('fold', <f-args>)

" use `:OR` for organize import of current buffer
command! -nargs=0 OR :call CocAction('runCommand', 'editor.action.organizeImport')

" Add status line support, for integration with other plugin, checkout `:h coc-status`
set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')}

" Using CocList
" Show all diagnostics
nnoremap <silent> <space>a :<C-u>CocList diagnostics<cr>
" Manage extensions
nnoremap <silent> <space>e :<C-u>CocList extensions<cr>
" Show commands
nnoremap <silent> <space>c :<C-u>CocList commands<cr>
" Find symbol of current document
nnoremap <silent> <space>o :<C-u>CocList outline<cr>
" Search workspace symbols
nnoremap <silent> <space>s :<C-u>CocList -I symbols<cr>
" Do default action for next item.
nnoremap <silent> <space>j :<C-u>CocNext<CR>
" Do default action for previous item.
nnoremap <silent> <space>k :<C-u>CocPrev<CR>
" Resume latest coc list
nnoremap <silent> <space>p :<C-u>CocListResume<CR>
8 changes: 8 additions & 0 deletions plugins/emmet.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
let g:user_emmet_leader_key='<C-e>'
let g:user_emmet_install_global = 0
let g:user_emmet_settings = {
\ 'javascript.jsx' : {
\ 'extends' : 'jsx',
\ },
\}
autocmd FileType vue,html,htmldjango,sass,scss,less,css,ejs,jst,jinja,javascript EmmetInstall
13 changes: 13 additions & 0 deletions plugins/startify.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
let g:startify_custom_header = [
\'',
\'',
\' ▄▄▄ ▄▄ ██ ',
\' ███ ██ ▀▀ ',
\' ██▀█ ██ ▄████▄ ▄████▄ ██▄ ▄██ ████ ████▄██▄ ',
\' ██ ██ ██ ██▄▄▄▄██ ██▀ ▀██ ██ ██ ██ ██ ██ ██ ',
\' ██ █▄██ ██▀▀▀▀▀▀ ██ ██ ▀█▄▄█▀ ██ ██ ██ ██ ',
\' ██ ███ ▀██▄▄▄▄█ ▀██▄▄██▀ ████ ▄▄▄██▄▄▄ ██ ██ ██ ',
\' ▀▀ ▀▀▀ ▀▀▀▀▀ ▀▀▀▀ ▀▀ ▀▀▀▀▀▀▀▀ ▀▀ ▀▀ ▀▀ ',
\' Dotfiles by @Jrmmendes <jrmmendes@outlook.com> ',
\'',
\ ]

0 comments on commit d9c07ea

Please sign in to comment.