1-- File containing table with all functions. 2-- 3-- Keys: 4-- 5-- args Number of arguments, list with maximum and minimum number of arguments 6-- or list with a minimum number of arguments only. Defaults to zero 7-- arguments. 8-- base For methods: the argument to use as the base argument (1-indexed): 9-- base->method() 10-- Defaults to BASE_NONE (function cannot be used as a method). 11-- func Name of the C function which implements the VimL function. Defaults to 12-- `f_{funcname}`. 13 14local varargs = function(nr) 15 return {nr} 16end 17 18-- Usable with the base key: use the last function argument as the method base. 19-- Value is from funcs.h file. "BASE_" prefix is omitted. 20local LAST = "BASE_LAST" 21 22return { 23 funcs={ 24 abs={args=1, base=1}, 25 acos={args=1, base=1, func="float_op_wrapper", data="&acos"}, -- WJMc 26 add={args=2, base=1}, 27 ['and']={args=2, base=1}, 28 api_info={}, 29 append={args=2, base=LAST}, 30 appendbufline={args=3, base=LAST}, 31 argc={args={0, 1}}, 32 argidx={}, 33 arglistid={args={0, 2}}, 34 argv={args={0, 2}}, 35 asin={args=1, base=1, func="float_op_wrapper", data="&asin"}, -- WJMc 36 assert_beeps={args={1}, base=1}, 37 assert_equal={args={2, 3}, base=2}, 38 assert_equalfile={args={2, 3}, base=1}, 39 assert_exception={args={1, 2}}, 40 assert_fails={args={1, 3}, base=1}, 41 assert_false={args={1, 2}, base=1}, 42 assert_inrange={args={3, 4}, base=3}, 43 assert_match={args={2, 3}, base=2}, 44 assert_nobeep={args={1}}, 45 assert_notequal={args={2, 3}, base=2}, 46 assert_notmatch={args={2, 3}, base=2}, 47 assert_report={args=1, base=1}, 48 assert_true={args={1, 2}, base=1}, 49 atan={args=1, base=1, func="float_op_wrapper", data="&atan"}, 50 atan2={args=2, base=1}, 51 browse={args=4}, 52 browsedir={args=2}, 53 bufadd={args=1, base=1}, 54 bufexists={args=1, base=1}, 55 buffer_exists={args=1, base=1, func='f_bufexists'}, -- obsolete 56 buffer_name={args={0, 1}, func='f_bufname'}, -- obsolete 57 buffer_number={args={0, 1}, func='f_bufnr'}, -- obsolete 58 buflisted={args=1, base=1}, 59 bufload={args=1, base=1}, 60 bufloaded={args=1, base=1}, 61 bufname={args={0, 1}, base=1}, 62 bufnr={args={0, 2}, base=1}, 63 bufwinid={args=1, base=1}, 64 bufwinnr={args=1, base=1}, 65 byte2line={args=1, base=1}, 66 byteidx={args=2, base=1}, 67 byteidxcomp={args=2, base=1}, 68 call={args={2, 3}, base=1}, 69 ceil={args=1, base=1, func="float_op_wrapper", data="&ceil"}, 70 changenr={}, 71 chanclose={args={1, 2}}, 72 chansend={args=2}, 73 char2nr={args={1, 2}, base=1}, 74 charidx={args={2, 3}}, 75 chdir={args=1, base=1}, 76 cindent={args=1, base=1}, 77 clearmatches={args={0, 1}, base=1}, 78 col={args=1, base=1}, 79 complete={args=2, base=2}, 80 complete_add={args=1, base=1}, 81 complete_check={}, 82 complete_info={args={0, 1}, base=1}, 83 confirm={args={1, 4}, base=1}, 84 copy={args=1, base=1}, 85 cos={args=1, base=1, func="float_op_wrapper", data="&cos"}, 86 cosh={args=1, base=1, func="float_op_wrapper", data="&cosh"}, 87 count={args={2, 4}, base=1}, 88 cscope_connection={args={0, 3}}, 89 ctxget={args={0, 1}}, 90 ctxpop={}, 91 ctxpush={args={0, 1}}, 92 ctxset={args={1, 2}}, 93 ctxsize={}, 94 cursor={args={1, 3}, base=1}, 95 debugbreak={args={1, 1}, base=1}, 96 deepcopy={args={1, 2}, base=1}, 97 delete={args={1,2}, base=1}, 98 deletebufline={args={2,3}, base=1}, 99 dictwatcheradd={args=3}, 100 dictwatcherdel={args=3}, 101 did_filetype={}, 102 diff_filler={args=1, base=1}, 103 diff_hlID={args=2, base=1}, 104 empty={args=1, base=1}, 105 environ={}, 106 escape={args=2, base=1}, 107 eval={args=1, base=1}, 108 eventhandler={}, 109 executable={args=1, base=1}, 110 execute={args={1, 2}, base=1}, 111 exepath={args=1, base=1}, 112 exists={args=1, base=1}, 113 exp={args=1, base=1, func="float_op_wrapper", data="&exp"}, 114 expand={args={1, 3}, base=1}, 115 expandcmd={args=1, base=1}, 116 extend={args={2, 3}, base=1}, 117 feedkeys={args={1, 2}, base=1}, 118 file_readable={args=1, base=1, func='f_filereadable'}, -- obsolete 119 filereadable={args=1, base=1}, 120 filewritable={args=1, base=1}, 121 filter={args=2, base=1}, 122 finddir={args={1, 3}, base=1}, 123 findfile={args={1, 3}, base=1}, 124 flatten={args={1, 2}}, 125 float2nr={args=1, base=1}, 126 floor={args=1, base=1, func="float_op_wrapper", data="&floor"}, 127 fmod={args=2, base=1}, 128 fnameescape={args=1, base=1}, 129 fnamemodify={args=2, base=1}, 130 foldclosed={args=1, base=1}, 131 foldclosedend={args=1, base=1}, 132 foldlevel={args=1, base=1}, 133 foldtext={}, 134 foldtextresult={args=1, base=1}, 135 foreground={}, 136 funcref={args={1, 3}, base=1}, 137 ['function']={args={1, 3}, base=1}, 138 garbagecollect={args={0, 1}}, 139 get={args={2, 3}, base=1}, 140 getbufinfo={args={0, 1}}, 141 getbufline={args={2, 3}, base=1}, 142 getbufvar={args={2, 3}, base=1}, 143 getchangelist={args={0, 1}, base=1}, 144 getchar={args={0, 1}}, 145 getcharmod={}, 146 getcharsearch={}, 147 getcharstr={args={0, 1}}, 148 getcmdline={}, 149 getcmdpos={}, 150 getcmdtype={}, 151 getcmdwintype={}, 152 getcompletion={args={2, 3}, base=1}, 153 getcurpos={}, 154 getcwd={args={0, 2}, base=1}, 155 getenv={args={1}, base=1}, 156 getfontname={args={0, 1}}, 157 getfperm={args=1, base=1}, 158 getfsize={args=1, base=1}, 159 getftime={args=1, base=1}, 160 getftype={args=1, base=1}, 161 getjumplist={args={0, 2}, base=1}, 162 getline={args={1, 2}, base=1}, 163 getloclist={args={1, 2}}, 164 getmarklist={args={0, 1}}, 165 getmatches={args={0, 1}}, 166 getmousepos={}, 167 getpid={}, 168 getpos={args=1, base=1}, 169 getqflist={args={0, 1}}, 170 getreg={args={0, 3}, base=1}, 171 getreginfo={args={0, 1}, base=1}, 172 getregtype={args={0, 1}, base=1}, 173 gettabinfo={args={0, 1}, base=1}, 174 gettabvar={args={2, 3}, base=1}, 175 gettabwinvar={args={3, 4}, base=1}, 176 gettagstack={args={0, 1}, base=1}, 177 getwininfo={args={0, 1}, base=1}, 178 getwinpos={args={0, 1}, base=1}, 179 getwinposx={}, 180 getwinposy={}, 181 getwinvar={args={2, 3}, base=1}, 182 glob={args={1, 4}, base=1}, 183 glob2regpat={args=1, base=1}, 184 globpath={args={2, 5}, base=2}, 185 has={args=1}, 186 has_key={args=2, base=1}, 187 haslocaldir={args={0, 2}, base=1}, 188 hasmapto={args={1, 3}, base=1}, 189 highlightID={args=1, base=1, func='f_hlID'}, -- obsolete 190 highlight_exists={args=1, base=1, func='f_hlexists'}, -- obsolete 191 histadd={args=2, base=2}, 192 histdel={args={1, 2}, base=1}, 193 histget={args={1, 2}, base=1}, 194 histnr={args=1, base=1}, 195 hlID={args=1, base=1}, 196 hlexists={args=1, base=1}, 197 hostname={}, 198 iconv={args=3, base=1}, 199 indent={args=1, base=1}, 200 index={args={2, 4}, base=1}, 201 input={args={1, 3}, base=1}, 202 inputdialog={args={1, 3}, base=1}, 203 inputlist={args=1, base=1}, 204 inputrestore={}, 205 inputsave={}, 206 inputsecret={args={1, 2}, base=1}, 207 insert={args={2, 3}, base=1}, 208 interrupt={args=0}, 209 invert={args=1, base=1}, 210 isdirectory={args=1, base=1}, 211 isinf={args=1, base=1}, 212 islocked={args=1, base=1}, 213 isnan={args=1, base=1}, 214 id={args=1}, 215 items={args=1, base=1}, 216 jobclose={args={1, 2}, func="f_chanclose"}, 217 jobpid={args=1}, 218 jobresize={args=3}, 219 jobsend={args=2, func="f_chansend"}, 220 jobstart={args={1, 2}}, 221 jobstop={args=1}, 222 jobwait={args={1, 2}}, 223 join={args={1, 2}, base=1}, 224 json_decode={args=1, base=1}, 225 json_encode={args=1, base=1}, 226 keys={args=1, base=1}, 227 last_buffer_nr={}, -- obsolete 228 len={args=1, base=1}, 229 libcall={args=3, base=3}, 230 libcallnr={args=3, base=3}, 231 line={args={1, 2}, base=1}, 232 line2byte={args=1, base=1}, 233 lispindent={args=1, base=1}, 234 list2str={args={1, 2}, base=1}, 235 localtime={}, 236 log={args=1, base=1, func="float_op_wrapper", data="&log"}, 237 log10={args=1, base=1, func="float_op_wrapper", data="&log10"}, 238 luaeval={args={1, 2}, base=1}, 239 map={args=2, base=1}, 240 maparg={args={1, 4}, base=1}, 241 mapcheck={args={1, 3}, base=1}, 242 match={args={2, 4}, base=1}, 243 matchadd={args={2, 5}, base=1}, 244 matchaddpos={args={2, 5}, base=1}, 245 matcharg={args=1, base=1}, 246 matchdelete={args={1, 2}, base=1}, 247 matchend={args={2, 4}, base=1}, 248 matchlist={args={2, 4}, base=1}, 249 matchstr={args={2, 4}, base=1}, 250 matchstrpos={args={2,4}, base=1}, 251 max={args=1, base=1}, 252 menu_get={args={1, 2}}, 253 min={args=1, base=1}, 254 mkdir={args={1, 3}, base=1}, 255 mode={args={0, 1}, base=1}, 256 msgpackdump={args={1, 2}}, 257 msgpackparse={args=1}, 258 nextnonblank={args=1, base=1}, 259 nr2char={args={1, 2}, base=1}, 260 ['or']={args=2, base=1}, 261 pathshorten={args=1, base=1}, 262 pow={args=2, base=1}, 263 prevnonblank={args=1, base=1}, 264 printf={args=varargs(1), base=2}, 265 prompt_getprompt={args=1}, 266 prompt_setcallback={args={2, 2}, base=1}, 267 prompt_setinterrupt={args={2, 2}, base=1}, 268 prompt_setprompt={args={2, 2}, base=1}, 269 pum_getpos={}, 270 pumvisible={}, 271 py3eval={args=1, base=1}, 272 pyeval={args=1, base=1}, 273 pyxeval={args=1, base=1}, 274 perleval={args=1, base=1}, 275 range={args={1, 3}, base=1}, 276 readdir={args={1, 2}, base=1}, 277 readfile={args={1, 3}, base=1}, 278 reg_executing={}, 279 reg_recording={}, 280 reltime={args={0, 2}, base=1}, 281 reltimefloat={args=1, base=1}, 282 reltimestr={args=1, base=1}, 283 remove={args={2, 3}, base=1}, 284 rename={args=2, base=1}, 285 ['repeat']={args=2, base=1}, 286 resolve={args=1, base=1}, 287 reverse={args=1, base=1}, 288 round={args=1, base=1, func="float_op_wrapper", data="&round"}, 289 rpcnotify={args=varargs(2)}, 290 rpcrequest={args=varargs(2)}, 291 rpcstart={args={1, 2}}, 292 rpcstop={args=1}, 293 rubyeval={args=1, base=1}, 294 screenattr={args=2}, 295 screenchar={args=2}, 296 screenchars={args=2}, 297 screencol={}, 298 screenpos={args=3}, 299 screenrow={}, 300 screenstring={args=2}, 301 search={args={1, 4}}, 302 searchcount={args={0,1}}, 303 searchdecl={args={1, 3}}, 304 searchpair={args={3, 7}}, 305 searchpairpos={args={3, 7}}, 306 searchpos={args={1, 4}}, 307 serverlist={}, 308 serverstart={args={0, 1}}, 309 serverstop={args=1}, 310 setbufline={args=3}, 311 setbufvar={args=3}, 312 setcharsearch={args=1}, 313 setcmdpos={args=1}, 314 setenv={args=2}, 315 setfperm={args=2, base=1}, 316 setline={args=2}, 317 setloclist={args={2, 4}}, 318 setmatches={args={1, 2}}, 319 setpos={args=2}, 320 setqflist={args={1, 3}}, 321 setreg={args={2, 3}}, 322 settabvar={args=3}, 323 settabwinvar={args=4}, 324 settagstack={args={2, 3}}, 325 setwinvar={args=3}, 326 sha256={args=1}, 327 shellescape={args={1, 2}}, 328 shiftwidth={args={0, 1}}, 329 sign_define={args={1, 2}}, 330 sign_getdefined={args={0, 1}}, 331 sign_getplaced={args={0, 2}}, 332 sign_jump={args={3, 3}}, 333 sign_place={args={4, 5}}, 334 sign_placelist={args={1}}, 335 sign_undefine={args={0, 1}}, 336 sign_unplace={args={1, 2}}, 337 sign_unplacelist={args={1}}, 338 simplify={args=1}, 339 sin={args=1, base=1, func="float_op_wrapper", data="&sin"}, 340 sinh={args=1, base=1, func="float_op_wrapper", data="&sinh"}, 341 sockconnect={args={2,3}}, 342 sort={args={1, 3}, base=1}, 343 soundfold={args=1}, 344 stdioopen={args=1}, 345 spellbadword={args={0, 1}}, 346 spellsuggest={args={1, 3}}, 347 split={args={1, 3}, base=1}, 348 sqrt={args=1, base=1, func="float_op_wrapper", data="&sqrt"}, 349 stdpath={args=1}, 350 str2float={args=1, base=1}, 351 str2list={args={1, 2}, base=1}, 352 str2nr={args={1, 3}}, 353 strcharpart={args={2, 3}}, 354 strchars={args={1,2}}, 355 strdisplaywidth={args={1, 2}}, 356 strftime={args={1, 2}}, 357 strgetchar={args={2, 2}}, 358 stridx={args={2, 3}}, 359 string={args=1, base=1}, 360 strlen={args=1, base=1}, 361 strpart={args={2, 4}}, 362 strptime={args=2}, 363 strridx={args={2, 3}}, 364 strtrans={args=1, base=1}, 365 strwidth={args=1, base=1}, 366 submatch={args={1, 2}}, 367 substitute={args=4, base=1}, 368 swapinfo={args={1}}, 369 swapname={args={1}}, 370 synID={args=3}, 371 synIDattr={args={2, 3}, base=1}, 372 synIDtrans={args=1, base=1}, 373 synconcealed={args=2}, 374 synstack={args=2}, 375 system={args={1, 2}, base=1}, 376 systemlist={args={1, 3}, base=1}, 377 tabpagebuflist={args={0, 1}}, 378 tabpagenr={args={0, 1}}, 379 tabpagewinnr={args={1, 2}}, 380 tagfiles={}, 381 taglist={args={1, 2}}, 382 tan={args=1, base=1, func="float_op_wrapper", data="&tan"}, 383 tanh={args=1, base=1, func="float_op_wrapper", data="&tanh"}, 384 tempname={}, 385 termopen={args={1, 2}}, 386 test_garbagecollect_now={}, 387 test_write_list_log={args=1}, 388 timer_info={args={0,1}}, 389 timer_pause={args=2}, 390 timer_start={args={2,3}}, 391 timer_stop={args=1}, 392 timer_stopall={args=0}, 393 tolower={args=1}, 394 toupper={args=1}, 395 tr={args=3}, 396 trim={args={1,3}}, 397 trunc={args=1, base=1, func="float_op_wrapper", data="&trunc"}, 398 type={args=1, base=1}, 399 undofile={args=1}, 400 undotree={}, 401 uniq={args={1, 3}, base=1}, 402 values={args=1, base=1}, 403 virtcol={args=1}, 404 visualmode={args={0, 1}}, 405 wait={args={2,3}}, 406 wildmenumode={}, 407 win_execute={args={2, 3}}, 408 win_findbuf={args=1}, 409 win_getid={args={0,2}}, 410 win_gettype={args={0,1}}, 411 win_gotoid={args=1}, 412 win_id2tabwin={args=1}, 413 win_id2win={args=1}, 414 win_screenpos={args=1}, 415 win_splitmove={args={2, 3}}, 416 winbufnr={args=1, base=1}, 417 wincol={}, 418 windowsversion={}, 419 winheight={args=1}, 420 winlayout={args={0, 1}}, 421 winline={}, 422 winnr={args={0, 1}}, 423 winrestcmd={}, 424 winrestview={args=1}, 425 winsaveview={}, 426 winwidth={args=1}, 427 wordcount={}, 428 writefile={args={2, 3}}, 429 xor={args=2, base=1}, 430 }, 431} 432