add notify_network
[dotfiles_afify.git] / .vimrc
blobc78303de9e055c073142e65948252f2fa3bd4ea6
1 let mapleader =","
2 set shell=bash
3 set encoding=utf-8
4 set fileformat=unix
5 set noswapfile
7 "==========================================================
8 " Plugins
9 "==========================================================
10 call plug#begin('~/.vim/plugged')
11 Plug 'PotatoesMaster/i3-vim-syntax'
12 Plug 'jreybert/vimagit'
13 Plug 'morhetz/gruvbox'
14 Plug 'itchyny/lightline.vim'
15 Plug 'itchyny/vim-gitbranch'
16 Plug 'airblade/vim-gitgutter'
17 Plug 'ap/vim-css-color'
18 Plug 'tibabit/vim-templates'
19 call plug#end()
21 "==========================================================
22 " Tabs & Invisible characters
23 "==========================================================
24 set list
25 set listchars=tab:>-,nbsp:␣,trail:.
26 set tabstop=4
27 set shiftwidth=4
28 set smarttab
29 set autoindent
30 set laststatus=2
31 "set expandtab
32 "set showtabline=2
34 "==========================================================
35 " Theme and  Display
36 "==========================================================
37 syntax on
38 "set nowrap
39 set number
40 set background=dark
41 setf dosini "Syntax for system files
42 let g:gruvbox_contrast_dark='hard'
43 colorscheme gruvbox
44 hi LineNr ctermfg=137
45 "hi LineNr ctermbg=235
46 hi SpecialKey ctermfg=67
47 hi CursorLineNr ctermfg=15
48 hi VertSplit ctermfg=8 ctermbg=0
49 "hi Statement ctermfg=3
50 set splitbelow splitright
51 set wildmode=longest,list,full
53 "==========================================================
54 " Keymaping
55 "==========================================================
56 "copy to global clipboard
57 vnoremap <C-c> :w !xclip -i -sel c<CR><CR>
59 "Move lines up and down with controle + k or j
60 nnoremap <silent>       <C-j> :move +1 <CR>
61 nnoremap <silent>       <C-k> :move -2 <CR>
62 inoremap <C-j>          <Esc> :move +1 <CR>
63 inoremap <C-k>          <Esc> :move -2 <CR>
65 " Move to end of line and begin of line
66 "nmap <C-l> <End>
67 "nmap <C-h> <Home>
68 "imap <C-l> <Esc><End>a
69 "imap <C-h> <Esc><Home>i
71 "set mouse=nicr "Enable mouse scrole
72 "Disable arrow keys in Normal mode
73 no <Up>         <Nop>
74 no <Down>       <Nop>
75 no <Left>       <Nop>
76 no <Right>      <Nop>
78 "Disable arrow keys in Insert mode
79 ino <Up>        <Nop>
80 ino <Down>      <Nop>
81 ino <Left>      <Nop>
82 ino <Right>     <Nop>
84 " Add new line
85 nnoremap <silent><CR> :set paste<CR>m`o<Esc>``:set nopaste<CR>
87 " Run scripts (Controle Shift r)
88 autocmd FileType python nnoremap <C-S-r> <Esc>:w<CR>:!clear;python %<CR>
89 autocmd FileType sh             nnoremap <C-S-r> <Esc>:w<CR>:!clear;sh %<CR>
90 autocmd FileType c              nnoremap <C-S-r> <Esc>:w<CR>:!clear;make<CR>
92 " Commment lines (Controle /)
93 autocmd FileType python nnoremap <buffer> <C-_> <Home>i# <esc>
94 autocmd FileType sh             nnoremap <buffer> <C-_> <Home>i# <esc>
95 autocmd FileType c              nnoremap <buffer> <C-_> <Home>i// <esc>
96 autocmd FileType cpp    nnoremap <buffer> <C-_> <Home>i// <esc>
97 autocmd FileType vim    nnoremap <buffer> <C-_> <Home>i" <esc>
100 "==========================================================
101 "Lightline
102 "==========================================================
103 let g:lightline = {
104         \'active': {
105                 \'left':[['mode', 'paste'],['gitbranch','readonly','filename','modified']],
106                 \'right':[['lineinfo'],['filetype'],['fileencoding'],['fileformat']]},
107         \'component_function':{'gitbranch': 'gitbranch#name'},
108         \}
110 "==========================================================
111 " Templates
112 "==========================================================
113 let g:tmpl_search_paths = ['/mnt/data/dev/templates']
116 "unknown
117 " Splits open at the bottom and right, which is non-retarded, unlike vim defaults.
118 "set splitbelow splitright
119 "set nocompatible
120 "filetype plugin indent on
121 "filetype plugin on