Compare commits
10 Commits
a0775faedd
...
e7b6b488d9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e7b6b488d9 | ||
|
|
28a1a1db4b | ||
|
|
d5e461524b | ||
|
|
8f6e8a7a14 | ||
|
|
80702d6076 | ||
|
|
5859d26c6c | ||
|
|
451a70d3c7 | ||
|
|
ce8eddeadf | ||
|
|
3af9c66290 | ||
|
|
210ce6236c |
@@ -1,56 +0,0 @@
|
||||
pkgs: let
|
||||
build = {
|
||||
version,
|
||||
owner,
|
||||
name,
|
||||
rev,
|
||||
hash,
|
||||
}:
|
||||
pkgs.vimUtils.buildVimPlugin {
|
||||
pname = name;
|
||||
inherit version;
|
||||
src = pkgs.fetchFromGitHub {
|
||||
repo = name;
|
||||
inherit owner rev;
|
||||
sha256 = hash;
|
||||
};
|
||||
};
|
||||
in {
|
||||
# INFO: Last update: 18. Aug. 2025 | Sort latest -> oldest
|
||||
|
||||
# https://github.com/SCJangra/table-nvim
|
||||
table-nvim = build {
|
||||
version = "27-09-2024";
|
||||
owner = "SCJangra";
|
||||
name = "table-nvim";
|
||||
rev = "c044fd37169eb10376962b0d0cec5f94d58ca626";
|
||||
hash = "1ygn4bvnpbd49gcgbkh0cdj3p75jsmwi87hby78w0fd22205pvmi";
|
||||
};
|
||||
|
||||
# https://github.com/michaelrommel/nvim-silicon
|
||||
silicon = build {
|
||||
version = "09-01-2025";
|
||||
owner = "michaelrommel";
|
||||
name = "nvim-silicon";
|
||||
rev = "7f66bda8f60c97a5bf4b37e5b8acb0e829ae3c32";
|
||||
hash = "1zk6lgghvdcys20cqvh2g1kjf661q1w97niq5nx1zz4yppy2f9jy";
|
||||
};
|
||||
|
||||
# https://github.com/b0o/incline.nvim
|
||||
incline = build {
|
||||
version = "05-06-2025";
|
||||
owner = "b0o";
|
||||
name = "incline.nvim";
|
||||
rev = "0fd2d5a27504dba7fdc507a53275f22c081fe640";
|
||||
hash = "19x35z2sj3hl3icrxzbs67xhxgq9d237vhgzqrz8ppdc74p8wgaz";
|
||||
};
|
||||
|
||||
# https://github.com/Aasim-A/scrollEOF.nvim
|
||||
scrollEOF = build {
|
||||
version = "31-05-2025";
|
||||
owner = "Aasim-A";
|
||||
name = "scrollEOF.nvim";
|
||||
rev = "2575109749b4bf3a0bf979a17947b3c1e8c5137e";
|
||||
hash = "1s66v9n0arg81wgw1z8iv9s304j78cd506z522avpc88d3ji4yl4";
|
||||
};
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
require("incline").setup {}
|
||||
|
||||
-- vim_current_word
|
||||
vim.cmd [[
|
||||
hi CurrentWord guifg=#cba6f7
|
||||
|
||||
@@ -1,10 +1,17 @@
|
||||
{pkgs, ...}: {
|
||||
extraPlugins = let
|
||||
builds = import ../builds.nix pkgs;
|
||||
scrollEOF = pkgs.vimUtils.buildVimPlugin {
|
||||
pname = "scrollEOF.nvim";
|
||||
version = "09-14-2025";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "Aasim-A";
|
||||
repo = "scrollEOF.nvim";
|
||||
rev = "e462b9a07b8166c3e8011f1dcbc6bf68b67cd8d7";
|
||||
hash = "sha256-y7yOCRSGTtQcFyWVkGe3xQqstHZMQKayxtqkOVlZ4PM=";
|
||||
};
|
||||
};
|
||||
in
|
||||
with builds;
|
||||
with pkgs.vimPlugins; [
|
||||
incline
|
||||
scrollEOF
|
||||
|
||||
vim-hexokinase
|
||||
|
||||
@@ -23,14 +23,28 @@
|
||||
};
|
||||
|
||||
rainbow-delimiters.enable = true;
|
||||
twilight.enable = true;
|
||||
|
||||
nvim-tree = {
|
||||
enable = true;
|
||||
settings = {
|
||||
hijack_cursor = true;
|
||||
view.width = {
|
||||
min = 30;
|
||||
max = -1;
|
||||
};
|
||||
renderer = {
|
||||
group_empty = true;
|
||||
icons = {
|
||||
show.modified = true;
|
||||
glyphs.modified = "";
|
||||
};
|
||||
indent_markers.enable = true;
|
||||
};
|
||||
modified = {
|
||||
enable = true;
|
||||
show_on_dirs = false;
|
||||
};
|
||||
update_focused_file.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
{
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
numhl = true;
|
||||
current_line_blame = true;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{pkgs, ...}: {
|
||||
{
|
||||
plugins = {
|
||||
markdown-preview = {
|
||||
enable = true;
|
||||
@@ -16,8 +16,4 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
extraPlugins = let
|
||||
builds = import ../../builds.nix pkgs;
|
||||
in [builds.table-nvim];
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
./fzf-lua.nix
|
||||
./grug-far.nix
|
||||
./presence.nix
|
||||
./silicon.nix
|
||||
# ./silicon.nix
|
||||
./todo-comments.nix
|
||||
./debugging.nix
|
||||
./snacks
|
||||
|
||||
@@ -1,6 +1,23 @@
|
||||
{pkgs, ...}: let
|
||||
theme = "Catppuccin";
|
||||
font = "JetBrainsMono Nerd Font=32;Noto Color Emoji=34";
|
||||
silicon-nvim = pkgs.vimUtils.buildVimPlugin {
|
||||
pname = "silicon.nvim";
|
||||
version = "12-03-2024";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "krivahtoo";
|
||||
repo = "silicon.nvim";
|
||||
rev = "d8a6852b7158cc98f44ab12a0811ccf7d111dc71";
|
||||
hash = "sha256-3ABUsfJpb6RO6AiuuSL5gwDofJIwC5tlEMzBrlY9/s0=";
|
||||
};
|
||||
};
|
||||
theme =
|
||||
pkgs.fetchFromGitHub {
|
||||
owner = "catppuccin";
|
||||
repo = "sublime-text";
|
||||
rev = "3d8625d937d89869476e94bc100192aa220ce44a";
|
||||
hash = "sha256-3ABUsfJpb6RO6AiuuSL5gwDofJIwC5tlEMzBrlY9/s0=";
|
||||
}
|
||||
+ "/Mocha.tmTheme";
|
||||
font = "JetBrainsMono Nerd Font=16;Noto Color Emoji=16";
|
||||
in {
|
||||
extraPackages = with pkgs; [
|
||||
silicon
|
||||
@@ -8,17 +25,18 @@ in {
|
||||
noto-fonts-color-emoji
|
||||
];
|
||||
|
||||
extraPlugins = let
|
||||
builds = import ../builds.nix pkgs;
|
||||
in
|
||||
with builds; [silicon];
|
||||
extraPlugins = [silicon-nvim];
|
||||
|
||||
extraConfigLua = ''
|
||||
require 'nvim-silicon'.setup {
|
||||
font = '${font}',
|
||||
theme = '${theme}',
|
||||
no_line_number = true,
|
||||
no_window_controls = true,
|
||||
}
|
||||
'';
|
||||
extraConfigLua =
|
||||
# lua
|
||||
''
|
||||
require("silicon").setup {
|
||||
font = "${font}",
|
||||
theme = "${theme}",
|
||||
window_controls = false,
|
||||
output = {
|
||||
path = "~/Downloads",
|
||||
},
|
||||
}
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -1,53 +1,83 @@
|
||||
let
|
||||
themes = import ./themes.nix;
|
||||
theme = themes.dg_baby;
|
||||
in {
|
||||
enabled = true;
|
||||
preset = {
|
||||
inherit (theme) header;
|
||||
keys = [
|
||||
{
|
||||
plugins.snacks.settings.dashboard = let
|
||||
themes = import ./themes.nix;
|
||||
theme = themes.dg_baby;
|
||||
in {
|
||||
enabled = true;
|
||||
preset = {
|
||||
inherit (theme) header;
|
||||
keys = [
|
||||
{
|
||||
icon = " ";
|
||||
key = "f";
|
||||
desc = "Find File";
|
||||
action = ":lua Snacks.dashboard.pick('files')";
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "n";
|
||||
desc = "New File";
|
||||
action = ":ene | startinsert";
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "l";
|
||||
desc = "Live Grep";
|
||||
action = ":lua Snacks.dashboard.pick('live_grep')";
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "o";
|
||||
desc = "Old Files";
|
||||
action = ":lua Snacks.dashboard.pick('oldfiles')";
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "q";
|
||||
desc = "Quit";
|
||||
action = ":qa";
|
||||
}
|
||||
];
|
||||
};
|
||||
sections = [
|
||||
{section = "header";}
|
||||
{
|
||||
icon = " ";
|
||||
key = "f";
|
||||
desc = "Find File";
|
||||
action = ":lua Snacks.dashboard.pick('files')";
|
||||
section = "keys";
|
||||
gap = 1;
|
||||
padding = 1;
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "n";
|
||||
desc = "New File";
|
||||
action = ":ene | startinsert";
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "l";
|
||||
desc = "Live Grep";
|
||||
action = ":lua Snacks.dashboard.pick('live_grep')";
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "o";
|
||||
desc = "Old Files";
|
||||
action = ":lua Snacks.dashboard.pick('oldfiles')";
|
||||
}
|
||||
{
|
||||
icon = " ";
|
||||
key = "q";
|
||||
desc = "Quit";
|
||||
action = ":qa";
|
||||
title = theme.quote;
|
||||
align = "center";
|
||||
}
|
||||
];
|
||||
};
|
||||
sections = [
|
||||
{section = "header";}
|
||||
{
|
||||
section = "keys";
|
||||
gap = 1;
|
||||
padding = 1;
|
||||
}
|
||||
{
|
||||
title = theme.quote;
|
||||
align = "center";
|
||||
}
|
||||
];
|
||||
|
||||
extraConfigLua =
|
||||
# lua
|
||||
''
|
||||
local prev = { new_name = "", old_name = "" } -- Prevents duplicate events
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = "NvimTreeSetup",
|
||||
callback = function()
|
||||
local events = require("nvim-tree.api").events
|
||||
events.subscribe(events.Event.NodeRenamed, function(data)
|
||||
if prev.new_name ~= data.new_name or prev.old_name ~= data.old_name then
|
||||
data = data
|
||||
Snacks.rename.on_rename_file(data.old_name, data.new_name)
|
||||
end
|
||||
end)
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = "SnacksDashboardOpened",
|
||||
callback = function()
|
||||
if vim.bo.filetype == "snacks_dashboard" then
|
||||
vim.b.minitrailspace_disable = true
|
||||
vim.b.miniindentscope_disable = true
|
||||
end
|
||||
end,
|
||||
})
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
{
|
||||
imports = [./dashboard.nix];
|
||||
|
||||
plugins.snacks = {
|
||||
enable = true;
|
||||
settings = {
|
||||
@@ -11,35 +13,18 @@
|
||||
image.enabled = true;
|
||||
quickfile.enabled = true;
|
||||
rename.enabled = true;
|
||||
dashboard = import ./dashboard.nix;
|
||||
};
|
||||
};
|
||||
|
||||
extraConfigLua =
|
||||
extraConfigLuaPre =
|
||||
# lua
|
||||
''
|
||||
local prev = { new_name = "", old_name = "" } -- Prevents duplicate events
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = "NvimTreeSetup",
|
||||
callback = function()
|
||||
local events = require("nvim-tree.api").events
|
||||
events.subscribe(events.Event.NodeRenamed, function(data)
|
||||
if prev.new_name ~= data.new_name or prev.old_name ~= data.old_name then
|
||||
data = data
|
||||
Snacks.rename.on_rename_file(data.old_name, data.new_name)
|
||||
end
|
||||
end)
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = "SnacksDashboardOpened",
|
||||
callback = function()
|
||||
if vim.bo.filetype == "snacks_dashboard" then
|
||||
vim.b.minitrailspace_disable = true
|
||||
vim.b.miniindentscope_disable = true
|
||||
end
|
||||
end,
|
||||
})
|
||||
if vim.env.PROF then
|
||||
require("snacks.profiler").startup {
|
||||
startup = {
|
||||
event = "VimEnter",
|
||||
},
|
||||
}
|
||||
end
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
local wk = require "which-key"
|
||||
local gitsigns = require "gitsigns"
|
||||
local Terminal = require("toggleterm.terminal").Terminal
|
||||
|
||||
local set_key = {
|
||||
@@ -14,7 +13,7 @@ local set_key = {
|
||||
}
|
||||
|
||||
wk.add {
|
||||
set_key.cmd("e", require("nvim-tree.api").tree.toggle, "Files"),
|
||||
set_key.cmd("e", "NvimTreeToggle", "Files"),
|
||||
set_key.cmd("w", "w!", "Write buffer"),
|
||||
set_key.cmd("n", "ene | startinsert", "New buffer"),
|
||||
set_key.cmd("d", function()
|
||||
@@ -29,7 +28,7 @@ wk.add {
|
||||
|
||||
set_key.git_signs = function(key, action, desc)
|
||||
return set_key.cmd("g" .. key, function()
|
||||
gitsigns[action]()
|
||||
require("gitsigns")[action]()
|
||||
end, desc)
|
||||
end
|
||||
|
||||
@@ -64,14 +63,14 @@ wk.add {
|
||||
set_key.git_signs("hv", "preview_hunk", "Preview"),
|
||||
set_key.git_signs("hu", "undo_stage_hunk", "Undo Stage"),
|
||||
set_key.cmd("ghn", function()
|
||||
gitsigns.nav_hunk "next"
|
||||
require("gitsigns").nav_hunk "next"
|
||||
end, "Next"),
|
||||
set_key.cmd("ghp", function()
|
||||
gitsigns.nav_hunk "prev"
|
||||
require("gitsigns").nav_hunk "prev"
|
||||
end, "Previous"),
|
||||
set_key.git_signs("hd", "diffthis", "Diff this"),
|
||||
set_key.cmd("ghD", function()
|
||||
gitsigns.diffthis "~"
|
||||
require("gitsigns").diffthis "~"
|
||||
end, "Diff this"),
|
||||
}
|
||||
|
||||
@@ -172,9 +171,9 @@ wk.add {
|
||||
set_key.cmd("mv", "MarkdownPreviewToggle", "Browser preview"),
|
||||
|
||||
--- Snap (Silicon) --
|
||||
{ "<leader>S", group = "Snap(Silicon)" },
|
||||
set_key.cmd("Ss", require("silicon").file, "Save as file"),
|
||||
set_key.cmd("Sc", require("silicon").clip, "Copy to clipboard"),
|
||||
-- { "<leader>S", group = "Snap(Silicon)" },
|
||||
-- set_key.cmd("Ss", require("silicon").file, "Save as file"),
|
||||
-- set_key.cmd("Sc", require("silicon").clip, "Copy to clipboard"),
|
||||
|
||||
--- Latex (Vimtex) --
|
||||
{ "<leader>L", group = "Latex" },
|
||||
|
||||
@@ -27,6 +27,10 @@
|
||||
user = "git";
|
||||
identitiesOnly = true;
|
||||
};
|
||||
"lg" = {
|
||||
hostname = "192.168.178.160";
|
||||
user = "root";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-label/NIXBOOT";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0022" "dmask=0022"];
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-label/NIXBOOT";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0022" "dmask=0022"];
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
swapDevices = [];
|
||||
|
||||
Reference in New Issue
Block a user