comparison src/ex_cmds.h @ 27970:212c5894b8b1 v8.2.4510

patch 8.2.4510: Vim9: shortening commands leads to confusing script Commit: https://github.com/vim/vim/commit/204852ae2adfdde10c656ca7f14e5b4207a69172 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Mar 5 12:56:44 2022 +0000 patch 8.2.4510: Vim9: shortening commands leads to confusing script Problem: Vim9: shortening commands leads to confusing script. Solution: In Vim9 script require at least ":cont" for ":continue", "const" instead of "cons", "break" instead of "brea", "catch" instead of "cat", "else" instead of "el" "elseif" instead of "elsei" "endfor" instead of "endfo" "endif" instead of "en" "endtry" instead of "endt", "finally" instead of "fina", "throw" instead of "th", "while" instead of "wh".
author Bram Moolenaar <Bram@vim.org>
date Sat, 05 Mar 2022 14:00:03 +0100
parents 2bdcce61a4e4
children 442ca2007bec
comparison
equal deleted inserted replaced
27969:0e58183b329e 27970:212c5894b8b1
56 // set; when missing disallows editing another 56 // set; when missing disallows editing another
57 // buffer when curbuf_lock is set 57 // buffer when curbuf_lock is set
58 #define EX_NONWHITE_OK 0x2000000 // command can be followed by non-white 58 #define EX_NONWHITE_OK 0x2000000 // command can be followed by non-white
59 #define EX_KEEPSCRIPT 0x4000000 // keep sctx of where command was invoked 59 #define EX_KEEPSCRIPT 0x4000000 // keep sctx of where command was invoked
60 #define EX_EXPR_ARG 0x8000000 // argument is an expression 60 #define EX_EXPR_ARG 0x8000000 // argument is an expression
61 #define EX_WHOLE 0x10000000 // command name cannot be shortened in Vim9
61 62
62 #define EX_FILES (EX_XFILE | EX_EXTRA) // multiple extra files allowed 63 #define EX_FILES (EX_XFILE | EX_EXTRA) // multiple extra files allowed
63 #define EX_FILE1 (EX_FILES | EX_NOSPC) // 1 file, defaults to current file 64 #define EX_FILE1 (EX_FILES | EX_NOSPC) // 1 file, defaults to current file
64 #define EX_WORD1 (EX_EXTRA | EX_NOSPC) // one extra word allowed 65 #define EX_WORD1 (EX_EXTRA | EX_NOSPC) // one extra word allowed
65 66
219 ADDR_OTHER), 220 ADDR_OTHER),
220 EXCMD(CMD_brewind, "brewind", ex_brewind, 221 EXCMD(CMD_brewind, "brewind", ex_brewind,
221 EX_BANG|EX_RANGE|EX_CMDARG|EX_TRLBAR, 222 EX_BANG|EX_RANGE|EX_CMDARG|EX_TRLBAR,
222 ADDR_OTHER), 223 ADDR_OTHER),
223 EXCMD(CMD_break, "break", ex_break, 224 EXCMD(CMD_break, "break", ex_break,
224 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 225 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
225 ADDR_NONE), 226 ADDR_NONE),
226 EXCMD(CMD_breakadd, "breakadd", ex_breakadd, 227 EXCMD(CMD_breakadd, "breakadd", ex_breakadd,
227 EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, 228 EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
228 ADDR_NONE), 229 ADDR_NONE),
229 EXCMD(CMD_breakdel, "breakdel", ex_breakdel, 230 EXCMD(CMD_breakdel, "breakdel", ex_breakdel,
279 ADDR_UNSIGNED), 280 ADDR_UNSIGNED),
280 EXCMD(CMD_call, "call", ex_call, 281 EXCMD(CMD_call, "call", ex_call,
281 EX_RANGE|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 282 EX_RANGE|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK,
282 ADDR_LINES), 283 ADDR_LINES),
283 EXCMD(CMD_catch, "catch", ex_catch, 284 EXCMD(CMD_catch, "catch", ex_catch,
284 EX_EXTRA|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 285 EX_EXTRA|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
285 ADDR_NONE), 286 ADDR_NONE),
286 EXCMD(CMD_cbuffer, "cbuffer", ex_cbuffer, 287 EXCMD(CMD_cbuffer, "cbuffer", ex_cbuffer,
287 EX_BANG|EX_RANGE|EX_WORD1|EX_TRLBAR, 288 EX_BANG|EX_RANGE|EX_WORD1|EX_TRLBAR,
288 ADDR_OTHER), 289 ADDR_OTHER),
289 EXCMD(CMD_cbefore, "cbefore", ex_cbelow, 290 EXCMD(CMD_cbefore, "cbefore", ex_cbelow,
411 ADDR_NONE), 412 ADDR_NONE),
412 EXCMD(CMD_confirm, "confirm", ex_wrongmodifier, 413 EXCMD(CMD_confirm, "confirm", ex_wrongmodifier,
413 EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN|EX_LOCK_OK, 414 EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN|EX_LOCK_OK,
414 ADDR_NONE), 415 ADDR_NONE),
415 EXCMD(CMD_const, "const", ex_let, 416 EXCMD(CMD_const, "const", ex_let,
416 EX_EXTRA|EX_BANG|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 417 EX_EXTRA|EX_BANG|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
417 ADDR_NONE), 418 ADDR_NONE),
418 EXCMD(CMD_copen, "copen", ex_copen, 419 EXCMD(CMD_copen, "copen", ex_copen,
419 EX_RANGE|EX_COUNT|EX_TRLBAR, 420 EX_RANGE|EX_COUNT|EX_TRLBAR,
420 ADDR_OTHER), 421 ADDR_OTHER),
421 EXCMD(CMD_cprevious, "cprevious", ex_cnext, 422 EXCMD(CMD_cprevious, "cprevious", ex_cnext,
546 ADDR_NONE), 547 ADDR_NONE),
547 EXCMD(CMD_echon, "echon", ex_echo, 548 EXCMD(CMD_echon, "echon", ex_echo,
548 EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 549 EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK,
549 ADDR_NONE), 550 ADDR_NONE),
550 EXCMD(CMD_else, "else", ex_else, 551 EXCMD(CMD_else, "else", ex_else,
551 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 552 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
552 ADDR_NONE), 553 ADDR_NONE),
553 EXCMD(CMD_elseif, "elseif", ex_else, 554 EXCMD(CMD_elseif, "elseif", ex_else,
554 EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 555 EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
555 ADDR_NONE), 556 ADDR_NONE),
556 EXCMD(CMD_emenu, "emenu", ex_emenu, 557 EXCMD(CMD_emenu, "emenu", ex_emenu,
557 EX_NEEDARG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_RANGE|EX_CMDWIN|EX_LOCK_OK, 558 EX_NEEDARG|EX_EXTRA|EX_TRLBAR|EX_NOTRLCOM|EX_RANGE|EX_CMDWIN|EX_LOCK_OK,
558 ADDR_OTHER), 559 ADDR_OTHER),
559 EXCMD(CMD_endif, "endif", ex_endif, 560 EXCMD(CMD_endif, "endif", ex_endif,
560 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 561 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
561 ADDR_NONE), 562 ADDR_NONE),
562 EXCMD(CMD_endinterface, "endinterface", ex_ni, 563 EXCMD(CMD_endinterface, "endinterface", ex_ni,
563 EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, 564 EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
564 ADDR_NONE), 565 ADDR_NONE),
565 EXCMD(CMD_endclass, "endclass", ex_ni, 566 EXCMD(CMD_endclass, "endclass", ex_ni,
573 ADDR_NONE), 574 ADDR_NONE),
574 EXCMD(CMD_endfunction, "endfunction", ex_endfunction, 575 EXCMD(CMD_endfunction, "endfunction", ex_endfunction,
575 EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, 576 EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
576 ADDR_NONE), 577 ADDR_NONE),
577 EXCMD(CMD_endfor, "endfor", ex_endwhile, 578 EXCMD(CMD_endfor, "endfor", ex_endwhile,
578 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 579 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
579 ADDR_NONE), 580 ADDR_NONE),
580 EXCMD(CMD_endtry, "endtry", ex_endtry, 581 EXCMD(CMD_endtry, "endtry", ex_endtry,
581 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 582 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
582 ADDR_NONE), 583 ADDR_NONE),
583 EXCMD(CMD_endwhile, "endwhile", ex_endwhile, 584 EXCMD(CMD_endwhile, "endwhile", ex_endwhile,
584 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 585 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
585 ADDR_NONE), 586 ADDR_NONE),
586 EXCMD(CMD_enew, "enew", ex_edit, 587 EXCMD(CMD_enew, "enew", ex_edit,
587 EX_BANG|EX_TRLBAR, 588 EX_BANG|EX_TRLBAR,
588 ADDR_NONE), 589 ADDR_NONE),
589 EXCMD(CMD_enum, "enum", ex_ni, 590 EXCMD(CMD_enum, "enum", ex_ni,
621 ADDR_NONE), 622 ADDR_NONE),
622 EXCMD(CMD_find, "find", ex_find, 623 EXCMD(CMD_find, "find", ex_find,
623 EX_RANGE|EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR|EX_NEEDARG, 624 EX_RANGE|EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR|EX_NEEDARG,
624 ADDR_OTHER), 625 ADDR_OTHER),
625 EXCMD(CMD_final, "final", ex_let, 626 EXCMD(CMD_final, "final", ex_let,
626 EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 627 EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
627 ADDR_NONE), 628 ADDR_NONE),
628 EXCMD(CMD_finally, "finally", ex_finally, 629 EXCMD(CMD_finally, "finally", ex_finally,
629 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 630 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
630 ADDR_NONE), 631 ADDR_NONE),
631 EXCMD(CMD_finish, "finish", ex_finish, 632 EXCMD(CMD_finish, "finish", ex_finish,
632 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 633 EX_TRLBAR|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK,
633 ADDR_NONE), 634 ADDR_NONE),
634 EXCMD(CMD_first, "first", ex_rewind, 635 EXCMD(CMD_first, "first", ex_rewind,
1599 ADDR_LINES), 1600 ADDR_LINES),
1600 EXCMD(CMD_tfirst, "tfirst", ex_tag, 1601 EXCMD(CMD_tfirst, "tfirst", ex_tag,
1601 EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR, 1602 EX_RANGE|EX_BANG|EX_TRLBAR|EX_ZEROR,
1602 ADDR_OTHER), 1603 ADDR_OTHER),
1603 EXCMD(CMD_throw, "throw", ex_throw, 1604 EXCMD(CMD_throw, "throw", ex_throw,
1604 EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 1605 EX_EXTRA|EX_NEEDARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
1605 ADDR_NONE), 1606 ADDR_NONE),
1606 EXCMD(CMD_tjump, "tjump", ex_tag, 1607 EXCMD(CMD_tjump, "tjump", ex_tag,
1607 EX_BANG|EX_TRLBAR|EX_WORD1, 1608 EX_BANG|EX_TRLBAR|EX_WORD1,
1608 ADDR_NONE), 1609 ADDR_NONE),
1609 EXCMD(CMD_tlast, "tlast", ex_tag, 1610 EXCMD(CMD_tlast, "tlast", ex_tag,
1692 ADDR_LINES), 1693 ADDR_LINES),
1693 EXCMD(CMD_vglobal, "vglobal", ex_global, 1694 EXCMD(CMD_vglobal, "vglobal", ex_global,
1694 EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_DFLALL|EX_CMDWIN|EX_LOCK_OK|EX_NONWHITE_OK, 1695 EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_DFLALL|EX_CMDWIN|EX_LOCK_OK|EX_NONWHITE_OK,
1695 ADDR_LINES), 1696 ADDR_LINES),
1696 EXCMD(CMD_var, "var", ex_var, 1697 EXCMD(CMD_var, "var", ex_var,
1697 EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 1698 EX_EXTRA|EX_NOTRLCOM|EX_EXPR_ARG|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
1698 ADDR_NONE), 1699 ADDR_NONE),
1699 EXCMD(CMD_version, "version", ex_version, 1700 EXCMD(CMD_version, "version", ex_version,
1700 EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, 1701 EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
1701 ADDR_NONE), 1702 ADDR_NONE),
1702 EXCMD(CMD_verbose, "verbose", ex_wrongmodifier, 1703 EXCMD(CMD_verbose, "verbose", ex_wrongmodifier,
1761 ADDR_OTHER), 1762 ADDR_OTHER),
1762 EXCMD(CMD_wall, "wall", do_wqall, 1763 EXCMD(CMD_wall, "wall", do_wqall,
1763 EX_BANG|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK, 1764 EX_BANG|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
1764 ADDR_NONE), 1765 ADDR_NONE),
1765 EXCMD(CMD_while, "while", ex_while, 1766 EXCMD(CMD_while, "while", ex_while,
1766 EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK, 1767 EX_EXTRA|EX_NOTRLCOM|EX_SBOXOK|EX_CMDWIN|EX_LOCK_OK|EX_WHOLE,
1767 ADDR_NONE), 1768 ADDR_NONE),
1768 EXCMD(CMD_winsize, "winsize", ex_winsize, 1769 EXCMD(CMD_winsize, "winsize", ex_winsize,
1769 EX_EXTRA|EX_NEEDARG|EX_TRLBAR, 1770 EX_EXTRA|EX_NEEDARG|EX_TRLBAR,
1770 ADDR_NONE), 1771 ADDR_NONE),
1771 EXCMD(CMD_wincmd, "wincmd", ex_wincmd, 1772 EXCMD(CMD_wincmd, "wincmd", ex_wincmd,