add vim
This commit is contained in:
@@ -0,0 +1,276 @@
|
|||||||
|
" Vim color file
|
||||||
|
"
|
||||||
|
" Author: Tomas Restrepo <tomas@winterdom.com>
|
||||||
|
" https://github.com/tomasr/molokai
|
||||||
|
"
|
||||||
|
" Note: Based on the Monokai theme for TextMate
|
||||||
|
" by Wimer Hazenberg and its darker variant
|
||||||
|
" by Hamish Stuart Macpherson
|
||||||
|
"
|
||||||
|
|
||||||
|
hi clear
|
||||||
|
|
||||||
|
if version > 580
|
||||||
|
" no guarantees for version 5.8 and below, but this makes it stop
|
||||||
|
" complaining
|
||||||
|
hi clear
|
||||||
|
if exists("syntax_on")
|
||||||
|
syntax reset
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
let g:colors_name="molokai"
|
||||||
|
|
||||||
|
if exists("g:molokai_original")
|
||||||
|
let s:molokai_original = g:molokai_original
|
||||||
|
else
|
||||||
|
let s:molokai_original = 0
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
hi Boolean guifg=#AE81FF
|
||||||
|
hi Character guifg=#E6DB74
|
||||||
|
hi Number guifg=#AE81FF
|
||||||
|
hi String guifg=#E6DB74
|
||||||
|
hi Conditional guifg=#F92672 gui=bold
|
||||||
|
hi Constant guifg=#AE81FF gui=bold
|
||||||
|
hi Cursor guifg=#000000 guibg=#F8F8F0
|
||||||
|
hi iCursor guifg=#000000 guibg=#F8F8F0
|
||||||
|
hi Debug guifg=#BCA3A3 gui=bold
|
||||||
|
hi Define guifg=#66D9EF
|
||||||
|
hi Delimiter guifg=#8F8F8F
|
||||||
|
hi DiffAdd guibg=#13354A
|
||||||
|
hi DiffChange guifg=#89807D guibg=#4C4745
|
||||||
|
hi DiffDelete guifg=#960050 guibg=#1E0010
|
||||||
|
hi DiffText guibg=#4C4745 gui=italic,bold
|
||||||
|
|
||||||
|
hi Directory guifg=#A6E22E gui=bold
|
||||||
|
hi Error guifg=#E6DB74 guibg=#1E0010
|
||||||
|
hi ErrorMsg guifg=#F92672 guibg=#232526 gui=bold
|
||||||
|
hi Exception guifg=#A6E22E gui=bold
|
||||||
|
hi Float guifg=#AE81FF
|
||||||
|
hi FoldColumn guifg=#465457 guibg=#000000
|
||||||
|
hi Folded guifg=#465457 guibg=#000000
|
||||||
|
hi Function guifg=#A6E22E
|
||||||
|
hi Identifier guifg=#FD971F
|
||||||
|
hi Ignore guifg=#808080 guibg=bg
|
||||||
|
hi IncSearch guifg=#C4BE89 guibg=#000000
|
||||||
|
|
||||||
|
hi Keyword guifg=#F92672 gui=bold
|
||||||
|
hi Label guifg=#E6DB74 gui=none
|
||||||
|
hi Macro guifg=#C4BE89 gui=italic
|
||||||
|
hi SpecialKey guifg=#66D9EF gui=italic
|
||||||
|
|
||||||
|
hi MatchParen guifg=#000000 guibg=#FD971F gui=bold
|
||||||
|
hi ModeMsg guifg=#E6DB74
|
||||||
|
hi MoreMsg guifg=#E6DB74
|
||||||
|
hi Operator guifg=#F92672
|
||||||
|
|
||||||
|
" complete menu
|
||||||
|
hi Pmenu guifg=#66D9EF guibg=#000000
|
||||||
|
hi PmenuSel guibg=#808080
|
||||||
|
hi PmenuSbar guibg=#080808
|
||||||
|
hi PmenuThumb guifg=#66D9EF
|
||||||
|
|
||||||
|
hi PreCondit guifg=#A6E22E gui=bold
|
||||||
|
hi PreProc guifg=#A6E22E
|
||||||
|
hi Question guifg=#66D9EF
|
||||||
|
hi Repeat guifg=#F92672 gui=bold
|
||||||
|
hi Search guifg=#000000 guibg=#FFE792
|
||||||
|
" marks
|
||||||
|
hi SignColumn guifg=#A6E22E guibg=#232526
|
||||||
|
hi SpecialChar guifg=#F92672 gui=bold
|
||||||
|
hi SpecialComment guifg=#7E8E91 gui=bold
|
||||||
|
hi Special guifg=#66D9EF guibg=bg gui=italic
|
||||||
|
if has("spell")
|
||||||
|
hi SpellBad guisp=#FF0000 gui=undercurl
|
||||||
|
hi SpellCap guisp=#7070F0 gui=undercurl
|
||||||
|
hi SpellLocal guisp=#70F0F0 gui=undercurl
|
||||||
|
hi SpellRare guisp=#FFFFFF gui=undercurl
|
||||||
|
endif
|
||||||
|
hi Statement guifg=#F92672 gui=bold
|
||||||
|
hi StatusLine guifg=#455354 guibg=fg
|
||||||
|
hi StatusLineNC guifg=#808080 guibg=#080808
|
||||||
|
hi StorageClass guifg=#FD971F gui=italic
|
||||||
|
hi Structure guifg=#66D9EF
|
||||||
|
hi Tag guifg=#F92672 gui=italic
|
||||||
|
hi Title guifg=#ef5939
|
||||||
|
hi Todo guifg=#FFFFFF guibg=bg gui=bold
|
||||||
|
|
||||||
|
hi Typedef guifg=#66D9EF
|
||||||
|
hi Type guifg=#66D9EF gui=none
|
||||||
|
hi Underlined guifg=#808080 gui=underline
|
||||||
|
|
||||||
|
hi VertSplit guifg=#808080 guibg=#080808 gui=bold
|
||||||
|
hi VisualNOS guibg=#403D3D
|
||||||
|
hi Visual guibg=#403D3D
|
||||||
|
hi WarningMsg guifg=#FFFFFF guibg=#333333 gui=bold
|
||||||
|
hi WildMenu guifg=#66D9EF guibg=#000000
|
||||||
|
|
||||||
|
hi TabLineFill guifg=#1B1D1E guibg=#1B1D1E
|
||||||
|
hi TabLine guibg=#1B1D1E guifg=#808080 gui=none
|
||||||
|
|
||||||
|
if s:molokai_original == 1
|
||||||
|
hi Normal guifg=#F8F8F2 guibg=#272822
|
||||||
|
hi Comment guifg=#75715E
|
||||||
|
hi CursorLine guibg=#3E3D32
|
||||||
|
hi CursorLineNr guifg=#FD971F gui=none
|
||||||
|
hi CursorColumn guibg=#3E3D32
|
||||||
|
hi ColorColumn guibg=#3B3A32
|
||||||
|
hi LineNr guifg=#BCBCBC guibg=#3B3A32
|
||||||
|
hi NonText guifg=#75715E
|
||||||
|
hi SpecialKey guifg=#75715E
|
||||||
|
else
|
||||||
|
hi Normal guifg=#F8F8F2 guibg=#1B1D1E
|
||||||
|
hi Comment guifg=#7E8E91
|
||||||
|
hi CursorLine guibg=#293739
|
||||||
|
hi CursorLineNr guifg=#FD971F gui=none
|
||||||
|
hi CursorColumn guibg=#293739
|
||||||
|
hi ColorColumn guibg=#232526
|
||||||
|
hi LineNr guifg=#465457 guibg=#232526
|
||||||
|
hi NonText guifg=#465457
|
||||||
|
hi SpecialKey guifg=#465457
|
||||||
|
end
|
||||||
|
|
||||||
|
"
|
||||||
|
" Support for 256-color terminal
|
||||||
|
"
|
||||||
|
if &t_Co > 255
|
||||||
|
if s:molokai_original == 1
|
||||||
|
hi Normal ctermbg=234
|
||||||
|
hi CursorLine ctermbg=235 cterm=none
|
||||||
|
hi CursorLineNr ctermfg=208 cterm=none
|
||||||
|
else
|
||||||
|
hi Normal ctermfg=252 ctermbg=233
|
||||||
|
hi CursorLine ctermbg=234 cterm=none
|
||||||
|
hi CursorLineNr ctermfg=208 cterm=none
|
||||||
|
endif
|
||||||
|
hi Boolean ctermfg=135
|
||||||
|
hi Character ctermfg=144
|
||||||
|
hi Number ctermfg=135
|
||||||
|
hi String ctermfg=144
|
||||||
|
hi Conditional ctermfg=161 cterm=bold
|
||||||
|
hi Constant ctermfg=135 cterm=bold
|
||||||
|
hi Cursor ctermfg=16 ctermbg=253
|
||||||
|
hi Debug ctermfg=225 cterm=bold
|
||||||
|
hi Define ctermfg=81
|
||||||
|
hi Delimiter ctermfg=241
|
||||||
|
|
||||||
|
hi DiffAdd ctermbg=24
|
||||||
|
hi DiffChange ctermfg=181 ctermbg=239
|
||||||
|
hi DiffDelete ctermfg=162 ctermbg=53
|
||||||
|
hi DiffText ctermbg=102 cterm=bold
|
||||||
|
|
||||||
|
hi Directory ctermfg=118 cterm=bold
|
||||||
|
hi Error ctermfg=219 ctermbg=89
|
||||||
|
hi ErrorMsg ctermfg=199 ctermbg=16 cterm=bold
|
||||||
|
hi Exception ctermfg=118 cterm=bold
|
||||||
|
hi Float ctermfg=135
|
||||||
|
hi FoldColumn ctermfg=67 ctermbg=16
|
||||||
|
hi Folded ctermfg=67 ctermbg=16
|
||||||
|
hi Function ctermfg=118
|
||||||
|
hi Identifier ctermfg=208 cterm=none
|
||||||
|
hi Ignore ctermfg=244 ctermbg=232
|
||||||
|
hi IncSearch ctermfg=193 ctermbg=16
|
||||||
|
|
||||||
|
hi keyword ctermfg=161 cterm=bold
|
||||||
|
hi Label ctermfg=229 cterm=none
|
||||||
|
hi Macro ctermfg=193
|
||||||
|
hi SpecialKey ctermfg=81
|
||||||
|
|
||||||
|
hi MatchParen ctermfg=233 ctermbg=208 cterm=bold
|
||||||
|
hi ModeMsg ctermfg=229
|
||||||
|
hi MoreMsg ctermfg=229
|
||||||
|
hi Operator ctermfg=161
|
||||||
|
|
||||||
|
" complete menu
|
||||||
|
hi Pmenu ctermfg=81 ctermbg=16
|
||||||
|
hi PmenuSel ctermfg=255 ctermbg=242
|
||||||
|
hi PmenuSbar ctermbg=232
|
||||||
|
hi PmenuThumb ctermfg=81
|
||||||
|
|
||||||
|
hi PreCondit ctermfg=118 cterm=bold
|
||||||
|
hi PreProc ctermfg=118
|
||||||
|
hi Question ctermfg=81
|
||||||
|
hi Repeat ctermfg=161 cterm=bold
|
||||||
|
hi Search ctermfg=0 ctermbg=222 cterm=NONE
|
||||||
|
|
||||||
|
" marks column
|
||||||
|
hi SignColumn ctermfg=118 ctermbg=235
|
||||||
|
hi SpecialChar ctermfg=161 cterm=bold
|
||||||
|
hi SpecialComment ctermfg=245 cterm=bold
|
||||||
|
hi Special ctermfg=81
|
||||||
|
if has("spell")
|
||||||
|
hi SpellBad ctermbg=52
|
||||||
|
hi SpellCap ctermbg=17
|
||||||
|
hi SpellLocal ctermbg=17
|
||||||
|
hi SpellRare ctermfg=none ctermbg=none cterm=reverse
|
||||||
|
endif
|
||||||
|
hi Statement ctermfg=161 cterm=bold
|
||||||
|
hi StatusLine ctermfg=238 ctermbg=253
|
||||||
|
hi StatusLineNC ctermfg=244 ctermbg=232
|
||||||
|
hi StorageClass ctermfg=208
|
||||||
|
hi Structure ctermfg=81
|
||||||
|
hi Tag ctermfg=161
|
||||||
|
hi Title ctermfg=166
|
||||||
|
hi Todo ctermfg=231 ctermbg=232 cterm=bold
|
||||||
|
|
||||||
|
hi Typedef ctermfg=81
|
||||||
|
hi Type ctermfg=81 cterm=none
|
||||||
|
hi Underlined ctermfg=244 cterm=underline
|
||||||
|
|
||||||
|
hi VertSplit ctermfg=244 ctermbg=232 cterm=bold
|
||||||
|
hi VisualNOS ctermbg=238
|
||||||
|
hi Visual ctermbg=235
|
||||||
|
hi WarningMsg ctermfg=231 ctermbg=238 cterm=bold
|
||||||
|
hi WildMenu ctermfg=81 ctermbg=16
|
||||||
|
|
||||||
|
hi Comment ctermfg=59
|
||||||
|
hi CursorColumn ctermbg=236
|
||||||
|
hi ColorColumn ctermbg=236
|
||||||
|
hi LineNr ctermfg=250 ctermbg=236
|
||||||
|
hi NonText ctermfg=59
|
||||||
|
|
||||||
|
hi SpecialKey ctermfg=59
|
||||||
|
|
||||||
|
if exists("g:rehash256") && g:rehash256 == 1
|
||||||
|
hi Normal ctermfg=252 ctermbg=234
|
||||||
|
hi CursorLine ctermbg=236 cterm=none
|
||||||
|
hi CursorLineNr ctermfg=208 cterm=none
|
||||||
|
|
||||||
|
hi Boolean ctermfg=141
|
||||||
|
hi Character ctermfg=222
|
||||||
|
hi Number ctermfg=141
|
||||||
|
hi String ctermfg=222
|
||||||
|
hi Conditional ctermfg=197 cterm=bold
|
||||||
|
hi Constant ctermfg=141 cterm=bold
|
||||||
|
|
||||||
|
hi DiffDelete ctermfg=125 ctermbg=233
|
||||||
|
|
||||||
|
hi Directory ctermfg=154 cterm=bold
|
||||||
|
hi Error ctermfg=222 ctermbg=233
|
||||||
|
hi Exception ctermfg=154 cterm=bold
|
||||||
|
hi Float ctermfg=141
|
||||||
|
hi Function ctermfg=154
|
||||||
|
hi Identifier ctermfg=208
|
||||||
|
|
||||||
|
hi Keyword ctermfg=197 cterm=bold
|
||||||
|
hi Operator ctermfg=197
|
||||||
|
hi PreCondit ctermfg=154 cterm=bold
|
||||||
|
hi PreProc ctermfg=154
|
||||||
|
hi Repeat ctermfg=197 cterm=bold
|
||||||
|
|
||||||
|
hi Statement ctermfg=197 cterm=bold
|
||||||
|
hi Tag ctermfg=197
|
||||||
|
hi Title ctermfg=203
|
||||||
|
hi Visual ctermbg=238
|
||||||
|
|
||||||
|
hi Comment ctermfg=244
|
||||||
|
hi LineNr ctermfg=239 ctermbg=235
|
||||||
|
hi NonText ctermfg=239
|
||||||
|
hi SpecialKey ctermfg=239
|
||||||
|
endif
|
||||||
|
end
|
||||||
|
|
||||||
|
" Must be at the end, because of ctermbg=234 bug.
|
||||||
|
" https://groups.google.com/forum/#!msg/vim_dev/afPqwAFNdrU/nqh6tOM87QUJ
|
||||||
|
set background=dark
|
||||||
+286
@@ -0,0 +1,286 @@
|
|||||||
|
set background=dark
|
||||||
|
set t_RB=
|
||||||
|
colorscheme molokai
|
||||||
|
|
||||||
|
|
||||||
|
if &compatible
|
||||||
|
set nocompatible
|
||||||
|
endif
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
" Leader key
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
let mapleader = " "
|
||||||
|
let maplocalleader = " "
|
||||||
|
nnoremap <Space> <Nop>
|
||||||
|
set timeoutlen=500
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
" Sensible interface defaults
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
syntax enable
|
||||||
|
filetype plugin indent on
|
||||||
|
|
||||||
|
set number
|
||||||
|
set cursorline
|
||||||
|
set ruler
|
||||||
|
set showcmd
|
||||||
|
set showmode
|
||||||
|
set laststatus=2
|
||||||
|
set showtabline=2
|
||||||
|
set wildmenu
|
||||||
|
set wildmode=longest:full,full
|
||||||
|
set scrolloff=4
|
||||||
|
set sidescrolloff=4
|
||||||
|
set splitbelow
|
||||||
|
set splitright
|
||||||
|
set hidden
|
||||||
|
set confirm
|
||||||
|
set mouse=a
|
||||||
|
|
||||||
|
" Search as you type; keep searches case-sensitive only when capitals are used.
|
||||||
|
set incsearch
|
||||||
|
set hlsearch
|
||||||
|
set ignorecase
|
||||||
|
set smartcase
|
||||||
|
|
||||||
|
" Comfortable editing defaults.
|
||||||
|
set backspace=indent,eol,start
|
||||||
|
set autoindent
|
||||||
|
set smartindent
|
||||||
|
set expandtab
|
||||||
|
set tabstop=2
|
||||||
|
set shiftwidth=2
|
||||||
|
set softtabstop=2
|
||||||
|
|
||||||
|
" Python convention: four-space indentation.
|
||||||
|
augroup simple_indentation
|
||||||
|
autocmd!
|
||||||
|
autocmd FileType python setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4
|
||||||
|
augroup END
|
||||||
|
|
||||||
|
" Use the desktop clipboard when this Vim build supports it.
|
||||||
|
if has('clipboard')
|
||||||
|
set clipboard=unnamedplus
|
||||||
|
endif
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
" Built-in file browser (netrw): tree-style sidebar, no plugin required
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
let g:netrw_banner = 0
|
||||||
|
let g:netrw_liststyle = 3
|
||||||
|
let g:netrw_winsize = 25
|
||||||
|
let g:netrw_keepdir = 1
|
||||||
|
let g:netrw_altv = 1
|
||||||
|
|
||||||
|
" Space-e: toggle the file browser on the left.
|
||||||
|
nnoremap <silent> <leader>e :Lexplore<CR>
|
||||||
|
|
||||||
|
" Useful keys while the file browser is focused:
|
||||||
|
" Enter open file or directory
|
||||||
|
" t open file in a new tab
|
||||||
|
" - go to the parent directory
|
||||||
|
" R rename selected file
|
||||||
|
" D delete selected file
|
||||||
|
" % create a new file
|
||||||
|
" d create a new directory
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
" Tabs
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
nnoremap <silent> <Tab> gt
|
||||||
|
nnoremap <silent> <S-Tab> gT
|
||||||
|
nnoremap <silent> <leader>t :tabnew<CR>
|
||||||
|
nnoremap <silent> <leader>c :tabclose<CR>
|
||||||
|
|
||||||
|
" Move the current tab left or right.
|
||||||
|
nnoremap <silent> <leader>[ :tabmove -1<CR>
|
||||||
|
nnoremap <silent> <leader>] :tabmove +1<CR>
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
" Everyday shortcuts (each is Leader plus one key)
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
nnoremap <silent> <leader>s :write<CR>
|
||||||
|
nnoremap <silent> <leader>q :quit<CR>
|
||||||
|
nnoremap <silent> <leader>x :write<CR>:quit<CR>
|
||||||
|
nnoremap <silent> <leader>/ :nohlsearch<CR>
|
||||||
|
|
||||||
|
" Move between split windows.
|
||||||
|
nnoremap <silent> <leader>h <C-w>h
|
||||||
|
nnoremap <silent> <leader>j <C-w>j
|
||||||
|
nnoremap <silent> <leader>k <C-w>k
|
||||||
|
nnoremap <silent> <leader>l <C-w>l
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
" Project navigation
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
" Search recursively from Vim's current directory.
|
||||||
|
set path+=**
|
||||||
|
|
||||||
|
" Ignore generated and dependency directories.
|
||||||
|
set wildignore+=*/.git/*
|
||||||
|
set wildignore+=*/node_modules/*
|
||||||
|
set wildignore+=*/dist/*
|
||||||
|
set wildignore+=*/build/*
|
||||||
|
set wildignore+=*/coverage/*
|
||||||
|
|
||||||
|
" Space-f: type part of a filename and press Tab.
|
||||||
|
nnoremap <leader>f :find<Space>
|
||||||
|
|
||||||
|
" Space-o: show previously opened files.
|
||||||
|
nnoremap <silent> <leader>o :browse oldfiles<CR>
|
||||||
|
|
||||||
|
" Space-b: list buffers, then type the buffer number and press Enter.
|
||||||
|
nnoremap <leader>b :buffers<CR>:buffer<Space>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function! ProjectSearch()
|
||||||
|
let l:query = input('Search project: ')
|
||||||
|
|
||||||
|
if empty(l:query)
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
|
execute 'silent vimgrep /\V'
|
||||||
|
\ . escape(l:query, '/\')
|
||||||
|
\ . '/gj **/*'
|
||||||
|
|
||||||
|
copen
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
nnoremap <silent> <leader>g :call ProjectSearch()<CR>
|
||||||
|
nnoremap <silent> <leader>n :cnext<CR>
|
||||||
|
nnoremap <silent> <leader>p :cprevious<CR>
|
||||||
|
|
||||||
|
|
||||||
|
function! ReindentFile()
|
||||||
|
let l:view = winsaveview()
|
||||||
|
normal! gg=G
|
||||||
|
call winrestview(l:view)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
nnoremap <silent> <leader>i :call ReindentFile()<CR>
|
||||||
|
xnoremap <silent> <leader>i =gv
|
||||||
|
|
||||||
|
|
||||||
|
" Save all modified files.
|
||||||
|
nnoremap <silent> <leader>a :wall<CR>
|
||||||
|
|
||||||
|
" Splits.
|
||||||
|
nnoremap <silent> <leader>v :vsplit<CR>
|
||||||
|
nnoremap <silent> <leader>- :split<CR>
|
||||||
|
nnoremap <silent> <leader>= <C-w>=
|
||||||
|
|
||||||
|
" Reload the configuration after editing ~/.vimrc.
|
||||||
|
nnoremap <silent> <leader>r :source $MYVIMRC<CR>
|
||||||
|
|
||||||
|
" Quickly leave Insert mode.
|
||||||
|
inoremap jk <Esc>
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
" Keymap help screen
|
||||||
|
" ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
function! ShowKeymapHelp()
|
||||||
|
" Open the help in a temporary buffer.
|
||||||
|
enew
|
||||||
|
silent file Vim-Keymaps
|
||||||
|
|
||||||
|
setlocal buftype=nofile
|
||||||
|
setlocal bufhidden=wipe
|
||||||
|
setlocal noswapfile
|
||||||
|
setlocal nobuflisted
|
||||||
|
setlocal nomodified
|
||||||
|
setlocal nowrap
|
||||||
|
setlocal nonumber
|
||||||
|
setlocal norelativenumber
|
||||||
|
setlocal nocursorline
|
||||||
|
|
||||||
|
call setline(1, [
|
||||||
|
\ 'VIM KEYMAPS',
|
||||||
|
\ '===========',
|
||||||
|
\ '',
|
||||||
|
\ 'Leader key: Space',
|
||||||
|
\ '',
|
||||||
|
\ 'FILES AND BROWSING',
|
||||||
|
\ ' Space e Toggle file browser',
|
||||||
|
\ ' Space f Find project file',
|
||||||
|
\ ' Space o Recently opened files',
|
||||||
|
\ ' Space b List open buffers',
|
||||||
|
\ '',
|
||||||
|
\ 'Inside the file browser:',
|
||||||
|
\ ' Enter Open file or directory',
|
||||||
|
\ ' t Open file in new tab',
|
||||||
|
\ ' - Parent directory',
|
||||||
|
\ ' % Create file',
|
||||||
|
\ ' d Create directory',
|
||||||
|
\ ' R Rename file',
|
||||||
|
\ ' D Delete file',
|
||||||
|
\ '',
|
||||||
|
\ 'TABS',
|
||||||
|
\ ' Tab Next tab',
|
||||||
|
\ ' Shift-Tab Previous tab',
|
||||||
|
\ ' Space t Create new tab',
|
||||||
|
\ ' Space c Close current tab',
|
||||||
|
\ ' Space [ Move tab left',
|
||||||
|
\ ' Space ] Move tab right',
|
||||||
|
\ '',
|
||||||
|
\ 'SEARCH',
|
||||||
|
\ ' Space g Search text in project',
|
||||||
|
\ ' Space n Next search result',
|
||||||
|
\ ' Space p Previous search result',
|
||||||
|
\ ' Space / Clear search highlighting',
|
||||||
|
\ '',
|
||||||
|
\ 'EDITING',
|
||||||
|
\ ' Space s Save current file',
|
||||||
|
\ ' Space a Save all files',
|
||||||
|
\ ' Space i Auto-indent entire file',
|
||||||
|
\ ' jk Leave Insert mode',
|
||||||
|
\ '',
|
||||||
|
\ 'WINDOWS',
|
||||||
|
\ ' Space v Vertical split',
|
||||||
|
\ ' Space - Horizontal split',
|
||||||
|
\ ' Space = Equalize split sizes',
|
||||||
|
\ ' Space h Move to left window',
|
||||||
|
\ ' Space j Move to lower window',
|
||||||
|
\ ' Space k Move to upper window',
|
||||||
|
\ ' Space l Move to right window',
|
||||||
|
\ '',
|
||||||
|
\ 'VIM',
|
||||||
|
\ ' Space q Quit',
|
||||||
|
\ ' Space x Save and quit',
|
||||||
|
\ ' Space r Reload .vimrc',
|
||||||
|
\ ' Space ? Show this screen',
|
||||||
|
\ '',
|
||||||
|
\ 'Press q or Esc to close this screen.',
|
||||||
|
\ 'Press Space e to open the file browser.',
|
||||||
|
\ ])
|
||||||
|
|
||||||
|
setlocal nomodifiable
|
||||||
|
normal! gg
|
||||||
|
|
||||||
|
" These mappings work only inside this help screen.
|
||||||
|
nnoremap <silent> <buffer> q :bdelete!<CR>
|
||||||
|
nnoremap <silent> <buffer> <Esc> :bdelete!<CR>
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" Show the help screen manually.
|
||||||
|
nnoremap <silent> <leader>? :call ShowKeymapHelp()<CR>
|
||||||
|
|
||||||
|
" Detect whether Vim is receiving piped input.
|
||||||
|
let g:vim_reading_stdin = 0
|
||||||
|
|
||||||
|
augroup keymap_help_startup
|
||||||
|
autocmd!
|
||||||
|
autocmd StdinReadPre * let g:vim_reading_stdin = 1
|
||||||
|
|
||||||
|
" Show the help only when Vim starts without a filename.
|
||||||
|
autocmd VimEnter *
|
||||||
|
\ if argc() == 0 && !g:vim_reading_stdin |
|
||||||
|
\ call ShowKeymapHelp() |
|
||||||
|
\ endif
|
||||||
|
augroup END
|
||||||
Reference in New Issue
Block a user