Buffer and Pane navigation
Changed keybindings so `<leader>` generally operates on panes and `<ctrl>` generally operates on buffers. Also adjusted some colors.
This commit is contained in:
@@ -1,71 +0,0 @@
|
|||||||
# vim-keys
|
|
||||||
|
|
||||||
A cheat sheet for my vim customizations
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Macros
|
|
||||||
|
|
||||||
* `q<register><commands>q` - record macro
|
|
||||||
* `@<register>` - replay macro
|
|
||||||
|
|
||||||
## Spelling
|
|
||||||
|
|
||||||
* `]s` - move to next misspelled word
|
|
||||||
* `[s` - move to previous misspelled word
|
|
||||||
* `z=` - suggest correction
|
|
||||||
* `<ctrl>-p` - auto-complete spelling suggestions
|
|
||||||
* `<F10>` - toggle spellcheck
|
|
||||||
|
|
||||||
## Highlights
|
|
||||||
|
|
||||||
* `<leader><space>` - turn off search highlight
|
|
||||||
* `<Leader>C` - toggle row/column cursor
|
|
||||||
|
|
||||||
## Buffers
|
|
||||||
|
|
||||||
* `<ctrl>H` - to move to previous BUFFER
|
|
||||||
* `<ctrl>L` - to move to next BUFFER
|
|
||||||
* `<ctrl>J` - to move to lower PANE
|
|
||||||
* `<ctrl>K` - to move to upper PANE
|
|
||||||
|
|
||||||
* `<leader>s` - to save buffer
|
|
||||||
* `<leader>c` - to close buffer
|
|
||||||
* `<leader>a` - to abandon unsaved buffer
|
|
||||||
|
|
||||||
* `<leader>x` - bring up the copy buffer
|
|
||||||
* `<F5>` - refresh buffer
|
|
||||||
|
|
||||||
* `<leader>r` - open registers
|
|
||||||
|
|
||||||
## FZF
|
|
||||||
|
|
||||||
* `<leader>f` - open FZF files
|
|
||||||
* `<leader><leader>` - open FZF files
|
|
||||||
* `<leader>b` - open FZF buffers
|
|
||||||
|
|
||||||
## Editing
|
|
||||||
|
|
||||||
* <ctrl-x><ctrl-f> - autocomplete filename (insert mode)
|
|
||||||
* gf - go to file (if exists) (normal mode)
|
|
||||||
|
|
||||||
## [Text bubbling](http://vimcasts.org/episodes/bubbling-text/)
|
|
||||||
|
|
||||||
After text selection (`<ctrl-v>`)
|
|
||||||
|
|
||||||
* `<ctrl>k` - bubble up
|
|
||||||
* `<ctrl>j` - bubble down
|
|
||||||
|
|
||||||
## Date and Time stamps
|
|
||||||
|
|
||||||
* `<F2>` - insert %Y-%m-%d %H:%M:%S
|
|
||||||
* `<F3>` - insert %Y-%m-%d %a
|
|
||||||
* `<F4>` - insert %H:%M
|
|
||||||
|
|
||||||
## Snippets
|
|
||||||
pre-made files inserted from `.vim/templates`
|
|
||||||
|
|
||||||
* `,sh` - insert shell header
|
|
||||||
* `,md` - insert markdown header
|
|
||||||
* `,ban` - insert ASCII banner
|
|
||||||
|
|
||||||
117
.vimrc
117
.vimrc
@@ -1,20 +1,20 @@
|
|||||||
" ---------------------------------------------------------------------------------------------------------------------
|
" ---------------------------------------------------------------------------------------------------------------------
|
||||||
" ==> .vimrc
|
" ==> .vimrc
|
||||||
|
|
||||||
set nocompatible " be iMproved, required
|
set nocompatible " be iMproved, required
|
||||||
set number " turn on line numbers
|
set number " turn on line numbers
|
||||||
set relativenumber " lines are numbered relative to current line
|
set relativenumber " lines are numbered relative to current line
|
||||||
set scrolloff=10 " number of lines to keep above and below the cursor
|
set scrolloff=10 " number of lines to keep above and below the cursor
|
||||||
set belloff=all " no sound/flash on errors
|
set belloff=all " no sound/flash on errors
|
||||||
|
|
||||||
set autoread " set to auto read when a file is changed from the outside
|
set autoread " set to auto read when a file is changed from the outside
|
||||||
set cursorcolumn " highlight current column
|
set cursorcolumn " highlight current column
|
||||||
set cursorline " highlight current row
|
set cursorline " highlight current row
|
||||||
set incsearch " make search act like search in modern browsers
|
set incsearch " make search act like search in modern browsers
|
||||||
set showmatch " show matching brackets when text indicator is over them
|
set showmatch " show matching brackets when text indicator is over them
|
||||||
|
|
||||||
set term=xterm-256color " LOTS of colors
|
set term=xterm-256color " LOTS of colors
|
||||||
set path+=** " Search Globally
|
set path+=** " Search Globally
|
||||||
set wildmenu
|
set wildmenu
|
||||||
|
|
||||||
autocmd! bufwritepost .vimrc source ~/.vimrc " When vimrc is edited, reload it
|
autocmd! bufwritepost .vimrc source ~/.vimrc " When vimrc is edited, reload it
|
||||||
@@ -31,9 +31,18 @@ augroup end
|
|||||||
syntax enable
|
syntax enable
|
||||||
filetype plugin on
|
filetype plugin on
|
||||||
|
|
||||||
|
" Personal Notes settings
|
||||||
|
" export NOTES_DIR=<your notes directory>
|
||||||
|
" before use
|
||||||
|
|
||||||
" Open my personal helpfile
|
" Go to index of notes and set working directory to my notes
|
||||||
nmap <leader>h :e $HOME/.vim/vim-keys-help.md<CR>
|
nnoremap <leader>ww :e $NOTES_DIR/Index.md<CR>:cd $NOTES_DIR<CR>
|
||||||
|
|
||||||
|
" <leader>[ to grep inside Notes files
|
||||||
|
" I got the idea from here [step 6: search contents of your notes](https://www.edwinwenink.xyz/posts/42-vim_notetaking/#step-6-search-contents-of-your-notes)
|
||||||
|
" but I'm not sold on the idea yet.
|
||||||
|
command! -nargs=1 Ngrep vimgrep "<args>" $NOTES_DIR/**/*.md | copen
|
||||||
|
nnoremap <leader>[ :Ngrep
|
||||||
|
|
||||||
" ---------------------------------------------------------------------------------------------------------------------
|
" ---------------------------------------------------------------------------------------------------------------------
|
||||||
" ==> From Vim Zero: https://www.oliversherouse.com/2017/08/21/vim_zero.html
|
" ==> From Vim Zero: https://www.oliversherouse.com/2017/08/21/vim_zero.html
|
||||||
@@ -146,14 +155,13 @@ au BufWinEnter * normal zR
|
|||||||
colorscheme automation
|
colorscheme automation
|
||||||
"colorscheme advantage
|
"colorscheme advantage
|
||||||
|
|
||||||
"highlight colorcolumn ctermbg=darkyellow guibg=darkyellow
|
hi cursorcolumn cterm=NONE ctermbg=black ctermfg=white
|
||||||
"highlight VertSplit ctermbg=black guibg=black ctermfg=darkgray guifg=darkgray
|
hi visual cterm=NONE ctermbg=darkyellow ctermfg=white
|
||||||
highlight cursorcolumn cterm=NONE ctermbg=black ctermfg=white guibg=darkred guifg=white
|
|
||||||
"highlight visual cterm=NONE ctermbg=darkred ctermfg=white guibg=darkred guifg=white
|
|
||||||
|
|
||||||
" In split windows - active buffer status bar is yellow, inactive is black
|
set fillchars=vert:│,fold:┈,diff:┈
|
||||||
"hi statuslinenc ctermbg=gray ctermfg=black
|
" In split windows - active buffer status bar is green, inactive is yellow
|
||||||
"hi statusline ctermbg=yellow ctermfg=green
|
hi StatusLine ctermfg=white ctermbg=darkgreen cterm=bold
|
||||||
|
hi StatusLineNC ctermfg=white ctermbg=darkyellow cterm=none
|
||||||
|
|
||||||
" ---------------------------------------------------------------------------------------------------------------------
|
" ---------------------------------------------------------------------------------------------------------------------
|
||||||
" => Statusline
|
" => Statusline
|
||||||
@@ -183,60 +191,63 @@ nnoremap <leader>C :set cursorline! cursorcolumn!<CR>
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------------------------------------------------------
|
" ---------------------------------------------------------------------------------------------------------------------
|
||||||
" ==> Keymaps: Buffers & Panes
|
" ==> Keymaps: Buffers & Panes
|
||||||
|
" BUFFERS with ctrl
|
||||||
|
" PANES with <leader>
|
||||||
|
" when possible
|
||||||
|
|
||||||
" <ctrl>H to move to previous BUFFER
|
" <c-h/l> to navigate BUFFERS
|
||||||
nnoremap <C-H> :bp <enter>
|
nnoremap <c-h> :bp <enter>
|
||||||
|
nnoremap <c-l> :bn <enter>
|
||||||
|
|
||||||
" <ctrl>L to move to next BUFFER
|
" <c-b> to open FZF buffers
|
||||||
nnoremap <C-L> :bn <enter>
|
map <c-b> :Buffers<CR>
|
||||||
|
|
||||||
" <ctrl>J to move to lower PANE
|
" <c-s> to save buffer
|
||||||
nnoremap <C-J> <C-W><C-J>
|
nnoremap <c-s> :w <enter>
|
||||||
|
|
||||||
" <ctrl>K to move to upper PANE
|
" <c-q> to quit vim
|
||||||
nnoremap <C-K> <C-W><C-K>
|
nnoremap <c-q> :q <enter>
|
||||||
|
|
||||||
" <leader> b to open FZF buffers
|
" <c-a> to abandon buffer
|
||||||
map <leader>b :Buffers<CR>
|
nnoremap <c-a> :bd! <enter>
|
||||||
|
|
||||||
" <leader>s to save buffer
|
" <c-c>c to close buffer
|
||||||
nnoremap <leader>s :w <enter>
|
nnoremap <c-c> :bd <enter>
|
||||||
|
|
||||||
" <leader>q to quit vim
|
" <c-x> to bring up the copy buffer
|
||||||
nnoremap <leader>q :q <enter>
|
noremap <c-x> "+
|
||||||
|
|
||||||
" <leader>c to close buffer
|
|
||||||
nnoremap <leader>c :bd <enter>
|
|
||||||
|
|
||||||
" <leader>a to abandon buffer
|
|
||||||
nnoremap <leader>a :bd! <enter>
|
|
||||||
|
|
||||||
" <leader>x to bring up the copy buffer
|
|
||||||
noremap <leader>x "+
|
|
||||||
|
|
||||||
" <F5> to refresh buffer
|
" <F5> to refresh buffer
|
||||||
nnoremap <F5> <C-R>:checktime <CR>
|
nnoremap <F5> <c-r>:checktime <CR>
|
||||||
|
|
||||||
|
" <leader>h/j/k/l to navigate PANES
|
||||||
|
nnoremap <leader>h <c-w><c-h>
|
||||||
|
nnoremap <leader>l <c-w><c-l>
|
||||||
|
nnoremap <leader>j <c-w><c-j>
|
||||||
|
nnoremap <leader>k <c-w><c-k>
|
||||||
|
|
||||||
|
" <leader>c to close pane
|
||||||
|
nnoremap <leader>c <c-w>q
|
||||||
|
|
||||||
" ---------------------------------------------------------------------------------------------------------------------
|
" ---------------------------------------------------------------------------------------------------------------------
|
||||||
" ==> Keymaps
|
" ==> Keymaps
|
||||||
|
|
||||||
" <leader>f to open FZF files
|
" <leader><leader> to open FZF files
|
||||||
map <leader>f :Files<CR>
|
|
||||||
map <leader><leader> :Files<CR>
|
map <leader><leader> :Files<CR>
|
||||||
|
|
||||||
" <leader>r to open registers
|
" <c-r> to open registers
|
||||||
map <leader>r :registers<CR>
|
map <c-r> :registers<CR>
|
||||||
|
|
||||||
" ---------------------------------------------------------------------------------------------------------------------
|
" ---------------------------------------------------------------------------------------------------------------------
|
||||||
" ==> Keymaps: Text bubbling (http://vimcasts.org/episodes/bubbling-text/)
|
" ==> Keymaps: Text bubbling (http://vimcasts.org/episodes/bubbling-text/)
|
||||||
|
|
||||||
" Bubble single lines
|
" Bubble single lines
|
||||||
nmap <C-k> ddkP
|
nmap <c-k> ddkP
|
||||||
nmap <C-j> ddp
|
nmap <c-j> ddp
|
||||||
|
|
||||||
" Bubble multiple lines
|
" Bubble multiple lines
|
||||||
vmap <C-k> xkP`[V`]
|
vmap <c-k> xkP`[V`]
|
||||||
vmap <C-j> xp`[V`]
|
vmap <c-j> xp`[V`]
|
||||||
|
|
||||||
" ---------------------------------------------------------------------------------------------------------------------
|
" ---------------------------------------------------------------------------------------------------------------------
|
||||||
" ==> Keymaps: Movement keys
|
" ==> Keymaps: Movement keys
|
||||||
|
|||||||
Reference in New Issue
Block a user