view runtime/indent/README.txt @ 12204:b49b03085f39 v8.0.0982

patch 8.0.0982: cannot use a terminal when 'encoding' is non-utf8 multi-byte commit https://github.com/vim/vim/commit/740c433c5909e3118dc4a7c42028f8a8b78a353b Author: Bram Moolenaar <Bram@vim.org> Date: Mon Aug 21 22:01:27 2017 +0200 patch 8.0.0982: cannot use a terminal when 'encoding' is non-utf8 multi-byte Problem: When 'encoding' is set to a multi-byte encoding other than utf-8 the characters from ther terminal are messed up. Solution: Convert displayed text from utf-8 to 'encoding' for MS-Windows. (Yasuhiro Matsumoto, close #2000)
author Christian Brabandt <cb@256bit.org>
date Mon, 21 Aug 2017 22:15:05 +0200
parents 3fc0f57ecb91
children 19b757c6c6a7
line wrap: on
line source

This directory contains files to automatically compute the indent for a
type of file.

If you want to add your own indent file for your personal use, read the docs
at ":help indent-expression".  Looking at the existing files should give you
inspiration.

If you make a new indent file which would be useful for others, please send it
to Bram@vim.org.  Include instructions for detecting the file type for this
language, by file name extension or by checking a few lines in the file.
And please stick to the rules below.

If you have remarks about an existing file, send them to the maintainer of
that file.  Only when you get no response send a message to Bram@vim.org.

If you are the maintainer of an indent file and make improvements, e-mail the
new version to Bram@vim.org.


Rules for making an indent file:

You should use this check for "b:did_indent":

	" Only load this indent file when no other was loaded yet.
	if exists("b:did_indent")
	  finish
	endif
	let b:did_indent = 1

Always use ":setlocal" to set 'indentexpr'.  This avoids it being carried over
to other buffers.

To trigger the indenting after typing a word like "endif", add the word to the
'cinkeys' option with "+=".

You normally set 'indentexpr' to evaluate a function and then define that
function.  That function only needs to be defined once for as long as Vim is
running.  Add a test if the function exists and use ":finish", like this:
	if exists("*GetMyIndent")
	  finish
	endif

The user may have several options set unlike you, try to write the file such
that it works with any option settings.  Also be aware of certain features not
being compiled in.