Files
vim/config/default.nix
T
2026-01-21 21:36:22 +01:00

79 lines
1.7 KiB
Nix

{ pkgs, ... }:
{
# Import all your configuration modules here
# imports = [ ./bufferline.nix ];
# Extra packages available in Neovim's PATH
extraPackages = with pkgs; [
ripgrep
tree-sitter
];
clipboard.register = "unnamedplus";
colorschemes.nord.enable = true;
opts = {
number = true; # Show line numbers
relativenumber = true; # Show relative line numbers
shiftwidth = 2; # Tab width should be 2
};
plugins = {
web-devicons.enable = true;
lualine.enable = true;
oil.enable = true;
commentary.enable = true;
nvim-tree.enable = true;
treesitter.enable = true;
fugitive.enable = true;
vim-surround.enable = true;
which-key.enable = true;
openscad.enable = true;
lazygit.enable = true;
toggleterm.enable = true;
indent-blankline.enable = true;
illuminate.enable = true;
bufferline.enable = true;
direnv.enable = true;
fzf-lua.enable = true;
hop.enable = true;
codecompanion = { enable = true; };
# enable all auto completion
cmp.enable = true;
cmp.autoEnableSources = true;
# Good old Telescope
telescope = {
enable = true;
extensions = {
fzf-native = {
enable = true;
};
};
};
# Nix expressions in Neovim
nix.enable = true;
};
keymaps = [
{
key = "s";
action.__raw = ''
function()
-- type two letters and jump to that bigram anywhere
require("hop").hint_char2({
current_line_only = false,
multi_windows = false, -- set true if you want to hop across all windows
})
end
'';
options = { remap = true; };
}
];
}