GitHub - vim-scripts/indent-motion: Vim motions to the start and end of the current indentation-delimited block
This is a mirror of http://www.vim.org/scripts/script.php?script_id=3724 indent-motion is a Vim plugin which maps `<Leader>[` and `<Leader>]` in normal, visual, and operator-pending modes to move to the beginning and end (respectively) of your current indentation-delimited block (`<Leader>` refers to your current user-defined "mapleader", which is `\` by default). For example (using JavaScript): function foo(a, b, c) { var x = 1; var y = 2; if (x == y) { alert("This will never happen!"); ++y; } } In the above snippet, if the cursor is positioned on the `var x = 1;` line, then `<Leader>]` will move the cursor to the next-to-last line (closing brace of the conditional block) and `<Leader>[` will move it back to the original location. If the cursor is positioned on the `alert` call, then `<Leader>]` will move down 1 line to `++y;`. If one of the mappings is executed on an empty line (containing no characters, not even whitespace), then the assumed indentation will be that of the next non-empty line, where "next" is in the direction of the requested motion. Currently, the mappings are not configurable, but this can easily be changed upon request.