[[plugins]]
repo = 'williamboman/mason.nvim'
on_source = ["nvim-cmp"]
lua_source = """
require("configs/mason")
"""

[[plugins]]
repo = 'SirVer/ultisnips'
on_source = ["nvim-cmp"]
lua_source = """
vim.g.UltiSnipsSnippetDirectories = { "/home/coma/.config/nvim/ultisnip" }

vim.g.UltiSnipsJumpForwardTrigger = "<c-j>"
vim.g.UltiSnipsJumpBackwardTrigger = "<c-k>"
vim.g.gruvbox_material_transparent_background = 1
"""

[[plugins]]
repo = 'honza/vim-snippets'
on_source = ["ultisnips"]

[[plugins]]
repo = 'quangnguyen30192/cmp-nvim-ultisnips'
on_source = ["nvim-cmp"]

[[plugins]]
repo = "L3MON4D3/LuaSnip"
on_source = ["nvim-cmp"]
lua_source = """
require("luasnip.loaders.from_vscode").lazy_load()
require("configs/luasnip")
-- require("comatools/snips")
"""

[[plugins]]
repo = "rafamadriz/friendly-snippets"
on_source = ["luasnip"]

[[plugins]]
repo = 'saadparwaiz1/cmp_luasnip'
on_source = ["nvim-cmp"]
lua_source = """
require("configs/luasnip")
"""

[[plugins]]
repo= 'onsails/lspkind.nvim'
on_source = ["nvim-cmp"]
lua_source = """
require("configs/lspkind")
"""

[[plugins]]
repo = 'https://github.com/hrsh7th/cmp-nvim-lsp'
on_source = ["nvim-cmp"]

[[plugins]]
repo= 'williamboman/mason-lspconfig.nvim'
on_source = ["nvim-lspconfig"]

# nvim-cmp
[[plugins]]
repo = "hrsh7th/nvim-cmp"
on_source = ["nvim-lspconfig"]
# on_event = ["VimEnter"]
# on_event = ["BufEnter"]
# on_event = ["InsertEnter"]
lua_source = """
require("configs/nvim-cmp")
"""

[[plugins]]
repo = 'hrsh7th/cmp-buffer'
on_source = ["nvim-cmp"]

[[plugins]]
repo = 'hrsh7th/cmp-path'
on_source = ["nvim-cmp"]

[[plugins]]
repo = 'hrsh7th/cmp-cmdline'
on_source = ["nvim-cmp"]

[[plugins]]
repo ='dcampos/cmp-emmet-vim'
on_source = ["nvim-cmp"]
on_source = """
require 'cmp'.setup {
  sources = {
    {
        name = 'emmet_vim',
        option = {
            filetypes = {
	    'html',
	    'xml',
	    'typescriptreact',
	    'javascriptreact',
	    'css',
	    'sass',
	    'scss',
	    'less',
	    'heex',
	    'tsx',
	    'jsx',
	    'astro'
	    },
        }
    }
  }
}
"""

[[plugins]]
repo = 'rinx/cmp-skkeleton'
on_source = ["nvim-cmp"]
lua_source = """
require('cmp').setup {
  sources = {
    { name = 'skkeleton' }
  },
  view = {
    entries = 'native'
  }
}
"""

[[plugins]]
repo = 'neovim/nvim-lspconfig'
# on_event = ["VimEnter"]
on_event = ["BufEnter"]
# on_event = ["BufRead"]
# on_event = ["InsertEnter"]
# on_source = ["nvim-cmp"]
lua_source = """
require("configs/lsp")
"""

[[plugins]]
repo = "folke/neodev.nvim"
on_source = ["nvim-cmp"]
lua_source = """
-- IMPORTANT: make sure to setup neodev BEFORE lspconfig
require("neodev").setup({
  -- add any options here, or leave empty to use the default settings
  library = { plugins = { "nvim-dap-ui" }, types = true },
})

-- then setup your lsp server as usual
local lspconfig = require('lspconfig')

-- example to setup lua_ls and enable call snippets
lspconfig.lua_ls.setup({
  settings = {
    Lua = {
      completion = {
        callSnippet = "Replace"
      }
    }
  }
})
"""

# [[plugins]]
# repo= 'j-hui/fidget.nvim'
# lua_source = """
# require"fidget".setup{}
# """
# on_event = ["BufRead"]

# [[plugins]]
# repo = "https://github.com/jcdickinson/codeium.nvim"
# on_source = ["nvim-cmp"]
# lua_source = """
# require("codeium").setup({})
# """

[[plugins]]
repo = "https://github.com/Exafunction/codeium.vim"
on_cmd = ["Codeium", "CodeiumAuto", "CodeiumManual", "CodeiumEnable"]
lua_source = """
vim.g.codeium_disable_bindings = 1

vim.keymap.set('i', '<C-g>', function () return vim.fn['codeium#Accept']() end, { expr = true })
vim.keymap.set('i', '<c-[>', function() return vim.fn['codeium#CycleCompletions'](1) end, { expr = true })
vim.keymap.set('i', '<c-]>', function() return vim.fn['codeium#CycleCompletions'](-1) end, { expr = true })
vim.keymap.set('i', '<c-x>', function() return vim.fn['codeium#Clear']() end, { expr = true })

"""

# [[plugins]]
# repo = 'https://github.com/tzachar/cmp-ai'
# on_source = ["nvim-cmp"]
# lua_source = """
# require('cmp_ai.config'):setup({
#     max_lines = 100,
#     provider = 'HF',
# 	run_on_every_keystroke = true,
# 	ignored_file_types = {
# 		-- default is not to ignore
# 		-- uncomment to ignore in lua:
# 		-- lua = true
# 	},
# })
# """