Compare commits

...

18 Commits

Author SHA1 Message Date
03ef37c25b Add oil 2026-03-23 21:09:43 -04:00
42ab91df33 Update flake 2026-03-22 18:23:00 -04:00
95f49c0d05 Add pyright to lsp 2026-03-18 15:25:35 -04:00
afff0c28b2 Add nixd to lsp 2026-03-18 15:25:00 -04:00
f5ffc18de3 Add lightweight package 2026-01-05 22:56:55 -05:00
bdaf004472 Fix warnings from updating 2025-12-06 19:54:28 -05:00
e6ebf14016 Move to unstable nixpkgs only 2025-12-06 19:52:39 -05:00
90c7861da6 Update flake 2025-12-06 19:49:27 -05:00
6cd9476375 Allow navigation to previous tab from terminal 2025-09-25 21:31:47 -04:00
9d81be96db Change \t to enter terminal 2025-09-25 21:29:54 -04:00
2b3c07474a Don't start coq by default 2025-09-19 20:43:28 -04:00
1781b12fe0 Use unstable rust-analyzer
Fixes proc-macro version mismatch
2025-09-19 20:42:27 -04:00
b5e6c9a784 Ignore some common not interesting files in telescope 2025-09-19 20:41:55 -04:00
0056a90ec1 Stop highlighting searches when pressing escape
Also prevents toggling between tabs when pressing escape
2025-09-19 14:16:29 -04:00
bbfe9a3f84 Fix typing "#" moving to start of line 2025-09-19 14:16:03 -04:00
8a549152da Add gitsigns 2025-09-16 16:47:57 -04:00
f17931992e Add keybinding for Neogit 2025-09-04 21:33:22 -04:00
fb7d780956 Don't use gitignore for Telescope find_files 2025-09-04 21:32:55 -04:00
4 changed files with 118 additions and 120 deletions

View File

@@ -18,6 +18,7 @@ Color Scheme: [Tokyo Night](https://github.com/folke/tokyonight.nvim)<br>
[lualine](https://github.com/nvim-lualine/lualine.nvim)<br> [lualine](https://github.com/nvim-lualine/lualine.nvim)<br>
[neo-tree](https://github.com/nvim-neo-tree/neo-tree.nvim)<br> [neo-tree](https://github.com/nvim-neo-tree/neo-tree.nvim)<br>
[neogit](https://github.com/NeogitOrg/neogit)<br> [neogit](https://github.com/NeogitOrg/neogit)<br>
[gitsigns](https://github.com/lewis6991/gitsigns.nvim)<br>
[tiny-inline-diagnostic](https://github.com/rachartier/tiny-inline-diagnostic.nvim)<br> [tiny-inline-diagnostic](https://github.com/rachartier/tiny-inline-diagnostic.nvim)<br>
[coq_nvim](https://github.com/ms-jpq/coq_nvim)<br> [coq_nvim](https://github.com/ms-jpq/coq_nvim)<br>
[nvim-autopairs](https://github.com/windwp/nvim-autopairs)<br> [nvim-autopairs](https://github.com/windwp/nvim-autopairs)<br>
@@ -27,10 +28,12 @@ Color Scheme: [Tokyo Night](https://github.com/folke/tokyonight.nvim)<br>
[mkdnflow](https://github.com/jakewvincent/mkdnflow.nvim)<br> [mkdnflow](https://github.com/jakewvincent/mkdnflow.nvim)<br>
[hml](https://github.com/mawkler/hml.nvim)<br> [hml](https://github.com/mawkler/hml.nvim)<br>
[typst-preview](https://github.com/al-kot/typst-preview.nvim)<br> [typst-preview](https://github.com/al-kot/typst-preview.nvim)<br>
[Oil](https://github.com/stevearc/oil.nvim)<br>
### LSP ### LSP
[lspconfig](https://github.com/neovim/nvim-lspconfig/)<br> [lspconfig](https://github.com/neovim/nvim-lspconfig/)<br>
[typos-lsp](https://github.com/tekumara/typos-lsp)<br> [typos-lsp](https://github.com/tekumara/typos-lsp)<br>
[markdown_oxide](https://github.com/Feel-ix-343/markdown-oxide)<br> [markdown_oxide](https://github.com/Feel-ix-343/markdown-oxide)<br>
[ltex](https://valentjn.github.io/ltex/)<br> [ltex](https://valentjn.github.io/ltex/)<br>
[nixd](https://github.com/nix-community/nixd)<br>
[pyright](https://github.com/microsoft/pyright)<br>

View File

@@ -1,4 +1,4 @@
{ pkgs, inputs, ... }: { pkgs, lib, inputs, light ? false, ... }:
{ {
colorschemes.tokyonight.enable = true; colorschemes.tokyonight.enable = true;
@@ -18,6 +18,10 @@
cindent = true; cindent = true;
# Same as default, but without "0#,", which prevents typing "#"
# from going to the start of the line
cinkeys = "0{,0},0),0],:,!^F,o,O,e";
signcolumn = "yes"; signcolumn = "yes";
}; };
@@ -62,7 +66,17 @@
keymaps = { keymaps = {
"<C-f>" = "live_grep"; "<C-f>" = "live_grep";
"<C-p>" = "git_files"; "<C-p>" = "git_files";
"<C-o>" = "find_files"; "<C-o>" = "find_files no_ignore=true";
};
settings = {
defaults = {
file_ignore_patterns = [
"^.git/"
"^target/"
"^dist/"
];
};
}; };
extensions = { extensions = {
@@ -95,18 +109,22 @@
neo-tree = { neo-tree = {
enable = true; enable = true;
closeIfLastWindow = true; settings = {
filesystem = { close_if_last_window = true;
filteredItems = { filesystem = {
visible = true; filtered_items = {
hideDotfiles = false; visible = true;
hideGitignored = false; hide_dotfiles = false;
hide_gItignored = false;
};
}; };
}; };
}; };
neogit.enable = true; neogit.enable = true;
gitsigns.enable = true;
tiny-inline-diagnostic = { tiny-inline-diagnostic = {
enable = true; enable = true;
@@ -121,7 +139,6 @@
coq-nvim = { coq-nvim = {
enable = true; enable = true;
installArtifacts = true; installArtifacts = true;
settings.auto_start = "shut-up";
luaConfig.post = '' luaConfig.post = ''
vim.g.coq_settings = { vim.g.coq_settings = {
@@ -134,21 +151,38 @@
comment.enable = true; comment.enable = true;
sleuth.enable = true; sleuth.enable = true;
rustaceanvim.enable = true; oil = {
enable = true;
settings = {
default_file_explorer = false;
};
};
rustaceanvim = {
enable = !light;
settings = {
server = {
cmd = [ "${pkgs.rust-analyzer}/bin/rust-analyzer" ];
};
};
};
mkdnflow = { mkdnflow = {
enable = true; enable = true;
mappings = { settings = {
MkdnEnter = { mappings = {
key = "<CR>"; MkdnEnter = {
modes = [ "n" "v" "i" ]; key = "<CR>";
modes = [ "n" "v" "i" ];
};
}; };
}; };
}; };
lsp = { lsp = {
enable = true; enable = !light;
keymaps.diagnostic = { keymaps.diagnostic = {
"<leader>j" = "goto_next"; "<leader>j" = "goto_next";
@@ -166,6 +200,10 @@
enable = true; enable = true;
installGhc = false; installGhc = false;
}; };
pyright.enable = true;
nixd.enable = true;
}; };
}; };
}; };
@@ -176,12 +214,12 @@
src = inputs.hml; src = inputs.hml;
}) })
(pkgs.vimUtils.buildVimPlugin { (lib.mkIf (!light) (pkgs.vimUtils.buildVimPlugin {
name = "typst-preview"; name = "typst-preview";
src = inputs.typst-preview; src = inputs.typst-preview;
}) }))
pkgs.vimPlugins.haskell-tools-nvim (lib.mkIf (!light) pkgs.vimPlugins.haskell-tools-nvim)
]; ];
extraConfigLua = '' extraConfigLua = ''
@@ -197,7 +235,29 @@
poppler-utils # (pdfinfo) poppler-utils # (pdfinfo)
]; ];
autoCmd = [
{
# Reset cinkeys when editing c/c++ files
command = "setlocal cinkeys&";
pattern = [
"*.c"
"*.h"
"*.cpp"
"*.hpp"
];
event = [
"BufEnter"
"BufWinEnter"
];
}
];
keymaps = [ keymaps = [
{
action = "<Cmd>nohl<CR>";
key = "<Esc>";
mode = [ "n" ];
}
{ {
action = "<Cmd>Dashboard<CR>"; action = "<Cmd>Dashboard<CR>";
key = "<leader>d"; key = "<leader>d";
@@ -207,7 +267,15 @@
key = "<leader>f"; key = "<leader>f";
} }
{ {
action = "<Cmd>sp<CR><Cmd>wincmd j<CR><Cmd>term<CR>15<C-w>-i"; action = "<Cmd>Oil<CR>";
key = "<leader>g";
}
{
action = "<Cmd>Neogit<CR>";
key = "<C-g>";
}
{
action = "<Cmd>term<CR>i";
key = "<leader>t"; key = "<leader>t";
} }
{ {
@@ -244,6 +312,7 @@
{ {
action = "<C-\\><C-n><Cmd>tabp<CR>"; action = "<C-\\><C-n><Cmd>tabp<CR>";
key = "<C-[>"; key = "<C-[>";
mode = [ "t" ];
} }
{ {
action = "<Cmd>lua require(\"typst-preview\").start()<CR>"; action = "<Cmd>lua require(\"typst-preview\").start()<CR>";

113
flake.lock generated
View File

@@ -8,11 +8,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1754487366, "lastModified": 1769996383,
"narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=", "narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18", "rev": "57928607ea566b5db3ad13af0e57e921e6b12381",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -39,24 +39,6 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"hml": { "hml": {
"flake": false, "flake": false,
"locked": { "locked": {
@@ -73,46 +55,18 @@
"type": "github" "type": "github"
} }
}, },
"ixx": {
"inputs": {
"flake-utils": [
"nixvim",
"nuschtosSearch",
"flake-utils"
],
"nixpkgs": [
"nixvim",
"nuschtosSearch",
"nixpkgs"
]
},
"locked": {
"lastModified": 1754860581,
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
"owner": "NuschtOS",
"repo": "ixx",
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"ref": "v0.1.1",
"repo": "ixx",
"type": "github"
}
},
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1755704039, "lastModified": 1773821835,
"narHash": "sha256-gKlP0LbyJ3qX0KObfIWcp5nbuHSb5EHwIvU6UcNBg2A=", "narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9cb344e96d5b6918e94e1bca2d9f3ea1e9615545", "rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-25.05", "ref": "nixos-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@@ -123,15 +77,14 @@
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"nuschtosSearch": "nuschtosSearch", "systems": "systems_2"
"systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1755900473, "lastModified": 1772402258,
"narHash": "sha256-UxpKQvD3dTT4/ueJBDccmHeHfnuUD+864Mzu8GPJZig=", "narHash": "sha256-3DmCFOdmbkFML1/G9gj8Wb+rCCZFPOQtNoMCpqOF8SA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixvim", "repo": "nixvim",
"rev": "18a1b5126f917fbcd65397b9ee429387fdbd51a6", "rev": "21ae25e13b01d3b4cdc750b5f9e7bad68b150c10",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -140,29 +93,6 @@
"type": "github" "type": "github"
} }
}, },
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils_2",
"ixx": "ixx",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1755555503,
"narHash": "sha256-WiOO7GUOsJ4/DoMy2IC5InnqRDSo2U11la48vCCIjjY=",
"owner": "NuschtOS",
"repo": "search",
"rev": "6f3efef888b92e6520f10eae15b86ff537e1d2ea",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"repo": "search",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
@@ -202,29 +132,14 @@
"type": "github" "type": "github"
} }
}, },
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"typst-preview": { "typst-preview": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1755810917, "lastModified": 1765797220,
"narHash": "sha256-hE5HPsuskOSqJ1KYp9/eCL5K90fRhMBe6t+skr+wyrI=", "narHash": "sha256-/zrxxTsw1R2phmTgW8fD8UWaMEMxNsYA3TYbmWQRGDw=",
"owner": "al-kot", "owner": "al-kot",
"repo": "typst-preview.nvim", "repo": "typst-preview.nvim",
"rev": "8759307163ef59698ff443e3784ad6a7af4ea484", "rev": "59028097432682e8f619ed61b24333c6e5f79a97",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -1,6 +1,6 @@
{ {
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils"; flake-utils.url = "github:numtide/flake-utils";
@@ -35,6 +35,15 @@
module = nixvimModule; module = nixvimModule;
extraSpecialArgs = { extraSpecialArgs = {
inherit inputs; inherit inputs;
light = false;
};
};
nvim-light = nixvim.legacyPackages.${system}.makeNixvimWithModule {
module = nixvimModule;
extraSpecialArgs = {
inherit inputs;
light = true;
}; };
}; };
in in
@@ -45,6 +54,8 @@
packages.default = nvim; packages.default = nvim;
packages.light = nvim-light;
packages.neovide = pkgs.stdenv.mkDerivation { packages.neovide = pkgs.stdenv.mkDerivation {
name = "neovide"; name = "neovide";