From b75634e55ee4cdfee7917b29f39e3ca1307cb059 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Sun, 16 Apr 2023 07:50:18 +0800 Subject: vim-patch:9.0.0370: cleaning up afterwards can make a function messy Problem: Cleaning up afterwards can make a function messy. Solution: Add the :defer command. https://github.com/vim/vim/commit/1d84f7608f1e41dad03b8cc7925895437775f7c0 Omit EX_EXPR_ARG: Vim9 script only. Make :def throw E319 to avoid confusing behavior. Co-authored-by: Bram Moolenaar --- src/nvim/ex_cmds.lua | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/nvim/ex_cmds.lua') diff --git a/src/nvim/ex_cmds.lua b/src/nvim/ex_cmds.lua index be6299db0e..845ea4bb15 100644 --- a/src/nvim/ex_cmds.lua +++ b/src/nvim/ex_cmds.lua @@ -714,6 +714,18 @@ module.cmds = { addr_type='ADDR_OTHER', func='ex_debuggreedy', }, + { + command='def', + flags=bit.bor(EXTRA, BANG, SBOXOK, CMDWIN, LOCK_OK), + addr_type='ADDR_NONE', + func='ex_ni', + }, + { + command='defer', + flags=bit.bor(NEEDARG, EXTRA, NOTRLCOM, CMDWIN, LOCK_OK), + addr_type='ADDR_NONE', + func='ex_call', + }, { command='delcommand', flags=bit.bor(BANG, NEEDARG, WORD1, TRLBAR, CMDWIN, LOCK_OK), -- cgit