aboutsummaryrefslogtreecommitdiff
path: root/lua/user/utils.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/user/utils.lua')
-rw-r--r--lua/user/utils.lua48
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)