Compare commits
6 commits
35b2144c68
...
50ba2969d1
Author | SHA1 | Date | |
---|---|---|---|
50ba2969d1 | |||
21070e6438 | |||
795d6ececd | |||
4dbec7bade | |||
0f5f81539b | |||
8d528f9814 |
10 changed files with 194 additions and 51 deletions
36
flake.lock
36
flake.lock
|
@ -521,6 +521,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"leap-spooky-nvim": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1687792124,
|
||||||
|
"narHash": "sha256-EPqbsG7KFHdnbW430+BSrPeOoVy99KtIC8OpFbV1ycw=",
|
||||||
|
"owner": "ggandor",
|
||||||
|
"repo": "leap-spooky.nvim",
|
||||||
|
"rev": "e003f2aa376190148f2e7731a60c89239335013c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "ggandor",
|
||||||
|
"repo": "leap-spooky.nvim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"lowdown-src": {
|
"lowdown-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -956,6 +972,7 @@
|
||||||
"hypr-contrib": "hypr-contrib",
|
"hypr-contrib": "hypr-contrib",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"hyprpaper": "hyprpaper",
|
"hyprpaper": "hyprpaper",
|
||||||
|
"leap-spooky-nvim": "leap-spooky-nvim",
|
||||||
"lspsaga-nvim": "lspsaga-nvim",
|
"lspsaga-nvim": "lspsaga-nvim",
|
||||||
"master": "master",
|
"master": "master",
|
||||||
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
||||||
|
@ -966,7 +983,8 @@
|
||||||
"pre-commit-hooks": "pre-commit-hooks",
|
"pre-commit-hooks": "pre-commit-hooks",
|
||||||
"rofi-wayland": "rofi-wayland",
|
"rofi-wayland": "rofi-wayland",
|
||||||
"smartcolumn-nvim": "smartcolumn-nvim",
|
"smartcolumn-nvim": "smartcolumn-nvim",
|
||||||
"stable": "stable"
|
"stable": "stable",
|
||||||
|
"telekasten-nvim": "telekasten-nvim"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-overlay": {
|
"rust-overlay": {
|
||||||
|
@ -1041,6 +1059,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"telekasten-nvim": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1689074017,
|
||||||
|
"narHash": "sha256-yBw0Ja9xBhHcEdzvKvg6LCDzmIgW9kg0XaXS7hcr958=",
|
||||||
|
"owner": "renerocksai",
|
||||||
|
"repo": "telekasten.nvim",
|
||||||
|
"rev": "4a5e57eee9c5154ed77423bb7fa6619fdb0784cd",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "renerocksai",
|
||||||
|
"repo": "telekasten.nvim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"wlroots": {
|
"wlroots": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
|
|
@ -50,6 +50,12 @@
|
||||||
smartcolumn-nvim.flake = false;
|
smartcolumn-nvim.flake = false;
|
||||||
smartcolumn-nvim.url = "github:m4xshen/smartcolumn.nvim";
|
smartcolumn-nvim.url = "github:m4xshen/smartcolumn.nvim";
|
||||||
|
|
||||||
|
leap-spooky-nvim.flake = false;
|
||||||
|
leap-spooky-nvim.url = "github:ggandor/leap-spooky.nvim";
|
||||||
|
|
||||||
|
telekasten-nvim.flake = false;
|
||||||
|
telekasten-nvim.url = "github:renerocksai/telekasten.nvim";
|
||||||
|
|
||||||
# Hyprland
|
# Hyprland
|
||||||
hypr-contrib.url = "github:hyprwm/contrib";
|
hypr-contrib.url = "github:hyprwm/contrib";
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
|
|
|
@ -14,6 +14,18 @@ let
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
nom-system-command = command: "${nom-system}/bin/nom-system && ${command}";
|
nom-system-command = command: "${nom-system}/bin/nom-system && ${command}";
|
||||||
|
|
||||||
|
f = pkgs.writeFishApplication {
|
||||||
|
name = "f";
|
||||||
|
runtimeInputs = with pkgs; [ fzf bat ];
|
||||||
|
text = ''
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
fzf --query "$argv" --multi --bind "enter:become($EDITOR {+})" --preview "bat --color=always --style=header,grid --line-range :500 {+}"
|
||||||
|
'';
|
||||||
|
completions = ''
|
||||||
|
complete -c f
|
||||||
|
'';
|
||||||
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
users.users.moritz = {
|
users.users.moritz = {
|
||||||
|
@ -45,8 +57,6 @@ in
|
||||||
mv = "mv -i";
|
mv = "mv -i";
|
||||||
cd = "z";
|
cd = "z";
|
||||||
|
|
||||||
f = ''fzf --multi --bind "enter:become($EDITOR {+})" --preview "bat --color=always --style=header,grid --line-range :500 {+}"'';
|
|
||||||
|
|
||||||
nixos-switch = nom-system-command "sudo nixos-rebuild switch --flake ~/.dotfiles";
|
nixos-switch = nom-system-command "sudo nixos-rebuild switch --flake ~/.dotfiles";
|
||||||
nixos-boot = nom-system-command "sudo nixos-rebuild boot --flake ~/.dotfiles";
|
nixos-boot = nom-system-command "sudo nixos-rebuild boot --flake ~/.dotfiles";
|
||||||
nixos-update = "pushd ~/.dotfiles && nix flake update && popd";
|
nixos-update = "pushd ~/.dotfiles && nix flake update && popd";
|
||||||
|
@ -118,6 +128,7 @@ in
|
||||||
viu
|
viu
|
||||||
wget
|
wget
|
||||||
vim
|
vim
|
||||||
|
f
|
||||||
];
|
];
|
||||||
|
|
||||||
fonts.fonts = with pkgs; [
|
fonts.fonts = with pkgs; [
|
||||||
|
|
|
@ -48,9 +48,9 @@ let
|
||||||
listToStringMultiLine id
|
listToStringMultiLine id
|
||||||
([
|
([
|
||||||
"dir = ${quote plugin}"
|
"dir = ${quote plugin}"
|
||||||
"name = ${quote plugin.name}"
|
"name = ${quote (getName plugin)}"
|
||||||
"lazy = ${boolToString lazy}"
|
|
||||||
]
|
]
|
||||||
|
++ (optional (!lazy) "lazy = ${boolToString lazy}")
|
||||||
++ (optional (!enabled) "enabled = ${boolToString enabled}")
|
++ (optional (!enabled) "enabled = ${boolToString enabled}")
|
||||||
++ (optional (dependencies != [ ]) "dependencies = ${listToStringMultiLine id (map lazySpecFromPlugin dependencies)}")
|
++ (optional (dependencies != [ ]) "dependencies = ${listToStringMultiLine id (map lazySpecFromPlugin dependencies)}")
|
||||||
++ (optional (init != null) "init = function(plugin)\n${toString init}\nend")
|
++ (optional (init != null) "init = function(plugin)\n${toString init}\nend")
|
||||||
|
@ -231,7 +231,6 @@ in
|
||||||
nil
|
nil
|
||||||
nixpkgs-fmt
|
nixpkgs-fmt
|
||||||
nodePackages.bash-language-server
|
nodePackages.bash-language-server
|
||||||
nodePackages.cspell
|
|
||||||
rustfmt
|
rustfmt
|
||||||
shellcheck
|
shellcheck
|
||||||
shfmt
|
shfmt
|
||||||
|
|
|
@ -200,8 +200,7 @@ with builtins;
|
||||||
conf = readFile ./smartcolumn-nvim.lua;
|
conf = readFile ./smartcolumn-nvim.lua;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = telescope-fzf-native-nvim;
|
plugin = telescope-nvim;
|
||||||
conf = readFile ./telescope-fzf-native-nvim.lua;
|
|
||||||
cmd = [ "Telescope" ];
|
cmd = [ "Telescope" ];
|
||||||
keys = [
|
keys = [
|
||||||
{ key = "<leader>ff"; cmd = "<cmd>Telescope find_files<cr>"; desc = "Find files"; }
|
{ key = "<leader>ff"; cmd = "<cmd>Telescope find_files<cr>"; desc = "Find files"; }
|
||||||
|
@ -220,13 +219,15 @@ with builtins;
|
||||||
{ key = "<leader>gs"; cmd = "<cmd>Telescope git_status<cr>"; desc = "Status"; }
|
{ key = "<leader>gs"; cmd = "<cmd>Telescope git_status<cr>"; desc = "Status"; }
|
||||||
];
|
];
|
||||||
dependencies = [
|
dependencies = [
|
||||||
{
|
{ plugin = plenary-nvim; }
|
||||||
plugin = telescope-nvim;
|
{ plugin = which-key-nvim; }
|
||||||
dependencies = [
|
];
|
||||||
{ plugin = plenary-nvim; }
|
}
|
||||||
{ plugin = which-key-nvim; }
|
{
|
||||||
];
|
plugin = telescope-fzf-native-nvim;
|
||||||
}
|
conf = readFile ./telescope-fzf-native-nvim.lua;
|
||||||
|
dependencies = [
|
||||||
|
{ plugin = telescope-nvim; }
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
|
@ -241,7 +242,65 @@ with builtins;
|
||||||
{
|
{
|
||||||
plugin = comment-nvim;
|
plugin = comment-nvim;
|
||||||
event = [ "BufReadPost" "BufNewFile" ];
|
event = [ "BufReadPost" "BufNewFile" ];
|
||||||
conf = "require('Comment').setup()";
|
conf = ''
|
||||||
|
require("Comment").setup()
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
{
|
||||||
|
plugin = leap-nvim;
|
||||||
|
lazy = false;
|
||||||
|
conf = ''
|
||||||
|
require("leap").add_default_mappings()
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
{
|
||||||
|
plugin = leap-spooky-nvim;
|
||||||
|
lazy = false;
|
||||||
|
conf = ''
|
||||||
|
require("leap-spooky").setup()
|
||||||
|
'';
|
||||||
|
dependencies = [
|
||||||
|
{
|
||||||
|
plugin = leap-nvim;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
plugin = telekasten-nvim;
|
||||||
|
dependencies = [
|
||||||
|
{ plugin = telescope-nvim; }
|
||||||
|
];
|
||||||
|
cmd = [ "Telekasten" ];
|
||||||
|
keys = [
|
||||||
|
{ key = "<leader>z"; cmd = "<cmd>Telekasten<cr>"; desc = "zettelkasten"; }
|
||||||
|
];
|
||||||
|
conf = ''
|
||||||
|
require("telekasten").setup({
|
||||||
|
home = vim.fn.expand("~/Nextcloud/Notes/zettelkasten"),
|
||||||
|
auto_set_filetype = false,
|
||||||
|
auto_set_syntax = false,
|
||||||
|
image_subdir = "assets",
|
||||||
|
})
|
||||||
|
vim.api.nvim_create_autocmd({ "BufReadPost", "BufNewFile" }, {
|
||||||
|
pattern = "*/zettelkasten/*",
|
||||||
|
callback = function(event)
|
||||||
|
vim.api.nvim_buf_set_keymap(0, "n", "<CR>", "", {
|
||||||
|
callback = function()
|
||||||
|
local current_word = vim.fn.expand("<cWORD>")
|
||||||
|
if vim.fn.match(current_word, "[[") == 0 then
|
||||||
|
require("telekasten").follow_link()
|
||||||
|
else
|
||||||
|
require("telekasten").toggle_todo()
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
{
|
||||||
|
plugin = markdown-preview-nvim;
|
||||||
|
lazy = false;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,48 @@
|
||||||
require("mini.align").setup()
|
require("mini.align").setup()
|
||||||
require("mini.surround").setup()
|
|
||||||
require("mini.move").setup()
|
require("mini.move").setup()
|
||||||
require("mini.pairs").setup()
|
require("mini.pairs").setup()
|
||||||
require("mini.starter").setup()
|
require("mini.starter").setup()
|
||||||
|
|
||||||
|
require("mini.surround").setup({
|
||||||
|
-- Add custom surroundings to be used on top of builtin ones. For more
|
||||||
|
-- information with examples, see `:h MiniSurround.config`.
|
||||||
|
custom_surroundings = nil,
|
||||||
|
|
||||||
|
-- Duration (in ms) of highlight when calling `MiniSurround.highlight()`
|
||||||
|
highlight_duration = 500,
|
||||||
|
|
||||||
|
-- Module mappings. Use `''` (empty string) to disable one.
|
||||||
|
mappings = {
|
||||||
|
add = "gSa", -- Add surrounding in Normal and Visual modes
|
||||||
|
delete = "gSd", -- Delete surrounding
|
||||||
|
find = "gSf", -- Find surrounding (to the right)
|
||||||
|
find_left = "gSF", -- Find surrounding (to the left)
|
||||||
|
highlight = "gSh", -- Highlight surrounding
|
||||||
|
replace = "gSr", -- Replace surrounding
|
||||||
|
update_n_lines = "gSn", -- Update `n_lines`
|
||||||
|
|
||||||
|
suffix_last = "l", -- Suffix to search with "prev" method
|
||||||
|
suffix_next = "n", -- Suffix to search with "next" method
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Number of lines within which surrounding is searched
|
||||||
|
n_lines = 20,
|
||||||
|
|
||||||
|
-- Whether to respect selection type:
|
||||||
|
-- - Place surroundings on separate lines in linewise mode.
|
||||||
|
-- - Place surroundings on each line in blockwise mode.
|
||||||
|
respect_selection_type = false,
|
||||||
|
|
||||||
|
-- How to search for surrounding (first inside current line, then inside
|
||||||
|
-- neighborhood). One of 'cover', 'cover_or_next', 'cover_or_prev',
|
||||||
|
-- 'cover_or_nearest', 'next', 'prev', 'nearest'. For more details,
|
||||||
|
-- see `:h MiniSurround.config`.
|
||||||
|
search_method = "cover",
|
||||||
|
|
||||||
|
-- Whether to disable showing non-error feedback
|
||||||
|
silent = false,
|
||||||
|
})
|
||||||
|
|
||||||
require("mini.tabline").setup()
|
require("mini.tabline").setup()
|
||||||
local tabline_current = vim.api.nvim_get_hl(0, { name = "MiniTablineCurrent" })
|
local tabline_current = vim.api.nvim_get_hl(0, { name = "MiniTablineCurrent" })
|
||||||
vim.api.nvim_set_hl(0, "MiniTablineCurrent", {
|
vim.api.nvim_set_hl(0, "MiniTablineCurrent", {
|
||||||
|
|
|
@ -3,14 +3,12 @@ local null_ls = require("null-ls")
|
||||||
null_ls.setup({
|
null_ls.setup({
|
||||||
sources = {
|
sources = {
|
||||||
-- Code actions
|
-- Code actions
|
||||||
null_ls.builtins.code_actions.cspell,
|
|
||||||
null_ls.builtins.code_actions.gitsigns,
|
null_ls.builtins.code_actions.gitsigns,
|
||||||
null_ls.builtins.code_actions.shellcheck,
|
null_ls.builtins.code_actions.shellcheck,
|
||||||
null_ls.builtins.code_actions.statix,
|
null_ls.builtins.code_actions.statix,
|
||||||
-- Completion
|
-- Completion
|
||||||
null_ls.builtins.completion.spell,
|
null_ls.builtins.completion.spell,
|
||||||
-- Diagnostics
|
-- Diagnostics
|
||||||
null_ls.builtins.diagnostics.cspell,
|
|
||||||
null_ls.builtins.diagnostics.deadnix,
|
null_ls.builtins.diagnostics.deadnix,
|
||||||
null_ls.builtins.diagnostics.shellcheck,
|
null_ls.builtins.diagnostics.shellcheck,
|
||||||
null_ls.builtins.diagnostics.statix,
|
null_ls.builtins.diagnostics.statix,
|
||||||
|
@ -18,7 +16,6 @@ null_ls.setup({
|
||||||
})
|
})
|
||||||
|
|
||||||
-- disable (c)spell initially
|
-- disable (c)spell initially
|
||||||
null_ls.disable("cspell")
|
|
||||||
null_ls.disable("spell")
|
null_ls.disable("spell")
|
||||||
|
|
||||||
-- make sources toggle able
|
-- make sources toggle able
|
||||||
|
@ -31,11 +28,5 @@ require("which-key").register({
|
||||||
end,
|
end,
|
||||||
"spell",
|
"spell",
|
||||||
},
|
},
|
||||||
S = {
|
|
||||||
function()
|
|
||||||
null_ls.toggle("cspell")
|
|
||||||
end,
|
|
||||||
"cspell",
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
}, { prefix = "<leader>t" })
|
}, { prefix = "<leader>t" })
|
||||||
|
|
|
@ -4,30 +4,6 @@ with lib;
|
||||||
let
|
let
|
||||||
cfg = config.my.programs.tmux;
|
cfg = config.my.programs.tmux;
|
||||||
|
|
||||||
fzf1 = pkgs.writeShellApplication {
|
|
||||||
name = "fzf1";
|
|
||||||
runtimeInputs = with pkgs; [ coreutils fzf ];
|
|
||||||
text = ''
|
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
options=$(fzf --filter "''$*" < /dev/stdin)
|
|
||||||
|
|
||||||
if [[ -z $options ]]; then
|
|
||||||
exit 1
|
|
||||||
elif [[ $(wc -l <<< "$options") -eq 1 ]]; then
|
|
||||||
selected="$options"
|
|
||||||
else
|
|
||||||
selected=$(echo "$options" | fzf --query="$*")
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -z $selected ]]; then
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "$selected"
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
tmux-switch = pkgs.writeShellApplication {
|
tmux-switch = pkgs.writeShellApplication {
|
||||||
name = "tmux-switch";
|
name = "tmux-switch";
|
||||||
runtimeInputs = with pkgs; [ tmux ];
|
runtimeInputs = with pkgs; [ tmux ];
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ inputs, lib, ... }:
|
{ inputs, lib, ... }:
|
||||||
|
|
||||||
_: prev:
|
final: prev:
|
||||||
{
|
{
|
||||||
agenix = inputs.agenix.packages.${prev.system}.default;
|
agenix = inputs.agenix.packages.${prev.system}.default;
|
||||||
hyprpaper = inputs.hyprpaper.packages.${prev.system}.default;
|
hyprpaper = inputs.hyprpaper.packages.${prev.system}.default;
|
||||||
|
@ -10,4 +10,20 @@ _: prev:
|
||||||
src = inputs.rofi-wayland;
|
src = inputs.rofi-wayland;
|
||||||
version = lib.my.mkVersionInput inputs.rofi-wayland;
|
version = lib.my.mkVersionInput inputs.rofi-wayland;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
fzf1 = final.writeShellApplication {
|
||||||
|
name = "fzf1";
|
||||||
|
runtimeInputs = with final; [ coreutils fzf fd ];
|
||||||
|
text = ''
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
selected=$(fzf --query="$*" -1 < /dev/stdin)
|
||||||
|
|
||||||
|
if [[ -z $selected ]]; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "$selected"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,5 +31,17 @@ with lib.my;
|
||||||
version = mkVersionInput inputs.cmp-async-path;
|
version = mkVersionInput inputs.cmp-async-path;
|
||||||
src = inputs.cmp-async-path;
|
src = inputs.cmp-async-path;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
leap-spooky-nvim = prev.vimUtils.buildVimPluginFrom2Nix {
|
||||||
|
pname = "leap-spooky-nvim";
|
||||||
|
version = mkVersionInput inputs.leap-spooky-nvim;
|
||||||
|
src = inputs.leap-spooky-nvim;
|
||||||
|
};
|
||||||
|
|
||||||
|
telekasten-nvim = prev.vimUtils.buildVimPluginFrom2Nix {
|
||||||
|
pname = "telekasten-nvim";
|
||||||
|
version = mkVersionInput inputs.telekasten-nvim;
|
||||||
|
src = inputs.telekasten-nvim;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue