*parinfer.txt*	Automagic Lisp Bracket Balancing

==============================================================================
I. INTRODUCTION		    *parinfer* *parinfer-rust* *parinfer-introduction*

This plugin does smart things to maintain balanced parentheses as you type in
lisp code.

Unlike most lisp-editing plugins, this plugin does not add new mappings for
structural editing.  Instead, it has modes to infer brackets from indentation,
to infer indentation from brackets, and a smart mode that looks at the change
you are making to determine which method to use.

It is based on a Rust port of Shaun Lebron's "parinfer" library.  This manual
covers the Vim plugin part only - you should visit the parinfer website for
information on what parinfer itself does for you.

            Parinfer info https://shaunlebron.github.io/parinfer/
	   parinfer-rust  https://github.com/eraserhd/parinfer-rust

This plugin can be used with |vim-sexp|, although you will probably want to
set |g:sexp_enable_insert_mode_mappings| to 0.  Otherwise, you will not be
able to type brackets.

==============================================================================
II. COMMANDS 						   *parinfer-commands*

                                                                *:ParinferLog*
With an argument, starts logging each handled event to the named file.
Without an argument, stops logging. This is useful for debugging Vim event
handling and submitting bug reports.

								*:ParinferOff*
Disables parinfer processing. This is useful when a file is too large to be
processed quickly or when a file contains badly balanced parentheses that you
want to preserve.

								 *:ParinferOn*
Enables parinfer processing. Parinfer starts enabled.

==============================================================================
III. OPTIONS				       		    *parinfer-options*

							     *g:parinfer_mode*
The mode used to process buffer changes: 'smart', 'indent', or 'paren'.
>
        " Default
        let g:parinfer_mode = 'smart'
<
						    *g:parinfer_force_balance*
In smart mode and indent mode, parinfer will sometimes leave unbalanced
brackets around the cursor and fix them when the cursor moves away.  When this
option is set to 1 or |v:true|, the brackets will be fixed immediately (and
fixed again when text is inserted).
>
        " Default
	let g:parinfer_force_balance = 0
<
						       *g:parinfer_dylib_path*
This is the path to the dynamically loaded library which contains the Rust
port of parinfer.  This should be detected automatically for most normal
installation methods.  If it doesn't, please report a bug.
