comparison runtime/doc/options.txt @ 28942:6cdf55afaae9 v8.2.4993

patch 8.2.4993: smart/C/lisp indenting is optional Commit: https://github.com/vim/vim/commit/8e145b82464a21ee4fdf7948f04e2a1d505f8bfa Author: Bram Moolenaar <Bram@vim.org> Date: Sat May 21 20:17:31 2022 +0100 patch 8.2.4993: smart/C/lisp indenting is optional Problem: smart/C/lisp indenting is optional, which makes the code more complex, while it only reduces the executable size a bit. Solution: Graduate FEAT_CINDENT, FEAT_SMARTINDENT and FEAT_LISP.
author Bram Moolenaar <Bram@vim.org>
date Sat, 21 May 2022 21:30:04 +0200
parents b96ceb97e896
children 3e6e6b4e74eb
comparison
equal deleted inserted replaced
28941:f17de8647585 28942:6cdf55afaae9
1619 security reasons. 1619 security reasons.
1620 1620
1621 *'cindent'* *'cin'* *'nocindent'* *'nocin'* 1621 *'cindent'* *'cin'* *'nocindent'* *'nocin'*
1622 'cindent' 'cin' boolean (default off) 1622 'cindent' 'cin' boolean (default off)
1623 local to buffer 1623 local to buffer
1624 {not available when compiled without the |+cindent|
1625 feature}
1626 Enables automatic C program indenting. See 'cinkeys' to set the keys 1624 Enables automatic C program indenting. See 'cinkeys' to set the keys
1627 that trigger reindenting in insert mode and 'cinoptions' to set your 1625 that trigger reindenting in insert mode and 'cinoptions' to set your
1628 preferred indent style. 1626 preferred indent style.
1629 If 'indentexpr' is not empty, it overrules 'cindent'. 1627 If 'indentexpr' is not empty, it overrules 'cindent'.
1630 If 'lisp' is not on and both 'indentexpr' and 'equalprg' are empty, 1628 If 'lisp' is not on and both 'indentexpr' and 'equalprg' are empty,
1637 NOTE: This option is reset when 'compatible' is set. 1635 NOTE: This option is reset when 'compatible' is set.
1638 1636
1639 *'cinkeys'* *'cink'* 1637 *'cinkeys'* *'cink'*
1640 'cinkeys' 'cink' string (default "0{,0},0),0],:,0#,!^F,o,O,e") 1638 'cinkeys' 'cink' string (default "0{,0},0),0],:,0#,!^F,o,O,e")
1641 local to buffer 1639 local to buffer
1642 {not available when compiled without the |+cindent|
1643 feature}
1644 A list of keys that, when typed in Insert mode, cause reindenting of 1640 A list of keys that, when typed in Insert mode, cause reindenting of
1645 the current line. Only used if 'cindent' is on and 'indentexpr' is 1641 the current line. Only used if 'cindent' is on and 'indentexpr' is
1646 empty. 1642 empty.
1647 For the format of this option see |cinkeys-format|. 1643 For the format of this option see |cinkeys-format|.
1648 See |C-indenting|. 1644 See |C-indenting|.
1649 1645
1650 *'cinoptions'* *'cino'* 1646 *'cinoptions'* *'cino'*
1651 'cinoptions' 'cino' string (default "") 1647 'cinoptions' 'cino' string (default "")
1652 local to buffer 1648 local to buffer
1653 {not available when compiled without the |+cindent|
1654 feature}
1655 The 'cinoptions' affect the way 'cindent' reindents lines in a C 1649 The 'cinoptions' affect the way 'cindent' reindents lines in a C
1656 program. See |cinoptions-values| for the values of this option, and 1650 program. See |cinoptions-values| for the values of this option, and
1657 |C-indenting| for info on C indenting in general. 1651 |C-indenting| for info on C indenting in general.
1658 1652
1659 1653
1660 *'cinwords'* *'cinw'* 1654 *'cinwords'* *'cinw'*
1661 'cinwords' 'cinw' string (default "if,else,while,do,for,switch") 1655 'cinwords' 'cinw' string (default "if,else,while,do,for,switch")
1662 local to buffer 1656 local to buffer
1663 {not available when compiled without both the
1664 |+cindent| and the |+smartindent| features}
1665 These keywords start an extra indent in the next line when 1657 These keywords start an extra indent in the next line when
1666 'smartindent' or 'cindent' is set. For 'cindent' this is only done at 1658 'smartindent' or 'cindent' is set. For 'cindent' this is only done at
1667 an appropriate place (inside {}). 1659 an appropriate place (inside {}).
1668 Note that 'ignorecase' isn't used for 'cinwords'. If case doesn't 1660 Note that 'ignorecase' isn't used for 'cinwords'. If case doesn't
1669 matter, include the keyword both the uppercase and lowercase: 1661 matter, include the keyword both the uppercase and lowercase:
1670 "if,If,IF". 1662 "if,If,IF".
1671 1663
1672 *'cinscopedecls'* *'cinsd'* 1664 *'cinscopedecls'* *'cinsd'*
1673 'cinscopedecls' 'cinsd' string (default "public,protected,private") 1665 'cinscopedecls' 'cinsd' string (default "public,protected,private")
1674 local to buffer 1666 local to buffer
1675 {not available when compiled without the |+cindent|
1676 feature}
1677 Keywords that are interpreted as a C++ scope declaration by |cino-g|. 1667 Keywords that are interpreted as a C++ scope declaration by |cino-g|.
1678 Useful e.g. for working with the Qt framework that defines additional 1668 Useful e.g. for working with the Qt framework that defines additional
1679 scope declarations "signals", "public slots" and "private slots": > 1669 scope declarations "signals", "public slots" and "private slots": >
1680 set cinscopedecls+=signals,public\ slots,private\ slots 1670 set cinscopedecls+=signals,public\ slots,private\ slots
1681 1671
4576 NOTE: This option is reset when 'compatible' is set. 4566 NOTE: This option is reset when 'compatible' is set.
4577 4567
4578 *'indentexpr'* *'inde'* 4568 *'indentexpr'* *'inde'*
4579 'indentexpr' 'inde' string (default "") 4569 'indentexpr' 'inde' string (default "")
4580 local to buffer 4570 local to buffer
4581 {not available when compiled without the |+cindent| 4571 {not available when compiled without the |+eval|
4582 or |+eval| features} 4572 feature}
4583 Expression which is evaluated to obtain the proper indent for a line. 4573 Expression which is evaluated to obtain the proper indent for a line.
4584 It is used when a new line is created, for the |=| operator and 4574 It is used when a new line is created, for the |=| operator and
4585 in Insert mode as specified with the 'indentkeys' option. 4575 in Insert mode as specified with the 'indentkeys' option.
4586 When this option is not empty, it overrules the 'cindent' and 4576 When this option is not empty, it overrules the 'cindent' and
4587 'smartindent' indenting. When 'lisp' is set, this option is 4577 'smartindent' indenting. When 'lisp' is set, this option is
4622 4612
4623 4613
4624 *'indentkeys'* *'indk'* 4614 *'indentkeys'* *'indk'*
4625 'indentkeys' 'indk' string (default "0{,0},0),0],:,0#,!^F,o,O,e") 4615 'indentkeys' 'indk' string (default "0{,0},0),0],:,0#,!^F,o,O,e")
4626 local to buffer 4616 local to buffer
4627 {not available when compiled without the |+cindent|
4628 feature}
4629 A list of keys that, when typed in Insert mode, cause reindenting of 4617 A list of keys that, when typed in Insert mode, cause reindenting of
4630 the current line. Only happens if 'indentexpr' isn't empty. 4618 the current line. Only happens if 'indentexpr' isn't empty.
4631 The format is identical to 'cinkeys', see |indentkeys-format|. 4619 The format is identical to 'cinkeys', see |indentkeys-format|.
4632 See |C-indenting| and |indent-expression|. 4620 See |C-indenting| and |indent-expression|.
4633 4621
5011 though! 4999 though!
5012 5000
5013 *'lisp'* *'nolisp'* 5001 *'lisp'* *'nolisp'*
5014 'lisp' boolean (default off) 5002 'lisp' boolean (default off)
5015 local to buffer 5003 local to buffer
5016 {not available when compiled without the |+lispindent|
5017 feature}
5018 Lisp mode: When <Enter> is typed in insert mode set the indent for 5004 Lisp mode: When <Enter> is typed in insert mode set the indent for
5019 the next line to Lisp standards (well, sort of). Also happens with 5005 the next line to Lisp standards (well, sort of). Also happens with
5020 "cc" or "S". 'autoindent' must also be on for this to work. The 'p' 5006 "cc" or "S". 'autoindent' must also be on for this to work. The 'p'
5021 flag in 'cpoptions' changes the method of indenting: Vi compatible or 5007 flag in 'cpoptions' changes the method of indenting: Vi compatible or
5022 better. Also see 'lispwords'. 5008 better. Also see 'lispwords'.
5026 This option is not used when 'paste' is set. 5012 This option is not used when 'paste' is set.
5027 5013
5028 *'lispwords'* *'lw'* 5014 *'lispwords'* *'lw'*
5029 'lispwords' 'lw' string (default is very long) 5015 'lispwords' 'lw' string (default is very long)
5030 global or local to buffer |global-local| 5016 global or local to buffer |global-local|
5031 {not available when compiled without the |+lispindent|
5032 feature}
5033 Comma-separated list of words that influence the Lisp indenting. 5017 Comma-separated list of words that influence the Lisp indenting.
5034 |'lisp'| 5018 |'lisp'|
5035 5019
5036 *'list'* *'nolist'* 5020 *'list'* *'nolist'*
5037 'list' boolean (default off) 5021 'list' boolean (default off)
7220 NOTE: This option is reset when 'compatible' is set. 7204 NOTE: This option is reset when 'compatible' is set.
7221 7205
7222 *'smartindent'* *'si'* *'nosmartindent'* *'nosi'* 7206 *'smartindent'* *'si'* *'nosmartindent'* *'nosi'*
7223 'smartindent' 'si' boolean (default off) 7207 'smartindent' 'si' boolean (default off)
7224 local to buffer 7208 local to buffer
7225 {not available when compiled without the
7226 |+smartindent| feature}
7227 Do smart autoindenting when starting a new line. Works for C-like 7209 Do smart autoindenting when starting a new line. Works for C-like
7228 programs, but can also be used for other languages. 'cindent' does 7210 programs, but can also be used for other languages. 'cindent' does
7229 something like this, works better in most cases, but is more strict, 7211 something like this, works better in most cases, but is more strict,
7230 see |C-indenting|. When 'cindent' is on or 'indentexpr' is set, 7212 see |C-indenting|. When 'cindent' is on or 'indentexpr' is set,
7231 setting 'si' has no effect. 'indentexpr' is a more advanced 7213 setting 'si' has no effect. 'indentexpr' is a more advanced