diff options
Diffstat (limited to 'lua/user/utils.lua')
| -rw-r--r-- | lua/user/utils.lua | 48 |
1 files changed, 29 insertions, 19 deletions
diff --git a/lua/user/utils.lua b/lua/user/utils.lua index ab1473f..3c6f89e 100644 --- a/lua/user/utils.lua +++ b/lua/user/utils.lua @@ -31,6 +31,35 @@ function M.may_create_dir(dir) end end +-- toggle cmp completion +vim.g.cmp_toggle_flag = false -- initialize +local normal_buftype = function() + return vim.api.nvim_buf_get_option(0, "buftype") ~= "prompt" +end +M.toggle_completion = function() + local ok, cmp = pcall(require, "cmp") + if ok then + local next_cmp_toggle_flag = not vim.g.cmp_toggle_flag + if next_cmp_toggle_flag then + print("completion on") + else + print("completion off") + end + cmp.setup({ + enabled = function() + vim.g.cmp_toggle_flag = next_cmp_toggle_flag + if next_cmp_toggle_flag then + return normal_buftype + else + return next_cmp_toggle_flag + end + end, + }) + else + print("completion not available") + end +end + function M.get_nvim_version() local actual_ver = vim.version() @@ -38,25 +67,6 @@ function M.get_nvim_version() return nvim_ver_str end ---- Generate random integers in the range [Low, High], inclusive, ---- adapted from https://stackoverflow.com/a/12739441/6064933 ---- @low: the lower value for this range ---- @high: the upper value for this range -function M.rand_int(low, high) - -- Use lua to generate random int, see also: https://stackoverflow.com/a/20157671/6064933 - math.randomseed(os.time()) - - return math.random(low, high) -end - ---- Select a random element from a sequence/list. ---- @seq: the sequence to choose an element -function M.rand_element(seq) - local idx = M.rand_int(1, #seq) - - return seq[idx] -end - function M.add_pack(name) local status, error = pcall(vim.cmd, "packadd " .. name) |
