Commit iniziale
This commit is contained in:
commit
4567e3e7a3
8
.gitignore
vendored
Normal file
8
.gitignore
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
spell
|
||||
backup
|
||||
temp
|
||||
tags
|
||||
bundle/*
|
||||
!bundle/vundle
|
||||
.netrwhist
|
||||
.DS_Store
|
28
README.md
Normal file
28
README.md
Normal file
@ -0,0 +1,28 @@
|
||||
Questa è la mia configurazione di Vim.
|
||||
|
||||
### Plugin installati
|
||||
* [Vundle](https://github.com/gmarik/vundle)
|
||||
* [CtlrP](https://github.com/kien/ctrlp.vim)
|
||||
* [Distraction free writing](https://github.com/laktek/distraction-free-writing-vim)
|
||||
* [Fugitive](https://github.com/tpope/vim-fugitive)
|
||||
* [Gundo](https://github.com/sjl/gundo.vim)
|
||||
* [Jedi](https://github.com/davidhalter/jedi-vim)
|
||||
* [Markdown](https://github.com/tpope/vim-markdown)
|
||||
* [NERDCommenter](https://github.com/scrooloose/nerdcommenter)
|
||||
* [NERDTree](https://github.com/scrooloose/nerdtree)
|
||||
* [NERDTreeTabs](https://github.com/jistr/vim-nerdtree-tabs)
|
||||
* [Lightline](https://github.com/itchyny/lightline.vim)
|
||||
* [Solarized](https://github.com/altercation/vim-colors-solarized)
|
||||
* [Supertab](https://github.com/scrooloose/nerdtree)
|
||||
* [Syntastic](https://github.com/scrooloose/syntastic)
|
||||
* [Tagbar](https://github.com/majutsushi/tagbar)
|
||||
|
||||
### Come installare
|
||||
* `git clone https://github.com/Rnhmjoj/dotvim.git ~/.vim`
|
||||
* `cd ~/.vim`
|
||||
* `mkdir backup temp spell`
|
||||
* `ln -s vimrc ~/.vimrc`
|
||||
* da Vim `:BundleInstall`
|
||||
|
||||
### Come aggiornare
|
||||
* da Vim `:BundleInstall!`
|
1
bundle/vundle
Submodule
1
bundle/vundle
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 08e9894d2a9452537663f09a73ddeb4e647e9c4c
|
287
vimrc
Normal file
287
vimrc
Normal file
@ -0,0 +1,287 @@
|
||||
set rtp+=~/.vim/bundle/vundle/ " Vundle
|
||||
call vundle#rc() "
|
||||
|
||||
""
|
||||
"" Bundles
|
||||
""
|
||||
|
||||
Bundle "gmarik/vundle"
|
||||
Bundle "kien/ctrlp.vim"
|
||||
Bundle "laktek/distraction-free-writing-vim"
|
||||
Bundle "tpope/vim-fugitive"
|
||||
Bundle "sjl/gundo.vim"
|
||||
Bundle "davidhalter/jedi-vim"
|
||||
Bundle "itchyny/lightline.vim"
|
||||
Bundle "tpope/vim-markdown"
|
||||
Bundle "scrooloose/nerdcommenter"
|
||||
Bundle "scrooloose/nerdtree"
|
||||
Bundle "jistr/vim-nerdtree-tabs"
|
||||
Bundle "ervandew/supertab"
|
||||
Bundle "majutsushi/tagbar"
|
||||
Bundle "altercation/vim-colors-solarized"
|
||||
Bundle "scrooloose/syntastic"
|
||||
|
||||
""
|
||||
"" Plugins
|
||||
""
|
||||
" Lightline
|
||||
let g:lightline = {
|
||||
\"colorscheme": "solarized_dark",
|
||||
\"active": {
|
||||
\ "left": [[ "mode", "paste" ], ["fugitive", "filename", "readonly", "ctrlpmark"]],
|
||||
\ "right": [ ["syntastic", "lineinfo"], ["percent"], ["fileformat", "fileencoding", "filetype"]]
|
||||
\ },
|
||||
\"component": {
|
||||
\"readonly": '%{&filetype=="help"?"":&readonly?"⭤":""}',
|
||||
\"modified": '%{&filetype=="help"?"":&modified?"+":&modifiable?"":"-"}'
|
||||
\ },
|
||||
\'component_visible_condition': {
|
||||
\"readonly": '(&filetype!="help"&& &readonly)',
|
||||
\"modified": '(&filetype!="help"&&(&modified||!&modifiable))'
|
||||
\ },
|
||||
\"component_expand": {
|
||||
\ "syntastic": "SyntasticStatuslineFlag",
|
||||
\ },
|
||||
\"component_type": {
|
||||
\ "syntastic": "error",
|
||||
\ },
|
||||
\"component_function": {
|
||||
\ "filename": "Filename",
|
||||
\ "fugitive": "Fugitive",
|
||||
\ "fileformat": "Fileformat",
|
||||
\ "filetype": "Filetype",
|
||||
\ "fileencoding": "Fileencoding",
|
||||
\ "mode": "Mode",
|
||||
\ "ctrlpmark": "CtrlPMark",
|
||||
\ },
|
||||
\"separator": { "left": "⮀", "right": "⮂" },
|
||||
\"subseparator": { "left": "⮁", "right": "⮃" }
|
||||
\ }
|
||||
|
||||
let g:syntastic_check_on_open = 1 " Syntactic
|
||||
let g:syntastic_enable_signs = 1 "
|
||||
let g:syntastic_python_checkers = ["flake8", "python"] "
|
||||
|
||||
let g:tagbar_status_func = "TagbarStatusFunc" " Tagbar
|
||||
let g:tagbar_compact = 1 "
|
||||
let g:tagbar_iconchars = ["▸", "▾"] "
|
||||
|
||||
let g:miniBufExplMapWindowNavVim = 1 " MiniBufferExplorer
|
||||
let g:miniBufExplMapWindowNavArrows = 1 "
|
||||
let g:miniBufExplMapCTabSwitchBufs = 1 "
|
||||
let g:miniBufExplModSelTarget = 1 "
|
||||
|
||||
au BufNewFile,BufRead *.md call DistractionFreeWriting() " DistractionFreeWriting
|
||||
let g:fullscreen_colorscheme = "iawriter" "
|
||||
let g:fullscreen_font = "Cousine:h14" "
|
||||
let g:normal_colorscheme = "solarized" "
|
||||
let g:normal_font = "Inconsolata-dz\ for\ Powerline:h12" "
|
||||
|
||||
let g:nerdtree_tabs_open_on_gui_startup = 0 " NerdTree
|
||||
let g:nerdtree_tabs_open_on_console_startup = 0 "
|
||||
|
||||
let g:ctrlp_clear_cache_on_exit=0 " CtrlP
|
||||
let g:ctrlp_status_func = {"main": "CtrlPStatusMain", "prog": "CtrlPStatusProg"} "
|
||||
let g:ctrlp_custom_ignore = {"dir": "\v[\/]\.(git|hg|svn|ve)$"} "
|
||||
|
||||
""
|
||||
"" Impostazioni generali
|
||||
""
|
||||
|
||||
if has("gui_running") " Solo per GUI
|
||||
set lines=45 columns=150 " Imposta larghezza e altezza
|
||||
set guifont=Inconsolata-dz\ for\ Powerline:h12 " Font
|
||||
endif "
|
||||
|
||||
set spell spelllang=it " Controllo ortografico...
|
||||
set nospell " ...solo quando serve
|
||||
|
||||
set nocompatible " Disabilita la compatibilità con vi
|
||||
set hidden " Nasconde i buffers
|
||||
set history=1000 " Aumenta la cronologia
|
||||
set incsearch " Ricerca incrementale
|
||||
set hlsearch " Evidenzia i risultati della ricerca
|
||||
|
||||
set ignorecase " Ricerca case insensitive...
|
||||
set smartcase " ...per i termini minuscoli
|
||||
set laststatus=2 "
|
||||
|
||||
set mouse=a " Abilita il supporto al mouse
|
||||
set showcmd " Mostra il comando mentre lo digit
|
||||
set ruler " Mostra la posizione della linea/colonna
|
||||
set vb t_vb= " Disabilita i beep
|
||||
|
||||
set nobackup " Disabilita i backup ~
|
||||
set writebackup " Abilita backup temporanei
|
||||
set backupdir=~/.vim/backup "
|
||||
set directory=~/.vim/temp "
|
||||
|
||||
set undodir=~/.vim/undo " Mantiene la cronologia
|
||||
set undofile "
|
||||
|
||||
set wildmenu " Autocompletamento dei comandi
|
||||
set wildignore+=.DS_Store " Nasconde i file DS_Store
|
||||
set nomodeline " Sicurezza
|
||||
set tabpagemax=10 " Limita il numero di tab a 10
|
||||
set showmatch " Evidenzia le parentesi selezionate
|
||||
set ffs=unix,mac " Formato Unix e Mac per i file
|
||||
set dictionary=/usr/share/dict/words " Dizionario per il controllo ortografico
|
||||
set clipboard=unnamed " Integrazione con la clipboard
|
||||
set ttyfast " Migliora il redrawing in xterm
|
||||
filetype indent plugin on " Riconoscimento del tipo del file
|
||||
set wildignore+=*/tmp/*,*.so,*.swp,*.zip " Altri file da ignorare
|
||||
|
||||
set shiftwidth=4 " Tab
|
||||
set tabstop=4 "
|
||||
set noexpandtab "
|
||||
|
||||
set number " Numerazione
|
||||
set autoindent " Indentazione
|
||||
set smartindent "
|
||||
set noshowmode "
|
||||
|
||||
syntax on " Abilita il syntax-highlighter
|
||||
|
||||
set go-=r " Nascondi barre di scorrimento
|
||||
set go-=L "
|
||||
|
||||
|
||||
let g:solarized_visibility="low" " Schema dei colori
|
||||
colorscheme solarized "
|
||||
syntax enable "
|
||||
if has("gui_running") "
|
||||
set background=light "
|
||||
let g:lightline.colorscheme="solarized" "
|
||||
else "
|
||||
set background=dark "
|
||||
endif "
|
||||
hi NonText guifg=bg "
|
||||
|
||||
set titlestring=%t%(\ %M%)%(\ (%{expand(\"%:p:h\")})%)%(\ %a%) " Barra del titolo senza “-VIM”
|
||||
|
||||
|
||||
""
|
||||
"" Funzioni
|
||||
""
|
||||
|
||||
function! Fugitive()
|
||||
if &ft !~? 'nerdtree\|gundo\|tagbar' && exists("*fugitive#head")
|
||||
let _ = fugitive#head()
|
||||
return strlen(_) ? "⭠ "._ : ""
|
||||
endif
|
||||
return ''
|
||||
endfunction
|
||||
|
||||
function! Modified()
|
||||
return &ft =~ "help" ? "" : &modified ? "+" : &modifiable ? "" : "-"
|
||||
endfunction
|
||||
|
||||
function! Readonly()
|
||||
return &ft !~? "help" && &readonly ? "RO" : ""
|
||||
endfunction
|
||||
|
||||
function! Filename()
|
||||
let fname = expand('%:t')
|
||||
return fname == 'ControlP' ? g:lightline.ctrlp_item :
|
||||
\ fname == '__Tagbar__' ? g:lightline.fname :
|
||||
\ fname =~ '__Gundo\|NERD_tree' ? '' :
|
||||
\ ('' != fname ? fname : '[No Name]') .
|
||||
\ ('' != Modified() ? ' ' . Modified() : '')
|
||||
endfunction
|
||||
|
||||
function! Fileformat()
|
||||
return winwidth(0) > 70 ? &fileformat : ""
|
||||
endfunction
|
||||
|
||||
function! Filetype()
|
||||
return winwidth(0) > 70 ? (strlen(&filetype) ? &filetype : "no ft") : ""
|
||||
endfunction
|
||||
|
||||
function! Fileencoding()
|
||||
return winwidth(0) > 70 ? (strlen(&fenc) ? &fenc : &enc) : ""
|
||||
endfunction
|
||||
|
||||
function! Mode()
|
||||
let fname = expand("%:t")
|
||||
return fname == "__Tagbar__" ? "Tagbar" :
|
||||
\ fname == "ControlP" ? "CtrlP" :
|
||||
\ fname == "__Gundo__" ? "Gundo" :
|
||||
\ fname == "__Gundo_Preview__" ? "Gundo Preview" :
|
||||
\ fname =~ "NERD_tree" ? "NERDTree" :
|
||||
\ winwidth(0) > 60 ? lightline#mode() : ""
|
||||
endfunction
|
||||
|
||||
function! CtrlPMark()
|
||||
if expand("%:t") =~ "ControlP"
|
||||
call lightline#link("iR"[g:lightline.ctrlp_regex])
|
||||
return lightline#concatenate([g:lightline.ctrlp_prev, g:lightline.ctrlp_item
|
||||
\ , g:lightline.ctrlp_next], 0)
|
||||
else
|
||||
return ""
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! CtrlPStatusMain(focus, byfname, regex, prev, item, next, marked)
|
||||
let g:lightline.ctrlp_regex = a:regex
|
||||
let g:lightline.ctrlp_prev = a:prev
|
||||
let g:lightline.ctrlp_item = a:item
|
||||
let g:lightline.ctrlp_next = a:next
|
||||
return lightline#statusline(0)
|
||||
endfunction
|
||||
|
||||
function! CtrlPStatusProg(str)
|
||||
return lightline#statusline(0)
|
||||
endfunction
|
||||
|
||||
function! TagbarStatusFunc(current, sort, fname, ...) abort
|
||||
let g:lightline.fname = a:fname
|
||||
return lightline#statusline(0)
|
||||
endfunction
|
||||
|
||||
function ToggleSpell()
|
||||
if(&spell)
|
||||
set nospell
|
||||
else
|
||||
set spell
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function ToggleColorScheme()
|
||||
if &background=="dark"
|
||||
set background=light
|
||||
let g:lightline.colorscheme = "solarized"
|
||||
else
|
||||
set background=dark
|
||||
let g:lightline.colorscheme = "solarized_dark"
|
||||
endif
|
||||
hi NonText guifg=bg
|
||||
call lightline#init()
|
||||
call lightline#colorscheme()
|
||||
call lightline#update()
|
||||
endfunction
|
||||
|
||||
|
||||
""
|
||||
"" Mapping
|
||||
""
|
||||
|
||||
map <C-k> <C-w><Up> " Navigazione tra le finestre
|
||||
map <C-j> <C-w><Down> "
|
||||
map <C-l> <C-w><Right> "
|
||||
map <C-h> <C-w><Left> "
|
||||
|
||||
map <F2> :GundoToggle<CR> " Apri Gundo
|
||||
map <F3> :call ToggleSpell()<CR> " Controllo ortografico
|
||||
map <F5> :NERDTreeTabsToggle<CR> " Apri NERDTree
|
||||
map <F6> :TagbarToggle<CR> " Apri Tagbar
|
||||
map <F7> :call ToggleColorScheme()<CR> " Cambia sfondo di Solarized
|
||||
map <D-e> :q!<CR> " Esci senza salvare
|
||||
|
||||
|
||||
""
|
||||
"" Varie
|
||||
""
|
||||
|
||||
set tags=~/.vim/tags " Tags
|
||||
let $PATH = "Users/Michele/.pyenv/shims:/usr/local/bin:/usr/bin:/bin" " PATH
|
||||
|
Loading…
Reference in New Issue
Block a user