Up.
This commit is contained in:
parent
39ed641127
commit
22b130cd4e
@ -40,7 +40,7 @@ lvim.builtin.nvimtree.active = false
|
||||
lvim.builtin.nvimtree.setup.view.side = "left"
|
||||
lvim.builtin.nvimtree.setup.renderer.icons.show.git = false
|
||||
lvim.builtin.terminal.active = true
|
||||
|
||||
-- lvim.builtin.terminal.execs[#lvim.builtin.terminal.execs+1] = { "xplr", ";e", "File manager", "float", nil }
|
||||
|
||||
|
||||
-- theme settings
|
||||
@ -61,13 +61,13 @@ local home = vim.fn.expand("$HOME")
|
||||
-- Trying to make a modular configuration
|
||||
-- plugins
|
||||
--
|
||||
-- require("user.plugins")
|
||||
require("user.plugins").setup()
|
||||
|
||||
|
||||
|
||||
-- -- functions
|
||||
-- --
|
||||
-- require("user.functions")
|
||||
-- functions
|
||||
--
|
||||
require("user.functions")
|
||||
|
||||
|
||||
|
||||
@ -93,6 +93,7 @@ require("user.whichkey").setup()
|
||||
lvim.builtin.treesitter.ensure_installed = {
|
||||
"bash",
|
||||
"c",
|
||||
"go",
|
||||
"java",
|
||||
"javascript",
|
||||
"json",
|
||||
@ -112,28 +113,15 @@ lvim.builtin.treesitter.ensure_installed = {
|
||||
|
||||
lvim.builtin.treesitter.ignore_install = { "comment" }
|
||||
lvim.builtin.treesitter.highlight.enable = true
|
||||
lvim.builtin.treesitter.highlight.disable( "latex" )
|
||||
lvim.builtin.treesitter.highlight.disable( "latex", "zsh" )
|
||||
lvim.builtin.treesitter.rainbow.enable = true
|
||||
|
||||
|
||||
|
||||
-- Generic LSP settings
|
||||
-- LSP settings
|
||||
--
|
||||
|
||||
vim.diagnostic.config({ virtual_text = true })
|
||||
|
||||
-- setup LSP
|
||||
local capabilities = require("lvim.lsp").common_capabilities()
|
||||
require("lvim.lsp.manager").setup(
|
||||
"texlab", {
|
||||
on_attach = require("lvim.lsp").common_on_attach,
|
||||
on_init = require("lvim.lsp").common_on_init,
|
||||
capabilities = capabilities,
|
||||
})
|
||||
|
||||
require("lvim.lsp.manager").setup(
|
||||
"marksman", {
|
||||
})
|
||||
require("user.lsp").setup()
|
||||
|
||||
|
||||
|
||||
@ -145,303 +133,17 @@ require("lvim.lsp.manager").setup(
|
||||
|
||||
|
||||
|
||||
-- Python management setup
|
||||
-- Debug adapters
|
||||
--
|
||||
|
||||
-- setup debug adapter
|
||||
lvim.builtin.dap.active = true
|
||||
local mason_path = vim.fn.glob(vim.fn.stdpath "data" .. "/mason/")
|
||||
pcall(function()
|
||||
require("dap-python").setup(mason_path .. "packages/debugpy/venv/bin/python")
|
||||
end)
|
||||
|
||||
-- setup testing
|
||||
require("neotest").setup({
|
||||
adapters = {
|
||||
require("neotest-python")({
|
||||
-- Extra arguments for nvim-dap configuration
|
||||
-- See https://github.com/microsoft/debugpy/wiki/Debug-configuration-settings for values
|
||||
dap = {
|
||||
justMyCode = false,
|
||||
console = "integratedTerminal",
|
||||
},
|
||||
args = { "--log-level", "DEBUG", "--quiet" },
|
||||
runner = "pytest",
|
||||
})
|
||||
}
|
||||
})
|
||||
require("user.dap").setup()
|
||||
|
||||
|
||||
|
||||
-- Additional Plugins
|
||||
-- Tests framework
|
||||
--
|
||||
|
||||
lvim.plugins = {
|
||||
-- addheader
|
||||
{
|
||||
'alpertuna/vim-header',
|
||||
config = function()
|
||||
vim.cmd([[
|
||||
let g:header_field_author = 'Jeff Lance'
|
||||
let g:header_field_author_email = 'email@jefflance.me'
|
||||
let g:header_auto_update_header = 1
|
||||
let g:header_field_filename_path = 1
|
||||
let g:header_field_timestamp_format = '%d.%m.%Y %H:%M:%S'
|
||||
]])
|
||||
end,
|
||||
},
|
||||
-- new file plugin
|
||||
{
|
||||
'Mohammed-Taher/AdvancedNewFile.nvim',
|
||||
},
|
||||
-- asyncrun
|
||||
{
|
||||
"skywind3000/asyncrun.vim",
|
||||
},
|
||||
-- chatgpt
|
||||
{
|
||||
"jackMort/ChatGPT.nvim",
|
||||
event = "VeryLazy",
|
||||
config = function()
|
||||
require("chatgpt").setup({
|
||||
api_key_cmd = "pass _api_keys/openai_perso-1"
|
||||
})
|
||||
end,
|
||||
dependencies = {
|
||||
"MunifTanjim/nui.nvim",
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-telescope/telescope.nvim"
|
||||
}
|
||||
},
|
||||
-- cmp addons
|
||||
{
|
||||
"tzachar/cmp-tabnine",
|
||||
build = "./install.sh",
|
||||
dependencies = "hrsh7th/nvim-cmp",
|
||||
event = "InsertEnter",
|
||||
},
|
||||
{
|
||||
"micangl/cmp-vimtex",
|
||||
dependencies = "hrsh7th/nvim-cmp",
|
||||
},
|
||||
-- colorschemes
|
||||
{
|
||||
'Abstract-IDE/Abstract-cs',
|
||||
},
|
||||
{
|
||||
'ishan9299/modus-theme-vim',
|
||||
},
|
||||
{
|
||||
'NLKNguyen/papercolor-theme',
|
||||
},
|
||||
{
|
||||
'olimorris/onedarkpro.nvim',
|
||||
priority = 1000,
|
||||
config = function()
|
||||
require("onedarkpro").setup({
|
||||
colors = {
|
||||
onedark = {
|
||||
bg = "#000000" -- black
|
||||
},
|
||||
onelight = {
|
||||
bg = "#FFFFFF" -- white
|
||||
},
|
||||
-- cursorline = "#FF0000",
|
||||
},
|
||||
styles = {
|
||||
types = "NONE",
|
||||
methods = "NONE",
|
||||
numbers = "NONE",
|
||||
strings = "NONE",
|
||||
comments = "italic",
|
||||
keywords = "bold,italic",
|
||||
constants = "NONE",
|
||||
functions = "italic",
|
||||
operators = "NONE",
|
||||
variables = "NONE",
|
||||
parameters = "NONE",
|
||||
conditionals = "italic",
|
||||
virtual_text = "NONE",
|
||||
},
|
||||
options = {
|
||||
cursorline = true,
|
||||
transparency = true,
|
||||
}
|
||||
})
|
||||
end
|
||||
},
|
||||
-- gitignore
|
||||
{
|
||||
'jefflance/vim-gitignore',
|
||||
},
|
||||
-- languagetool
|
||||
{
|
||||
'dpelle/vim-grammalecte',
|
||||
config = function ()
|
||||
vim.cmd([[
|
||||
let g:grammalecte_cli_py = '/usr/bin/grammalecte-cli'
|
||||
]])
|
||||
end
|
||||
},
|
||||
-- markdown previewer
|
||||
{
|
||||
'iamcco/markdown-preview.nvim',
|
||||
build = "cd app && npm install",
|
||||
ft = "markdown",
|
||||
config = function()
|
||||
vim.cmd([[
|
||||
let g:mkdp_auto_start = 1
|
||||
]])
|
||||
end,
|
||||
},
|
||||
-- minimap
|
||||
{
|
||||
'echasnovski/mini.map',
|
||||
branch = "stable",
|
||||
config = function()
|
||||
require('mini.map').setup()
|
||||
local map = require('mini.map')
|
||||
map.setup({
|
||||
integrations = {
|
||||
map.gen_integration.builtin_search(),
|
||||
map.gen_integration.diagnostic({
|
||||
error = 'DiagnosticFloatingError',
|
||||
warn = 'DiagnosticFloatingWarn',
|
||||
info = 'DiagnosticFloatingInfo',
|
||||
hint = 'DiagnosticFloatingHint',
|
||||
}),
|
||||
},
|
||||
symbols = {
|
||||
encode = map.gen_encode_symbols.dot('2x1'),
|
||||
},
|
||||
window = {
|
||||
side = 'right',
|
||||
width = 20, -- set to 1 for a pure scrollbar :)
|
||||
winblend = 15,
|
||||
show_integration_count = false,
|
||||
},
|
||||
})
|
||||
end
|
||||
},
|
||||
-- neoscroll: smooth scrolling
|
||||
{
|
||||
"karb94/neoscroll.nvim",
|
||||
event = "WinScrolled",
|
||||
config = function()
|
||||
require('neoscroll').setup({
|
||||
-- All these keys will be mapped to their corresponding default scrolling animation
|
||||
mappings = { '<C-u>', '<C-d>', '<C-b>', '<C-f>',
|
||||
'<C-y>', '<C-e>', 'zt', 'zz', 'zb' },
|
||||
hide_cursor = true, -- Hide cursor while scrolling
|
||||
stop_eof = true, -- Stop at <EOF> when scrolling downwards
|
||||
use_local_scrolloff = false, -- Use the local scope of scrolloff instead of the global scope
|
||||
respect_scrolloff = false, -- Stop scrolling when the cursor reaches the scrolloff margin of the file
|
||||
cursor_scrolls_alone = true, -- The cursor will keep on scrolling even if the window cannot scroll further
|
||||
easing_function = nil, -- Default easing function
|
||||
pre_hook = nil, -- Function to run before the scrolling animation starts
|
||||
post_hook = nil, -- Function to run after the scrolling animation ends
|
||||
})
|
||||
end
|
||||
},
|
||||
-- zk: a plain text note-taking assistant
|
||||
{
|
||||
'mickael-menu/zk-nvim',
|
||||
config = function()
|
||||
require("zk").setup({
|
||||
})
|
||||
end,
|
||||
},
|
||||
-- nvim-ts-rainbow: rainbowed parenthesis
|
||||
{
|
||||
"mrjones2014/nvim-ts-rainbow",
|
||||
},
|
||||
-- colorizer: color highlighter
|
||||
{
|
||||
'norcalli/nvim-colorizer.lua',
|
||||
config = function()
|
||||
require("colorizer").setup({ '*' }, {
|
||||
RGB = true, -- #RGB hex codes
|
||||
RRGGBB = true, -- #RRGGBB hex codes
|
||||
RRGGBBAA = true, -- #RRGGBBAA hex codes
|
||||
rgb_fn = true, -- CSS rgb() and rgba() functions
|
||||
hsl_fn = true, -- CSS hsl() and hsla() functions
|
||||
css = true, -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB
|
||||
css_fn = true, -- Enable all CSS *functions*: rgb_fn, hsl_fn
|
||||
mode = 'background',
|
||||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
"kevinhwang91/rnvimr",
|
||||
cmd = "RnvimrToggle",
|
||||
config = function()
|
||||
vim.cmd([[
|
||||
let g:rnvimr_draw_border = 1
|
||||
let g:rnvimr_pick_enable = 1
|
||||
let g:rnvimr_bw_enable = 1
|
||||
]])
|
||||
end,
|
||||
},
|
||||
-- suda
|
||||
{
|
||||
'lambdalisue/suda.vim',
|
||||
config = function()
|
||||
vim.cmd([[
|
||||
let g:prompt = 'Mot de passe: '
|
||||
let g:suda_smart_edit = 1
|
||||
]])
|
||||
end,
|
||||
},
|
||||
-- trouble
|
||||
{
|
||||
'folke/trouble.nvim',
|
||||
cmd = "TroubleToggle",
|
||||
},
|
||||
-- vim-repeat: enable repeating supported plugin maps with "."
|
||||
{
|
||||
"tpope/vim-repeat"
|
||||
},
|
||||
-- vim-surround
|
||||
{
|
||||
'tpope/vim-surround',
|
||||
config = function()
|
||||
vim.cmd([[
|
||||
let timeoutlen = 500
|
||||
]])
|
||||
end,
|
||||
},
|
||||
-- LaTeX management needed plugins
|
||||
{
|
||||
"lervag/vimtex",
|
||||
config = function()
|
||||
vim.cmd([[
|
||||
let g:vimtex_view_method = "zathura"
|
||||
let g:vimtex_quickfix_enabled = 0
|
||||
let g:vimtex_compiler_method = 'latexmk'
|
||||
let g:vimtex_view_use_temp_files = 0
|
||||
]])
|
||||
end,
|
||||
},
|
||||
{
|
||||
"KeitaNakamura/tex-conceal.vim"
|
||||
},
|
||||
-- Python management needed plugins
|
||||
{
|
||||
"ChristianChiarulli/swenv.nvim"
|
||||
},
|
||||
{
|
||||
"stevearc/dressing.nvim"
|
||||
},
|
||||
{
|
||||
"mfussenegger/nvim-dap-python"
|
||||
},
|
||||
{
|
||||
"nvim-neotest/neotest"
|
||||
},
|
||||
{
|
||||
"nvim-neotest/neotest-python"
|
||||
},
|
||||
}
|
||||
require("user.tests").setup()
|
||||
|
||||
|
||||
|
||||
|
@ -1 +1,3 @@
|
||||
" Vim filetype detection file
|
||||
" Language: arduino
|
||||
au BufRead,BufNewFile *.ino,*.pde set filetype=arduino
|
||||
|
@ -1,3 +1,3 @@
|
||||
" Vim filetype detection file
|
||||
" Language: Asymptote
|
||||
au BufNewFile,BufRead *.asy setfiletype asy
|
||||
" Language: asymptote
|
||||
au BufNewFile,BufRead *.asy set filetype=asy
|
||||
|
3
conf.d/lvim/ftdetect/term.vim
Normal file
3
conf.d/lvim/ftdetect/term.vim
Normal file
@ -0,0 +1,3 @@
|
||||
" Vim filetype detection file
|
||||
" Type: terminal
|
||||
au TermOpen term://* set filetype=term
|
@ -33,25 +33,25 @@ whk.register {
|
||||
|
||||
whk.register {
|
||||
["<localleader>"] = { -- to set a completly new using only the localleader key
|
||||
name = " LaTeX",
|
||||
name = "LaTeX",
|
||||
c = { "<cmd>VimtexCompileSS<CR>", "Single-shot compile project" },
|
||||
C = {
|
||||
name = " Compile",
|
||||
name = "Compile",
|
||||
s = { "<cmd>VimtexStop<CR>", "Stop compile" },
|
||||
c = { "<cmd>VimtexCompileSelected<CR>", "Compile Selected" },
|
||||
},
|
||||
d = { "<cmd>VimtexDocPackage<CR>", "Open Doc for package" },
|
||||
e = { "<cmd>VimtexErrors<CR>", "Look at the errors" },
|
||||
m = { "<cmd>VimtexToggleMain<CR>", "Toggle Main" },
|
||||
m = { '<cmd>VimtexToggleMain <bar> let @+ = expand("%:t")<CR>', "Toggle Main" },
|
||||
o = { "<cmd>VimtexView<CR>", "View pdf" },
|
||||
s = { "<cmd>VimtexStatus<CR>", "Look at the status" },
|
||||
T = {
|
||||
name = " TOC",
|
||||
name = "TOC",
|
||||
o = { "<cmd>VimtexTocOpen<CR>", "Open TOC" },
|
||||
t = { "<cmd>VimtexTocToggle<CR>", "Toggle TOC" },
|
||||
},
|
||||
V = {
|
||||
name = " VimTeX",
|
||||
name = "VimTeX",
|
||||
c = { "<CMD>edit /home/jeff/.config/lvim/ftplugin/tex.lua<CR>", "Edit configuration" },
|
||||
s = { "<CMD>edit /home/jeff/.config/lvim/luasnippets/tex.lua<CR>", "Edit snippets" },
|
||||
i = { "<cmd>VimtexInfo<CR>", "Vimtex Info" },
|
||||
@ -70,7 +70,11 @@ linters.setup({
|
||||
--
|
||||
local formatters = require("lvim.lsp.null-ls.formatters")
|
||||
formatters.setup({
|
||||
{ command = "latexindent", filetypes = { "tex" } },
|
||||
{
|
||||
command = "latexindent",
|
||||
args = { "-l=~/.config/latex/latexsettings" },
|
||||
filetypes = { "tex" }
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
|
45
conf.d/lvim/lua/user/autocommands.lua
Normal file
45
conf.d/lvim/lua/user/autocommands.lua
Normal file
@ -0,0 +1,45 @@
|
||||
--[[--
|
||||
File : conf.d/lvim/lua/user/autocommands.lua
|
||||
Author : Jeff Lance <email@jefflance.me>
|
||||
Date : 23.02.2024 16:47:36
|
||||
Last Modified Date: 23.02.2024 16:47:36
|
||||
Last Modified By : Jeff Lance <email@jefflance.me>
|
||||
--]]--
|
||||
|
||||
|
||||
|
||||
-- Set autocommands
|
||||
--
|
||||
|
||||
local M = {}
|
||||
|
||||
M.setup = function()
|
||||
lvim.autocommands = {
|
||||
-- for any files
|
||||
{
|
||||
-- { "VimEnter" },
|
||||
-- {
|
||||
-- pattern = { "*" },
|
||||
-- command = "FloatermNew --width=0.8 --name=terminal --cwd=<buffer>",
|
||||
-- }
|
||||
},
|
||||
-- arduino files
|
||||
{
|
||||
{ "BufNewFile", "BufRead" },
|
||||
{
|
||||
pattern = { "*.ino", ".pde" },
|
||||
command = "set filetype=arduino",
|
||||
}
|
||||
},
|
||||
-- asymptote filetype
|
||||
{
|
||||
{ "BufNewFile", "BufRead" },
|
||||
{
|
||||
pattern = { "*.asy" },
|
||||
command = "set filetype=asy",
|
||||
}
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
return M
|
24
conf.d/lvim/lua/user/dap.lua
Normal file
24
conf.d/lvim/lua/user/dap.lua
Normal file
@ -0,0 +1,24 @@
|
||||
--[[--
|
||||
File : conf.d/lvim/lua/user/dap.lua
|
||||
Author : Jeff Lance <email@jefflance.me>
|
||||
Date : 28.12.2023 21:34:48
|
||||
Last Modified Date: 01.02.2024 12:47:04
|
||||
Last Modified By : Jeff Lance <email@jefflance.me>
|
||||
--]]--
|
||||
|
||||
|
||||
|
||||
-- Setup debug adapter
|
||||
--
|
||||
|
||||
local M = {}
|
||||
|
||||
M.setup = function()
|
||||
lvim.builtin.dap.active = true
|
||||
local mason_path = vim.fn.glob(vim.fn.stdpath "data" .. "/mason/")
|
||||
pcall(function()
|
||||
require("dap-python").setup(mason_path .. "packages/debugpy/venv/bin/python")
|
||||
end)
|
||||
end
|
||||
|
||||
return M
|
@ -8,26 +8,59 @@ Last Modified By : Jeff Lance <email@jefflance.me>
|
||||
|
||||
|
||||
|
||||
-- function Surround(w_or_W)
|
||||
-- local open_char = vim.fn.input("Surround with: ")
|
||||
-- local closed_char = nil
|
||||
-- if open_char == "(" then closed_char = ")" end
|
||||
-- if open_char == "[" then closed_char = "]" end
|
||||
-- if open_char == "{" then closed_char = "}" end
|
||||
-- if open_char == "<" then closed_char = ">" end
|
||||
-- if open_char == "'" then closed_char = "'" end
|
||||
-- if open_char == '"' then closed_char = '"' end
|
||||
-- if open_char == "`" then closed_char = "`" end
|
||||
-- if open_char == "/" then closed_char = "/" end
|
||||
-- if open_char == "|" then closed_char = "|" end
|
||||
local M = {}
|
||||
|
||||
-- if w_or_W == "w" then
|
||||
-- vim.cmd("normal! ciw" .. open_char)
|
||||
-- elseif w_or_W == "W" then
|
||||
-- vim.cmd([[normal! ciW]] .. open_char)
|
||||
-- end
|
||||
-- vim.cmd("normal! p")
|
||||
-- vim.cmd("normal! a" .. closed_char)
|
||||
-- vim.cmd("normal! a")
|
||||
-- end
|
||||
--- Get current buffer size
|
||||
---@return {width: number, height: number}
|
||||
local function get_buf_size()
|
||||
local cbuf = vim.api.nvim_get_current_buf()
|
||||
local bufinfo = vim.tbl_filter(function(buf)
|
||||
return buf.bufnr == cbuf
|
||||
end, vim.fn.getwininfo(vim.api.nvim_get_current_win()))[1]
|
||||
if bufinfo == nil then
|
||||
return { width = -1, height = -1 }
|
||||
end
|
||||
return { width = bufinfo.width, height = bufinfo.height }
|
||||
end
|
||||
|
||||
--- Get the dynamic terminal size in cells
|
||||
---@param direction string
|
||||
---@param size number
|
||||
---@return integer
|
||||
local function get_dynamic_terminal_size(direction, size)
|
||||
size = size or lvim.builtin.terminal.size
|
||||
if direction ~= "float" and tostring(size):find(".", 1, true) then
|
||||
size = math.min(size, 1.0)
|
||||
local buf_sizes = get_buf_size()
|
||||
local buf_size = direction == "horizontal" and buf_sizes.height or buf_sizes.width
|
||||
return buf_size * size
|
||||
else
|
||||
return size
|
||||
end
|
||||
end
|
||||
|
||||
M.xplr_toggle = function()
|
||||
local Terminal = require("toggleterm.terminal").Terminal
|
||||
local direction = "float"
|
||||
|
||||
local xplr = Terminal:new {
|
||||
cmd = "xplr",
|
||||
hidden = true,
|
||||
direction = direction,
|
||||
-- size = 20 | function()
|
||||
-- return get_dynamic_terminal_size("float", 0.8)
|
||||
-- end,
|
||||
float_opts = {
|
||||
border = "curved",
|
||||
},
|
||||
on_open = function(_)
|
||||
vim.cmd "startinsert!"
|
||||
end,
|
||||
on_close = function(_) end,
|
||||
count = 200,
|
||||
}
|
||||
xplr:toggle()
|
||||
end
|
||||
|
||||
return M
|
||||
|
||||
|
@ -28,6 +28,7 @@ M.setup = function()
|
||||
lvim.keys.normal_mode["<C-r>"] = "<CMD>redo<CR>"
|
||||
lvim.keys.normal_mode["<C-[>"] = ":<<CR>"
|
||||
lvim.keys.normal_mode["<C-]>"] = ":><CR>"
|
||||
-- lvim.keys.normal_mode["<C-t>"] = ":FloatermToggle terminal<CR>"
|
||||
|
||||
end
|
||||
|
||||
|
39
conf.d/lvim/lua/user/lsp.lua
Normal file
39
conf.d/lvim/lua/user/lsp.lua
Normal file
@ -0,0 +1,39 @@
|
||||
--[[--
|
||||
File : conf.d/lvim/lua/user/lsp.lua
|
||||
Author : Jeff Lance <email@jefflance.me>
|
||||
Date : 28.12.2023 21:34:48
|
||||
Last Modified Date: 06.01.2024 18:59:29
|
||||
Last Modified By : Jeff Lance <email@jefflance.me>
|
||||
--]]--
|
||||
|
||||
|
||||
|
||||
-- Setup debug adapter
|
||||
--
|
||||
|
||||
local M = {}
|
||||
|
||||
M.setup = function()
|
||||
-- Generic LSP settings
|
||||
vim.diagnostic.config({ virtual_text = true })
|
||||
|
||||
-- setup LSP
|
||||
local capabilities = require("lvim.lsp").common_capabilities()
|
||||
require("lvim.lsp.manager").setup(
|
||||
"texlab", {
|
||||
on_attach = require("lvim.lsp").common_on_attach,
|
||||
on_init = require("lvim.lsp").common_on_init,
|
||||
capabilities = capabilities,
|
||||
})
|
||||
|
||||
require("lvim.lsp.manager").setup(
|
||||
"marksman", {
|
||||
})
|
||||
|
||||
require("lvim.lsp.manager").setup(
|
||||
"golangci_lint_ls", {
|
||||
})
|
||||
|
||||
end
|
||||
|
||||
return M
|
@ -2,39 +2,16 @@
|
||||
File : conf.d/lvim/lua/user/plugin-configs.lua
|
||||
Author : Jeff Lance <email@jefflance.me>
|
||||
Date : 28.12.2023 21:34:48
|
||||
Last Modified Date: 28.12.2023 21:34:48
|
||||
Last Modified Date: 06.01.2024 18:33:43
|
||||
Last Modified By : Jeff Lance <email@jefflance.me>
|
||||
--]]--
|
||||
|
||||
|
||||
|
||||
-- Plugins configurations
|
||||
--
|
||||
|
||||
local M = {}
|
||||
|
||||
-- setup debug adapter
|
||||
M.dap = function ()
|
||||
lvim.builtin.dap.active = true
|
||||
local mason_path = vim.fn.glob(vim.fn.stdpath "data" .. "/mason/")
|
||||
pcall(function()
|
||||
require("dap-python").setup(mason_path .. "packages/debugpy/venv/bin/python")
|
||||
end)
|
||||
end
|
||||
|
||||
-- setup testing
|
||||
M.neotest = function ()
|
||||
require("neotest").setup({
|
||||
adapters = {
|
||||
require("neotest-python")({
|
||||
-- Extra arguments for nvim-dap configuration
|
||||
-- See https://github.com/microsoft/debugpy/wiki/Debug-configuration-settings for values
|
||||
dap = {
|
||||
justMyCode = false,
|
||||
console = "integratedTerminal",
|
||||
},
|
||||
args = { "--log-level", "DEBUG", "--quiet" },
|
||||
runner = "pytest",
|
||||
})
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
return M
|
||||
|
@ -10,10 +10,14 @@ Last Modified By : Jeff Lance <email@jefflance.me>
|
||||
|
||||
local M = {}
|
||||
|
||||
M.setup = function ()
|
||||
-- local config = require("user.plugin-configs")
|
||||
M.setup = function()
|
||||
local configs = require("user.plugin-configs")
|
||||
|
||||
lvim.plugins = {
|
||||
-- abolish
|
||||
{
|
||||
'tpope/vim-abolish',
|
||||
},
|
||||
-- addheader
|
||||
{
|
||||
'alpertuna/vim-header',
|
||||
@ -35,6 +39,21 @@ M.setup = function ()
|
||||
{
|
||||
"skywind3000/asyncrun.vim",
|
||||
},
|
||||
-- chatgpt
|
||||
{
|
||||
"jackMort/ChatGPT.nvim",
|
||||
event = "VeryLazy",
|
||||
config = function()
|
||||
require("chatgpt").setup({
|
||||
api_key_cmd = "pass _api_keys/openai_perso-1"
|
||||
})
|
||||
end,
|
||||
dependencies = {
|
||||
"MunifTanjim/nui.nvim",
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-telescope/telescope.nvim"
|
||||
}
|
||||
},
|
||||
-- cmp addons
|
||||
{
|
||||
"tzachar/cmp-tabnine",
|
||||
@ -92,6 +111,10 @@ M.setup = function ()
|
||||
})
|
||||
end
|
||||
},
|
||||
-- floaterm
|
||||
{
|
||||
'voldikss/vim-floaterm',
|
||||
},
|
||||
-- gitignore
|
||||
{
|
||||
'jefflance/vim-gitignore',
|
||||
@ -116,6 +139,64 @@ M.setup = function ()
|
||||
]])
|
||||
end,
|
||||
},
|
||||
-- mason
|
||||
{
|
||||
'WhoIsSethDaniel/mason-tool-installer.nvim',
|
||||
config = function()
|
||||
local mason = require('mason-tool-installer')
|
||||
mason.setup({
|
||||
ensure_installed = {
|
||||
'xo',
|
||||
'textlint',
|
||||
'yamllint',
|
||||
'yq',
|
||||
'ansible-lint',
|
||||
'xmlformatter',
|
||||
'typescript-language-server',
|
||||
'tailwindcss-language-server',
|
||||
'texlab',
|
||||
'pyright',
|
||||
'golines',
|
||||
'prettier',
|
||||
'lua-language-server',
|
||||
'markdownlint',
|
||||
'black',
|
||||
'bash-language-server',
|
||||
'golangci-lint',
|
||||
'go-debug-adapter',
|
||||
'editorconfig-checker',
|
||||
'autopep8',
|
||||
'beautysh',
|
||||
'clangd',
|
||||
'djlint',
|
||||
'docker-compose-language-service',
|
||||
'dockerfile-language-server',
|
||||
'dot-language-server',
|
||||
'golangci-lint-langserver',
|
||||
'gopls',
|
||||
'html-lsp',
|
||||
'intelephense',
|
||||
'jq',
|
||||
'json-lsp',
|
||||
'jsonlint',
|
||||
'latexindent',
|
||||
'lemminx',
|
||||
'markdown-toc',
|
||||
'marksman',
|
||||
'perlnavigator',
|
||||
'php-debug-adapter',
|
||||
'twigcs',
|
||||
'vim-language-server',
|
||||
'yaml-language-server',
|
||||
'yamlfix',
|
||||
},
|
||||
auto_update = true,
|
||||
run_on_start = true,
|
||||
start_delay = 3000,
|
||||
debounce_hours = 24,
|
||||
})
|
||||
end
|
||||
},
|
||||
-- minimap
|
||||
{
|
||||
'echasnovski/mini.map',
|
||||
@ -193,17 +274,24 @@ M.setup = function ()
|
||||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
"kevinhwang91/rnvimr",
|
||||
cmd = "RnvimrToggle",
|
||||
config = function()
|
||||
vim.cmd([[
|
||||
let g:rnvimr_draw_border = 1
|
||||
let g:rnvimr_pick_enable = 1
|
||||
let g:rnvimr_bw_enable = 1
|
||||
]])
|
||||
end,
|
||||
},
|
||||
-- -- rnvimr
|
||||
-- {
|
||||
-- "kevinhwang91/rnvimr",
|
||||
-- cmd = "RnvimrToggle",
|
||||
-- config = function()
|
||||
-- vim.cmd([[
|
||||
-- let g:rnvimr_enable_ex = 1
|
||||
-- let g:rnvimr_enable_picker = 1
|
||||
-- let g:rnvimr_edit_cmd = 'drop'
|
||||
-- let g:rnvimr_draw_border = 1
|
||||
-- let g:rnvimr_hide_gitignore = 1
|
||||
-- " let g:rnvimr_border_attr = {'fg': 14, 'bg': 0}
|
||||
-- let g:rnvimr_enable_bw = 1
|
||||
-- " let g:rnvimr_shadow_winblend = 70
|
||||
-- let g:rnvimr_ranger_cmd = ['ranger', '--cmd=set draw_borders both']
|
||||
-- ]])
|
||||
-- end,
|
||||
-- },
|
||||
-- suda
|
||||
{
|
||||
'lambdalisue/suda.vim',
|
||||
|
33
conf.d/lvim/lua/user/tests.lua
Normal file
33
conf.d/lvim/lua/user/tests.lua
Normal file
@ -0,0 +1,33 @@
|
||||
--[[--
|
||||
File : conf.d/lvim/lua/user/tests.lua
|
||||
Author : Jeff Lance <email@jefflance.me>
|
||||
Date : 28.12.2023 21:34:48
|
||||
Last Modified Date: 06.01.2024 18:55:14
|
||||
Last Modified By : Jeff Lance <email@jefflance.me>
|
||||
--]]--
|
||||
|
||||
|
||||
|
||||
-- Setup test framework
|
||||
--
|
||||
|
||||
local M = {}
|
||||
|
||||
M.setup = function()
|
||||
require("neotest").setup({
|
||||
adapters = {
|
||||
require("neotest-python")({
|
||||
-- Extra arguments for nvim-dap configuration
|
||||
-- See https://github.com/microsoft/debugpy/wiki/Debug-configuration-settings for values
|
||||
dap = {
|
||||
justMyCode = false,
|
||||
console = "integratedTerminal",
|
||||
},
|
||||
args = { "--log-level", "DEBUG", "--quiet" },
|
||||
runner = "pytest",
|
||||
})
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
return M
|
@ -15,8 +15,26 @@ M.setup = function()
|
||||
-- whichkey mappings
|
||||
--
|
||||
|
||||
-- chatgpt bindings
|
||||
lvim.builtin.which_key.mappings["C"] = {
|
||||
name = "ChatGPT",
|
||||
c = { "<cmd>ChatGPT<CR>", "ChatGPT" },
|
||||
e = { "<cmd>ChatGPTEditWithInstruction<CR>", "Edit with instruction", mode = { "n", "v" } },
|
||||
g = { "<cmd>ChatGPTRun grammar_correction<CR>", "Grammar Correction", mode = { "n", "v" } },
|
||||
t = { "<cmd>ChatGPTRun translate<CR>", "Translate", mode = { "n", "v" } },
|
||||
k = { "<cmd>ChatGPTRun keywords<CR>", "Keywords", mode = { "n", "v" } },
|
||||
d = { "<cmd>ChatGPTRun docstring<CR>", "Docstring", mode = { "n", "v" } },
|
||||
a = { "<cmd>ChatGPTRun add_tests<CR>", "Add Tests", mode = { "n", "v" } },
|
||||
o = { "<cmd>ChatGPTRun optimize_code<CR>", "Optimize Code", mode = { "n", "v" } },
|
||||
s = { "<cmd>ChatGPTRun summarize<CR>", "Summarize", mode = { "n", "v" } },
|
||||
f = { "<cmd>ChatGPTRun fix_bugs<CR>", "Fix Bugs", mode = { "n", "v" } },
|
||||
x = { "<cmd>ChatGPTRun explain_code<CR>", "Explain Code", mode = { "n", "v" } },
|
||||
r = { "<cmd>ChatGPTRun roxygen_edit<CR>", "Roxygen Edit", mode = { "n", "v" } },
|
||||
l = { "<cmd>ChatGPTRun code_readability_analysis<CR>", "Code Readability Analysis", mode = { "n", "v" } },
|
||||
}
|
||||
|
||||
-- remap neo-tree shortcut to rnvimr
|
||||
lvim.builtin.which_key.mappings["e"] = { "<CMD>RnvimrToggle<CR>", "File explorer" }
|
||||
-- lvim.builtin.which_key.mappings["e"] = { "<CMD>RnvimrToggle<CR>", "File explorer" }
|
||||
|
||||
-- remap dashboard
|
||||
lvim.builtin.which_key.mappings["d"] = lvim.builtin.which_key.mappings[";"]
|
||||
@ -81,6 +99,7 @@ M.setup = function()
|
||||
lvim.builtin.which_key.mappings["x"] = { "<CMD>w! <BAR> q!<CR>", "Save and quit" }
|
||||
|
||||
lvim.builtin.which_key.mappings[";"] = {}
|
||||
lvim.builtin.which_key.mappings["e"] = { ":lua require('user.functions').xplr_toggle()<CR>", "File manager" }
|
||||
lvim.builtin.terminal.open_mapping = "<C-t>"
|
||||
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user