merge test

This commit is contained in:
2025-04-30 13:41:48 +02:00
25 changed files with 1381 additions and 167 deletions

View File

@@ -10,6 +10,10 @@ in {
nerd-fonts.jetbrains-mono
texliveFull
clang-tools
<<<<<<< HEAD
=======
vimPlugins.catppuccin-nvim
>>>>>>> test
];
programs.neovim = {
@@ -91,7 +95,11 @@ in {
neovim-remote
# Nix
nixd
<<<<<<< HEAD
nixfmt-classic
=======
nixfmt-rfc-style
>>>>>>> test
# Rust
rust-analyzer
# Bash

View File

@@ -0,0 +1,126 @@
{ pkgs, config, ... }:
let
mkLuaConfig = file: args:
builtins.readFile "${pkgs.substituteAll (args // { src = file; })}";
in {
home.sessionVariables = { EDITOR = "nvim"; };
home.packages = with pkgs; [
nerd-fonts.jetbrains-mono
texliveFull
clang-tools
<<<<<<< HEAD
=======
vimPlugins.catppuccin-nvim
>>>>>>> test
];
programs.neovim = {
enable = true;
vimAlias = true;
vimdiffAlias = true;
withNodeJs = true;
withPython3 = true;
plugins = (with pkgs.vimPlugins; [
bufferline-nvim
catppuccin-nvim
cmp-buffer
cmp-conjure
cmp-nvim-lua
cmp-nvim-lsp
cmp-path
cmp_luasnip
conform-nvim
conjure
dropbar-nvim
friendly-snippets
lazy-nvim
lean-nvim
leap-nvim
lspkind-nvim
lualine-lsp-progress
lualine-nvim
luasnip
markdown-preview-nvim
neoconf-nvim
neodev-nvim
neoscroll-nvim
nvim-autopairs
nvim-cmp
nvim-lspconfig
nvim-surround
nvim-tree-lua
nvim-treesitter-textobjects
nvim-ts-context-commentstring
nvim-web-devicons
oil-nvim
plenary-nvim
rainbow-delimiters-nvim
telescope-fzf-native-nvim
telescope-nvim
vimtex
which-key-nvim
]) ++ [
(pkgs.vimPlugins.nvim-treesitter.withPlugins
(plugins: pkgs.tree-sitter.allGrammars))
];
extraPackages = with pkgs; [
ripgrep
fd
codespell
prettierd
# Lua
lua-language-server
stylua
# Haskell
haskell-language-server
ghc
stack
cabal-install
haskellPackages.fourmolu
# Lean
lean
# Python
ruff
pyright
isort
python311Packages.autopep8
# LaTeX
texlab
xdotool
pplatex
neovim-remote
# Nix
nixd
<<<<<<< HEAD
nixfmt-classic
=======
nixfmt-rfc-style
>>>>>>> test
# Rust
rust-analyzer
# Bash
nodePackages.bash-language-server
shellcheck
shellharden
# sh
shfmt
# Scheme
chez
];
extraLuaConfig = mkLuaConfig ./init.lua {
path = "${pkgs.vimUtils.packDir
config.programs.neovim.finalPackage.passthru.packpathDirs}";
};
};
xdg.configFile."nvim/lua" = {
recursive = true;
source = ./lua;
};
}

View File

@@ -5,6 +5,7 @@ return {
name = "catppuccin",
priority = 1000,
config = function()
require("catppuccin").setup()
vim.cmd.colorscheme("catppuccin-mocha")
end,
opts = {

View File

@@ -29,7 +29,11 @@ return {
markdown = { "prettierd" },
json = { "prettierd" },
yaml = { "prettierd" },
<<<<<<< HEAD
nix = { "nixfmt-classic" },
=======
nix = { "nixfmt-rfc-style" },
>>>>>>> test
tex = { "latexindent" },
c = { "clang_format" },
cpp = { "clang_format" },

View File

@@ -0,0 +1,66 @@
return {
{
"stevearc/conform.nvim",
event = { "BufWritePre" },
cmd = "ConformInfo",
keys = {
{
"<leader>cF",
function()
require("conform").format({ formatters = { "injected" } })
end,
mode = { "n", "v" },
desc = "Format Injected Langs",
},
},
config = function()
require("conform").setup({
format_on_save = {
-- These options will be passed to conform.format()
timeout_ms = 500,
lsp_fallback = true,
},
formatters_by_ft = {
lua = { "stylua" },
python = { "isort", "autopep8" },
haskell = { "fourmolu" },
bash = { "shellcheck", "shellharden" },
sh = { "shfmt" },
markdown = { "prettierd" },
json = { "prettierd" },
yaml = { "prettierd" },
<<<<<<< HEAD
nix = { "nixfmt-classic" },
=======
nix = { "nixfmt-rfc-style" },
>>>>>>> test
tex = { "latexindent" },
c = { "clang_format" },
cpp = { "clang_format" },
["*"] = { "codespell" },
["_"] = { "trim_whitespace" },
},
formatters = {
stylua = {
inherit = true,
prepend_args = { "--indent-type", "Spaces", "--indent-width", "2" },
},
codespell = {
inherit = true,
prepend_args = { "-L", "launch" },
},
latexindent = {
inherit = true,
prepend_args = { "-y=\"defaultIndent:' '\"" },
},
clang_format = {
prepend_args = {
"--style=file:./.clang-format",
"--fallback-style=LLVM",
},
},
},
})
end,
},
}