Compare commits
26
Commits
7295fd5af5
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2e43ea535 | ||
|
|
a278a36b6b | ||
|
|
0db179ecc4 | ||
|
|
461e5107a7 | ||
|
|
4091839450 | ||
|
|
275008da6d | ||
|
|
5039ab1498 | ||
|
|
00a556a4da | ||
|
|
38c857fe64 | ||
|
|
91ee1950de | ||
|
|
744e25eb4a | ||
|
|
9888e4a196 | ||
|
|
65a659ca91 | ||
|
|
66c2c2ca7f | ||
|
|
0c895d41ed | ||
|
|
7abae540d6 | ||
|
|
7c24103ec5 | ||
|
|
4004d9e361 | ||
|
|
5f8f8c4251 | ||
|
|
98a32ff28c | ||
|
|
e6ecc5271d | ||
|
|
34fd954950 | ||
|
|
ffcdef8e54 | ||
|
|
258f45400c | ||
|
|
c5cb5e9895 | ||
|
|
0ca1ef666d |
@@ -27,7 +27,7 @@ scrollback_pager_history_size 1024
|
||||
#: Mouse {{{
|
||||
|
||||
mouse_hide_wait 0.0
|
||||
paste_actions quote-urls-at-prompt,confirm
|
||||
paste_actions quote-urls-at-prompt
|
||||
|
||||
#: }}}
|
||||
|
||||
@@ -54,17 +54,6 @@ hide_window_decorations yes
|
||||
|
||||
#: }}}
|
||||
|
||||
#: Tab bar {{{
|
||||
|
||||
tab_bar_edge bottom
|
||||
tab_bar_style powerline
|
||||
tab_bar_min_tabs 1
|
||||
tab_powerline_style slanted
|
||||
tab_activity_symbol !
|
||||
tab_title_template "{index}{fmt.fg.red}{bell_symbol}{fmt.fg.tab}{activity_symbol}:{tab.last_focused_progress_percent}{title}"
|
||||
|
||||
#: }}}
|
||||
|
||||
#: Advanced {{{
|
||||
|
||||
notify_on_cmd_finish unfocused
|
||||
@@ -128,14 +117,6 @@ map cmd+8
|
||||
map kitty_mod+9
|
||||
map cmd+9
|
||||
map kitty_mod+0
|
||||
map f1 goto_tab 1
|
||||
map f2 goto_tab 2
|
||||
map f3 goto_tab 3
|
||||
map f4 goto_tab 4
|
||||
map f5 goto_tab 5
|
||||
map f6 goto_tab 6
|
||||
map f7 goto_tab 7
|
||||
map f8 goto_tab 8
|
||||
# map kitty_mod+c new_tab # FIXME: conflict with 'copy'
|
||||
map cmd+t
|
||||
map kitty_mod+q
|
||||
|
||||
@@ -2,7 +2,7 @@ allow_remote_control socket-only
|
||||
listen_on unix:/tmp/kitty
|
||||
shell_integration enabled
|
||||
|
||||
action_alias kitty_scrollback_nvim kitten ~/.local/share/nvim/site/pack/paqs/start/kitty-scrollback.nvim/python/kitty_scrollback_nvim.py
|
||||
action_alias kitty_scrollback_nvim kitten ~/.local/share/kitty-scrollback.nvim/python/kitty_scrollback_nvim.py
|
||||
map kitty_mod+h kitty_scrollback_nvim
|
||||
map kitty_mod+g kitty_scrollback_nvim --config ksb_builtin_last_cmd_output
|
||||
mouse_map ctrl+shift+right press ungrabbed combine : mouse_select_command_output : kitty_scrollback_nvim --config ksb_builtin_last_visited_cmd_output
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
require("claude-code").setup({
|
||||
-- Terminal window settings
|
||||
window = {
|
||||
split_ratio = 0.3, -- Percentage of screen for the terminal window (height for horizontal, width for vertical splits)
|
||||
position = "vertical", -- Position of the window: "botright", "topleft", "vertical", "float", etc.
|
||||
enter_insert = true, -- Whether to enter insert mode when opening Claude Code
|
||||
hide_numbers = true, -- Hide line numbers in the terminal window
|
||||
hide_signcolumn = true, -- Hide the sign column in the terminal window
|
||||
|
||||
-- Floating window configuration (only applies when position = "float")
|
||||
float = {
|
||||
width = "80%", -- Width: number of columns or percentage string
|
||||
height = "80%", -- Height: number of rows or percentage string
|
||||
row = "center", -- Row position: number, "center", or percentage string
|
||||
col = "center", -- Column position: number, "center", or percentage string
|
||||
relative = "editor", -- Relative to: "editor" or "cursor"
|
||||
border = "rounded", -- Border style: "none", "single", "double", "rounded", "solid", "shadow"
|
||||
},
|
||||
},
|
||||
-- File refresh settings
|
||||
refresh = {
|
||||
enable = true, -- Enable file change detection
|
||||
updatetime = 100, -- updatetime when Claude Code is active (milliseconds)
|
||||
timer_interval = 1000, -- How often to check for file changes (milliseconds)
|
||||
show_notifications = true, -- Show notification when files are reloaded
|
||||
},
|
||||
-- Git project settings
|
||||
git = {
|
||||
use_git_root = true, -- Set CWD to git root when opening Claude Code (if in git project)
|
||||
},
|
||||
-- Shell-specific settings
|
||||
shell = {
|
||||
separator = "&&", -- Command separator used in shell commands
|
||||
pushd_cmd = "pushd", -- Command to push directory onto stack (e.g., 'pushd' for bash/zsh, 'enter' for nushell)
|
||||
popd_cmd = "popd", -- Command to pop directory from stack (e.g., 'popd' for bash/zsh, 'exit' for nushell)
|
||||
},
|
||||
-- Command settings
|
||||
command = "claude", -- Command used to launch Claude Code
|
||||
-- Command variants
|
||||
command_variants = {
|
||||
-- Conversation management
|
||||
continue = "--continue", -- Resume the most recent conversation
|
||||
resume = "--resume", -- Display an interactive conversation picker
|
||||
|
||||
-- Output options
|
||||
verbose = "--verbose", -- Enable verbose logging with full turn-by-turn output
|
||||
},
|
||||
-- Keymaps
|
||||
keymaps = {
|
||||
toggle = {
|
||||
normal = "<C-,>", -- Normal mode keymap for toggling Claude Code, false to disable
|
||||
terminal = "<C-,>", -- Terminal mode keymap for toggling Claude Code, false to disable
|
||||
variants = {
|
||||
continue = "<leader>cC", -- Normal mode keymap for Claude Code with continue flag
|
||||
verbose = "<leader>cV", -- Normal mode keymap for Claude Code with verbose flag
|
||||
},
|
||||
},
|
||||
window_navigation = true, -- Enable window navigation keymaps (<C-h/j/k/l>)
|
||||
scrolling = true, -- Enable scrolling keymaps (<C-f/b>) for page up/down
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,26 @@
|
||||
require("claudecode").setup({
|
||||
-- terminal = {
|
||||
-- provider = "snacks",
|
||||
-- snacks_win_opts = {
|
||||
-- position = "float",
|
||||
-- width = 0.8,
|
||||
-- height = 0.8,
|
||||
-- border = "rounded",
|
||||
-- },
|
||||
-- },
|
||||
-- diff_opts = {
|
||||
-- layout = "vertical",
|
||||
-- },
|
||||
})
|
||||
|
||||
local map = vim.keymap.set
|
||||
|
||||
map({ "n", "t" }, "<C-_>", "<cmd>ClaudeCode<cr>", { desc = "Toggle Claude Code" })
|
||||
map("n", "<leader>cf", "<cmd>ClaudeCodeFocus<cr>", { desc = "Focus Claude Code" })
|
||||
map("n", "<leader>cC", "<cmd>ClaudeCode --continue<cr>", { desc = "Claude Code (continue)" })
|
||||
map("n", "<leader>cr", "<cmd>ClaudeCode --resume<cr>", { desc = "Claude Code (resume)" })
|
||||
map("n", "<leader>cm", "<cmd>ClaudeCodeSelectModel<cr>", { desc = "Claude Code select model" })
|
||||
map("n", "<leader>cb", "<cmd>ClaudeCodeAdd %<cr>", { desc = "Add buffer to Claude Code" })
|
||||
map("v", "<leader>cs", "<cmd>ClaudeCodeSend<cr>", { desc = "Send selection to Claude Code" })
|
||||
map("n", "<leader>co", "<cmd>ClaudeCodeDiffAccept<cr>", { desc = "Accept Claude Code diff" })
|
||||
map("n", "<leader>cd", "<cmd>ClaudeCodeDiffDeny<cr>", { desc = "Deny Claude Code diff" })
|
||||
@@ -1 +0,0 @@
|
||||
require("copilot_cmp").setup()
|
||||
@@ -1 +0,0 @@
|
||||
require("copilot").setup({})
|
||||
@@ -2,7 +2,7 @@ local gitsigns = require("gitsigns")
|
||||
|
||||
gitsigns.setup({
|
||||
current_line_blame_formatter = "<author>, <author_time:%R> - <summary>",
|
||||
linehl = true,
|
||||
-- linehl = true,
|
||||
current_line_blame_opts = {
|
||||
delay = 0,
|
||||
virt_text_pos = "right_align",
|
||||
|
||||
@@ -62,7 +62,6 @@ cmp.setup({
|
||||
["<CR>"] = c_l,
|
||||
}),
|
||||
sources = {
|
||||
{ name = "copilot", group_index = 2 },
|
||||
{ name = "zk" },
|
||||
{ name = "nvim_lsp" },
|
||||
{ name = "luasnip", max_item_count = 16 },
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
local function overrides()
|
||||
local colors = require("vscode.colors").get_colors()
|
||||
vim.api.nvim_set_hl(0, "NormalFloat", { bg = colors.vscLeftDark })
|
||||
vim.api.nvim_set_hl(0, "FloatBorder", { fg = colors.vscSplitDark, bg = colors.vscLeftDark })
|
||||
end
|
||||
|
||||
vim.api.nvim_create_autocmd("ColorScheme", {
|
||||
pattern = "vscode",
|
||||
callback = overrides,
|
||||
})
|
||||
|
||||
if vim.g.colors_name == "vscode" then
|
||||
overrides()
|
||||
end
|
||||
@@ -1 +0,0 @@
|
||||
vim.cmd("colorscheme zenwritten")
|
||||
Generated
-221
@@ -1,141 +1,5 @@
|
||||
{
|
||||
"nodes": {
|
||||
"crane": {
|
||||
"locked": {
|
||||
"lastModified": 1769287525,
|
||||
"narHash": "sha256-gABuYA6BzoRMLuPaeO5p7SLrpd4qExgkwEmYaYQY4bM=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "0314e365877a85c9e5758f9ea77a9972afbb4c21",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitlab-nvim": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"gomod2nix": "gomod2nix",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1787035587,
|
||||
"narHash": "sha256-do8FBSzDN72CegG7L4CpDd4xcp2TjM4i/gRyOtNilqs=",
|
||||
"owner": "harrisoncramer",
|
||||
"repo": "gitlab.nvim",
|
||||
"rev": "1732720cc684980276030f8c3d91eb806ca5d851",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "harrisoncramer",
|
||||
"repo": "gitlab.nvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gomod2nix": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": [
|
||||
"gitlab-nvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1770585520,
|
||||
"narHash": "sha256-yBz9Ozd5Wb56i3e3cHZ8WcbzCQ9RlVaiW18qDYA/AzA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "gomod2nix",
|
||||
"rev": "1201ddd1279c35497754f016ef33d5e060f3da8d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "gomod2nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"kubectl-nvim": {
|
||||
"inputs": {
|
||||
"crane": "crane",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786002255,
|
||||
"narHash": "sha256-YqCE4qM/tLrDByljTDGhgt9X0sOTRPY3voc1apQlLzg=",
|
||||
"owner": "Ramilito",
|
||||
"repo": "kubectl.nvim",
|
||||
"rev": "dfd25c503f6ee4a769f53a0a8aab8e8fde0ff180",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Ramilito",
|
||||
"repo": "kubectl.nvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixCats": {
|
||||
"locked": {
|
||||
"lastModified": 1777273601,
|
||||
@@ -183,22 +47,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"plugins-diffview-nvim": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1787574526,
|
||||
"narHash": "sha256-twlMCrNKlkuoT3aQtZHVAZNw5zv1Y9McFYBt8+KgHZ4=",
|
||||
"owner": "dlyongemallo",
|
||||
"repo": "diffview.nvim",
|
||||
"rev": "30afab604a0abe02dfd19e6fbb9153fd26fd2eb3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "dlyongemallo",
|
||||
"repo": "diffview.nvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"plugins-nvimkit-nvim": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -249,82 +97,13 @@
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"gitlab-nvim": "gitlab-nvim",
|
||||
"kubectl-nvim": "kubectl-nvim",
|
||||
"nixCats": "nixCats",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"plugins-beancount-nvim": "plugins-beancount-nvim",
|
||||
"plugins-diffview-nvim": "plugins-diffview-nvim",
|
||||
"plugins-nvimkit-nvim": "plugins-nvimkit-nvim",
|
||||
"plugins-shipwright-nvim": "plugins-shipwright-nvim",
|
||||
"plugins-tailwind-fold-nvim": "plugins-tailwind-fold-nvim"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"kubectl-nvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769568593,
|
||||
"narHash": "sha256-vf3cZf8imUlPzFtICa1uyReDzoPV0XhHOIRM3tqI5VY=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "6fe5039018d05cee5d01dda7df1c0846fb7943a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
+15
-10
@@ -40,7 +40,6 @@
|
||||
allowUnfreePredicate =
|
||||
pkg:
|
||||
builtins.elem (nixpkgs.lib.getName pkg) [
|
||||
"copilot-language-server"
|
||||
"vim-sandwich"
|
||||
"jupytext.nvim"
|
||||
"eyeliner.nvim"
|
||||
@@ -55,7 +54,7 @@
|
||||
];
|
||||
};
|
||||
|
||||
mkDependencyOverlays = system: [
|
||||
mkDependencyOverlays = [
|
||||
(utils.standardPluginOverlay inputs)
|
||||
(_: prev: {
|
||||
luajitPackages = prev.luajitPackages.overrideScope (
|
||||
@@ -71,8 +70,12 @@
|
||||
categoryDefinitions =
|
||||
{
|
||||
pkgs,
|
||||
categories,
|
||||
...
|
||||
}:
|
||||
let
|
||||
themes = import ./themes.nix pkgs;
|
||||
in
|
||||
{
|
||||
lspsAndRuntimeDeps = with pkgs; {
|
||||
general = [
|
||||
@@ -113,7 +116,9 @@
|
||||
};
|
||||
|
||||
startupPlugins = {
|
||||
general = with pkgs.vimPlugins; [
|
||||
general =
|
||||
with pkgs.vimPlugins;
|
||||
[
|
||||
## plug
|
||||
vim-plug
|
||||
vim-sandwich
|
||||
@@ -155,9 +160,8 @@
|
||||
plenary-nvim
|
||||
nui-nvim
|
||||
trouble-nvim
|
||||
pkgs.neovimPlugins.shipwright-nvim
|
||||
lush-nvim
|
||||
zenbones-nvim
|
||||
pkgs.neovimPlugins.shipwright-nvim
|
||||
nvim-treesitter.withAllGrammars
|
||||
nvim-treesitter-textobjects
|
||||
# nvim-treesitter-context
|
||||
@@ -174,15 +178,15 @@
|
||||
pkgs.neovimPlugins.beancount-nvim
|
||||
pkgs.neovimPlugins.nvimkit-nvim
|
||||
codecompanion-nvim
|
||||
copilot-lua
|
||||
copilot-cmp
|
||||
helm-ls-nvim
|
||||
kitty-scrollback-nvim
|
||||
fidget-nvim
|
||||
rustaceanvim
|
||||
# pkgs.neovimPlugins.m-taskwarrior-d-nvim
|
||||
claude-code-nvim
|
||||
];
|
||||
claudecode-nvim
|
||||
snacks-nvim
|
||||
]
|
||||
++ themes.${categories.colorscheme or "zenwritten"};
|
||||
};
|
||||
|
||||
optionalPlugins = {
|
||||
@@ -207,6 +211,7 @@
|
||||
};
|
||||
categories = {
|
||||
general = true;
|
||||
colorscheme = "zenwritten";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -216,7 +221,7 @@
|
||||
forEachSystem (
|
||||
system:
|
||||
let
|
||||
dependencyOverlays = mkDependencyOverlays system;
|
||||
dependencyOverlays = mkDependencyOverlays;
|
||||
nixCatsBuilder = utils.baseBuilder luaPath {
|
||||
inherit
|
||||
nixpkgs
|
||||
|
||||
@@ -15,7 +15,6 @@ vim.api.nvim_create_user_command("AnkiDeck", function()
|
||||
end, {})
|
||||
|
||||
vim.cmd([[
|
||||
set cc=81
|
||||
set cocu=""
|
||||
func! GetContext()
|
||||
" https://stackoverflow.com/questions/9464844/how-to-get-group-name-of-highlighting-under-cursor-in-vim
|
||||
|
||||
@@ -16,5 +16,4 @@ require("diagnostic")
|
||||
require("utils")
|
||||
require("zk")
|
||||
require("reload")
|
||||
|
||||
vim.opt.background = "dark"
|
||||
require("theme")
|
||||
|
||||
@@ -22,6 +22,7 @@ set("n", "s=", "<c-w>=", { desc = "equalize splits" })
|
||||
set("n", "sb", ":Lex<cr>", { desc = "file tree" })
|
||||
set("n", "<leader><leader>", ":noh<cr>", { desc = "clear highlights" })
|
||||
set("n", "<leader>t", ":term<cr>", { desc = "open terminal" })
|
||||
set("n", "<leader>w", "<cmd>w<cr>", { desc = ":w" })
|
||||
|
||||
-- remaps
|
||||
set("i", "jj", "<esc>", { nowait = true, desc = "exit insert mode" })
|
||||
@@ -34,9 +35,6 @@ set("i", "<down>", "<nop>")
|
||||
set("i", "<up>", "<nop>")
|
||||
set("i", "<right>", "<nop>")
|
||||
|
||||
-- search
|
||||
set("n", "<c-_>", ":noh<cr>", { desc = "clear search highlight" })
|
||||
|
||||
-- line numbers
|
||||
set("n", "<leader>n", ":set nu! rnu!<cr>", { desc = "toggle line numbers" })
|
||||
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
vim.opt.background = "dark"
|
||||
|
||||
if vim.g.vscode then
|
||||
return
|
||||
end
|
||||
|
||||
vim.g.zenwritten_compat = 1
|
||||
vim.cmd.colorscheme(require("nixCatsUtils").getCatOrDefault("colorscheme", "zenwritten"))
|
||||
@@ -0,0 +1,4 @@
|
||||
pkgs: {
|
||||
vscode = [ pkgs.vimPlugins.vscode-nvim ];
|
||||
zenwritten = [ pkgs.vimPlugins.zenbones-nvim ];
|
||||
}
|
||||
Generated
+33
-33
@@ -123,11 +123,11 @@
|
||||
"utils": "utils"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786361680,
|
||||
"narHash": "sha256-IxaZkb9rCGEZ+yGndxKXONeIEcKMzoFUsvLTB5G/caw=",
|
||||
"lastModified": 1788879443,
|
||||
"narHash": "sha256-qb9sL86UCUEd3SYAda4ItN1NV0vhMSdbpA64WckvVI0=",
|
||||
"owner": "serokell",
|
||||
"repo": "deploy-rs",
|
||||
"rev": "16901271e5b30b591e56f7a84f25f186fb20f3e1",
|
||||
"rev": "414ac5f35d79aabe5a0bf52451d8cf61eadf6c88",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -165,11 +165,11 @@
|
||||
},
|
||||
"locked": {
|
||||
"dir": "pkgs/firefox-addons",
|
||||
"lastModified": 1787630552,
|
||||
"narHash": "sha256-w3LGSHkHWKRH5K4A8plRWaFbaSWfdZAIxv32kO2mpOg=",
|
||||
"lastModified": 1788926592,
|
||||
"narHash": "sha256-cHzKQBhQVLPfMCtK+E0EMeQpwW2/XA9l+8H6xXsT+70=",
|
||||
"owner": "rycee",
|
||||
"repo": "nur-expressions",
|
||||
"rev": "25227969423d7ef599f70e16364ac550a0f713cd",
|
||||
"rev": "9d230a63e1419b6efd95728f01a6a72e1986a03f",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
@@ -264,7 +264,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_3": {
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
@@ -345,11 +345,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1787424939,
|
||||
"narHash": "sha256-O2tBn84NNuHrnqNVxx/XqsXwfYvS1YwBh+7CBnbCYsk=",
|
||||
"lastModified": 1788267358,
|
||||
"narHash": "sha256-nt+lUqYVpc9Y6JeMd2WmXzCDojasdadKo0mWcluvY2Y=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "809414f0cdadf82cf11b06c2b29ba9b3168b3297",
|
||||
"rev": "27555e2624241fb116b49095df4caaee85a25691",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -396,11 +396,11 @@
|
||||
"hecuba-services": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1787190763,
|
||||
"narHash": "sha256-hZCD0M5mt6gP5z21dYOslx9d7aoF5XTCgB0axt8O+SA=",
|
||||
"lastModified": 1788557536,
|
||||
"narHash": "sha256-oG0PyMqzA11EGfqY86iU73DjYq5HHoK89kQW0xaPHf4=",
|
||||
"ref": "main",
|
||||
"rev": "838434daa9844608863c93627aa466a0109237b5",
|
||||
"revCount": 209,
|
||||
"rev": "29002359b7a863b12bed5a83a1cafc53c660a14a",
|
||||
"revCount": 218,
|
||||
"type": "git",
|
||||
"url": "ssh://git@github.com/hektor/hecuba-services"
|
||||
},
|
||||
@@ -417,11 +417,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1787540599,
|
||||
"narHash": "sha256-MHwk52ty3NsLhq9a1IbIfBJZlCUJIdiUYFo52JLK9hY=",
|
||||
"lastModified": 1788921139,
|
||||
"narHash": "sha256-2wRuvf9UDw1SYWtBcxNmxLeAtNU1i/hc1c0AKQHdvlM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "03f4cd46bc1dd4f3a96da778d2ce9f7ce39dd450",
|
||||
"rev": "a2dbe7c2c9333e8234ae8114c7f731784201d108",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -454,10 +454,10 @@
|
||||
"nix-secrets": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1785190089,
|
||||
"narHash": "sha256-nhzJq5kkcU9X5QXhErn1pHqqN5TPxUVV0teOd+yMzN4=",
|
||||
"lastModified": 1788786361,
|
||||
"narHash": "sha256-u6qgw8xKHLdlC02HZnC89WzigADbXoO4mGsllMMj5FM=",
|
||||
"ref": "main",
|
||||
"rev": "3375f7a8ccb4dc3c5ea3c488597c659665973e4d",
|
||||
"rev": "b560101cef698142dd15cacc222c2c6135b8ab04",
|
||||
"shallow": true,
|
||||
"type": "git",
|
||||
"url": "ssh://git@github.com/hektor/nix-secrets"
|
||||
@@ -510,11 +510,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1787144466,
|
||||
"narHash": "sha256-HHfv2/HkNSKbbSyU9iD/g8lbP6r4tl33sSw1W4rXCk0=",
|
||||
"lastModified": 1788942796,
|
||||
"narHash": "sha256-CLoJCCRi9sogsyGXYn8rOCWBLKAntfKUB9Rli/YXgEY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "0471accf8d0a8210b31d947497d179ecc99e0021",
|
||||
"rev": "83bbc895120516d6e86885a188c04beced6535d9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -539,11 +539,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1787498568,
|
||||
"narHash": "sha256-9i/VTdusq/+NM/tz+J1Re+ojkMB8MBf0QshnYfzHz30=",
|
||||
"lastModified": 1788881743,
|
||||
"narHash": "sha256-2V9GZGvPfrNzxFozhI9dcqV+c3QdA8YZrvAAzqEB+dI=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "56c02bc00adcf003215cc4bd996d6efaf4cff188",
|
||||
"rev": "d6524aaca2ff07876657ae2b323f24be4874944b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -689,11 +689,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786629091,
|
||||
"narHash": "sha256-gkig4nPi1CWc4Z50GBsjE4ygSE7hMpl/TwID2an2Cck=",
|
||||
"lastModified": 1788914643,
|
||||
"narHash": "sha256-4GuMPW90JSxXWDPUB9M+1m7fYbe3H0apOd86/zBQ2Kw=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "a8627b21b9107c5711c96b84f32a9a4b3d45295f",
|
||||
"rev": "13616fff713a9f94055c66f15687ebdc17a335df",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -725,7 +725,7 @@
|
||||
"base16-helix": "base16-helix",
|
||||
"base16-vim": "base16-vim",
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
@@ -738,11 +738,11 @@
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1787175104,
|
||||
"narHash": "sha256-tzNjlb0loxeWlipvxSNAUUihloeTZoyGFhEen87yM9k=",
|
||||
"lastModified": 1787771653,
|
||||
"narHash": "sha256-DkkJSBOXWV/mja5Vy8az5g1KpZlsbUwlmH0BsQhowaQ=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "a9e5a76a1b75b137f266e4f445e1eaba82e9783e",
|
||||
"rev": "5e3809851f486e7fc7e84b40f174c74b60ecc784",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
@@ -27,34 +27,36 @@
|
||||
claude-code.enable = true;
|
||||
opencode.enable = true;
|
||||
};
|
||||
desktop.niri.enable = true;
|
||||
browser.enable = true;
|
||||
anki.enable = true;
|
||||
audio.enable = true;
|
||||
browser.primary = "librewolf";
|
||||
cloud.hetzner.enable = true;
|
||||
gaming.enable = true;
|
||||
cloud = {
|
||||
hetzner.enable = true;
|
||||
vercel.enable = true;
|
||||
};
|
||||
comms.signal.enable = true;
|
||||
deploy.enable = true;
|
||||
desktop.niri.enable = true;
|
||||
devenv.enable = true;
|
||||
direnv.enable = true;
|
||||
gaming.enable = true;
|
||||
git.enable = true;
|
||||
git.github.enable = true;
|
||||
k8s.k9s.enable = true;
|
||||
keepassxc.enable = true;
|
||||
music.enable = true;
|
||||
nvim.enable = true;
|
||||
pandoc.enable = true;
|
||||
photography.enable = true;
|
||||
secrets.enable = true;
|
||||
shell = {
|
||||
enable = true;
|
||||
bash.aliases.lang-js = true;
|
||||
bash.addBinToPath = true;
|
||||
};
|
||||
anki.enable = true;
|
||||
k8s.k9s.enable = true;
|
||||
secrets.enable = true;
|
||||
taskwarrior.enable = true;
|
||||
audio.enable = true;
|
||||
ssh.enable = true;
|
||||
deploy.enable = true;
|
||||
music.enable = true;
|
||||
taskwarrior.enable = true;
|
||||
terminal.enable = true;
|
||||
devenv.enable = true;
|
||||
keepassxc.enable = true;
|
||||
direnv.enable = true;
|
||||
nvim.enable = true;
|
||||
pandoc.enable = true;
|
||||
photography.enable = true;
|
||||
torrenting.enable = true;
|
||||
my.yubikey.enable = true;
|
||||
zk.enable = true;
|
||||
|
||||
@@ -70,7 +70,10 @@
|
||||
music.enable = true;
|
||||
my.dconf.enable = true;
|
||||
my.stylix.enable = true;
|
||||
nvim.enable = true;
|
||||
nvim = {
|
||||
enable = true;
|
||||
colorscheme = "vscode";
|
||||
};
|
||||
pandoc.enable = true;
|
||||
shell.enable = true;
|
||||
taskwarrior.enable = true;
|
||||
|
||||
@@ -27,7 +27,6 @@ in
|
||||
kubectl
|
||||
kubernetes
|
||||
kustomize
|
||||
minikube
|
||||
];
|
||||
|
||||
programs.kubecolor = {
|
||||
|
||||
@@ -1,15 +1,28 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
themes = import "${inputs.nvim}/themes.nix" pkgs;
|
||||
plugins = themes.${config.nvim.colorscheme};
|
||||
in
|
||||
{
|
||||
options.nvim.enable = lib.mkEnableOption "nvim";
|
||||
imports = [ inputs.nvim.homeModules.default ];
|
||||
|
||||
options.nvim.colorscheme = lib.mkOption {
|
||||
type = lib.types.enum (lib.attrNames themes);
|
||||
default = "zenwritten";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.nvim.enable {
|
||||
nvim.packageDefinitions.merge.nvim = _: {
|
||||
categories.colorscheme = config.nvim.colorscheme;
|
||||
};
|
||||
|
||||
home = {
|
||||
sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
@@ -19,10 +32,15 @@
|
||||
PAGER = "nvimpager";
|
||||
MANWIDTH = "80";
|
||||
};
|
||||
packages = with pkgs; [
|
||||
inputs.nvim.packages.${pkgs.stdenv.hostPlatform.system}.nvim
|
||||
nvimpager
|
||||
];
|
||||
packages = with pkgs; [ nvimpager ];
|
||||
};
|
||||
|
||||
xdg.configFile."nvimpager/init.lua".text = ''
|
||||
vim.opt.clipboard = "unnamedplus"
|
||||
vim.opt.background = "dark"
|
||||
vim.g.zenwritten_compat = 1
|
||||
${lib.concatMapStringsSep "\n" (plugin: ''vim.opt.runtimepath:append("${plugin}")'') plugins}
|
||||
vim.cmd.colorscheme("${config.nvim.colorscheme}")
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -24,5 +24,6 @@ in
|
||||
};
|
||||
|
||||
home.file.".config/kitty/nvim.conf".source = dotsPath + "/.config/kitty/nvim.conf";
|
||||
home.file.".local/share/kitty-scrollback.nvim".source = pkgs.vimPlugins.kitty-scrollback-nvim;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -55,7 +55,13 @@ in
|
||||
useDHCP = lib.mkDefault true;
|
||||
};
|
||||
nvidia.enable = true;
|
||||
restic-backup.enable = true;
|
||||
restic-backup = {
|
||||
enable = true;
|
||||
paths = [
|
||||
"/home"
|
||||
"/data"
|
||||
];
|
||||
};
|
||||
secrets = {
|
||||
enable = true;
|
||||
nixSigningKey.enable = true;
|
||||
|
||||
@@ -58,6 +58,7 @@ in
|
||||
dbus.enable = true;
|
||||
displayManager.ly = lib.mkIf cfg.ly.enable {
|
||||
enable = true;
|
||||
settings.session_log = ".local/state/ly-session.log";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user