Compare commits
30 Commits
codecompan
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fa011a05e5 | ||
|
|
278be5ac15 | ||
|
|
146bdf9b39 | ||
|
|
7cefecceed | ||
|
|
bb0a48dafb | ||
|
|
c6146055fb | ||
|
|
54b45037c1 | ||
|
|
3af68c2c76 | ||
|
|
e1c533e1c4 | ||
|
|
c30416ef78 | ||
|
|
b7611b08ae | ||
|
|
fc8c549c98 | ||
|
|
ab9375cf6c | ||
|
|
b25d85243a | ||
|
|
ea1ac722c3 | ||
|
|
53f2fd8cda | ||
|
|
ce28c5f0c9 | ||
|
|
12cd4924a7 | ||
|
|
5f4866c0f6 | ||
|
|
3b4bb34a67 | ||
|
|
b11f25288e | ||
|
|
d78e1294c9 | ||
|
|
31810e41ec | ||
|
|
04c9931e1a | ||
|
|
fa0b59a67a | ||
|
|
2a238d1d3f | ||
|
|
f019d65ace | ||
|
|
5d91a35050 | ||
|
|
650508f116 | ||
|
|
dec8271195 |
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
lazy-lock.json
|
||||
lazy-lock.json
|
||||
142
README.md
Normal file
142
README.md
Normal file
@ -0,0 +1,142 @@
|
||||
# Neovim Configuration Summary
|
||||
|
||||
## Plugin Management
|
||||
- **Plugin Manager**: `lazy.nvim` (auto-bootstrapped)
|
||||
- **Leader Key**: `<Space>`
|
||||
- **Update Checker**: Enabled (silent notifications)
|
||||
|
||||
## Core Plugins & Features
|
||||
|
||||
### File Navigation & Search
|
||||
- **Telescope** (v0.1.8): Fuzzy finder for files, buffers, grep, help tags, marks
|
||||
- **nvim-tree**: File browser
|
||||
- **Tagbar**: Code structure viewer (properties/methods)
|
||||
|
||||
### LSP & Code Intelligence
|
||||
- **Mason + Mason-LSPConfig**: LSP server management
|
||||
- **nvim-lspconfig**: LSP client configuration
|
||||
- **Lspsaga**: Enhanced LSP UI (code actions, definitions, diagnostics, outline)
|
||||
- **nvim-cmp**: Completion engine with:
|
||||
- Buffer, path, LSP, cmdline sources
|
||||
- LuaSnip snippets
|
||||
|
||||
### Syntax & Highlighting
|
||||
- **nvim-treesitter**: Syntax highlighting via language parsers
|
||||
- **nvim-colorizer**: Color previews (hex codes, etc.)
|
||||
- **SyntaxAttr**: Display syntax highlighting info
|
||||
- **Gruvbox**: Colorscheme
|
||||
|
||||
### UI Enhancements
|
||||
- **lualine**: Status bar
|
||||
- **nvim-scrollbar**: Scrollbar indicator
|
||||
- **indent-blankline**: Indentation guides
|
||||
- **rainbow-delimiters**: Color-coded brackets/braces
|
||||
- **deadcolumn**: Visual indicator near line limit
|
||||
- **alpha-nvim**: Custom welcome screen
|
||||
|
||||
### Git Integration
|
||||
- **vim-fugitive**: Git wrapper
|
||||
- **vim-gitgutter**: Git diff indicators in gutter
|
||||
|
||||
### Code Quality & Formatting
|
||||
- **conform.nvim**: Code formatter (configured for Lua with stylua)
|
||||
- **Trouble.nvim**: Diagnostics viewer
|
||||
|
||||
### Marks & Navigation
|
||||
- **marks.nvim**: Visual marks with gutter indicators
|
||||
- **vim-indentwise**: Indentation-based navigation
|
||||
|
||||
### Other Utilities
|
||||
- **undotree**: Visual undo history
|
||||
- **which-key.nvim**: Keybinding help menu
|
||||
- **toggleterm.nvim**: Floating terminal
|
||||
- **llama.vim**: Local AI integration (requires llama.cpp with CUDA)
|
||||
- **mini.nvim**: Mini utilities collection
|
||||
- **volt/menu**: Context menu system
|
||||
- **minty**: Color picker
|
||||
|
||||
## Key Bindings
|
||||
|
||||
### Telescope (`<leader>f`)
|
||||
- `ff` - Find files
|
||||
- `fg` - Live grep
|
||||
- `fb` - Find buffers
|
||||
- `fc` - Find in current buffer
|
||||
- `fh` - Help tags
|
||||
- `fm` - Marks
|
||||
- `fr` - Resume last search
|
||||
|
||||
### LSP (`<leader>l`)
|
||||
- `lc` - Code actions
|
||||
- `lo` - Outline
|
||||
- `lr` - Rename
|
||||
- `ld` - Go to definition
|
||||
- `lf` - LSP finder
|
||||
- `lp` - Preview definition
|
||||
- `lw` - Workspace diagnostics
|
||||
- `lb` - Buffer diagnostics
|
||||
- `lm` - LMS fixer (custom)
|
||||
|
||||
### Other Important Bindings
|
||||
- `<leader>u` - Undo tree
|
||||
- `<leader>m` - Marks management
|
||||
- `<leader>t` - Tab navigation
|
||||
- `<leader>b` - Buffer management
|
||||
- `<leader>i` - Indentation toggles
|
||||
- `<leader>n` - Remove search highlight
|
||||
- `<leader>e` - Show diagnostic
|
||||
- `<leader><F5>` - Definition in new tab
|
||||
- `<leader><F8>` - Tagbar toggle
|
||||
- `<C-k>` - LSP hover
|
||||
- `<C-]>` - Jump to definition in new tab
|
||||
- `<Tab>/<S-Tab>` - Tab navigation
|
||||
- `<C-h/j/k/l>` - Window navigation
|
||||
- `<C-m>` - Move split to tab
|
||||
- `<C-t>` - Context menu
|
||||
|
||||
## Editor Settings
|
||||
|
||||
### Display
|
||||
- True color support enabled
|
||||
- Cursor line/column highlighting
|
||||
- Line numbers
|
||||
- Color column at 81
|
||||
- Scroll offset: 5 lines
|
||||
- Sign column always visible
|
||||
|
||||
### Indentation & Formatting
|
||||
- Expand tabs to spaces
|
||||
- Tab width: 4 spaces
|
||||
- Smart indentation
|
||||
- Show whitespace characters (eol, tabs, trails)
|
||||
- No text wrapping
|
||||
|
||||
### Search
|
||||
- Case-insensitive (smart case)
|
||||
- Incremental search
|
||||
- Highlight search results
|
||||
- Wildignore case enabled
|
||||
|
||||
### Folding
|
||||
- Method: indent
|
||||
- Fold level: 99 (mostly open)
|
||||
- Fold column visible
|
||||
|
||||
### Behavior
|
||||
- Auto-read changed files
|
||||
- Arrow keys disabled (forces hjkl)
|
||||
- Mouse disabled
|
||||
- Shell commands run interactively (`-ic` flag)
|
||||
|
||||
## Special Features
|
||||
1. **PHP Helper**: Custom function for inserting debug backtraces
|
||||
3. **Custom Aliases**: `Bufdel` command for buffer management
|
||||
4. **Quick Directory Navigation**: Shortcuts to LMS project directories (`<leader>c`)
|
||||
|
||||
## Architecture
|
||||
- Modular structure: config split into logical files
|
||||
- Plugin configs in `lua/config/plugin/`
|
||||
- Main entry point: `init.lua`
|
||||
- Uses Lua-based configuration throughout
|
||||
|
||||
This setup focuses on productivity with LSP integration, AI-assisted completion, and a clean UI.
|
||||
14
init.lua
14
init.lua
@ -1,6 +1,8 @@
|
||||
require("core.options")
|
||||
require("core.functions")
|
||||
require("core.keymaps")
|
||||
require("core.plugins")
|
||||
require("core.aliases")
|
||||
require("core.plugin_config")
|
||||
vim.opt.termguicolors = true
|
||||
|
||||
require("config.functions")
|
||||
require("config.lazy")
|
||||
require("config.keymaps")
|
||||
require("config.options")
|
||||
require("config.aliases")
|
||||
require("config.plugin")
|
||||
|
||||
131
lua/config/keymaps.lua
Normal file
131
lua/config/keymaps.lua
Normal file
@ -0,0 +1,131 @@
|
||||
local wk = require("which-key")
|
||||
local telescope = require('telescope.builtin')
|
||||
local marks = require('marks')
|
||||
|
||||
-- the leader key is <space>
|
||||
wk.add({
|
||||
-- Telescope
|
||||
{ "<leader>f", group = "Telescope" },
|
||||
{ "<leader>ff", telescope.find_files, desc = "Find files", mode = "n" },
|
||||
{ "<leader>fg", telescope.live_grep, desc = "Live grep", mode ="n"},
|
||||
{ "<leader>fb", telescope.buffers, desc = "Find in buffers", mode ="n"},
|
||||
{ "<leader>fc", telescope.current_buffer_fuzzy_find, desc = "Find in current buffer", mode ="n"},
|
||||
{ "<leader>fh", telescope.help_tags, desc = "Find in help tags", mode ="n"},
|
||||
{ "<leader>fm", telescope.marks, desc = "Find in marks", mode ="n"},
|
||||
{ "<leader>fr", telescope.resume, desc = "Resume last find", mode ="n"},
|
||||
-- LspSaga
|
||||
{ "<leader>l", group = "Lsp" },
|
||||
{ "<leader>lc", "<cmd>Lspsaga code_action<cr>", desc = "Code Action", mode ="n"},
|
||||
{ "<leader>lo", "<cmd>Lspsaga outline<cr>", desc = "Outline", mode ="n"},
|
||||
{ "<leader>lr", "<cmd>Lspsaga rename<cr>", desc = "Rename", mode ="n"},
|
||||
{ "<leader>ld", "<cmd>Lspsaga goto_definition<cr>", desc = "Lsp GoTo Definition", mode ="n"},
|
||||
{ "<leader>lf", "<cmd>Lspsaga finder<cr>", desc = "Lsp Finder", mode ="n"},
|
||||
{ "<leader>lp", "<cmd>Lspsaga peek_definition<cr>", desc = "Preview Definition", mode ="n"},
|
||||
{ "<leader>lw", "<cmd>Lspsaga show_workspace_diagnostics<cr>", desc = "Show Workspace Diagnostics", mode ="n"},
|
||||
{ "<leader>lb", "<cmd>Lspsaga show_buf_diagnostics<cr>", desc = "Show Buffer Diagnostics", mode ="n"},
|
||||
{ "<leader>lm", "<cmd>TermExec cmd='lmsfixfile %:p:h' direction='float'<cr>", desc = "LMS fixer this file", mode ="n"},
|
||||
-- UndoTree
|
||||
{ "<leader>u", group = "UndoTree" },
|
||||
{ "<leader>uu", "<cmd>lua require('undotree').toggle()<cr>", desc="Toggle undo tree", mode ="n"},
|
||||
-- TagBar
|
||||
{ "<leader><F8>", "<cmd>:TagbarToggle fj<cr>", desc="Toggle tagbar", mode ="n"},
|
||||
-- Custom
|
||||
{ "<leader>n", "<cmd>:noh<cr>", desc="Remove highlight", mode = "n"},
|
||||
-- Jump to definition in new tab
|
||||
{ "<leader><F5>", "<cmd>tab split | lua vim.lsp.buf.definition()<cr>", desc="Definition in new tab", mode = "n"},
|
||||
-- See error in diagnostic window
|
||||
{ "<leader>e", "<cmd>lua vim.diagnostic.open_float()<CR>", desc="See diagnostic", mode = "n"},
|
||||
-- Closing stuff
|
||||
{ "<leader>Z", group = "Closing"},
|
||||
{ "<leader>ZZ", "<cmd>wq!<cr>", desc = "Write en close", mode = "n"},
|
||||
{ "<leader>ZQ", "<cmd>q!<cr>", desc = "Close without write", mode = "n"},
|
||||
-- Creating and browsing marks
|
||||
{ "<leader>m", group = "Create / Jump mark"},
|
||||
{ "<leader>mx", marks.set, desc = "Set mark [x]", mode = "n"},
|
||||
{ "<leader>m,", marks.set_next, desc = "Set the next available alphabetical (lowercase) mark", mode = "n"},
|
||||
{ "<leader>m;", marks.toggle, desc = "Toggle the next available mark at the current line", mode = "n"},
|
||||
{ "<leader>m]", marks.next, desc = "Move to next mark", mode = "n"},
|
||||
{ "<leader>m[", marks.prev, desc = "Move to previous mark", mode = "n"},
|
||||
{ "<leader>m:", marks.preview, desc = "Preview mark. This will prompt you for a specific mark to preview; press <cr> to preview the next mark.", mode = "n"},
|
||||
{ "<leader>m[0-9]", marks.set_bookmark, desc = "Add a bookmark from bookmark group[0-9].", mode = "n"},
|
||||
{ "<leader>m}", marks.next_bookmark, desc = "Move to the next bookmark having the same type as the bookmark under the cursor. Works across buffers.", mode = "n"},
|
||||
{ "<leader>m{", marks.prev_bookmark, desc = "Move to the previous bookmark having the same type as the bookmark under the cursor. Works across buffers.", mode = "n"},
|
||||
-- Deleting marks
|
||||
{ "<leader>s", group = "Delete marks"},
|
||||
{ "<leader>dmx", marks.delete, desc = "Delete mark x", mode = "n"},
|
||||
{ "<leader>dm-", marks.delete_line, desc = "Delete all marks on the current line", mode = "n"},
|
||||
{ "<leader>dm<space>", marks.delete_buf, desc = "Delete all marks in the current buffer", mode = "n"},
|
||||
{ "<leader>dm=", marks.delete_bookmark, desc = "Delete the bookmark under the cursor.", mode = "n"},
|
||||
{ "<leader>dm[0-9]", marks.delete_bookmark, desc = "Delete all bookmarks from bookmark group[0-9].", mode = "n"},
|
||||
-- Git
|
||||
{ "<leader>h", group = "Git"},
|
||||
-- Tabs
|
||||
{ "<leader>t", group = "Tabs"},
|
||||
{ "<leader>tf", "<cmd>tabm 0<cr>", desc = "Move before first tab", mode = "n"},
|
||||
{ "<leader>tl", "<cmd>tabm<cr>", desc = "Move after last tab", mode = "n"},
|
||||
{ "<leader>t,", "<cmd>tabm -<cr>", desc = "Move tab to left", mode = "n"},
|
||||
{ "<leader>t.", "<cmd>tabm +<cr>", desc = "Move tab to right", mode = "n"},
|
||||
{ "<leader>tn", "<cmd>tabnext<cr>", desc = "Go to next tab", mode = "n"},
|
||||
{ "<leader>tp", "<cmd>tabprevious<cr>", desc = "Go to previous tab", mode = "n"},
|
||||
{ "<leader>tb", "<cmd>tabfirst<cr>", desc = "Go to first tab", mode = "n"},
|
||||
{ "<leader>te", "<cmd>tablast<cr>", desc = "Go to last tab", mode = "n"},
|
||||
{ "<leader>to", "<cmd>tabonly<cr>", desc = "Close all except current", mode = "n"},
|
||||
-- Buffer
|
||||
{ "<leader>b", group = "Buffers"},
|
||||
{ "<leader>bd", "<cmd>Bufdel<cr>", desc = "Close open buffers", mode = "n"},
|
||||
-- Indent
|
||||
{ "<leader>i", group = "Indentation"},
|
||||
{ "<leader>it", "<cmd>IBLToggle<cr>", desc = "Toggle indentation guides", mode = "n"},
|
||||
{ "<leader>im", "<cmd>set list!<cr>", desc = "Toggle indentation characters", mode = "n"},
|
||||
-- Navigation
|
||||
{ "<leader>c", group = "Quick change directories"},
|
||||
{ "<leader>cr", "<cmd>cd ~/lms/<cr>", desc = "Change to lms root", mode = "n"},
|
||||
{ "<leader>cc", "<cmd>cd ~/lms/App/Lms/<cr>", desc = "Change to App/Lms", mode = "n"},
|
||||
{ "<leader>ct", "<cmd>cd ~/lms/Tests/<cr>", desc = "Change to Tests", mode = "n"},
|
||||
-- Commenting
|
||||
{ "<leader>g", group = "Commenting"},
|
||||
{ "<leader>gcc", desc = "Toggles the current line using linewise comment", mode = "n"},
|
||||
{ "<leader>gbc", desc = "Toggles the current line using blockwise comment", mode = "n"},
|
||||
{ "<leader>gc", desc = "Toggles the region using linewise comment", mode = "v"},
|
||||
{ "<leader>gb", desc = "Toggles the region using blockwise comment", mode = "v"},
|
||||
{ "<leader>gb2}", desc = "Toggle until the 2 next blank line", mode = "n"},
|
||||
{ "<leader>gbaf", desc = "Toggle comment around a function (w/ LSP/treesitter support)", mode = "n"},
|
||||
{ "<leader>gbac", desc = "Toggle comment around a class (w/ LSP/treesitter support)", mode = "n"},
|
||||
})
|
||||
|
||||
-- prevent using arrow keys or mouse
|
||||
vim.keymap.set('n', '<Left>', ':echoe "Yo retard use h"<CR>')
|
||||
vim.keymap.set('n', '<Right>', ':echoe "Yo retard use l"<CR>')
|
||||
vim.keymap.set('n', '<Up>', ':echoe "Yo retard use k"<CR>')
|
||||
vim.keymap.set('n', '<Down>', ':echoe "Yo retard use j"<CR>')
|
||||
vim.opt.mouse = ''
|
||||
|
||||
-- dont automatically jump when searching
|
||||
vim.keymap.set('n', '*', '*```<CR>')
|
||||
|
||||
-- show lsp floating tooltip
|
||||
vim.keymap.set('n', '<c-k>', ':lua vim.lsp.buf.hover()<CR>')
|
||||
|
||||
|
||||
-- tab navigation using <TAB>
|
||||
vim.keymap.set('n', '<Tab>', ':BufferLineCycleNext<CR>')
|
||||
vim.keymap.set('n', '<S-Tab>', ':BufferLineCyclePrev<CR>')
|
||||
-- quick close tab USE <leader>ZQ
|
||||
--vim.keymap.set('n', '<C-w>', ':tabclose<CR>')
|
||||
|
||||
-- jump to definition in new tab
|
||||
vim.keymap.set('n', '<C-]>', '<cmd>tab split | lua vim.lsp.buf.definition()<CR>', {})
|
||||
|
||||
-- change split window
|
||||
vim.keymap.set('n', '<C-k>', ':wincmd k<CR>')
|
||||
vim.keymap.set('n', '<C-j>', ':wincmd j<CR>')
|
||||
vim.keymap.set('n', '<C-h>', ':wincmd h<CR>')
|
||||
vim.keymap.set('n', '<C-l>', ':wincmd l<CR>')
|
||||
|
||||
-- move split to tab
|
||||
vim.keymap.set('n', '<C-m>', ':tab split<CR>')
|
||||
|
||||
-- open context menu
|
||||
vim.keymap.set("n", "<C-t>", function()
|
||||
require("menu").open("default")
|
||||
end, {})
|
||||
40
lua/config/lazy.lua
Normal file
40
lua/config/lazy.lua
Normal file
@ -0,0 +1,40 @@
|
||||
-- Bootstrap lazy.nvim
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||
if vim.v.shell_error ~= 0 then
|
||||
vim.api.nvim_echo({
|
||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||
{ out, "WarningMsg" },
|
||||
{ "\nPress any key to exit..." },
|
||||
}, true, {})
|
||||
vim.fn.getchar()
|
||||
os.exit(1)
|
||||
end
|
||||
end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
-- Make sure to setup `mapleader` and `maplocalleader` before
|
||||
-- loading lazy.nvim so that mappings are correct.
|
||||
-- This is also a good place to setup other settings (vim.opt)
|
||||
vim.g.mapleader = ' '
|
||||
vim.g.maplocalleader = ' '
|
||||
|
||||
-- Setup lazy.nvim
|
||||
require("lazy").setup({
|
||||
spec = {
|
||||
-- import your plugins
|
||||
{ import = "plugins" },
|
||||
},
|
||||
-- Configure any other settings here. See the documentation for more details.
|
||||
-- colorscheme that will be used when installing plugins.
|
||||
install = {
|
||||
colorscheme = { "habamax" }
|
||||
},
|
||||
-- automatically check for plugin updates
|
||||
checker = {
|
||||
enabled = true,
|
||||
notify = false,
|
||||
},
|
||||
})
|
||||
@ -14,7 +14,7 @@ vim.opt.colorcolumn = "81"
|
||||
vim.opt.autoread = true
|
||||
vim.opt.wildmode = 'longest,list'
|
||||
vim.opt.ttyfast = true
|
||||
-- vim.opt.pastetoggle = '<F3>'
|
||||
--vim.opt.pastetoggle = '<F3>'
|
||||
|
||||
-- formatting
|
||||
vim.opt.expandtab = true
|
||||
@ -39,3 +39,25 @@ vim.opt.smartcase = true
|
||||
vim.opt.incsearch = true
|
||||
vim.opt.hlsearch = true
|
||||
vim.opt.wildignorecase = true
|
||||
|
||||
-- running interactive shell commands
|
||||
vim.opt.shellcmdflag = '-ic'
|
||||
|
||||
-- folding
|
||||
vim.opt.foldmethod = 'indent'
|
||||
vim.opt.foldcolumn = '1'
|
||||
vim.opt.foldlevel = 99
|
||||
vim.opt.foldlevelstart = 99
|
||||
vim.opt.foldenable = true
|
||||
|
||||
-- colorscheme
|
||||
vim.cmd.colorscheme('gruvbox')
|
||||
vim.opt.background = 'dark'
|
||||
|
||||
--vim.opt.foldlevelstart=99
|
||||
--vim.opt.foldlevel=99
|
||||
--
|
||||
--vim.opt.foldmethod = 'expr'
|
||||
--vim.opt.foldexpr = "v:lua.vim.treesitter.foldexpr()"
|
||||
--vim.opt.foldtext = "v:lua.vim.treesitter.foldtext()"
|
||||
|
||||
53
lua/config/plugin/catppuccin.lua
Normal file
53
lua/config/plugin/catppuccin.lua
Normal file
@ -0,0 +1,53 @@
|
||||
-- setup must be called before loading
|
||||
|
||||
require("catppuccin").setup({
|
||||
flavour = "mocha", -- latte, frappe, macchiato, mocha
|
||||
background = { -- :h background
|
||||
light = "latte",
|
||||
dark = "mocha",
|
||||
},
|
||||
transparent_background = false, -- disables setting the background color.
|
||||
show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
|
||||
term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
|
||||
dim_inactive = {
|
||||
enabled = false, -- dims the background color of inactive window
|
||||
shade = "dark",
|
||||
percentage = 0.15, -- percentage of the shade to apply to the inactive window
|
||||
},
|
||||
no_italic = false, -- Force no italic
|
||||
no_bold = false, -- Force no bold
|
||||
no_underline = false, -- Force no underline
|
||||
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
|
||||
comments = { "italic" }, -- Change the style of comments
|
||||
conditionals = { "italic" },
|
||||
loops = {},
|
||||
functions = {},
|
||||
keywords = {},
|
||||
strings = {},
|
||||
variables = {},
|
||||
numbers = {},
|
||||
booleans = {},
|
||||
properties = {},
|
||||
types = {},
|
||||
operators = {},
|
||||
-- miscs = {}, -- Uncomment to turn off hard-coded styles
|
||||
},
|
||||
color_overrides = {},
|
||||
custom_highlights = {},
|
||||
default_integrations = true,
|
||||
integrations = {
|
||||
cmp = true,
|
||||
gitsigns = true,
|
||||
nvimtree = true,
|
||||
treesitter = true,
|
||||
notify = false,
|
||||
mini = {
|
||||
enabled = true,
|
||||
indentscope_color = "",
|
||||
},
|
||||
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
|
||||
},
|
||||
})
|
||||
|
||||
-- setup must be called before loading
|
||||
vim.cmd.colorscheme "catppuccin"
|
||||
89
lua/config/plugin/cmp.lua
Normal file
89
lua/config/plugin/cmp.lua
Normal file
@ -0,0 +1,89 @@
|
||||
-- nvim-cmp configuration
|
||||
local cmp = require('cmp')
|
||||
local luasnip = require('luasnip')
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
luasnip.lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<CR>'] = cmp.mapping.confirm({ select = true }),
|
||||
['<Tab>'] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
elseif luasnip.expand_or_jumpable() then
|
||||
luasnip.expand_or_jump()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
['<S-Tab>'] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item()
|
||||
elseif luasnip.jumpable(-1) then
|
||||
luasnip.jump(-1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
}),
|
||||
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp', priority = 1000 },
|
||||
{ name = 'luasnip', priority = 750 },
|
||||
}, {
|
||||
{ name = 'buffer', priority = 500 },
|
||||
{ name = 'path', priority = 250 },
|
||||
}),
|
||||
|
||||
sorting = {
|
||||
comparators = {
|
||||
cmp.config.compare.offset,
|
||||
cmp.config.compare.exact,
|
||||
cmp.config.compare.score,
|
||||
cmp.config.compare.recently_used,
|
||||
cmp.config.compare.locality,
|
||||
cmp.config.compare.kind,
|
||||
cmp.config.compare.sort_text,
|
||||
cmp.config.compare.length,
|
||||
cmp.config.compare.order,
|
||||
},
|
||||
},
|
||||
|
||||
formatting = {
|
||||
format = function(entry, vim_item)
|
||||
vim_item.menu = ({
|
||||
nvim_lsp = '[LSP]',
|
||||
luasnip = '[Snippet]',
|
||||
buffer = '[Buffer]',
|
||||
path = '[Path]',
|
||||
})[entry.source.name]
|
||||
return vim_item
|
||||
end,
|
||||
},
|
||||
})
|
||||
|
||||
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore)
|
||||
cmp.setup.cmdline({ '/', '?' }, {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
{ name = 'buffer' }
|
||||
}
|
||||
})
|
||||
|
||||
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore)
|
||||
cmp.setup.cmdline(':', {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'path' }
|
||||
}, {
|
||||
{ name = 'cmdline' }
|
||||
})
|
||||
})
|
||||
40
lua/config/plugin/indent-blankline.lua
Normal file
40
lua/config/plugin/indent-blankline.lua
Normal file
@ -0,0 +1,40 @@
|
||||
local highlight = {
|
||||
"RainbowDelimiterRed",
|
||||
"RainbowDelimiterYellow",
|
||||
"RainbowDelimiterBlue",
|
||||
"RainbowDelimiterOrange",
|
||||
"RainbowDelimiterGreen",
|
||||
"RainbowDelimiterViolet",
|
||||
"RainbowDelimiterCyan",
|
||||
"RainbowRed",
|
||||
"RainbowYellow",
|
||||
"RainbowBlue",
|
||||
"RainbowOrange",
|
||||
"RainbowGreen",
|
||||
"RainbowViolet",
|
||||
"RainbowCyan",
|
||||
}
|
||||
local hooks = require "ibl.hooks"
|
||||
-- create the highlight groups in the highlight setup hook, so they are reset
|
||||
-- every time the colorscheme changes
|
||||
hooks.register(hooks.type.HIGHLIGHT_SETUP, function()
|
||||
vim.api.nvim_set_hl(0, "RainbowDelimiterRed", { fg = "#E06C75" })
|
||||
vim.api.nvim_set_hl(0, "RainbowDelimiterYellow", { fg = "#E5C07B" })
|
||||
vim.api.nvim_set_hl(0, "RainbowDelimiterBlue", { fg = "#61AFEF" })
|
||||
vim.api.nvim_set_hl(0, "RainbowDelimiterOrange", { fg = "#D19A66" })
|
||||
vim.api.nvim_set_hl(0, "RainbowDelimiterGreen", { fg = "#98C379" })
|
||||
vim.api.nvim_set_hl(0, "RainbowDelimiterViolet", { fg = "#C678DD" })
|
||||
vim.api.nvim_set_hl(0, "RainbowDelimiterCyan", { fg = "#56B6C2" })
|
||||
vim.api.nvim_set_hl(0, "RainbowRed", { fg = "#E06C75" })
|
||||
vim.api.nvim_set_hl(0, "RainbowYellow", { fg = "#E5C07B" })
|
||||
vim.api.nvim_set_hl(0, "RainbowBlue", { fg = "#61AFEF" })
|
||||
vim.api.nvim_set_hl(0, "RainbowOrange", { fg = "#D19A66" })
|
||||
vim.api.nvim_set_hl(0, "RainbowGreen", { fg = "#98C379" })
|
||||
vim.api.nvim_set_hl(0, "RainbowViolet", { fg = "#C678DD" })
|
||||
vim.api.nvim_set_hl(0, "RainbowCyan", { fg = "#56B6C2" })
|
||||
end)
|
||||
|
||||
vim.g.rainbow_delimiters = { highlight = highlight }
|
||||
require("ibl").setup { scope = { highlight = highlight } }
|
||||
|
||||
hooks.register(hooks.type.SCOPE_HIGHLIGHT, hooks.builtin.scope_highlight_from_extmark)
|
||||
20
lua/config/plugin/init.lua
Normal file
20
lua/config/plugin/init.lua
Normal file
@ -0,0 +1,20 @@
|
||||
require("config.plugin.lualine")
|
||||
require("config.plugin.nvim-tree")
|
||||
require("config.plugin.treesitter")
|
||||
require("config.plugin.telescope")
|
||||
require("config.plugin.vim-fugitive")
|
||||
require("config.plugin.tagbar")
|
||||
require("config.plugin.vim-gitgutter")
|
||||
require("config.plugin.deadcolumn")
|
||||
require("config.plugin.colorizer")
|
||||
require("config.plugin.synattr")
|
||||
require("config.plugin.marks")
|
||||
require("config.plugin.vim-indentwise")
|
||||
require("config.plugin.rainbow-delimiters")
|
||||
require("config.plugin.indent-blankline")
|
||||
require("config.plugin.scrollbar")
|
||||
require("config.plugin.lspsaga")
|
||||
require("config.plugin.lsp")
|
||||
require("config.plugin.luasnip")
|
||||
require("config.plugin.gruvbox")
|
||||
require("config.plugin.cmp")
|
||||
2
lua/config/plugin/llama.lua
Normal file
2
lua/config/plugin/llama.lua
Normal file
@ -0,0 +1,2 @@
|
||||
-- change llama shortcut to use tab for just the line
|
||||
-- and shift-tab for the whole block
|
||||
108
lua/config/plugin/lsp.lua
Normal file
108
lua/config/plugin/lsp.lua
Normal file
@ -0,0 +1,108 @@
|
||||
-- LSP Configuration
|
||||
local lspconfig = require('lspconfig')
|
||||
|
||||
-- Setup Mason (already done via lazy.nvim, but ensure it's initialized)
|
||||
require('mason').setup()
|
||||
|
||||
-- Setup LSP capabilities for nvim-cmp
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
|
||||
-- Function to attach LSP to buffers
|
||||
local on_attach = function(client, bufnr)
|
||||
-- Enable completion triggered by <c-x><c-o>
|
||||
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
||||
|
||||
-- Mappings for LSP actions
|
||||
local bufopts = { noremap = true, silent = true, buffer = bufnr }
|
||||
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
|
||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
|
||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
|
||||
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
|
||||
vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, bufopts)
|
||||
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, bufopts)
|
||||
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
|
||||
vim.keymap.set('n', '<space>wl', function()
|
||||
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
|
||||
end, bufopts)
|
||||
vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, bufopts)
|
||||
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, bufopts)
|
||||
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, bufopts)
|
||||
vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
|
||||
vim.keymap.set('n', '<space>f', function() vim.lsp.buf.format { async = true } end, bufopts)
|
||||
end
|
||||
|
||||
-- Try to use mason-lspconfig if available, otherwise setup servers manually
|
||||
local mason_lspconfig_ok, mason_lspconfig = pcall(require, 'mason-lspconfig')
|
||||
if mason_lspconfig_ok then
|
||||
-- Setup mason-lspconfig
|
||||
mason_lspconfig.setup({
|
||||
ensure_installed = {}, -- Add LSP servers here as needed
|
||||
automatic_installation = false,
|
||||
})
|
||||
|
||||
-- Setup handlers if the API is available
|
||||
if mason_lspconfig.setup_handlers then
|
||||
mason_lspconfig.setup_handlers({
|
||||
-- Default handler for all servers
|
||||
function(server_name)
|
||||
lspconfig[server_name].setup({
|
||||
capabilities = capabilities,
|
||||
on_attach = on_attach,
|
||||
})
|
||||
end,
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
-- Setup LSP servers manually (uncomment as needed)
|
||||
-- Install servers via :Mason command in Neovim first
|
||||
|
||||
-- Lua LSP
|
||||
-- lspconfig.lua_ls.setup({
|
||||
-- capabilities = capabilities,
|
||||
-- on_attach = on_attach,
|
||||
-- settings = {
|
||||
-- Lua = {
|
||||
-- runtime = { version = 'LuaJIT' },
|
||||
-- diagnostics = { globals = { 'vim' } },
|
||||
-- workspace = { library = vim.api.nvim_get_runtime_file("", true) },
|
||||
-- telemetry = { enable = false },
|
||||
-- },
|
||||
-- },
|
||||
-- })
|
||||
|
||||
-- Python LSP (uncomment when pyright is installed)
|
||||
-- lspconfig.pyright.setup({
|
||||
-- capabilities = capabilities,
|
||||
-- on_attach = on_attach,
|
||||
-- })
|
||||
|
||||
-- Rust LSP (uncomment when rust_analyzer is installed)
|
||||
-- lspconfig.rust_analyzer.setup({
|
||||
-- capabilities = capabilities,
|
||||
-- on_attach = on_attach,
|
||||
-- })
|
||||
|
||||
-- Diagnostic configuration
|
||||
vim.diagnostic.config({
|
||||
virtual_text = true,
|
||||
signs = true,
|
||||
update_in_insert = false,
|
||||
underline = true,
|
||||
severity_sort = true,
|
||||
float = {
|
||||
focusable = false,
|
||||
style = "minimal",
|
||||
border = "rounded",
|
||||
source = "always",
|
||||
header = "",
|
||||
prefix = "",
|
||||
},
|
||||
})
|
||||
|
||||
-- Show diagnostic signs
|
||||
local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
|
||||
for type, icon in pairs(signs) do
|
||||
local hl = "DiagnosticSign" .. type
|
||||
vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
|
||||
end
|
||||
1
lua/config/plugin/lspsaga.lua
Normal file
1
lua/config/plugin/lspsaga.lua
Normal file
@ -0,0 +1 @@
|
||||
require('lspsaga').config.lightbulb.enabled = false
|
||||
@ -1,7 +1,8 @@
|
||||
require('lualine').setup {
|
||||
options = {
|
||||
icons_enabled = true,
|
||||
theme = 'gruvbox',
|
||||
--theme = 'catppuccin-mocha'
|
||||
theme = 'gruvbox'
|
||||
},
|
||||
sections = {
|
||||
lualine_a = {
|
||||
2
lua/config/plugin/luasnip.lua
Normal file
2
lua/config/plugin/luasnip.lua
Normal file
@ -0,0 +1,2 @@
|
||||
-- LuaSnip configuration
|
||||
require("luasnip.loaders.from_vscode").lazy_load()
|
||||
47
lua/config/plugin/rainbow-delimiters.lua
Normal file
47
lua/config/plugin/rainbow-delimiters.lua
Normal file
@ -0,0 +1,47 @@
|
||||
-- This module contains a number of default definitions
|
||||
local rainbow_delimiters = require 'rainbow-delimiters'
|
||||
|
||||
--vim.g.rainbow_delimiters = {
|
||||
-- strategy = {
|
||||
-- [''] = rainbow_delimiters.strategy['global'],
|
||||
-- commonlisp = rainbow_delimiters.strategy['local'],
|
||||
-- },
|
||||
-- query = {
|
||||
-- [''] = 'rainbow-delimiters',
|
||||
-- lua = 'rainbow-blocks',
|
||||
-- },
|
||||
-- --highlight = {
|
||||
-- -- 'RainbowRed',
|
||||
-- -- 'RainbowYellow',
|
||||
-- -- 'RainbowBlue',
|
||||
-- -- 'RainbowOrange',
|
||||
-- -- 'RainbowGreen',
|
||||
-- -- 'RainbowViolet',
|
||||
-- -- 'RainbowCyan',
|
||||
-- --},
|
||||
-- blacklist = {'c', 'cpp'},
|
||||
--}
|
||||
|
||||
vim.g.rainbow_delimiters = {
|
||||
strategy = {
|
||||
[''] = 'rainbow-delimiters.strategy.global',
|
||||
vim = 'rainbow-delimiters.strategy.local',
|
||||
},
|
||||
query = {
|
||||
[''] = 'rainbow-delimiters',
|
||||
lua = 'rainbow-blocks',
|
||||
},
|
||||
priority = {
|
||||
[''] = 110,
|
||||
lua = 210,
|
||||
},
|
||||
highlight = {
|
||||
'RainbowDelimiterRed',
|
||||
'RainbowDelimiterYellow',
|
||||
'RainbowDelimiterBlue',
|
||||
'RainbowDelimiterOrange',
|
||||
'RainbowDelimiterGreen',
|
||||
'RainbowDelimiterViolet',
|
||||
'RainbowDelimiterCyan',
|
||||
},
|
||||
}
|
||||
32
lua/config/plugin/scrollbar.lua
Normal file
32
lua/config/plugin/scrollbar.lua
Normal file
@ -0,0 +1,32 @@
|
||||
require'scrollbar'.setup{
|
||||
handle = {
|
||||
text = " ",
|
||||
blend = 10, -- Integer between 0 and 100. 0 for fully opaque and 100 to full transparent. Defaults to 30.
|
||||
color = '#FFF',
|
||||
color_nr = nil, -- cterm
|
||||
highlight = "CursorColumn",
|
||||
hide_if_all_visible = true, -- Hides handle if all lines are visible
|
||||
},
|
||||
marks = {
|
||||
Cursor = {
|
||||
text = "",
|
||||
},
|
||||
Error = {
|
||||
text = { "☢", "" },
|
||||
},
|
||||
Warn = {
|
||||
text = { "☣", "☣" },
|
||||
},
|
||||
Info = {
|
||||
text = { "☆", "☆" },
|
||||
},
|
||||
Hint = {
|
||||
text = { "★", "★" },
|
||||
},
|
||||
Misc = {
|
||||
text = { "-", "=" },
|
||||
},
|
||||
},
|
||||
}
|
||||
-- ⚠
|
||||
-- ↦
|
||||
15
lua/config/plugin/telescope.lua
Normal file
15
lua/config/plugin/telescope.lua
Normal file
@ -0,0 +1,15 @@
|
||||
local telescope = require('telescope')
|
||||
telescope.setup({
|
||||
pickers = {
|
||||
live_grep = {
|
||||
file_ignore_patterns = { '.git' },
|
||||
additional_args = function(_)
|
||||
return { "--hidden" }
|
||||
end
|
||||
},
|
||||
find_files = {
|
||||
file_ignore_patterns = { '.git' },
|
||||
hidden = true
|
||||
}
|
||||
}
|
||||
})
|
||||
22
lua/config/plugin/treesitter.lua
Normal file
22
lua/config/plugin/treesitter.lua
Normal file
@ -0,0 +1,22 @@
|
||||
require 'nvim-treesitter.configs'.setup {
|
||||
-- A list of parser names, or "all"
|
||||
ensure_installed = { "c", "lua", "vim", "php" },
|
||||
|
||||
sync_install = false,
|
||||
auto_install = true,
|
||||
highlight = {
|
||||
enable = false,
|
||||
},
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
incremental_selection = {
|
||||
enable = true,
|
||||
keymaps = {
|
||||
init_selection = "gnn",
|
||||
node_incremental = "grn",
|
||||
scope_incremental = "grc",
|
||||
node_decremental = "grm",
|
||||
},
|
||||
},
|
||||
}
|
||||
@ -1,32 +0,0 @@
|
||||
-- clear searchterm
|
||||
vim.keymap.set('n', '<F5>', ':noh<CR>')
|
||||
|
||||
-- prevent using arrow keys or mouse
|
||||
vim.keymap.set('n', '<Left>', ':echoe "Yo retard use h"<CR>')
|
||||
vim.keymap.set('n', '<Right>', ':echoe "Yo retard use l"<CR>')
|
||||
vim.keymap.set('n', '<Up>', ':echoe "Yo retard use k"<CR>')
|
||||
vim.keymap.set('n', '<Down>', ':echoe "Yo retard use j"<CR>')
|
||||
vim.opt.mouse = ''
|
||||
|
||||
-- dont automatically jump when searching
|
||||
vim.keymap.set('n', '*', '*```<CR>')
|
||||
|
||||
-- show lsp floating tooltip
|
||||
vim.keymap.set('n', '<c-k>', ':lua vim.lsp.buf.hover()<CR>')
|
||||
|
||||
-- The telescope leader key is space
|
||||
-- keymaps can be found in telescope config
|
||||
vim.g.mapleader = ' '
|
||||
vim.g.maplocalleader = ' '
|
||||
|
||||
-- toggle tagbar plugin
|
||||
vim.keymap.set('n', '<F8>', ':TagbarToggle fj<CR>')
|
||||
|
||||
-- tab navigation using <TAB>
|
||||
vim.keymap.set('n', '<Tab>', ':tabnext<CR>')
|
||||
vim.keymap.set('n', '<S-Tab>', ':tabprevious<CR>')
|
||||
-- quick close tab
|
||||
vim.keymap.set('n', '<C-w>', ':tabclose<CR>')
|
||||
|
||||
-- jump to definition in new tab
|
||||
vim.keymap.set('n', '<C-]>', '<cmd>tab split | lua vim.lsp.buf.definition()<CR>', {})
|
||||
@ -1,24 +0,0 @@
|
||||
local highlight = {
|
||||
"RainbowRed",
|
||||
"RainbowYellow",
|
||||
"RainbowBlue",
|
||||
"RainbowOrange",
|
||||
"RainbowGreen",
|
||||
"RainbowViolet",
|
||||
"RainbowCyan",
|
||||
}
|
||||
|
||||
local hooks = require "ibl.hooks"
|
||||
-- create the highlight groups in the highlight setup hook, so they are reset
|
||||
-- every time the colorscheme changes
|
||||
hooks.register(hooks.type.HIGHLIGHT_SETUP, function()
|
||||
vim.api.nvim_set_hl(0, "RainbowRed", { fg = "#CC241D" })
|
||||
vim.api.nvim_set_hl(0, "RainbowYellow", { fg = "#D79921" })
|
||||
vim.api.nvim_set_hl(0, "RainbowBlue", { fg = "#458588" })
|
||||
vim.api.nvim_set_hl(0, "RainbowOrange", { fg = "#D65D0E" })
|
||||
vim.api.nvim_set_hl(0, "RainbowGreen", { fg = "#98971A" })
|
||||
vim.api.nvim_set_hl(0, "RainbowViolet", { fg = "#B16286" })
|
||||
vim.api.nvim_set_hl(0, "RainbowCyan", { fg = "#689D6A" })
|
||||
end)
|
||||
|
||||
require("ibl").setup { indent = { highlight = highlight } }
|
||||
@ -1,17 +0,0 @@
|
||||
require("core.plugin_config.gruvbox")
|
||||
require("core.plugin_config.lualine")
|
||||
require("core.plugin_config.nvim-tree")
|
||||
require("core.plugin_config.treesitter")
|
||||
require("core.plugin_config.telescope")
|
||||
require("core.plugin_config.vim-fugitive")
|
||||
require("core.plugin_config.tagbar")
|
||||
require("core.plugin_config.vim-gitgutter")
|
||||
require("core.plugin_config.deadcolumn")
|
||||
require("core.plugin_config.colorizer")
|
||||
require("core.plugin_config.synattr")
|
||||
require("core.plugin_config.rainbow-delimiters")
|
||||
require("core.plugin_config.marks")
|
||||
require("core.plugin_config.lsp_config")
|
||||
require("core.plugin_config.indent-blankline")
|
||||
require("core.plugin_config.indent-blankline")
|
||||
require("core.plugin_config.vim-indentwise")
|
||||
@ -1,12 +0,0 @@
|
||||
require("mason").setup()
|
||||
require("mason-lspconfig").setup({
|
||||
})
|
||||
require("lspconfig").phpactor.setup({
|
||||
on_attach = on_attach,
|
||||
init_options = {
|
||||
["language_server_phpstan.enabled"] = false,
|
||||
["language_server_psalm.enabled"] = false,
|
||||
}
|
||||
})
|
||||
|
||||
--require("lspconfig").sumneko_lua.setup {}
|
||||
@ -1,24 +0,0 @@
|
||||
-- This module contains a number of default definitions
|
||||
local rainbow_delimiters = require 'rainbow-delimiters'
|
||||
|
||||
vim.g.rainbow_delimiters = {
|
||||
strategy = {
|
||||
[''] = rainbow_delimiters.strategy['global'],
|
||||
commonlisp = rainbow_delimiters.strategy['local'],
|
||||
},
|
||||
query = {
|
||||
[''] = 'rainbow-delimiters',
|
||||
lua = 'rainbow-blocks',
|
||||
},
|
||||
highlight = {
|
||||
'RainbowDelimiterRed',
|
||||
'RainbowDelimiterYellow',
|
||||
'RainbowDelimiterBlue',
|
||||
'RainbowDelimiterOrange',
|
||||
'RainbowDelimiterGreen',
|
||||
'RainbowDelimiterViolet',
|
||||
'RainbowDelimiterCyan',
|
||||
},
|
||||
blacklist = {'c', 'cpp'},
|
||||
}
|
||||
|
||||
@ -1,10 +0,0 @@
|
||||
local builtin = require('telescope.builtin')
|
||||
|
||||
-- The leader key is space
|
||||
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
|
||||
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
|
||||
vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
|
||||
vim.keymap.set('n', '<leader>fc', builtin.current_buffer_fuzzy_find, {})
|
||||
vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})
|
||||
vim.keymap.set('n', '<leader>fm', builtin.marks, {})
|
||||
vim.keymap.set('n', '<leader>fr', builtin.resume, {})
|
||||
@ -1,10 +0,0 @@
|
||||
require 'nvim-treesitter.configs'.setup {
|
||||
-- A list of parser names, or "all"
|
||||
ensure_installed = { "c", "lua", "vim", "php" },
|
||||
|
||||
sync_install = false,
|
||||
auto_install = true,
|
||||
highlight = {
|
||||
enable = false,
|
||||
},
|
||||
}
|
||||
@ -1,77 +0,0 @@
|
||||
local ensure_packer = function()
|
||||
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
|
||||
fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
|
||||
vim.cmd [[packadd packer.nvim]]
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
local packer_bootstrap = ensure_packer()
|
||||
|
||||
return require('packer').startup(function(use)
|
||||
use 'wbthomason/packer.nvim'
|
||||
|
||||
-- My plugins here
|
||||
use 'morhetz/gruvbox'
|
||||
use 'nvim-tree/nvim-tree.lua'
|
||||
use 'nvim-tree/nvim-web-devicons'
|
||||
use 'nvim-lualine/lualine.nvim'
|
||||
use {
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
run = ':TSUpdate'
|
||||
}
|
||||
use {
|
||||
'nvim-telescope/telescope.nvim',
|
||||
tag = '0.1.6',
|
||||
requires = { {'nvim-lua/plenary.nvim'} }
|
||||
}
|
||||
use 'tpope/vim-fugitive'
|
||||
use 'majutsushi/tagbar'
|
||||
use 'airblade/vim-gitgutter'
|
||||
use 'Bekaboo/deadcolumn.nvim'
|
||||
use {
|
||||
"williamboman/mason.nvim",
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
"neovim/nvim-lspconfig",
|
||||
}
|
||||
use 'norcalli/nvim-colorizer.lua'
|
||||
use 'vim-scripts/SyntaxAttr.vim'
|
||||
--use 'romgrk/barbar.nvim'
|
||||
use 'HiPhish/rainbow-delimiters.nvim'
|
||||
use 'chentoast/marks.nvim'
|
||||
use "lukas-reineke/indent-blankline.nvim"
|
||||
use "jeetsukumaran/vim-indentwise"
|
||||
|
||||
-- AI
|
||||
use({
|
||||
"olimorris/codecompanion.nvim",
|
||||
config = function()
|
||||
require("codecompanion").setup({
|
||||
strategies = {
|
||||
chat = {
|
||||
adapter = "ollama",
|
||||
},
|
||||
inline = {
|
||||
adapter = "ollama",
|
||||
},
|
||||
cmd = {
|
||||
adapter = "ollama",
|
||||
}
|
||||
},
|
||||
})
|
||||
end,
|
||||
requires = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
}
|
||||
})
|
||||
|
||||
-- Automatically set up your configuration after cloning packer.nvim
|
||||
-- Put this at the end after all plugins
|
||||
if packer_bootstrap then
|
||||
require('packer').sync()
|
||||
end
|
||||
end)
|
||||
310
lua/plugins/init.lua
Normal file
310
lua/plugins/init.lua
Normal file
@ -0,0 +1,310 @@
|
||||
return {
|
||||
--# plenary, handles multitasking and program effeciency
|
||||
"nvim-lua/plenary.nvim",
|
||||
--# telescope, open a windows to fuzzy find in for files or strings in files
|
||||
{
|
||||
'nvim-telescope/telescope.nvim',
|
||||
tag = '0.1.8',
|
||||
dependencies = { 'nvim-lua/plenary.nvim' }
|
||||
},
|
||||
{
|
||||
"nvim-telescope/telescope-fzf-native.nvim",
|
||||
build = "make",
|
||||
config = function()
|
||||
require("telescope").load_extension("fzf")
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvim-telescope/telescope-ui-select.nvim",
|
||||
config = function()
|
||||
require("telescope").load_extension("ui-select")
|
||||
end,
|
||||
},
|
||||
--# treesitter, uses language parsers for highlighting
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
--# lualine, creates nice looking status bar
|
||||
'nvim-lualine/lualine.nvim',
|
||||
--# web-devicons, generates icons for nerd font
|
||||
{
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
opts = {}
|
||||
},
|
||||
--# nvim-tree, a filebrowser
|
||||
{
|
||||
"nvim-tree/nvim-tree.lua",
|
||||
version = "*",
|
||||
lazy = false,
|
||||
dependencies = {
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
},
|
||||
},
|
||||
--# gruvbox, a style
|
||||
'morhetz/gruvbox',
|
||||
--# fugitive, a git wrapper
|
||||
'tpope/vim-fugitive',
|
||||
--# tagbar, opens a view to see properties and methods of file
|
||||
'majutsushi/tagbar',
|
||||
--# gitgutter, shows git info in gutter
|
||||
'airblade/vim-gitgutter',
|
||||
--# deadcolumn, shows line limit when coming close
|
||||
'Bekaboo/deadcolumn.nvim',
|
||||
--# colorizer, show hex and other colors e.g: #ADADBF
|
||||
'NiklasV1/nvim-colorizer.lua',
|
||||
--# SyntaxAttr, display syntax highlighting
|
||||
'vim-scripts/SyntaxAttr.vim',
|
||||
--# rainbow-delimiters, colors braces etc
|
||||
'HiPhish/rainbow-delimiters.nvim',
|
||||
--# marks, shows where marks are placed in gutter
|
||||
'chentoast/marks.nvim',
|
||||
--# indentwise, helps with indentation formatting
|
||||
"jeetsukumaran/vim-indentwise",
|
||||
--# local ai, needs llama.cpp which should be built using CUDA, see https://github.com/ggml-org/llama.cpp
|
||||
{
|
||||
'ggml-org/llama.vim',
|
||||
init = function()
|
||||
vim.g.llama_config = {
|
||||
keymap_fim_accept_line = "<Tab>",
|
||||
keymap_fim_accept_full = "<S-Tab>",
|
||||
}
|
||||
end,
|
||||
},
|
||||
--# indent-blankline, shows indentation
|
||||
{
|
||||
"lukas-reineke/indent-blankline.nvim",
|
||||
main = "ibl",
|
||||
--commit = "29be0919b91fb59eca9e90690d76014233392bef",
|
||||
},
|
||||
-- lsp stuff
|
||||
{
|
||||
"mason-org/mason.nvim",
|
||||
opts = {}
|
||||
},
|
||||
{
|
||||
"mason-org/mason-lspconfig.nvim",
|
||||
opts = {},
|
||||
dependencies = {
|
||||
{ "mason-org/mason.nvim", opts = {} },
|
||||
"neovim/nvim-lspconfig",
|
||||
},
|
||||
},
|
||||
-- show warning and errors
|
||||
{
|
||||
"folke/trouble.nvim",
|
||||
opts = {}, -- for default options, refer to the configuration section for custom setup.
|
||||
cmd = "Trouble",
|
||||
keys = {
|
||||
{
|
||||
"<leader>xx",
|
||||
"<cmd>Trouble diagnostics toggle<cr>",
|
||||
desc = "Diagnostics (Trouble)",
|
||||
},
|
||||
{
|
||||
"<leader>xX",
|
||||
"<cmd>Trouble diagnostics toggle filter.buf=0<cr>",
|
||||
desc = "Buffer Diagnostics (Trouble)",
|
||||
},
|
||||
{
|
||||
"<leader>cs",
|
||||
"<cmd>Trouble symbols toggle focus=false<cr>",
|
||||
desc = "Symbols (Trouble)",
|
||||
},
|
||||
{
|
||||
"<leader>cl",
|
||||
"<cmd>Trouble lsp toggle focus=false win.position=right<cr>",
|
||||
desc = "LSP Definitions / references / ... (Trouble)",
|
||||
},
|
||||
{
|
||||
"<leader>xL",
|
||||
"<cmd>Trouble loclist toggle<cr>",
|
||||
desc = "Location List (Trouble)",
|
||||
},
|
||||
{
|
||||
"<leader>xQ",
|
||||
"<cmd>Trouble qflist toggle<cr>",
|
||||
desc = "Quickfix List (Trouble)",
|
||||
},
|
||||
},
|
||||
},
|
||||
-- quick commenting
|
||||
{
|
||||
'numToStr/Comment.nvim',
|
||||
opts = {
|
||||
-- add any options here
|
||||
}
|
||||
},
|
||||
-- Add scrollbar
|
||||
'petertriho/nvim-scrollbar',
|
||||
-- Show shortcut keys
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
-- your configuration comes here
|
||||
-- or leave it empty to use the default settings
|
||||
-- refer to the configuration section below
|
||||
},
|
||||
keys = {
|
||||
{
|
||||
"<leader>?",
|
||||
function()
|
||||
require("which-key").show({ global = false })
|
||||
end,
|
||||
desc = "Buffer Local Keymaps (which-key)",
|
||||
},
|
||||
},
|
||||
},
|
||||
-- formatting!
|
||||
{
|
||||
"stevearc/conform.nvim",
|
||||
opts = {
|
||||
formatters_by_ft = { lua = { "stylua" } },
|
||||
},
|
||||
},
|
||||
-- context menu
|
||||
{
|
||||
"nvzone/volt",
|
||||
lazy = true
|
||||
},
|
||||
{
|
||||
"nvzone/menu",
|
||||
lazy = true
|
||||
},
|
||||
-- color picker
|
||||
{
|
||||
"nvzone/minty",
|
||||
cmd = { "Shades", "Huefy" },
|
||||
},
|
||||
-- undo tree
|
||||
{
|
||||
"jiaoshijie/undotree",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
---@module 'undotree.collector'
|
||||
---@type UndoTreeCollector.Opts
|
||||
opts = {
|
||||
-- your options
|
||||
},
|
||||
keys = { -- load the plugin only when using it's keybinding:
|
||||
{ "<leader>u", "<cmd>lua require('undotree').toggle()<cr>" },
|
||||
},
|
||||
},
|
||||
{
|
||||
'nvimdev/lspsaga.nvim',
|
||||
config = function()
|
||||
require('lspsaga').setup({
|
||||
lightbulb = {
|
||||
enable = false,
|
||||
},
|
||||
})
|
||||
end,
|
||||
dependencies = {
|
||||
'nvim-treesitter/nvim-treesitter', -- optional
|
||||
'nvim-tree/nvim-web-devicons', -- optional
|
||||
}
|
||||
},
|
||||
-- mini icons
|
||||
{
|
||||
'nvim-mini/mini.nvim',
|
||||
version = '*'
|
||||
},
|
||||
-- custom welcome screen
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
config = function ()
|
||||
require'alpha'.setup(require'alpha.themes.dashboard'.config)
|
||||
end,
|
||||
},
|
||||
-- floating terminal
|
||||
{
|
||||
'akinsho/toggleterm.nvim',
|
||||
version = "*",
|
||||
config = true
|
||||
},
|
||||
-- Completion framework
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
dependencies = {
|
||||
"hrsh7th/cmp-buffer",
|
||||
"hrsh7th/cmp-path",
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"hrsh7th/cmp-cmdline",
|
||||
"L3MON4D3/LuaSnip",
|
||||
"saadparwaiz1/cmp_luasnip",
|
||||
},
|
||||
config = function()
|
||||
require("config.plugin.cmp")
|
||||
end,
|
||||
},
|
||||
-- Improves tabs
|
||||
{
|
||||
"akinsho/bufferline.nvim",
|
||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||
config = function()
|
||||
require("bufferline").setup({
|
||||
options = {
|
||||
mode = "tabs",
|
||||
separator_style = "slant",
|
||||
}
|
||||
})
|
||||
end,
|
||||
},
|
||||
-- AI
|
||||
-- {
|
||||
-- "supermaven-inc/supermaven-nvim",
|
||||
-- config = function()
|
||||
-- require("supermaven-nvim").setup({})
|
||||
-- end,
|
||||
-- },
|
||||
}
|
||||
--"williamboman/mason.nvim",
|
||||
--"williamboman/mason-lspconfig.nvim",
|
||||
--"neovim/nvim-lspconfig",
|
||||
--# neo-tree, a filebrowser
|
||||
--{
|
||||
-- "nvim-neo-tree/neo-tree.nvim",
|
||||
-- keys = {
|
||||
-- { "<leader>ft", "<cmd>Neotree toggle<cr>", desc = "NeoTree" },
|
||||
-- },
|
||||
-- opts = {},
|
||||
--},
|
||||
---- ui plugin is a collection of many UI modules like statusline, tabline, cheatsheet, nvdash and much more!
|
||||
--"nvim-lua/plenary.nvim",
|
||||
--{
|
||||
-- "nvim-tree/nvim-web-devicons",
|
||||
-- lazy = true
|
||||
--},
|
||||
--{
|
||||
-- "nvchad/ui",
|
||||
-- config = function()
|
||||
-- require "nvchad"
|
||||
-- end
|
||||
--},
|
||||
--{
|
||||
-- "nvchad/base46",
|
||||
-- lazy = true,
|
||||
-- build = function()
|
||||
-- require("base46").load_all_highlights()
|
||||
-- end,
|
||||
--},
|
||||
--{
|
||||
-- "dundalek/lazy-lsp.nvim",
|
||||
-- commit="0ccc0238be37351d53e64c2f6c7f9e106e2bdb68",
|
||||
-- dependencies = {
|
||||
-- "neovim/nvim-lspconfig",
|
||||
-- {"VonHeikemen/lsp-zero.nvim", branch = "v3.x"},
|
||||
-- "hrsh7th/cmp-nvim-lsp",
|
||||
-- "hrsh7th/nvim-cmp",
|
||||
-- },
|
||||
-- config = function()
|
||||
-- local lsp_zero = require("lsp-zero")
|
||||
|
||||
-- lsp_zero.on_attach(function(client, bufnr)
|
||||
-- -- see :help lsp-zero-keybindings to learn the available actions
|
||||
-- lsp_zero.default_keymaps({
|
||||
-- buffer = bufnr,
|
||||
-- preserve_mappings = false
|
||||
-- })
|
||||
-- end)
|
||||
|
||||
-- require("lazy-lsp").setup {}
|
||||
-- end,
|
||||
--},
|
||||
BIN
nvim.appimage
BIN
nvim.appimage
Binary file not shown.
BIN
nvim.appimage.v10
Executable file
BIN
nvim.appimage.v10
Executable file
Binary file not shown.
@ -1,209 +0,0 @@
|
||||
-- Automatically generated packer.nvim plugin loader code
|
||||
|
||||
if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then
|
||||
vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"')
|
||||
return
|
||||
end
|
||||
|
||||
vim.api.nvim_command('packadd packer.nvim')
|
||||
|
||||
local no_errors, error_msg = pcall(function()
|
||||
|
||||
_G._packer = _G._packer or {}
|
||||
_G._packer.inside_compile = true
|
||||
|
||||
local time
|
||||
local profile_info
|
||||
local should_profile = false
|
||||
if should_profile then
|
||||
local hrtime = vim.loop.hrtime
|
||||
profile_info = {}
|
||||
time = function(chunk, start)
|
||||
if start then
|
||||
profile_info[chunk] = hrtime()
|
||||
else
|
||||
profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6
|
||||
end
|
||||
end
|
||||
else
|
||||
time = function(chunk, start) end
|
||||
end
|
||||
|
||||
local function save_profiles(threshold)
|
||||
local sorted_times = {}
|
||||
for chunk_name, time_taken in pairs(profile_info) do
|
||||
sorted_times[#sorted_times + 1] = {chunk_name, time_taken}
|
||||
end
|
||||
table.sort(sorted_times, function(a, b) return a[2] > b[2] end)
|
||||
local results = {}
|
||||
for i, elem in ipairs(sorted_times) do
|
||||
if not threshold or threshold and elem[2] > threshold then
|
||||
results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms'
|
||||
end
|
||||
end
|
||||
if threshold then
|
||||
table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)')
|
||||
end
|
||||
|
||||
_G._packer.profile_output = results
|
||||
end
|
||||
|
||||
time([[Luarocks path setup]], true)
|
||||
local package_path_str = "/home/produktr/.cache/nvim/packer_hererocks/2.1.1713484068/share/lua/5.1/?.lua;/home/produktr/.cache/nvim/packer_hererocks/2.1.1713484068/share/lua/5.1/?/init.lua;/home/produktr/.cache/nvim/packer_hererocks/2.1.1713484068/lib/luarocks/rocks-5.1/?.lua;/home/produktr/.cache/nvim/packer_hererocks/2.1.1713484068/lib/luarocks/rocks-5.1/?/init.lua"
|
||||
local install_cpath_pattern = "/home/produktr/.cache/nvim/packer_hererocks/2.1.1713484068/lib/lua/5.1/?.so"
|
||||
if not string.find(package.path, package_path_str, 1, true) then
|
||||
package.path = package.path .. ';' .. package_path_str
|
||||
end
|
||||
|
||||
if not string.find(package.cpath, install_cpath_pattern, 1, true) then
|
||||
package.cpath = package.cpath .. ';' .. install_cpath_pattern
|
||||
end
|
||||
|
||||
time([[Luarocks path setup]], false)
|
||||
time([[try_loadstring definition]], true)
|
||||
local function try_loadstring(s, component, name)
|
||||
local success, result = pcall(loadstring(s), name, _G.packer_plugins[name])
|
||||
if not success then
|
||||
vim.schedule(function()
|
||||
vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {})
|
||||
end)
|
||||
end
|
||||
return result
|
||||
end
|
||||
|
||||
time([[try_loadstring definition]], false)
|
||||
time([[Defining packer_plugins]], true)
|
||||
_G.packer_plugins = {
|
||||
["SyntaxAttr.vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/SyntaxAttr.vim",
|
||||
url = "https://github.com/vim-scripts/SyntaxAttr.vim"
|
||||
},
|
||||
["codecompanion.nvim"] = {
|
||||
config = { "\27LJ\2\nÕ\1\0\0\5\0\f\0\0156\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\n\0005\3\4\0005\4\3\0=\4\5\0035\4\6\0=\4\a\0035\4\b\0=\4\t\3=\3\v\2B\0\2\1K\0\1\0\15strategies\1\0\1\15strategies\0\bcmd\1\0\1\fadapter\vollama\vinline\1\0\1\fadapter\vollama\tchat\1\0\3\vinline\0\bcmd\0\tchat\0\1\0\1\fadapter\vollama\nsetup\18codecompanion\frequire\0" },
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/codecompanion.nvim",
|
||||
url = "https://github.com/olimorris/codecompanion.nvim"
|
||||
},
|
||||
["deadcolumn.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/deadcolumn.nvim",
|
||||
url = "https://github.com/Bekaboo/deadcolumn.nvim"
|
||||
},
|
||||
gruvbox = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/gruvbox",
|
||||
url = "https://github.com/morhetz/gruvbox"
|
||||
},
|
||||
["indent-blankline.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim",
|
||||
url = "https://github.com/lukas-reineke/indent-blankline.nvim"
|
||||
},
|
||||
["lualine.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/lualine.nvim",
|
||||
url = "https://github.com/nvim-lualine/lualine.nvim"
|
||||
},
|
||||
["marks.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/marks.nvim",
|
||||
url = "https://github.com/chentoast/marks.nvim"
|
||||
},
|
||||
["mason-lspconfig.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim",
|
||||
url = "https://github.com/williamboman/mason-lspconfig.nvim"
|
||||
},
|
||||
["mason.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/mason.nvim",
|
||||
url = "https://github.com/williamboman/mason.nvim"
|
||||
},
|
||||
["nvim-colorizer.lua"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua",
|
||||
url = "https://github.com/norcalli/nvim-colorizer.lua"
|
||||
},
|
||||
["nvim-lspconfig"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
|
||||
url = "https://github.com/neovim/nvim-lspconfig"
|
||||
},
|
||||
["nvim-tree.lua"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/nvim-tree.lua",
|
||||
url = "https://github.com/nvim-tree/nvim-tree.lua"
|
||||
},
|
||||
["nvim-treesitter"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
|
||||
url = "https://github.com/nvim-treesitter/nvim-treesitter"
|
||||
},
|
||||
["nvim-web-devicons"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons",
|
||||
url = "https://github.com/nvim-tree/nvim-web-devicons"
|
||||
},
|
||||
["packer.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/packer.nvim",
|
||||
url = "https://github.com/wbthomason/packer.nvim"
|
||||
},
|
||||
["plenary.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/plenary.nvim",
|
||||
url = "https://github.com/nvim-lua/plenary.nvim"
|
||||
},
|
||||
["rainbow-delimiters.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/rainbow-delimiters.nvim",
|
||||
url = "https://github.com/HiPhish/rainbow-delimiters.nvim"
|
||||
},
|
||||
tagbar = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/tagbar",
|
||||
url = "https://github.com/majutsushi/tagbar"
|
||||
},
|
||||
["telescope.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/telescope.nvim",
|
||||
url = "https://github.com/nvim-telescope/telescope.nvim"
|
||||
},
|
||||
["vim-fugitive"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/vim-fugitive",
|
||||
url = "https://github.com/tpope/vim-fugitive"
|
||||
},
|
||||
["vim-gitgutter"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/vim-gitgutter",
|
||||
url = "https://github.com/airblade/vim-gitgutter"
|
||||
},
|
||||
["vim-indentwise"] = {
|
||||
loaded = true,
|
||||
path = "/home/produktr/.local/share/nvim/site/pack/packer/start/vim-indentwise",
|
||||
url = "https://github.com/jeetsukumaran/vim-indentwise"
|
||||
}
|
||||
}
|
||||
|
||||
time([[Defining packer_plugins]], false)
|
||||
-- Config for: codecompanion.nvim
|
||||
time([[Config for codecompanion.nvim]], true)
|
||||
try_loadstring("\27LJ\2\nÕ\1\0\0\5\0\f\0\0156\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\n\0005\3\4\0005\4\3\0=\4\5\0035\4\6\0=\4\a\0035\4\b\0=\4\t\3=\3\v\2B\0\2\1K\0\1\0\15strategies\1\0\1\15strategies\0\bcmd\1\0\1\fadapter\vollama\vinline\1\0\1\fadapter\vollama\tchat\1\0\3\vinline\0\bcmd\0\tchat\0\1\0\1\fadapter\vollama\nsetup\18codecompanion\frequire\0", "config", "codecompanion.nvim")
|
||||
time([[Config for codecompanion.nvim]], false)
|
||||
|
||||
_G._packer.inside_compile = false
|
||||
if _G._packer.needs_bufread == true then
|
||||
vim.cmd("doautocmd BufRead")
|
||||
end
|
||||
_G._packer.needs_bufread = false
|
||||
|
||||
if should_profile then save_profiles() end
|
||||
|
||||
end)
|
||||
|
||||
if not no_errors then
|
||||
error_msg = error_msg:gsub('"', '\\"')
|
||||
vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None')
|
||||
end
|
||||
Loading…
Reference in New Issue
Block a user