aboutsummaryrefslogtreecommitdiffstats
path: root/lua/plugins/smooth-cursor.lua
blob: 58efc73276c183fa97b23c4263194d7218a58336 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
return {
  "gen740/SmoothCursor.nvim",
  config = function()
    require("smoothcursor").setup { cursor = "" }

    vim.api.nvim_set_hl(0, "SmoothCursor", { fg = "#8a9baa" })

    local autocmd = vim.api.nvim_create_autocmd

    autocmd({ "ModeChanged" }, {
      callback = function()
        local current_mode = vim.fn.mode()
        if current_mode == "n" then
          vim.api.nvim_set_hl(0, "SmoothCursor", { fg = "#8a9baa" })
          vim.fn.sign_define("smoothcursor", { text = "" })
        elseif current_mode == "v" then
          vim.api.nvim_set_hl(0, "SmoothCursor", { fg = "#bf616a" })
          vim.fn.sign_define("smoothcursor", { text = "" })
        elseif current_mode == "V" then
          vim.api.nvim_set_hl(0, "SmoothCursor", { fg = "#bf616a" })
          vim.fn.sign_define("smoothcursor", { text = "" })
        elseif current_mode == "\22" then
          vim.api.nvim_set_hl(0, "SmoothCursor", { fg = "#bf616a" })
          vim.fn.sign_define("smoothcursor", { text = "" })
        elseif current_mode == "i" then
          vim.api.nvim_set_hl(0, "SmoothCursor", { fg = "#668aab" })
          vim.fn.sign_define("smoothcursor", { text = "" })
        end
      end,
    })
  end,
}