From 3572319b4cb1a4163624a5fe328886f1928dbc4a Mon Sep 17 00:00:00 2001 From: Lewis Russell Date: Fri, 18 Oct 2024 11:33:12 +0100 Subject: feat(vim.validate): improve fast form and deprecate spec form Problem: `vim.validate()` takes two forms when it only needs one. Solution: - Teach the fast form all the features of the spec form. - Deprecate the spec form. - General optimizations for both forms. - Add a `message` argument which can be used alongside or in place of the `optional` argument. --- runtime/lua/vim/hl.lua | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) (limited to 'runtime/lua/vim/hl.lua') diff --git a/runtime/lua/vim/hl.lua b/runtime/lua/vim/hl.lua index 49bbaa3cc6..099efa3c61 100644 --- a/runtime/lua/vim/hl.lua +++ b/runtime/lua/vim/hl.lua @@ -135,19 +135,7 @@ local yank_cancel --- @type fun()? --- - event event structure (default vim.v.event) --- - priority integer priority (default |vim.hl.priorities|`.user`) function M.on_yank(opts) - vim.validate({ - opts = { - opts, - function(t) - if t == nil then - return true - else - return type(t) == 'table' - end - end, - 'a table or nil to configure options (see `:h vim.hl.on_yank`)', - }, - }) + vim.validate('opts', opts, 'table', true) opts = opts or {} local event = opts.event or vim.v.event local on_macro = opts.on_macro or false -- cgit