nvim/lua/plugins.lua
2023-03-01 16:54:47 -08:00

344 lines
10 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

vim.cmd [[packadd packer.nvim]]
require('packer').startup(function(use)
use 'wbthomason/packer.nvim'
use 'nvim-lua/plenary.nvim'
use {
'nvim-treesitter/nvim-treesitter',
run = function() require('nvim-treesitter.install').update({ with_sync = true }) end,
}
use {
'nvim-lualine/lualine.nvim',
requires = { 'kyazdani42/nvim-web-devicons', opt = true }
}
use {
"zbirenbaum/copilot.lua",
event = "VimEnter",
config = function ()
vim.defer_fn(function()
require('copilot').setup({
panel = {
enabled = true,
auto_refresh = false,
keymap = {
jump_prev = "[[",
jump_next = "]]",
accept = "<CR>",
refresh = "gr",
open = "<C-CR>"
},
layout = {
position = "right", -- | top | left | right
ratio = 0.4
},
},
suggestion = {
enabled = true,
auto_trigger = true,
debounce = 75,
keymap = {
-- accept = "<Tab>",
accept = "<Right>",
next = "<M-]>",
prev = "<M-[>",
dismiss = "<C-]>",
},
},
-- filetypes = {
-- yaml = false,
-- markdown = false,
-- help = false,
-- gitcommit = false,
-- gitrebase = false,
-- hgcommit = false,
-- svn = false,
-- cvs = false,
-- ["."] = false,
-- },
copilot_node_command = 'node', -- Node version must be < 18
plugin_manager_path = vim.fn.stdpath("data") .. "/site/pack/packer",
server_opts_overrides = {
trace = "verbose",
settings = {
advanced = {
listCount = 10, -- #completions for panel
inlineSuggestCount = 4, -- #completions for getCompletions
}
},
}
})
require("copilot.suggestion").toggle_auto_trigger()
end, 100)
end,
}
use {
"zbirenbaum/copilot-cmp",
after = { "copilot.lua" },
config = function ()
require("copilot_cmp").setup({
method = "getCompletionsCycling",
-- formatters = {
-- insert_text = require("copilot_cmp.format").remove_existing
-- }
})
end
}
use {
'junegunn/fzf',
run = function() vim.fn['fzf#install']() end
}
-- use {
-- "lewis6991/hover.nvim",
-- config = function()
-- require("hover").setup {
-- init = function()
-- -- Require providers
-- require("hover.providers.lsp")
-- -- require('hover.providers.gh')
-- -- require('hover.providers.jira')
-- require('hover.providers.man')
-- require('hover.providers.dictionary')
-- end,
-- preview_opts = {
-- border = "rounded"
-- -- border = {
-- -- { "╭", "FloatBorder" },
-- -- { "─", "FloatBorder" },
-- -- { "╮", "FloatBorder" },
-- -- { "│", "FloatBorder" },
-- -- { "╯", "FloatBorder" },
-- -- { "─", "FloatBorder" },
-- -- { "╰", "FloatBorder" },
-- -- { "│", "FloatBorder" },
-- -- }
-- },
-- -- Whether the contents of a currently open hover window should be moved
-- -- to a :h preview-window when pressing the hover keymap.
-- preview_window = false,
-- title = true
-- }
-- -- Setup keymaps
-- vim.keymap.set("n", "K", require("hover").hover, {desc = "hover.nvim"})
-- vim.keymap.set("n", "gK", require("hover").hover_select, {desc = "hover.nvim (select)"})
-- end
-- }
use 'ap/vim-css-color'
use 'jiangmiao/auto-pairs'
use 'junegunn/fzf.vim'
use 'pechorin/any-jump.vim'
use 'tpope/vim-commentary'
use 'tpope/vim-surround'
use 'voldikss/vim-floaterm'
use 'wakatime/vim-wakatime'
use {
'akinsho/nvim-bufferline.lua'
}
use {
'andweeb/presence.nvim'
}
use {
'folke/which-key.nvim'
}
use {
'glepnir/dashboard-nvim'
}
use {
'kyazdani42/nvim-tree.lua'
}
use 'kyazdani42/nvim-web-devicons'
use {
'lewis6991/gitsigns.nvim'
}
use {
'nvim-telescope/telescope.nvim'
}
use {
'nvim-telescope/telescope-file-browser.nvim'
}
use {
'ojroques/nvim-lspfuzzy'
}
use 'L3MON4D3/LuaSnip'
-- use 'amrbashir/nvim-docs-view'
use {
'hrsh7th/nvim-cmp'
}
use {
'hrsh7th/cmp-nvim-lsp'
}
use {
'hrsh7th/cmp-nvim-lua'
}
use {
'hrsh7th/cmp-nvim-lsp-signature-help'
}
use {
'hrsh7th/cmp-path'
}
use {
'hrsh7th/cmp-cmdline'
}
use {
'hrsh7th/cmp-buffer'
}
use {
'j-hui/fidget.nvim'
}
use {
'jose-elias-alvarez/null-ls.nvim'
}
use {
'ksyasuda/lsp_lines.nvim'
}
use {
'neovim/nvim-lspconfig'
}
use {
'onsails/lspkind-nvim'
}
-- use 'ray-x/lsp_signature.nvim'
use {
'rmagatti/goto-preview'
}
use 'saadparwaiz1/cmp_luasnip'
use 'williamboman/nvim-lsp-installer'
use {
'Mofiqul/dracula.nvim'
}
use {
'NTBBloodbath/doom-one.nvim',
setup = function()
-- Add color to cursor
vim.g.doom_one_cursor_coloring = false
-- Set :terminal colors
vim.g.doom_one_terminal_colors = false
-- Enable italic comments
vim.g.doom_one_italic_comments = true
-- Enable TS support
vim.g.doom_one_enable_treesitter = true
-- Color whole diagnostic text or only underline
vim.g.doom_one_diagnostics_text_color = true
-- Enable transparent background
vim.g.doom_one_transparent_background = false
-- Pumblend transparency
vim.g.doom_one_pumblend_enable = false
vim.g.doom_one_pumblend_transparency = 20
-- Plugins integration
vim.g.doom_one_plugin_neorg = false
vim.g.doom_one_plugin_barbar = false
vim.g.doom_one_plugin_telescope = true
vim.g.doom_one_plugin_neogit = true
vim.g.doom_one_plugin_nvim_tree = true
vim.g.doom_one_plugin_dashboard = true
vim.g.doom_one_plugin_startify = false
vim.g.doom_one_plugin_whichkey = true
vim.g.doom_one_plugin_indent_blankline = true
vim.g.doom_one_plugin_vim_illuminate = false
vim.g.doom_one_plugin_lspsaga = true
end,
}
use {
'olimorris/onedarkpro.nvim'
}
use {
'projekt0n/github-nvim-theme'
}
use({
"jackMort/ChatGPT.nvim",
config = function()
require("chatgpt").setup({
welcome_message = WELCOME_MESSAGE, -- set to "" if you don't like the fancy robot
loading_text = "loading",
question_sign = "", -- you can use emoji if you want e.g. 🙂
answer_sign = "", -- 🤖
max_line_length = 120,
yank_register = "+",
chat_layout = {
relative = "editor",
position = "50%",
size = {
height = "80%",
width = "80%",
},
},
chat_window = {
filetype = "chatgpt",
border = {
highlight = "FloatBorder",
style = "rounded",
text = {
top = " ChatGPT ",
},
},
},
settings_window = {
border = {
style = "rounded",
text = {
top = " Settings ",
},
},
},
chat_input = {
prompt = "",
border = {
highlight = "FloatBorder",
style = "rounded",
text = {
top_align = "center",
top = " Prompt ",
},
},
win_options = {
winhighlight = "Normal:Normal",
},
},
openai_params = {
model = "text-davinci-003",
frequency_penalty = 0,
presence_penalty = 0,
max_tokens = 300,
temperature = 0,
top_p = 1,
n = 1,
},
openai_edit_params = {
-- model = "code-davinci-edit-001",
model = "gpt-3.5-turbo",
temperature = 0,
top_p = 1,
n = 1,
},
keymaps = {
close = { "<C-c>", "<Esc>" },
yank_last = "<C-y>",
scroll_up = "<C-u>",
scroll_down = "<C-d>",
toggle_settings = "<C-o>",
new_session = "<C-n>",
cycle_windows = "<Right>",
}
}
)end,
requires = {
"MunifTanjim/nui.nvim",
"nvim-lua/plenary.nvim",
"nvim-telescope/telescope.nvim"
}
})
end)