This commit is contained in:
Aria Nolan 2023-08-01 22:19:57 -04:00
parent de9b0eefed
commit 7b02b0293d
3 changed files with 95 additions and 4 deletions

1
.gitignore vendored
View file

@ -1 +1,2 @@
lazy-lock.json
lv-settings.lua

View file

@ -5,15 +5,18 @@
-- Discord: https://discord.com/invite/Xb9B4Ny
require("user.c")
require("user.python")
lvim.colorscheme = "catppuccin-frappe"
vim.opt.rnu = false -- relative numbers
lvim.transparent_window = true
lvim.colorscheme = "rose-pine-moon"
vim.opt.rnu = true -- relative numbers
vim.opt.cb = "unnamedplus"
vim.opt.nf = "alpha,octal,hex,bin,unsigned"
vim.opt.si = true
vim.opt.backup = false
lvim.builtin.nvimtree.active = false -- NOTE: using neo-tree
lvim.builtin.indentlines.active = true
vim.o.timeoutlen = 250
vim.opt.ts = 2
vim.opt.sw = 2
@ -32,14 +35,38 @@ vim.diagnostic.config({ virtual_text = true })
lvim.builtin.treesitter.highlight.enable = true
-- auto install treesitter parsers
lvim.builtin.treesitter.ensure_installed = { "cpp", "c" }
lvim.builtin.treesitter.ensure_installed = { "cpp", "c", "python"}
-- Additional Plugins
table.insert(lvim.plugins, {
"kvrohit/mellow.nvim",
"embark-theme/vim",
"nyngwang/nvimgelion",
"maxmx03/FluoroMachine.nvim",
"sonjiku/yawnc.nvim",
"xero/miasma.nvim",
"lmburns/kimbox",
"p00f/clangd_extensions.nvim",
"catppuccin/nvim",
"marko-cerovac/material.nvim",
"bluz71/vim-nightfly-colors",
"sainnhe/sonokai",
"nyoom-engineering/oxocarbon.nvim",
"rose-pine/neovim",
"kyazdani42/blue-moon",
"bkegley/gloombuddy",
"Th3Whit3Wolf/space-nvim",
"yonlu/omni.vim",
"ray-x/aurora",
"ray-x/starry.nvim",
"AlexvZyl/nordic.nvim",
"shaunsingh/moonlight.nvim",
"sainnhe/gruvbox-material",
"neanias/everforest-nvim",
"kdheepak/monochrome.nvim",
"mcchrish/zenbones.nvim",
"FrenzyExists/aquarium-vim",
"rebelot/kanagawa.nvim",
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v2.x",
@ -93,7 +120,7 @@ table.insert(lvim.plugins, {
event = "BufRead",
config = function()
require("numb").setup {
show_numbers = true, -- Enable 'number' for the window while peeking
show_numbers = true, -- Enable 'number' for the window while peeking
show_cursorline = true, -- Enable 'cursorline' for the window while peeking
}
end,

63
lua/user/python.lua Normal file
View file

@ -0,0 +1,63 @@
-- install plugins
table.insert(lvim.plugins, {
"ChristianChiarulli/swenv.nvim",
"stevearc/dressing.nvim",
"mfussenegger/nvim-dap-python",
"nvim-neotest/neotest",
"nvim-neotest/neotest-python",
})
-- automatically install python syntax highlighting
-- lvim.builtin.treesitter.ensure_installed = {
-- "python",
-- }
-- setup formatting
local formatters = require "lvim.lsp.null-ls.formatters"
formatters.setup { { name = "black" }, }
lvim.format_on_save.enabled = true
lvim.format_on_save.pattern = { "*.py" }
-- setup linting
local linters = require "lvim.lsp.null-ls.linters"
linters.setup { { command = "flake8", filetypes = { "python" } } }
-- 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",
})
}
})
lvim.builtin.which_key.mappings["dm"] = { "<cmd>lua require('neotest').run.run()<cr>",
"Test Method" }
lvim.builtin.which_key.mappings["dM"] = { "<cmd>lua require('neotest').run.run({strategy = 'dap'})<cr>",
"Test Method DAP" }
lvim.builtin.which_key.mappings["df"] = {
"<cmd>lua require('neotest').run.run({vim.fn.expand('%')})<cr>", "Test Class" }
lvim.builtin.which_key.mappings["dF"] = {
"<cmd>lua require('neotest').run.run({vim.fn.expand('%'), strategy = 'dap'})<cr>", "Test Class DAP" }
lvim.builtin.which_key.mappings["dS"] = { "<cmd>lua require('neotest').summary.toggle()<cr>", "Test Summary" }
-- binding for switching
lvim.builtin.which_key.mappings["C"] = {
name = "Python",
c = { "<cmd>lua require('swenv.api').pick_venv()<cr>", "Choose Env" },
}