Skip to content

Instantly share code, notes, and snippets.

@h1mesuke
Created June 24, 2010 16:50
Show Gist options
  • Save h1mesuke/451667 to your computer and use it in GitHub Desktop.
Save h1mesuke/451667 to your computer and use it in GitHub Desktop.
Vim - My keymaps for Align.vim
"---------------------------------------
" Align
" Align.vim
" http://www.vim.org/scripts/script.php?script_id=294
let g:Align_xstrlen = 3
augroup MyAlignDefault
autocmd!
autocmd VimEnter * AlignCtrl l: p1P1
augroup END
" suppress unexpected keymaps by cecutil.vim
nmap [Space]swp <Plug>SaveWinPosn
nmap [Space]rwp <Plug>RestoreWinPosn
function! s:post_align_command()
return "u\<C-r>zz"
endfunction
function! s:post_align()
execute 'normal!' s:post_align_command()
endfunction
" :AlignCtrl
nnoremap [Space]A :<C-u>AlignCtrl<Space>
nnoremap [Space]al :<C-u>AlignCtrl l:<CR>
nnoremap [Space]ac :<C-u>AlignCtrl c:<CR>
nnoremap [Space]ar :<C-u>AlignCtrl r:<CR>
nnoremap [Space]aL :<C-u>AlignCtrl l<CR>
nnoremap [Space]aC :<C-u>AlignCtrl c<CR>
nnoremap [Space]aR :<C-u>AlignCtrl r<CR>
nnoremap [Space]a00 :<C-u>AlignCtrl p0P0<CR>
nnoremap [Space]a01 :<C-u>AlignCtrl p0P1<CR>
nnoremap [Space]a10 :<C-u>AlignCtrl p1P0<CR>
nnoremap [Space]a11 :<C-u>AlignCtrl p1P1<CR>
nnoremap [Space]av" :<C-u>AlignCtrl v ^\s*"<CR>
nnoremap [Space]av# :<C-u>AlignCtrl v ^\s*#<CR>
nnoremap [Space]av* :<C-u>AlignCtrl v ^\s*/\*<CR>
nnoremap [Space]av/ :<C-u>AlignCtrl v ^\s*//<CR>
" print the current settings
nnoremap [Space]a? :<C-u>AlignCtrl<CR>
" reset to the <d>efault
nnoremap [Space]ad :<C-u>AlignCtrl l: p1P1<CR>
" :Align
xnoremap <silent><expr> A ":Align =>\\?\<CR>" . <SID>post_align_command()
xnoremap <silent><expr> a: ":Align :\<CR>" . <SID>post_align_command()
xnoremap <silent><expr> ap ":Align! rl:p0 :\<CR>" . <SID>post_align_command()
xnoremap <silent><expr> a- ":Align -\<CR>" . <SID>post_align_command()
xmap <silent><expr> as mode() !=# 'v' ? "\<Leader>tsp" . <SID>post_align_command() : 'as'
xmap <silent><expr> aS "\<Leader>Tsp" . <SID>post_align_command()
xnoremap al :Align[Space]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment