Compare commits
4 commits
526e41767c
...
8e03a31999
Author | SHA1 | Date | |
---|---|---|---|
8e03a31999 | |||
1ea8f94094 | |||
e9e7399c04 | |||
f42c1c8fdf |
19 changed files with 174 additions and 140 deletions
|
@ -1,54 +1,58 @@
|
|||
{...}: {
|
||||
imports = [
|
||||
# General configuration.
|
||||
# General Configuration
|
||||
./keymaps.nix
|
||||
./options.nix
|
||||
|
||||
# Themes
|
||||
# Themes & Appearance
|
||||
./plugins/themes/default.nix
|
||||
|
||||
# Completion
|
||||
# Plugin Collections
|
||||
./plugins/collections/mini.nix
|
||||
./plugins/collections/snacks.nix
|
||||
|
||||
# Completion & AI Assistancee
|
||||
./plugins/cmp/cmp.nix
|
||||
./plugins/cmp/copilot.nix
|
||||
./plugins/cmp/copilot-chat.nix
|
||||
|
||||
# Debug Adapter Protocol
|
||||
# Debugging (DAP)
|
||||
./plugins/dap/dap.nix
|
||||
./plugins/dap/dap-ui.nix
|
||||
./plugins/dap/dap-virtual-text.nix
|
||||
./plugins/dap/dap-python.nix
|
||||
|
||||
# Editor plugins and configurations
|
||||
./plugins/editor/buffers.nix
|
||||
# Editor Enhancements
|
||||
./plugins/editor/commentary.nix
|
||||
./plugins/editor/harpoon.nix
|
||||
./plugins/editor/mini.nix
|
||||
./plugins/editor/sessions.nix
|
||||
./plugins/editor/smart-splits.nix
|
||||
./plugins/editor/surround.nix
|
||||
./plugins/editor/treesitter.nix
|
||||
|
||||
# UI plugins
|
||||
# User Interface Plugins
|
||||
./plugins/ui/lualine.nix
|
||||
./plugins/ui/nvim-tree.nix
|
||||
./plugins/ui/web-devicons.nix
|
||||
./plugins/ui/whichkey.nix
|
||||
|
||||
# LSP and formatting
|
||||
# LSP and Formatting
|
||||
./plugins/lsp/conform.nix
|
||||
./plugins/lsp/lsp.nix
|
||||
|
||||
# Git
|
||||
# Git Integration
|
||||
./plugins/git/fugitive.nix
|
||||
./plugins/git/gitsigns.nix
|
||||
|
||||
# Utils
|
||||
./plugins/utils/copilot-chat.nix
|
||||
./plugins/utils/markdown-preview.nix
|
||||
./plugins/utils/render-markdown.nix
|
||||
# Markdown, Notes & Productivity
|
||||
./plugins/notes/markdown-preview.nix
|
||||
./plugins/notes/neorg.nix
|
||||
./plugins/notes/render-markdown.nix
|
||||
./plugins/notes/todo-comments.nix
|
||||
|
||||
# Utilities
|
||||
./plugins/utils/oil.nix
|
||||
./plugins/utils/telescope.nix
|
||||
./plugins/utils/todo-comments.nix
|
||||
./plugins/utils/vimtex.nix
|
||||
./plugins/utils/vimwiki.nix
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
{...}: {
|
||||
globals.mapleader = " ";
|
||||
globals.maplocalleader = {
|
||||
__raw = "vim.api.nvim_replace_termcodes('<BS>', false, false, true)";
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
|
@ -11,7 +14,7 @@
|
|||
};
|
||||
}
|
||||
|
||||
{ # prefix: find
|
||||
{
|
||||
mode = ["n"];
|
||||
key = "<leader>f";
|
||||
action = "<NOP>";
|
||||
|
@ -19,5 +22,32 @@
|
|||
desc = "+find";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
mode = ["n"];
|
||||
key = "<PageUp>";
|
||||
action = "<C-u>";
|
||||
options = {
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
mode = ["n"];
|
||||
key = "<PageDown>";
|
||||
action = "<C-d>";
|
||||
options = {
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
mode = ["n"];
|
||||
key = "<Del>";
|
||||
action = "zz";
|
||||
options = {
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
showmode = false;
|
||||
swapfile = false;
|
||||
clipboard = "unnamedplus";
|
||||
conceallevel = 1;
|
||||
updatetime=100;
|
||||
undofile = true;
|
||||
splitright = true;
|
||||
|
@ -17,6 +16,10 @@
|
|||
shiftwidth = 2;
|
||||
expandtab = true;
|
||||
|
||||
# Required for neorg
|
||||
conceallevel = 2;
|
||||
foldlevel = 99;
|
||||
|
||||
# Using this config for sessionoptions is recommended:
|
||||
sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions";
|
||||
};
|
||||
|
|
|
@ -27,6 +27,10 @@
|
|||
{ # VimTex
|
||||
name = "vimtex";
|
||||
}
|
||||
|
||||
{ # Neorg
|
||||
name = "neorg";
|
||||
}
|
||||
];
|
||||
|
||||
# Key mappings for the completion menu.
|
||||
|
|
19
config/plugins/collections/mini.nix
Normal file
19
config/plugins/collections/mini.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{...}:{
|
||||
plugins.mini = {
|
||||
enable = true;
|
||||
|
||||
# Extend and create a/i textobjects.
|
||||
modules.ai = {
|
||||
# Number of lines within which textobject is searched
|
||||
n_lines = 50;
|
||||
|
||||
# How to search for object
|
||||
search_method = "cover_or_next";
|
||||
};
|
||||
|
||||
# Go forward/backward with square brackets.
|
||||
modules.bracketed = { };
|
||||
|
||||
modules.align = { };
|
||||
};
|
||||
}
|
41
config/plugins/collections/snacks.nix
Normal file
41
config/plugins/collections/snacks.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{...}:{
|
||||
plugins.snacks = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
bufdelete = {
|
||||
enabled = true;
|
||||
};
|
||||
|
||||
scroll = {
|
||||
enabled = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
mode = ["n"];
|
||||
key = "<leader>q";
|
||||
action = {
|
||||
__raw = "function() require('snacks').bufdelete() end";
|
||||
};
|
||||
options = {
|
||||
desc = "Close current buffer";
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
mode = ["n"];
|
||||
key = "<leader>Q";
|
||||
action = {
|
||||
__raw = "function() require('snacks').bufdelete.other() end";
|
||||
};
|
||||
options = {
|
||||
desc = "Close other buffers";
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
|
@ -1,59 +0,0 @@
|
|||
{...}: {
|
||||
plugins.bufdelete = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
# buffer prefix
|
||||
mode = "n";
|
||||
key = "<leader>b";
|
||||
action = "<Nop>";
|
||||
options = {
|
||||
desc = "+buffer";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
# goto next buffer
|
||||
mode = ["n"];
|
||||
key = "]b";
|
||||
action = ":bnext<cr>";
|
||||
options = {
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
# goto previous buffer
|
||||
mode = ["n"];
|
||||
key = "[b";
|
||||
action = ":bprevious<cr>";
|
||||
options = {
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
# delete buffer
|
||||
mode = ["n"];
|
||||
key = "<leader>bd";
|
||||
action = ":Bdelete<cr>";
|
||||
options = {
|
||||
desc = "bdelete";
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
# wipeout buffer
|
||||
mode = ["n"];
|
||||
key = "<leader>bw";
|
||||
action = ":Bwipeout<cr>";
|
||||
options = {
|
||||
desc = "bwipeout";
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
|
@ -1,31 +0,0 @@
|
|||
{...}:{
|
||||
plugins.mini = {
|
||||
enable = true;
|
||||
|
||||
# Extend and create a/i textobjects.
|
||||
modules.ai = {
|
||||
# Module mappings.
|
||||
mappings = {
|
||||
# Main textobject prefixes
|
||||
around = "a";
|
||||
inside = "i";
|
||||
|
||||
# Next/last variants
|
||||
around_next = "an";
|
||||
inside_next = "in";
|
||||
around_last = "al";
|
||||
inside_last = "il";
|
||||
|
||||
# Move cursor to corresponding edge of `a` textobject
|
||||
goto_left = "g[";
|
||||
goto_right = "g]";
|
||||
};
|
||||
|
||||
# Number of lines within which textobject is searched
|
||||
n_lines = 50;
|
||||
|
||||
# How to search for object
|
||||
search_method = "cover_or_next";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -3,7 +3,7 @@
|
|||
enable = true;
|
||||
|
||||
settings = {
|
||||
multiplexer_integration = "WezTerm";
|
||||
multiplexer_integration = "wezterm";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -18,25 +18,4 @@
|
|||
# Install all grammar packages.
|
||||
grammarPackages = pkgs.vimPlugins.nvim-treesitter.allGrammars;
|
||||
};
|
||||
|
||||
# Refactor modules for nvim-treesitter
|
||||
plugins.treesitter-refactor = {
|
||||
enable = true;
|
||||
|
||||
# Highlights definitions and usages.
|
||||
highlightDefinitions = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
# Provides "go to usage"
|
||||
navigation = {
|
||||
enable = true;
|
||||
|
||||
# Go to the next / previous usage.
|
||||
keymaps = {
|
||||
gotoNextUsage = "]u";
|
||||
gotoPreviousUsage = "[u";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -49,8 +49,6 @@
|
|||
# Configure keymaps for our diagnostics.
|
||||
diagnostic = {
|
||||
"<C-W>d" = "open_float"; # Show diagnostics in floating window.
|
||||
"[d" = "goto_prev"; # Jump to previous diagnostic.
|
||||
"]d" = "goto_next"; # Jump to next diagnostic.
|
||||
};
|
||||
# Configure keymaps for our lspbuf.
|
||||
lspBuf = {
|
||||
|
@ -65,7 +63,7 @@
|
|||
# Renames all references to the symbol under the cursor.
|
||||
"<leader>r" = {
|
||||
action = "rename";
|
||||
desc = "Rename";
|
||||
desc = "Rename reference";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
48
config/plugins/notes/neorg.nix
Normal file
48
config/plugins/notes/neorg.nix
Normal file
|
@ -0,0 +1,48 @@
|
|||
{...}:{
|
||||
plugins.neorg = {
|
||||
enable = true;
|
||||
|
||||
# Settings for the Neorg plugin
|
||||
settings = {
|
||||
load = {
|
||||
# Load the core modules for Neorg
|
||||
"core.defaults" = {
|
||||
__empty = null;
|
||||
};
|
||||
|
||||
# Display markup as icons, not text
|
||||
"core.concealer" = {
|
||||
__empty = null;
|
||||
};
|
||||
|
||||
# Handle collections of notes
|
||||
"core.dirman" = {
|
||||
config = {
|
||||
workspaces = {
|
||||
notes = "~/Notes";
|
||||
};
|
||||
default_workspace = "notes";
|
||||
};
|
||||
};
|
||||
|
||||
# Treesitter integration
|
||||
"core.integrations.treesitter" = {
|
||||
config = {
|
||||
install_parsers = true;
|
||||
configure_parsers = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Enable completions with nvim-cmp
|
||||
"core.completion" = {
|
||||
config = {
|
||||
engine = "nvim-cmp";
|
||||
};
|
||||
};
|
||||
"core.integrations.nvim-cmp" = {
|
||||
__empty = null;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -31,7 +31,7 @@
|
|||
key = "<leader>n";
|
||||
action = "<cmd>NvimTreeToggle<cr>";
|
||||
options = {
|
||||
desc = "Toggle NvimTree";
|
||||
desc = "Toggle file explorer";
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
|||
key = "<leader>e";
|
||||
action = "<cmd>NvimTreeFocus<cr>";
|
||||
options = {
|
||||
desc = "Focus NvimTree";
|
||||
desc = "Focus file explorer";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
enable = true;
|
||||
settings = {
|
||||
preset = "modern";
|
||||
icons = {
|
||||
mappings = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
{...}: {
|
||||
plugins.vimwiki = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue