diff options
author | Jesse Luehrs <doy@tozt.net> | 2018-03-08 23:21:09 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2018-03-08 23:21:09 -0500 |
commit | db886704bd7410e11215fc8dbb0c516e6ac2eafa (patch) | |
tree | 576b58e8fe354ba09554cb14db56bb75764fe8ea /README.md | |
parent | 2cc0413d129da422ac8566e54b1b86909dc08dcc (diff) | |
download | vim-textobj-db886704bd7410e11215fc8dbb0c516e6ac2eafa.tar.gz vim-textobj-db886704bd7410e11215fc8dbb0c516e6ac2eafa.zip |
docs
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..e3c2042 --- /dev/null +++ b/README.md @@ -0,0 +1,45 @@ +# Overview + +This plugin allows configuration of custom text objects, to perform actions on +additional sections of text than Vim has built-in. + +# Installation + +This plugin can be installed as a standard Vim package (see `:help packages`). +Simply clone this repository into ~/.vim/pack/plugins/start/vim-textobj to +install the Vim files for this plugin. + +# Configuration + +Configuration is done by setting the `g:textobj_defs` variable to a dict which +maps input keys to a list containing the text object type and arguments to pass +to that type. For instance: + +``` + let g:textobj_defs = { + \ '/': ['paired'], + \ 'r': ['paired', '/'], + \ '\|': ['paired'], + \ 'f': ['fold'], + \ ',': ['arg'], + \} +``` + +This defines five text object characters: `/` and `r` (for regex?) for text +within matching pairs of `/` characters, `|` for text within matching pairs of +`|` characters, `f` for text within the current fold, and `,` for the current +argument in a comma-separated function argument list. This, for instance, +allows you to use `di/` to delete the text within a Perl regex. + +Currently, these are the available types: + +* `paired`: matches text between pairs of characters. Takes one optional + argument for the character to match between, which defaults to the input + character. + +* `fold`: matches the text within the current fold. Takes no arguments. + +* `arg`: matches the current function argument. Given text like + `foo(bar, b|az, quux)` (where `|` is the cursor location), if `,` is the + input character, `da,` will result in `foo(bar, |quux)` and `di,` will + result in `foo(bar, |, quux)` . Takes no arguments. |