summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-04-14 13:51:37 +0200
committerBram Moolenaar <Bram@vim.org>2016-04-14 13:51:37 +0200
commit81edd171a9465cf99cede4fa4a7b7bca3d538b0f (patch)
treeb9276dfffad0c48e92fa949a6d88770f630ea69f
parentebf7dfa6f121c82f97d2adca3d45fbaba9ad8f7e (diff)
downloadvim-git-81edd171a9465cf99cede4fa4a7b7bca3d538b0f.tar.gz
patch 7.4.1728v7.4.1728
Problem: The help for functions require a space after the "(". Solution: Make CTRL-] on a function name ignore the arguments. (Hirohito Higashi)
-rw-r--r--runtime/doc/eval.txt594
-rw-r--r--src/ex_cmds.c7
-rw-r--r--src/testdir/test_help_tagjump.vim10
-rw-r--r--src/version.c2
4 files changed, 319 insertions, 294 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 93bf3f1ac..2d7beb7c2 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1791,134 +1791,137 @@ See |function-list| for a list grouped by what the function is used for.
USAGE RESULT DESCRIPTION ~
-abs( {expr}) Float or Number absolute value of {expr}
-acos( {expr}) Float arc cosine of {expr}
-add( {list}, {item}) List append {item} to |List| {list}
-alloc_fail( {id}, {countdown}, {repeat})
+abs({expr}) Float or Number absolute value of {expr}
+acos({expr}) Float arc cosine of {expr}
+add({list}, {item}) List append {item} to |List| {list}
+alloc_fail({id}, {countdown}, {repeat})
none make memory allocation fail
-and( {expr}, {expr}) Number bitwise AND
-append( {lnum}, {string}) Number append {string} below line {lnum}
-append( {lnum}, {list}) Number append lines {list} below line {lnum}
+and({expr}, {expr}) Number bitwise AND
+append({lnum}, {string}) Number append {string} below line {lnum}
+append({lnum}, {list}) Number append lines {list} below line {lnum}
argc() Number number of files in the argument list
argidx() Number current index in the argument list
-arglistid( [{winnr} [, {tabnr}]])
- Number argument list id
-argv( {nr}) String {nr} entry of the argument list
+arglistid([{winnr} [, {tabnr}]]) Number argument list id
+argv({nr}) String {nr} entry of the argument list
argv() List the argument list
-assert_equal( {exp}, {act} [, {msg}]) none assert {exp} is equal to {act}
-assert_exception( {error} [, {msg}]) none assert {error} is in v:exception
-assert_fails( {cmd} [, {error}]) none assert {cmd} fails
-assert_false( {actual} [, {msg}]) none assert {actual} is false
-assert_match( {pat}, {text} [, {msg}]) none assert {pat} matches {text}
-assert_notequal( {exp}, {act} [, {msg}]) none assert {exp} is not equal {act}
-assert_notmatch( {pat}, {text} [, {msg}]) none assert {pat} not matches {text}
-assert_true( {actual} [, {msg}]) none assert {actual} is true
-asin( {expr}) Float arc sine of {expr}
-atan( {expr}) Float arc tangent of {expr}
-atan2( {expr}, {expr}) Float arc tangent of {expr1} / {expr2}
-browse( {save}, {title}, {initdir}, {default})
+assert_equal({exp}, {act} [, {msg}]) none assert {exp} is equal to {act}
+assert_exception({error} [, {msg}]) none assert {error} is in v:exception
+assert_fails({cmd} [, {error}]) none assert {cmd} fails
+assert_false({actual} [, {msg}]) none assert {actual} is false
+assert_match({pat}, {text} [, {msg}]) none assert {pat} matches {text}
+assert_notequal({exp}, {act} [, {msg}]) none assert {exp} is not equal {act}
+assert_notmatch({pat}, {text} [, {msg}]) none assert {pat} not matches {text}
+assert_true({actual} [, {msg}]) none assert {actual} is true
+asin({expr}) Float arc sine of {expr}
+atan({expr}) Float arc tangent of {expr}
+atan2({expr}, {expr}) Float arc tangent of {expr1} / {expr2}
+browse({save}, {title}, {initdir}, {default})
String put up a file requester
-browsedir( {title}, {initdir}) String put up a directory requester
-bufexists( {expr}) Number TRUE if buffer {expr} exists
-buflisted( {expr}) Number TRUE if buffer {expr} is listed
-bufloaded( {expr}) Number TRUE if buffer {expr} is loaded
-bufname( {expr}) String Name of the buffer {expr}
-bufnr( {expr} [, {create}]) Number Number of the buffer {expr}
-bufwinnr( {expr}) Number window number of buffer {expr}
-byte2line( {byte}) Number line number at byte count {byte}
-byteidx( {expr}, {nr}) Number byte index of {nr}'th char in {expr}
-byteidxcomp( {expr}, {nr}) Number byte index of {nr}'th char in {expr}
-call( {func}, {arglist} [, {dict}])
+browsedir({title}, {initdir}) String put up a directory requester
+bufexists({expr}) Number TRUE if buffer {expr} exists
+buflisted({expr}) Number TRUE if buffer {expr} is listed
+bufloaded({expr}) Number TRUE if buffer {expr} is loaded
+bufname({expr}) String Name of the buffer {expr}
+bufnr({expr} [, {create}]) Number Number of the buffer {expr}
+bufwinnr({expr}) Number window number of buffer {expr}
+byte2line({byte}) Number line number at byte count {byte}
+byteidx({expr}, {nr}) Number byte index of {nr}'th char in {expr}
+byteidxcomp({expr}, {nr}) Number byte index of {nr}'th char in {expr}
+call({func}, {arglist} [, {dict}])
any call {func} with arguments {arglist}
-ceil( {expr}) Float round {expr} up
-ch_close( {handle}) none close {handle}
-ch_evalexpr( {handle}, {expr} [, {options}])
+ceil({expr}) Float round {expr} up
+ch_close({handle}) none close {handle}
+ch_evalexpr({handle}, {expr} [, {options}])
any evaluate {expr} on JSON {handle}
-ch_evalraw( {handle}, {string} [, {options}])
+ch_evalraw({handle}, {string} [, {options}])
any evaluate {string} on raw {handle}
-ch_getbufnr( {handle}, {what}) Number get buffer number for {handle}/{what}
-ch_getjob( {channel}) Job get the Job of {channel}
-ch_info( {handle}) String info about channel {handle}
-ch_log( {msg} [, {handle}]) none write {msg} in the channel log file
-ch_logfile( {fname} [, {mode}]) none start logging channel activity
-ch_open( {address} [, {options}]) Channel open a channel to {address}
-ch_read( {handle} [, {options}]) String read from {handle}
-ch_readraw( {handle} [, {options}]) String read raw from {handle}
-ch_sendexpr( {handle}, {expr} [, {options}])
+ch_getbufnr({handle}, {what}) Number get buffer number for {handle}/{what}
+ch_getjob({channel}) Job get the Job of {channel}
+ch_info({handle}) String info about channel {handle}
+ch_log({msg} [, {handle}]) none write {msg} in the channel log file
+ch_logfile({fname} [, {mode}]) none start logging channel activity
+ch_open({address} [, {options}])
+ Channel open a channel to {address}
+ch_read({handle} [, {options}]) String read from {handle}
+ch_readraw({handle} [, {options}])
+ String read raw from {handle}
+ch_sendexpr({handle}, {expr} [, {options}])
any send {expr} over JSON {handle}
-ch_sendraw( {handle}, {string} [, {options}])
+ch_sendraw({handle}, {string} [, {options}])
any send {string} over raw {handle}
-ch_setoptions( {handle}, {options}) none set options for {handle}
-ch_status( {handle}) String status of channel {handle}
+ch_setoptions({handle}, {options})
+ none set options for {handle}
+ch_status({handle}) String status of channel {handle}
changenr() Number current change number
-char2nr( {expr}[, {utf8}]) Number ASCII/UTF8 value of first char in {expr}
-cindent( {lnum}) Number C indent for line {lnum}
+char2nr({expr}[, {utf8}]) Number ASCII/UTF8 value of first char in {expr}
+cindent({lnum}) Number C indent for line {lnum}
clearmatches() none clear all matches
-col( {expr}) Number column nr of cursor or mark
-complete( {startcol}, {matches}) none set Insert mode completion
-complete_add( {expr}) Number add completion match
+col({expr}) Number column nr of cursor or mark
+complete({startcol}, {matches}) none set Insert mode completion
+complete_add({expr}) Number add completion match
complete_check() Number check for key typed during completion
-confirm( {msg} [, {choices} [, {default} [, {type}]]])
+confirm({msg} [, {choices} [, {default} [, {type}]]])
Number number of choice picked by user
-copy( {expr}) any make a shallow copy of {expr}
-cos( {expr}) Float cosine of {expr}
-cosh( {expr}) Float hyperbolic cosine of {expr}
-count( {list}, {expr} [, {ic} [, {start}]])
+copy({expr}) any make a shallow copy of {expr}
+cos({expr}) Float cosine of {expr}
+cosh({expr}) Float hyperbolic cosine of {expr}
+count({list}, {expr} [, {ic} [, {start}]])
Number count how many {expr} are in {list}
-cscope_connection( [{num} , {dbpath} [, {prepend}]])
+cscope_connection([{num} , {dbpath} [, {prepend}]])
Number checks existence of cscope connection
-cursor( {lnum}, {col} [, {off}])
+cursor({lnum}, {col} [, {off}])
Number move cursor to {lnum}, {col}, {off}
-cursor( {list}) Number move cursor to position in {list}
-deepcopy( {expr} [, {noref}]) any make a full copy of {expr}
-delete( {fname} [, {flags}]) Number delete the file or directory {fname}
+cursor({list}) Number move cursor to position in {list}
+deepcopy({expr} [, {noref}]) any make a full copy of {expr}
+delete({fname} [, {flags}]) Number delete the file or directory {fname}
did_filetype() Number TRUE if FileType autocommand event used
-diff_filler( {lnum}) Number diff filler lines about {lnum}
-diff_hlID( {lnum}, {col}) Number diff highlighting at {lnum}/{col}
-disable_char_avail_for_testing( {expr}) none test without typeahead
-empty( {expr}) Number TRUE if {expr} is empty
-escape( {string}, {chars}) String escape {chars} in {string} with '\'
-eval( {string}) any evaluate {string} into its value
+diff_filler({lnum}) Number diff filler lines about {lnum}
+diff_hlID({lnum}, {col}) Number diff highlighting at {lnum}/{col}
+disable_char_avail_for_testing({expr})
+ none test without typeahead
+empty({expr}) Number TRUE if {expr} is empty
+escape({string}, {chars}) String escape {chars} in {string} with '\'
+eval({string}) any evaluate {string} into its value
eventhandler() Number TRUE if inside an event handler
-executable( {expr}) Number 1 if executable {expr} exists
-exepath( {expr}) String full path of the command {expr}
-exists( {expr}) Number TRUE if {expr} exists
-extend( {expr1}, {expr2} [, {expr3}])
+executable({expr}) Number 1 if executable {expr} exists
+exepath({expr}) String full path of the command {expr}
+exists({expr}) Number TRUE if {expr} exists
+extend({expr1}, {expr2} [, {expr3}])
List/Dict insert items of {expr2} into {expr1}
-exp( {expr}) Float exponential of {expr}
-expand( {expr} [, {nosuf} [, {list}]])
+exp({expr}) Float exponential of {expr}
+expand({expr} [, {nosuf} [, {list}]])
any expand special keywords in {expr}
-feedkeys( {string} [, {mode}]) Number add key sequence to typeahead buffer
-filereadable( {file}) Number TRUE if {file} is a readable file
-filewritable( {file}) Number TRUE if {file} is a writable file
-filter( {expr}, {string}) List/Dict remove items from {expr} where
+feedkeys({string} [, {mode}]) Number add key sequence to typeahead buffer
+filereadable({file}) Number TRUE if {file} is a readable file
+filewritable({file}) Number TRUE if {file} is a writable file
+filter({expr}, {string}) List/Dict remove items from {expr} where
{string} is 0
-finddir( {name}[, {path}[, {count}]])
+finddir({name}[, {path}[, {count}]])
String find directory {name} in {path}
-findfile( {name}[, {path}[, {count}]])
+findfile({name}[, {path}[, {count}]])
String find file {name} in {path}
-float2nr( {expr}) Number convert Float {expr} to a Number
-floor( {expr}) Float round {expr} down
-fmod( {expr1}, {expr2}) Float remainder of {expr1} / {expr2}
-fnameescape( {fname}) String escape special characters in {fname}
-fnamemodify( {fname}, {mods}) String modify file name
-foldclosed( {lnum}) Number first line of fold at {lnum} if closed
-foldclosedend( {lnum}) Number last line of fold at {lnum} if closed
-foldlevel( {lnum}) Number fold level at {lnum}
+float2nr({expr}) Number convert Float {expr} to a Number
+floor({expr}) Float round {expr} down
+fmod({expr1}, {expr2}) Float remainder of {expr1} / {expr2}
+fnameescape({fname}) String escape special characters in {fname}
+fnamemodify({fname}, {mods}) String modify file name
+foldclosed({lnum}) Number first line of fold at {lnum} if closed
+foldclosedend({lnum}) Number last line of fold at {lnum} if closed
+foldlevel({lnum}) Number fold level at {lnum}
foldtext() String line displayed for closed fold
-foldtextresult( {lnum}) String text for closed fold at {lnum}
+foldtextresult({lnum}) String text for closed fold at {lnum}
foreground() Number bring the Vim window to the foreground
-function( {name} [, {arglist}] [, {dict}])
+function({name} [, {arglist}] [, {dict}])
Funcref reference to function {name}
-garbagecollect( [{atexit}]) none free memory, breaking cyclic references
+garbagecollect([{atexit}]) none free memory, breaking cyclic references
garbagecollect_for_testing() none free memory right now
-get( {list}, {idx} [, {def}]) any get item {idx} from {list} or {def}
-get( {dict}, {key} [, {def}]) any get item {key} from {dict} or {def}
-getbufline( {expr}, {lnum} [, {end}])
+get({list}, {idx} [, {def}]) any get item {idx} from {list} or {def}
+get({dict}, {key} [, {def}]) any get item {key} from {dict} or {def}
+getbufline({expr}, {lnum} [, {end}])
List lines {lnum} to {end} of buffer {expr}
-getbufvar( {expr}, {varname} [, {def}])
+getbufvar({expr}, {varname} [, {def}])
any variable {varname} in buffer {expr}
-getchar( [expr]) Number get one character from the user
+getchar([expr]) Number get one character from the user
getcharmod() Number modifiers for the last typed character
getcharsearch() Dict last character search
getcmdline() String return the current command-line
@@ -1926,268 +1929,271 @@ getcmdpos() Number return cursor position in command-line
getcmdtype() String return current command-line type
getcmdwintype() String return current command-line window type
getcurpos() List position of the cursor
-getcwd( [{winnr} [, {tabnr}]]) String get the current working directory
-getfontname( [{name}]) String name of font being used
-getfperm( {fname}) String file permissions of file {fname}
-getfsize( {fname}) Number size in bytes of file {fname}
-getftime( {fname}) Number last modification time of file
-getftype( {fname}) String description of type of file {fname}
-getline( {lnum}) String line {lnum} of current buffer
-getline( {lnum}, {end}) List lines {lnum} to {end} of current buffer
-getloclist( {nr}) List list of location list items
+getcwd([{winnr} [, {tabnr}]]) String get the current working directory
+getfontname([{name}]) String name of font being used
+getfperm({fname}) String file permissions of file {fname}
+getfsize({fname}) Number size in bytes of file {fname}
+getftime({fname}) Number last modification time of file
+getftype({fname}) String description of type of file {fname}
+getline({lnum}) String line {lnum} of current buffer
+getline({lnum}, {end}) List lines {lnum} to {end} of current buffer
+getloclist({nr}) List list of location list items
getmatches() List list of current matches
getpid() Number process ID of Vim
-getpos( {expr}) List position of cursor, mark, etc.
+getpos({expr}) List position of cursor, mark, etc.
getqflist() List list of quickfix items
-getreg( [{regname} [, 1 [, {list}]]])
+getreg([{regname} [, 1 [, {list}]]])
String or List contents of register
-getregtype( [{regname}]) String type of register
-gettabvar( {nr}, {varname} [, {def}])
+getregtype([{regname}]) String type of register
+gettabvar({nr}, {varname} [, {def}])
any variable {varname} in tab {nr} or {def}
-gettabwinvar( {tabnr}, {winnr}, {name} [, {def}])
+gettabwinvar({tabnr}, {winnr}, {name} [, {def}])
any {name} in {winnr} in tab page {tabnr}
getwinposx() Number X coord in pixels of GUI Vim window
getwinposy() Number Y coord in pixels of GUI Vim window
-getwinvar( {nr}, {varname} [, {def}])
+getwinvar({nr}, {varname} [, {def}])
any variable {varname} in window {nr}
-glob( {expr} [, {nosuf} [, {list} [, {alllinks}]]])
+glob({expr} [, {nosuf} [, {list} [, {alllinks}]]])
any expand file wildcards in {expr}
-glob2regpat( {expr}) String convert a glob pat into a search pat
-globpath( {path}, {expr} [, {nosuf} [, {list} [, {alllinks}]]])
+glob2regpat({expr}) String convert a glob pat into a search pat
+globpath({path}, {expr} [, {nosuf} [, {list} [, {alllinks}]]])
String do glob({expr}) for all dirs in {path}
-has( {feature}) Number TRUE if feature {feature} supported
-has_key( {dict}, {key}) Number TRUE if {dict} has entry {key}
-haslocaldir( [{winnr} [, {tabnr}]])
+has({feature}) Number TRUE if feature {feature} supported
+has_key({dict}, {key}) Number TRUE if {dict} has entry {key}
+haslocaldir([{winnr} [, {tabnr}]])
Number TRUE if the window executed |:lcd|
-hasmapto( {what} [, {mode} [, {abbr}]])
+hasmapto({what} [, {mode} [, {abbr}]])
Number TRUE if mapping to {what} exists
-histadd( {history}, {item}) String add an item to a history
-histdel( {history} [, {item}]) String remove an item from a history
-histget( {history} [, {index}]) String get the item {index} from a history
-histnr( {history}) Number highest index of a history
-hlexists( {name}) Number TRUE if highlight group {name} exists
-hlID( {name}) Number syntax ID of highlight group {name}
+histadd({history}, {item}) String add an item to a history
+histdel({history} [, {item}]) String remove an item from a history
+histget({history} [, {index}]) String get the item {index} from a history
+histnr({history}) Number highest index of a history
+hlexists({name}) Number TRUE if highlight group {name} exists
+hlID({name}) Number syntax ID of highlight group {name}
hostname() String name of the machine Vim is running on
-iconv( {expr}, {from}, {to}) String convert encoding of {expr}
-indent( {lnum}) Number indent of line {lnum}
-index( {list}, {expr} [, {start} [, {ic}]])
+iconv({expr}, {from}, {to}) String convert encoding of {expr}
+indent({lnum}) Number indent of line {lnum}
+index({list}, {expr} [, {start} [, {ic}]])
Number index in {list} where {expr} appears
-input( {prompt} [, {text} [, {completion}]])
+input({prompt} [, {text} [, {completion}]])
String get input from the user
-inputdialog( {p} [, {t} [, {c}]]) String like input() but in a GUI dialog
-inputlist( {textlist}) Number let the user pick from a choice list
+inputdialog({prompt} [, {text} [, {completion}]]])
+ String like input() but in a GUI dialog
+inputlist({textlist}) Number let the user pick from a choice list
inputrestore() Number restore typeahead
inputsave() Number save and clear typeahead
-inputsecret( {prompt} [, {text}]) String like input() but hiding the text
-insert( {list}, {item} [, {idx}]) List insert {item} in {list} [before {idx}]
-invert( {expr}) Number bitwise invert
-isdirectory( {directory}) Number TRUE if {directory} is a directory
-islocked( {expr}) Number TRUE if {expr} is locked
-isnan( {expr}) Number TRUE if {expr} is NaN
-items( {dict}) List key-value pairs in {dict}
-job_getchannel( {job}) Channel get the channel handle for {job}
-job_info( {job}) Dict get information about {job}
-job_setoptions( {job}, {options}) none set options for {job}
-job_start( {command} [, {options}]) Job start a job
-job_status( {job}) String get the status of {job}
-job_stop( {job} [, {how}]) Number stop {job}
-join( {list} [, {sep}]) String join {list} items into one String
-js_decode( {string}) any decode JS style JSON
-js_encode( {expr}) String encode JS style JSON
-json_decode( {string}) any decode JSON
-json_encode( {expr}) String encode JSON
-keys( {dict}) List keys in {dict}
-len( {expr}) Number the length of {expr}
-libcall( {lib}, {func}, {arg}) String call {func} in library {lib} with {arg}
-libcallnr( {lib}, {func}, {arg}) Number idem, but return a Number
-line( {expr}) Number line nr of cursor, last line or mark
-line2byte( {lnum}) Number byte count of line {lnum}
-lispindent( {lnum}) Number Lisp indent for line {lnum}
+inputsecret({prompt} [, {text}]) String like input() but hiding the text
+insert({list}, {item} [, {idx}]) List insert {item} in {list} [before {idx}]
+invert({expr}) Number bitwise invert
+isdirectory({directory}) Number TRUE if {directory} is a directory
+islocked({expr}) Number TRUE if {expr} is locked
+isnan({expr}) Number TRUE if {expr} is NaN
+items({dict}) List key-value pairs in {dict}
+job_getchannel({job}) Channel get the channel handle for {job}
+job_info({job}) Dict get information about {job}
+job_setoptions({job}, {options}) none set options for {job}
+job_start({command} [, {options}])
+ Job start a job
+job_status({job}) String get the status of {job}
+job_stop({job} [, {how}]) Number stop {job}
+join({list} [, {sep}]) String join {list} items into one String
+js_decode({string}) any decode JS style JSON
+js_encode({expr}) String encode JS style JSON
+json_decode({string}) any decode JSON
+json_encode({expr}) String encode JSON
+keys({dict}) List keys in {dict}
+len({expr}) Number the length of {expr}
+libcall({lib}, {func}, {arg}) String call {func} in library {lib} with {arg}
+libcallnr({lib}, {func}, {arg}) Number idem, but return a Number
+line({expr}) Number line nr of cursor, last line or mark
+line2byte({lnum}) Number byte count of line {lnum}
+lispindent({lnum}) Number Lisp indent for line {lnum}
localtime() Number current time
-log( {expr}) Float natural logarithm (base e) of {expr}
-log10( {expr}) Float logarithm of Float {expr} to base 10
-luaeval( {expr}[, {expr}]) any evaluate |Lua| expression
-map( {expr}, {string}) List/Dict change each item in {expr} to {expr}
-maparg( {name}[, {mode} [, {abbr} [, {dict}]]])
+log({expr}) Float natural logarithm (base e) of {expr}
+log10({expr}) Float logarithm of Float {expr} to base 10
+luaeval({expr}[, {expr}]) any evaluate |Lua| expression
+map({expr}, {string}) List/Dict change each item in {expr} to {expr}
+maparg({name}[, {mode} [, {abbr} [, {dict}]]])
String or Dict
rhs of mapping {name} in mode {mode}
-mapcheck( {name}[, {mode} [, {abbr}]])
+mapcheck({name}[, {mode} [, {abbr}]])
String check for mappings matching {name}
-match( {expr}, {pat}[, {start}[, {count}]])
+match({expr}, {pat}[, {start}[, {count}]])
Number position where {pat} matches in {expr}
-matchadd( {group}, {pattern}[, {priority}[, {id} [, {dict}]]])
+matchadd({group}, {pattern}[, {priority}[, {id} [, {dict}]]])
Number highlight {pattern} with {group}
-matchaddpos( {group}, {pos}[, {priority}[, {id}[, {dict}]]])
+matchaddpos({group}, {pos}[, {priority}[, {id}[, {dict}]]])
Number highlight positions with {group}
-matcharg( {nr}) List arguments of |:match|
-matchdelete( {id}) Number delete match identified by {id}
-matchend( {expr}, {pat}[, {start}[, {count}]])
+matcharg({nr}) List arguments of |:match|
+matchdelete({id}) Number delete match identified by {id}
+matchend({expr}, {pat}[, {start}[, {count}]])
Number position where {pat} ends in {expr}
-matchlist( {expr}, {pat}[, {start}[, {count}]])
+matchlist({expr}, {pat}[, {start}[, {count}]])
List match and submatches of {pat} in {expr}
-matchstr( {expr}, {pat}[, {start}[, {count}]])
+matchstr({expr}, {pat}[, {start}[, {count}]])
String {count}'th match of {pat} in {expr}
-matchstrpos( {expr}, {pat}[, {start}[, {count}]])
+matchstrpos({expr}, {pat}[, {start}[, {count}]])
List {count}'th match of {pat} in {expr}
-max( {list}) Number maximum value of items in {list}
-min( {list}) Number minimum value of items in {list}
-mkdir( {name} [, {path} [, {prot}]])
+max({list}) Number maximum value of items in {list}
+min({list}) Number minimum value of items in {list}
+mkdir({name} [, {path} [, {prot}]])
Number create directory {name}
-mode( [expr]) String current editing mode
-mzeval( {expr}) any evaluate |MzScheme| expression
-nextnonblank( {lnum}) Number line nr of non-blank line >= {lnum}
-nr2char( {expr}[, {utf8}]) String single char with ASCII/UTF8 value {expr}
-or( {expr}, {expr}) Number bitwise OR
-pathshorten( {expr}) String shorten directory names in a path
-perleval( {expr}) any evaluate |Perl| expression
-pow( {x}, {y}) Float {x} to the power of {y}
-prevnonblank( {lnum}) Number line nr of non-blank line <= {lnum}
-printf( {fmt}, {expr1}...) String format text
+mode([expr]) String current editing mode
+mzeval({expr}) any evaluate |MzScheme| expression
+nextnonblank({lnum}) Number line nr of non-blank line >= {lnum}
+nr2char({expr}[, {utf8}]) String single char with ASCII/UTF8 value {expr}
+or({expr}, {expr}) Number bitwise OR
+pathshorten({expr}) String shorten directory names in a path
+perleval({expr}) any evaluate |Perl| expression
+pow({x}, {y}) Float {x} to the power of {y}
+prevnonblank({lnum}) Number line nr of non-blank line <= {lnum}
+printf({fmt}, {expr1}...) String format text
pumvisible() Number whether popup menu is visible
-pyeval( {expr}) any evaluate |Python| expression
-py3eval( {expr}) any evaluate |python3| expression
-range( {expr} [, {max} [, {stride}]])
+pyeval({expr}) any evaluate |Python| expression
+py3eval({expr}) any evaluate |python3| expression
+range({expr} [, {max} [, {stride}]])
List items from {expr} to {max}
-readfile( {fname} [, {binary} [, {max}]])
+readfile({fname} [, {binary} [, {max}]])
List get list of lines from file {fname}
-reltime( [{start} [, {end}]]) List get time value
-reltimefloat( {time}) Float turn the time value into a Float
-reltimestr( {time}) String turn time value into a String
-remote_expr( {server}, {string} [, {idvar}])
+reltime([{start} [, {end}]]) List get time value
+reltimefloat({time}) Float turn the time value into a Float
+reltimestr({time}) String turn time value into a String
+remote_expr({server}, {string} [, {idvar}])
String send expression
-remote_foreground( {server}) Number bring Vim server to the foreground
-remote_peek( {serverid} [, {retvar}])
+remote_foreground({server}) Number bring Vim server to the foreground
+remote_peek({serverid} [, {retvar}])
Number check for reply string
-remote_read( {serverid}) String read reply string
-remote_send( {server}, {string} [, {idvar}])
+remote_read({serverid}) String read reply string
+remote_send({server}, {string} [, {idvar}])
String send key sequence
-remove( {list}, {idx} [, {end}]) any remove items {idx}-{end} from {list}
-remove( {dict}, {key}) any remove entry {key} from {dict}
-rename( {from}, {to}) Number rename (move) file from {from} to {to}
-repeat( {expr}, {count}) String repeat {expr} {count} times
-resolve( {filename}) String get filename a shortcut points to
-reverse( {list}) List reverse {list} in-place
-round( {expr}) Float round off {expr}
-screenattr( {row}, {col}) Number attribute at screen position
-screenchar( {row}, {col}) Number character at screen position
+remove({list}, {idx} [, {end}]) any remove items {idx}-{end} from {list}
+remove({dict}, {key}) any remove entry {key} from {dict}
+rename({from}, {to}) Number rename (move) file from {from} to {to}
+repeat({expr}, {count}) String repeat {expr} {count} times
+resolve({filename}) String get filename a shortcut points to
+reverse({list}) List reverse {list} in-place
+round({expr}) Float round off {expr}
+screenattr({row}, {col}) Number attribute at screen position
+screenchar({row}, {col}) Number character at screen position
screencol() Number current cursor column
screenrow() Number current cursor row
-search( {pattern} [, {flags} [, {stopline} [, {timeout}]]])
+search({pattern} [, {flags} [, {stopline} [, {timeout}]]])
Number search for {pattern}
-searchdecl( {name} [, {global} [, {thisblock}]])
+searchdecl({name} [, {global} [, {thisblock}]])
Number search for variable declaration
-searchpair( {start}, {middle}, {end} [, {flags} [, {skip} [...]]])
+searchpair({start}, {middle}, {end} [, {flags} [, {skip} [...]]])
Number search for other end of start/end pair
-searchpairpos( {start}, {middle}, {end} [, {flags} [, {skip} [...]]])
+searchpairpos({start}, {middle}, {end} [, {flags} [, {skip} [...]]])
List search for other end of start/end pair
-searchpos( {pattern} [, {flags} [, {stopline} [, {timeout}]]])
+searchpos({pattern} [, {flags} [, {stopline} [, {timeout}]]])
List search for {pattern}
-server2client( {clientid}, {string})
+server2client({clientid}, {string})
Number send reply string
serverlist() String get a list of available servers
-setbufvar( {expr}, {varname}, {val}) set {varname} in buffer {expr} to {val}
-setcharsearch( {dict}) Dict set character search from {dict}
-setcmdpos( {pos}) Number set cursor position in command-line
-setfperm( {fname}, {mode}) Number set {fname} file permissions to {mode}
-setline( {lnum}, {line}) Number set line {lnum} to {line}
-setloclist( {nr}, {list}[, {action}])
+setbufvar({expr}, {varname}, {val})
+ none set {varname} in buffer {expr} to {val}
+setcharsearch({dict}) Dict set character search from {dict}
+setcmdpos({pos}) Number set cursor position in command-line
+setfperm({fname}, {mode}) Number set {fname} file permissions to {mode}
+setline({lnum}, {line}) Number set line {lnum} to {line}
+setloclist({nr}, {list}[, {action}])
Number modify location list using {list}
-setmatches( {list}) Number restore a list of matches
-setpos( {expr}, {list}) Number set the {expr} position to {list}
-setqflist( {list}[, {action}]) Number modify quickfix list using {list}
-setreg( {n}, {v}[, {opt}]) Number set register to value and type
-settabvar( {nr}, {varname}, {val}) set {varname} in tab page {nr} to {val}
-settabwinvar( {tabnr}, {winnr}, {varname}, {val}) set {varname} in window
- {winnr} in tab page {tabnr} to {val}
-setwinvar( {nr}, {varname}, {val}) set {varname} in window {nr} to {val}
-sha256( {string}) String SHA256 checksum of {string}
-shellescape( {string} [, {special}])
+setmatches({list}) Number restore a list of matches
+setpos({expr}, {list}) Number set the {expr} position to {list}
+setqflist({list}[, {action}]) Number modify quickfix list using {list}
+setreg({n}, {v}[, {opt}]) Number set register to value and type
+settabvar({nr}, {varname}, {val}) none set {varname} in tab page {nr} to {val}
+settabwinvar({tabnr}, {winnr}, {varname}, {val})
+ none set {varname} in window {winnr} in tab
+ page {tabnr} to {val}
+setwinvar({nr}, {varname}, {val}) none set {varname} in window {nr} to {val}
+sha256({string}) String SHA256 checksum of {string}
+shellescape({string} [, {special}])
String escape {string} for use as shell
command argument
shiftwidth() Number effective value of 'shiftwidth'
-simplify( {filename}) String simplify filename as much as possible
-sin( {expr}) Float sine of {expr}
-sinh( {expr}) Float hyperbolic sine of {expr}
-sort( {list} [, {func} [, {dict}]])
+simplify({filename}) String simplify filename as much as possible
+sin({expr}) Float sine of {expr}
+sinh({expr}) Float hyperbolic sine of {expr}
+sort({list} [, {func} [, {dict}]])
List sort {list}, using {func} to compare
-soundfold( {word}) String sound-fold {word}
+soundfold({word}) String sound-fold {word}
spellbadword() String badly spelled word at cursor
-spellsuggest( {word} [, {max} [, {capital}]])
+spellsuggest({word} [, {max} [, {capital}]])
List spelling suggestions
-split( {expr} [, {pat} [, {keepempty}]])
+split({expr} [, {pat} [, {keepempty}]])
List make |List| from {pat} separated {expr}
-sqrt( {expr}) Float square root of {expr}
-str2float( {expr}) Float convert String to Float
-str2nr( {expr} [, {base}]) Number convert String to Number
-strchars( {expr} [, {skipcc}]) Number character length of the String {expr}
-strdisplaywidth( {expr} [, {col}]) Number display length of the String {expr}
-strftime( {format}[, {time}]) String time in specified format
-stridx( {haystack}, {needle}[, {start}])
+sqrt({expr}) Float square root of {expr}
+str2float({expr}) Float convert String to Float
+str2nr({expr} [, {base}]) Number convert String to Number
+strchars({expr} [, {skipcc}]) Number character length of the String {expr}
+strdisplaywidth({expr} [, {col}]) Number display length of the String {expr}
+strftime({format}[, {time}]) String time in specified format
+stridx({haystack}, {needle}[, {start}])
Number index of {needle} in {haystack}
-string( {expr}) String String representation of {expr} value
-strlen( {expr}) Number length of the String {expr}
-strpart( {src}, {start}[, {len}])
+string({expr}) String String representation of {expr} value
+strlen({expr}) Number length of the String {expr}
+strpart({src}, {start}[, {len}])
String {len} characters of {src} at {start}
-strridx( {haystack}, {needle} [, {start}])
+strridx({haystack}, {needle} [, {start}])
Number last index of {needle} in {haystack}
-strtrans( {expr}) String translate string to make it printable
-strwidth( {expr}) Number display cell length of the String {expr}
-submatch( {nr}[, {list}]) String or List
+strtrans({expr}) String translate string to make it printable
+strwidth({expr}) Number display cell length of the String {expr}
+submatch({nr}[, {list}]) String or List
specific match in ":s" or substitute()
-substitute( {expr}, {pat}, {sub}, {flags})
+substitute({expr}, {pat}, {sub}, {flags})
String all {pat} in {expr} replaced with {sub}
-synID( {lnum}, {col}, {trans}) Number syntax ID at {lnum} and {col}
-synIDattr( {synID}, {what} [, {mode}])
+synID({lnum}, {col}, {trans}) Number syntax ID at {lnum} and {col}
+synIDattr({synID}, {what} [, {mode}])
String attribute {what} of syntax ID {synID}
-synIDtrans( {synID}) Number translated syntax ID of {synID}
-synconcealed( {lnum}, {col}) List info about concealing
-synstack( {lnum}, {col}) List stack of syntax IDs at {lnum} and {col}
-system( {expr} [, {input}]) String output of shell command/filter {expr}
-systemlist( {expr} [, {input}]) List output of shell command/filter {expr}
-tabpagebuflist( [{arg}]) List list of buffer numbers in tab page
-tabpagenr( [{arg}]) Number number of current or last tab page
-tabpagewinnr( {tabarg}[, {arg}])
- Number number of current window in tab page
-taglist( {expr}) List list of tags matching {expr}
+synIDtrans({synID}) Number translated syntax ID of {synID}
+synconcealed({lnum}, {col}) List info about concealing
+synstack({lnum}, {col}) List stack of syntax IDs at {lnum} and {col}
+system({expr} [, {input}]) String output of shell command/filter {expr}
+systemlist({expr} [, {input}]) List output of shell command/filter {expr}
+tabpagebuflist([{arg}]) List list of buffer numbers in tab page
+tabpagenr([{arg}]) Number number of current or last tab page
+tabpagewinnr({tabarg}[, {arg}]) Number number of current window in tab page
+taglist({expr}) List list of tags matching {expr}
tagfiles() List tags files used
-tan( {expr}) Float tangent of {expr}
-tanh( {expr}) Float hyperbolic tangent of {expr}
+tan({expr}) Float tangent of {expr}
+tanh({expr}) Float hyperbolic tangent of {expr}
tempname() String name for a temporary file
-timer_start( {time}, {callback} [, {options}])
+timer_start({time}, {callback} [, {options}])
Number create a timer
-timer_stop( {timer}) none stop a timer
-tolower( {expr}) String the String {expr} switched to lowercase
-toupper( {expr}) String the String {expr} switched to uppercase
-tr( {src}, {fromstr}, {tostr}) String translate chars of {src} in {fromstr}
+timer_stop({timer}) none stop a timer
+tolower({expr}) String the String {expr} switched to lowercase
+toupper({expr}) String the String {expr} switched to uppercase
+tr({src}, {fromstr}, {tostr}) String translate chars of {src} in {fromstr}
to chars in {tostr}
-trunc( {expr}) Float truncate Float {expr}
-type( {name}) Number type of variable {name}
-undofile( {name}) String undo file name for {name}
+trunc({expr}) Float truncate Float {expr}
+type({name}) Number type of variable {name}
+undofile({name}) String undo file name for {name}
undotree() List undo file tree
-uniq( {list} [, {func} [, {dict}]])
+uniq({list} [, {func} [, {dict}]])
List remove adjacent duplicates from a list
-values( {dict}) List values in {dict}
-virtcol( {expr}) Number screen column of cursor or mark
-visualmode( [expr]) String last visual mode used
+values({dict}) List values in {dict}
+virtcol({expr}) Number screen column of cursor or mark
+visualmode([expr]) String last visual mode used
wildmenumode() Number whether 'wildmenu' mode is active
-win_findbuf( {bufnr}) List find windows containing {bufnr}
-win_getid( [{win} [, {tab}]]) Number get window ID for {win} in {tab}
-win_gotoid( {expr}) Number go to window with ID {expr}
-win_id2tabwin( {expr}) List get tab and window nr from window ID
-win_id2win( {expr}) Number get window nr from window ID
-winbufnr( {nr}) Number buffer number of window {nr}
+win_findbuf({bufnr}) List find windows containing {bufnr}
+win_getid([{win} [, {tab}]]) Number get window ID for {win} in {tab}
+win_gotoid({expr}) Number go to window with ID {expr}
+win_id2tabwin({expr}) List get tab and window nr from window ID
+win_id2win({expr}) Number get window nr from window ID
+winbufnr({nr}) Number buffer number of window {nr}
wincol() Number window column of the cursor
-winheight( {nr}) Number height of window {nr}
+winheight({nr}) Number height of window {nr}
winline() Number window line of the cursor
-winnr( [{expr}]) Number number of current window
+winnr([{expr}]) Number number of current window
winrestcmd() String returns command to restore window sizes
-winrestview( {dict}) none restore view of current window
+winrestview({dict}) none restore view of current window
winsaveview() Dict save view of current window
-winwidth( {nr}) Number width of window {nr}
+winwidth({nr}) Number width of window {nr}
wordcount() Dict get byte/char/word statistics
-writefile( {list}, {fname} [, {flags}])
+writefile({list}, {fname} [, {flags}])
Number write list of lines to file {fname}
-xor( {expr}, {expr}) Number bitwise XOR
+xor({expr}, {expr}) Number bitwise XOR
abs({expr}) *abs()*
@@ -4754,9 +4760,9 @@ json_encode({expr}) *json_encode()*
String in double quotes (possibly null)
Funcref not possible, error
List as an array (possibly null); when
- used recursively: []
+ used recursively: []
Dict as an object (possibly null); when
- used recursively: {}
+ used recursively: {}
v:false "false"
v:true "true"
v:none "null"
@@ -6098,7 +6104,7 @@ searchpos({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *searchpos()*
< In this example "submatch" is 2 when a lowercase letter is
found |/\l|, 3 when an uppercase letter is found |/\u|.
-server2client( {clientid}, {string}) *server2client()*
+server2client({clientid}, {string}) *server2client()*
Send a reply string to {clientid}. The most recent {clientid}
that sent a string can be retrieved with expand("<client>").
{only available when compiled with the |+clientserver| feature}
@@ -6611,7 +6617,7 @@ sqrt({expr}) *sqrt()*
{only available when compiled with the |+float| feature}
-str2float( {expr}) *str2float()*
+str2float({expr}) *str2float()*
Convert String {expr} to a Float. This mostly works the same
as when using a floating point number in an expression, see
|floating-point-format|. But it's a bit more permissive.
@@ -6626,7 +6632,7 @@ str2float( {expr}) *str2float()*
< {only available when compiled with the |+float| feature}
-str2nr( {expr} [, {base}]) *str2nr()*
+str2nr({expr} [, {base}]) *str2nr()*
Convert string {expr} to a number.
{base} is the conversion base, it can be 2, 8, 10 or 16.
When {base} is omitted base 10 is used. This also means that
@@ -7136,7 +7142,7 @@ timer_start({time}, {callback} [, {options}])
{options} is a dictionary. Supported entries:
"repeat" Number of times to repeat calling the
- callback. -1 means forever.
+ callback. -1 means forever.
Example: >
func MyHandler(timer)
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index daac3ae8d..d83dc405c 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -6204,6 +6204,13 @@ find_help_tags(
*d++ = *s;
/*
+ * If tag contains "({" or "([", tag terminates at the "(".
+ * This is for help on functions, e.g.: abs({expr}).
+ */
+ if (*s == '(' && (s[1] == '{' || s[1] =='['))
+ break;
+
+ /*
* If tag starts with ', toss everything after a second '. Fixes
* CTRL-] on 'option'. (would include the trailing '.').
*/
diff --git a/src/testdir/test_help_tagjump.vim b/src/testdir/test_help_tagjump.vim
index d1e9ad422..f486583bc 100644
--- a/src/testdir/test_help_tagjump.vim
+++ b/src/testdir/test_help_tagjump.vim
@@ -15,4 +15,14 @@ func Test_help_tagjump()
call assert_equal("help", &filetype)
call assert_true(getline('.') =~ "\\*'buflisted'\\*")
helpclose
+
+ exec "help! abs({expr})"
+ call assert_equal("help", &filetype)
+ call assert_true(getline('.') =~ '\*abs()\*')
+ helpclose
+
+ exec "help! arglistid([{winnr}"
+ call assert_equal("help", &filetype)
+ call assert_true(getline('.') =~ '\*arglistid()\*')
+ helpclose
endfunc
diff --git a/src/version.c b/src/version.c
index 6c94bc64b..a8556a838 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1728,
+/**/
1727,
/**/
1726,