2022-03-05 11:30:37 +00:00
|
|
|
local fn = vim.fn
|
|
|
|
local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
|
|
|
|
if fn.empty(fn.glob(install_path)) > 0 then
|
|
|
|
packer_bootstrap = fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
|
|
|
|
|
|
|
|
-- TODO: Add in downloading of sqlite dll for Windows, here.
|
|
|
|
end
|
|
|
|
|
2022-03-04 09:14:45 +00:00
|
|
|
lsp_client_capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
|
|
|
|
|
|
return require('packer').startup(function(use)
|
|
|
|
use 'wbthomason/packer.nvim'
|
|
|
|
use 'dracula/vim'
|
|
|
|
use 'kyazdani42/nvim-web-devicons'
|
|
|
|
use {
|
|
|
|
'kyazdani42/nvim-tree.lua',
|
|
|
|
requires = 'kyazdani42/nvim-web-devicons',
|
|
|
|
config = function()
|
|
|
|
require('nvim-tree').setup {}
|
|
|
|
end
|
|
|
|
}
|
|
|
|
use 'bryanmylee/vim-colorscheme-icons'
|
|
|
|
|
|
|
|
use {
|
|
|
|
'akinsho/bufferline.nvim',
|
|
|
|
config = function()
|
|
|
|
require('bufferline').setup {
|
|
|
|
options = {
|
|
|
|
separator_style = 'slant'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
end
|
|
|
|
}
|
|
|
|
use {
|
|
|
|
'NTBBloodbath/galaxyline.nvim',
|
|
|
|
config = function()
|
|
|
|
require('galaxyline.themes.minimalist')
|
|
|
|
end,
|
|
|
|
requires = { 'kyazdani42/nvim-web-devicons', opt = true }
|
|
|
|
}
|
|
|
|
use {
|
|
|
|
'tami5/sqlite.lua',
|
|
|
|
config = function()
|
|
|
|
if vim.fn.has('win32') then
|
|
|
|
-- FIXME need to download the sqlite3.dll from sqlite.org and place in config folder
|
|
|
|
vim.g.sqlite_clib_path = vim.fn.stdpath('config') .. '/sqlite3.dll'
|
|
|
|
end
|
|
|
|
end
|
|
|
|
}
|
|
|
|
use {
|
|
|
|
'nvim-telescope/telescope.nvim',
|
|
|
|
requires = { 'nvim-lua/plenary.nvim', 'nvim-telescope/telescope-smart-history.nvim' },
|
|
|
|
config = function()
|
|
|
|
local tele = require('telescope')
|
|
|
|
local actions = require('telescope.actions');
|
|
|
|
local actions_generate = require('telescope.actions.generate');
|
|
|
|
|
|
|
|
tele.setup{
|
|
|
|
defaults = {
|
|
|
|
prompt_prefix = " ",
|
|
|
|
selection_caret = " ",
|
|
|
|
mappings = {
|
|
|
|
i = {
|
|
|
|
["<C-Down>"] = actions.cycle_history_next,
|
|
|
|
["<C-Up>"] = actions.cycle_history_prev,
|
|
|
|
["<C-?>"] = actions_generate.which_key {
|
|
|
|
name_width = 22,
|
|
|
|
max_height = .05,
|
|
|
|
mode_width = 0,
|
|
|
|
separator = '',
|
|
|
|
column_indent = 1,
|
|
|
|
line_padding = 0
|
|
|
|
}
|
|
|
|
},
|
|
|
|
n = {
|
|
|
|
["?"] = actions_generate.which_key {
|
|
|
|
name_width = 22,
|
|
|
|
max_height = .05,
|
|
|
|
mode_width = 0,
|
|
|
|
separator = '',
|
|
|
|
column_indent = 1,
|
|
|
|
line_padding = 0,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
history = {
|
|
|
|
path = vim.fn.stdpath('data') .. '/databases/telescope_history.sqlite3',
|
|
|
|
limit = 100,
|
|
|
|
},
|
|
|
|
layout_config = {
|
|
|
|
horizontal = {
|
|
|
|
width = 0.95,
|
|
|
|
height = 0.95,
|
|
|
|
},
|
|
|
|
vertical = {
|
|
|
|
width = 0.95,
|
|
|
|
height = 0.95,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
tele.load_extension('smart_history')
|
|
|
|
end,
|
|
|
|
}
|
|
|
|
use {
|
|
|
|
'nvim-telescope/telescope-smart-history.nvim',
|
|
|
|
requires = { 'tami5/sqlite.lua' },
|
|
|
|
}
|
|
|
|
use 'habamax/vim-godot'
|
|
|
|
use 'skywind3000/asyncrun.vim'
|
|
|
|
use 'lervag/wiki.vim'
|
|
|
|
use 'valloric/listtoggle'
|
|
|
|
use {
|
|
|
|
'neovim/nvim-lspconfig',
|
|
|
|
config = function()
|
|
|
|
require('lspconfig').gdscript.setup{
|
|
|
|
capabilities = lsp_client_capabilities
|
|
|
|
}
|
|
|
|
end,
|
|
|
|
requires = { 'hrsh7th/cmp-nvim-lsp' }
|
|
|
|
}
|
|
|
|
use {
|
|
|
|
'hrsh7th/cmp-nvim-lsp',
|
|
|
|
config = function()
|
|
|
|
lsp_client_capabilities = require('cmp_nvim_lsp').update_capabilities(lsp_client_capabilities)
|
|
|
|
end
|
|
|
|
}
|
|
|
|
use 'hrsh7th/cmp-nvim-lua'
|
|
|
|
use 'hrsh7th/cmp-emoji'
|
|
|
|
use 'hrsh7th/cmp-path'
|
|
|
|
use 'hrsh7th/cmp-buffer'
|
|
|
|
use {
|
|
|
|
'hrsh7th/nvim-cmp',
|
|
|
|
config = function()
|
|
|
|
local cmp = require 'cmp'
|
|
|
|
cmp.setup({
|
|
|
|
mapping = {
|
|
|
|
['<C-d>'] = cmp.mapping.scroll_docs(-4),
|
|
|
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
|
|
|
['<C-Space>'] = cmp.mapping.complete(),
|
|
|
|
['<C-e>'] = cmp.mapping.close(),
|
|
|
|
['<CR>'] = cmp.mapping.confirm({ select = true }),
|
|
|
|
['<TAB>'] = cmp.mapping.confirm({ select = true })
|
|
|
|
},
|
|
|
|
sources = {
|
|
|
|
{ name = 'nvim_lsp' },
|
|
|
|
{ name = 'buffer' },
|
|
|
|
{ name = 'emoji' },
|
|
|
|
{ name = 'path' },
|
|
|
|
{ name = 'nvim_lua' },
|
|
|
|
},
|
|
|
|
experimental = {
|
|
|
|
ghost_text = true
|
|
|
|
}
|
|
|
|
})
|
|
|
|
end
|
|
|
|
}
|
|
|
|
use {
|
|
|
|
'nvim-treesitter/nvim-treesitter',
|
|
|
|
run = function()
|
|
|
|
vim.cmd(':TSUpdate')
|
|
|
|
end,
|
|
|
|
config = function()
|
|
|
|
require 'nvim-treesitter.install'.compilers = { 'cl', 'clang' }
|
|
|
|
end
|
|
|
|
}
|
|
|
|
use {
|
|
|
|
'onsails/lspkind-nvim',
|
|
|
|
config = function()
|
|
|
|
require('lspkind').init{}
|
|
|
|
end
|
|
|
|
}
|
|
|
|
use 'lepture/vim-jinja'
|
|
|
|
use {
|
|
|
|
'neoclide/coc.nvim',
|
|
|
|
branch = 'release'
|
|
|
|
}
|
|
|
|
use 'editorconfig/editorconfig-vim'
|
|
|
|
end)
|
|
|
|
|
|
|
|
|