@@ -2026,7 +2026,7 @@ append({lnum}, {text}) Number append {text} below line {lnum}
20262026appendbufline({expr} , {lnum} , {text} )
20272027 Number append {text} below line {lnum}
20282028 in buffer {expr}
2029- argc( [{winid} ]) Number number of files in the argument list
2029+ argc([{winid} ]) Number number of files in the argument list
20302030argidx() Number current index in the argument list
20312031arglistid([{winnr} [, {tabnr} ]]) Number argument list id
20322032argv({nr} [, {winid} ]) String {nr} entry of the argument list
@@ -2206,6 +2206,7 @@ gettabvar({nr}, {varname} [, {def}])
22062206 any variable {varname} in tab {nr} or {def}
22072207gettabwinvar({tabnr} , {winnr} , {name} [, {def} ])
22082208 any {name} in {winnr} in tab page {tabnr}
2209+ gettagstack([{nr} ]) Dict get the tag stack of window {nr}
22092210getwininfo([{winid} ]) List list of info about each window
22102211getwinpos([{timeout} ]) List X and Y coord in pixels of the Vim window
22112212getwinposx() Number X coord in pixels of the Vim window
@@ -2307,7 +2308,6 @@ perleval({expr}) any evaluate |Perl| expression
23072308pow({x} , {y} ) Float {x} to the power of {y}
23082309prevnonblank({lnum} ) Number line nr of non-blank line <= {lnum}
23092310printf({fmt} , {expr1} ...) String format text
2310- prompt_addtext({buf} , {expr} ) none add text to a prompt buffer
23112311prompt_setcallback({buf} , {expr} ) none set prompt callback function
23122312prompt_setinterrupt({buf} , {text} ) none set prompt interrupt function
23132313prompt_setprompt({buf} , {text} ) none set prompt text
@@ -2378,12 +2378,14 @@ settabvar({nr}, {varname}, {val}) none set {varname} in tab page {nr} to {val}
23782378settabwinvar({tabnr} , {winnr} , {varname} , {val} )
23792379 none set {varname} in window {winnr} in tab
23802380 page {tabnr} to {val}
2381+ settagstack({nr} , {dict} [, {action} ])
2382+ Number modify tag stack using {dict}
23812383setwinvar({nr} , {varname} , {val} ) none set {varname} in window {nr} to {val}
23822384sha256({string} ) String SHA256 checksum of {string}
23832385shellescape({string} [, {special} ])
23842386 String escape {string} for use as shell
23852387 command argument
2386- shiftwidth() Number effective value of 'shiftwidth'
2388+ shiftwidth([ {col} ]) Number effective value of 'shiftwidth'
23872389simplify({filename} ) String simplify filename as much as possible
23882390sin({expr} ) Float sine of {expr}
23892391sinh({expr} ) Float hyperbolic sine of {expr}
@@ -4971,6 +4973,34 @@ gettabwinvar({tabnr}, {winnr}, {varname} [, {def}]) *gettabwinvar()*
49714973 To obtain all window-local variables use: >
49724974 gettabwinvar({tabnr}, {winnr}, '&')
49734975
4976+ gettagstack([{nr} ]) *gettagstack()*
4977+ The result is a Dict, which is the tag stack of window {nr} .
4978+ {nr} can be the window number or the | window-ID | .
4979+ When {nr} is not specified, the current window is used.
4980+ When window {nr} doesn't exist, an empty Dict is returned.
4981+
4982+ The returned dictionary contains the following entries:
4983+ curidx Current index in the stack. When at
4984+ top of the stack, set to (length + 1).
4985+ Index of bottom of the stack is 1.
4986+ items List of items in the stack. Each item
4987+ is a dictionary containing the
4988+ entries described below.
4989+ length Number of entries in the stack.
4990+
4991+ Each item in the stack is a dictionary with the following
4992+ entries:
4993+ bufnr buffer number of the current jump
4994+ from cursor position before the tag jump.
4995+ See | getpos() | for the format of the
4996+ returned list.
4997+ matchnr current matching tag number. Used when
4998+ multiple matching tags are found for a
4999+ name.
5000+ tagname name of the tag
5001+
5002+ See | tagstack | for more information about the tag stack.
5003+
49745004getwininfo([{winid} ]) *getwininfo()*
49755005 Returns information about windows as a List with Dictionaries.
49765006
@@ -7535,6 +7565,37 @@ settabwinvar({tabnr}, {winnr}, {varname}, {val}) *settabwinvar()*
75357565 :call settabwinvar(3, 2, "myvar", "foobar")
75367566< This function is not available in the | sandbox | .
75377567
7568+ settagstack({nr} , {dict} [, {action} ]) *settagstack()*
7569+ Modify the tag stack of the window {nr} using {dict} .
7570+ {nr} can be the window number or the | window-ID | .
7571+
7572+ For a list of supported items in {dict} , refer to
7573+ | gettagstack() |
7574+ *E962*
7575+ If {action} is not present or is set to 'r', then the tag
7576+ stack is replaced. If {action} is set to 'a', then new entries
7577+ from {dict} are pushed onto the tag stack.
7578+
7579+ Returns zero for success, -1 for failure.
7580+
7581+ Examples:
7582+ Set current index of the tag stack to 4: >
7583+ call settagstack(1005, {'curidx' : 4})
7584+
7585+ < Empty the tag stack of window 3: >
7586+ call settagstack(3, {'items' : []})
7587+
7588+ < Push a new item onto the tag stack: >
7589+ let pos = [bufnr('myfile.txt'), 10, 1, 0]
7590+ let newtag = [{'tagname' : 'mytag', 'from' : pos}]
7591+ call settagstack(2, {'items' : newtag}, 'a')
7592+
7593+ < Save and restore the tag stack: >
7594+ let stack = gettagstack(1003)
7595+ " do something else
7596+ call settagstack(1003, stack)
7597+ unlet stack
7598+ <
75387599setwinvar({nr} , {varname} , {val} ) *setwinvar()*
75397600 Like | settabwinvar() | for the current tab page.
75407601 Examples: >
@@ -7577,11 +7638,17 @@ shellescape({string} [, {special}]) *shellescape()*
75777638< See also | ::S | .
75787639
75797640
7580- shiftwidth() *shiftwidth()*
7641+ shiftwidth([ {col} ] ) *shiftwidth()*
75817642 Returns the effective value of 'shiftwidth' . This is the
75827643 'shiftwidth' value unless it is zero, in which case it is the
75837644 'tabstop' value. This function was introduced with patch
7584- 7.3.694 in 2012, everybody should have it by now.
7645+ 7.3.694 in 2012, everybody should have it by now (however it
7646+ did not allow for the optional {col} argument until 8.1.542).
7647+
7648+ When there is one argument {col} this is used as column number
7649+ for which to return the 'shiftwidth' value. This matters for the
7650+ 'vartabstop' feature. If the 'vartabstop' setting is enabled and
7651+ no {col} argument is given, column 1 will be assumed.
75857652
75867653
75877654simplify({filename} ) *simplify()*
0 commit comments