diff --git a/plugin/indent-object.vim b/plugin/indent-object.vim index afb8edd..31294f6 100644 --- a/plugin/indent-object.vim +++ b/plugin/indent-object.vim @@ -25,16 +25,28 @@ "-------------------------------------------------------------------------------- " Mappings excluding line below. -onoremap ai :cal HandleTextObjectMapping(0, 0, 0, [line("."), line("."), col("."), col(".")]) -onoremap ii :cal HandleTextObjectMapping(1, 0, 0, [line("."), line("."), col("."), col(".")]) -vnoremap ai :cal HandleTextObjectMapping(0, 0, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv -vnoremap ii :cal HandleTextObjectMapping(1, 0, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv +onoremap IndentObject-ai :cal HandleTextObjectMapping(0, 0, 0, [line("."), line("."), col("."), col(".")]) +onoremap IndentObject-ii :cal HandleTextObjectMapping(1, 0, 0, [line("."), line("."), col("."), col(".")]) +vnoremap IndentObject-ai :cal HandleTextObjectMapping(0, 0, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv +vnoremap IndentObject-ii :cal HandleTextObjectMapping(1, 0, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv " Mappings including line below. -onoremap aI :cal HandleTextObjectMapping(0, 1, 0, [line("."), line("."), col("."), col(".")]) -onoremap iI :cal HandleTextObjectMapping(1, 1, 0, [line("."), line("."), col("."), col(".")]) -vnoremap aI :cal HandleTextObjectMapping(0, 1, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv -vnoremap iI :cal HandleTextObjectMapping(1, 1, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv +onoremap IndentObject-aI :cal HandleTextObjectMapping(0, 1, 0, [line("."), line("."), col("."), col(".")]) +onoremap IndentObject-iI :cal HandleTextObjectMapping(1, 1, 0, [line("."), line("."), col("."), col(".")]) +vnoremap IndentObject-aI :cal HandleTextObjectMapping(0, 1, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv +vnoremap IndentObject-iI :cal HandleTextObjectMapping(1, 1, 1, [line("'<"), line("'>"), col("'<"), col("'>")])gv + +if !exists("g:indent_object_no_mappings") || !g:indent_object_no_mappings + omap ai IndentObject-ai + omap ii IndentObject-ii + vmap ai IndentObject-ai + vmap ai IndentObject-ii + + omap aI IndentObject-aI + omap iI IndentObject-iI + vmap aI IndentObject-aI + vmap aI IndentObject-iI +endif let s:l0 = -1 let s:l1 = -1 @@ -215,7 +227,7 @@ function! TextObject(inner, incbelow, vis, range, count) let s:l1 = line("'>") let s:c0 = col("'<") let s:c1 = col("'>") - normal gv + normal! gv endfunction