feat(nvf): add initial configuration settings

This commit is contained in:
rafiq 2025-02-27 05:08:44 +08:00
parent b54b143766
commit 55b02cc258
2 changed files with 55 additions and 2 deletions

View file

@ -36,10 +36,10 @@
}; };
}; };
# NVF Configurations # Packages
packages.x86_64-linux.nvf = (inputs.nvf.lib.neovimConfiguration { packages.x86_64-linux.nvf = (inputs.nvf.lib.neovimConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux; pkgs = nixpkgs.legacyPackages.x86_64-linux;
modules = [ ( {pkgs, ...}: {} ) ]; modules = [ ./modules/nvf.nix ];
}).neovim; }).neovim;
}; };

53
modules/nvf.nix Normal file
View file

@ -0,0 +1,53 @@
{ pkgs, ... }:
{
config.vim = {
theme.enable = true;
options = {
# Indentation
expandtab = true;
shiftwidth = 2;
tabstop = 2;
shiftround = true;
smarttab = true;
smartindent = true;
# Visual Settings
cursorline = true;
# signcolumn = "no";
};
# Built-Ins
autocomplete.blink-cmp.enable = true;
autopairs.nvim-autopairs.enable = true;
binds.whichKey.enable = true;
comments.comment-nvim.enable = true;
# Languages
languages = {
markdown.enable = true;
};
languages.nix = {
enable = true;
format.enable = true;
lsp.enable = true;
treesitter.enable = true;
extraDiagnostics.enable = true;
};
# Lazy Loaded Plugins
lazy.plugins = {
# aerial.nvim = { package = aerial.nvim; after = "print('aerial loaded')"; };
};
# Load Plugins after Built-Ins
extraPlugins = with pkgs.vimPlugins; {
#harpoon = { package = harpoon; setup = "require('harpoon').setup {}"; };
};
# Add directly to init.lua
# Attribute names denote the section names
#luaConfigRC = { aquarium = "vim.cmd('colorscheme aquarium')"; };
};
}