Compare commits

...

6 Commits

Author SHA1 Message Date
lol3rrr
2e83ebe012 Get started on trying nix 2026-05-09 02:10:48 +02:00
lol3rrr
897d45711c Add basic clangd 2026-05-09 00:40:45 +02:00
Lol3rrr
44c9a747e7 Add lsp for java 2026-04-29 11:47:40 +02:00
Lol3rrr
84f4c6956e Add lean 2026-04-29 11:21:52 +02:00
Lol3rrr
0539ced3b3 Update lazylock 2026-04-29 11:21:22 +02:00
lol3rrr
74260b1813 Add lean and ruby lsp 2026-04-27 22:58:45 +02:00
9 changed files with 164 additions and 42 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
result

27
flake.lock generated Normal file
View File

@@ -0,0 +1,27 @@
{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1777954456,
"narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

22
flake.nix Normal file
View File

@@ -0,0 +1,22 @@
{
description = "A flake for my entire neovim configuration and setup";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
};
outputs = { self, nixpkgs }:
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in
{
packages.${system}.default = pkgs.neovim;
devShells.${system}.default = pkgs.mkShell {
packages = [
pkgs.neovim
];
};
};
}

View File

@@ -50,44 +50,48 @@ vim.lsp.enable('tsserver')
-- }, -- },
-- }, -- },
--}) --})
vim.lsp.enable('ruby-lsp')
vim.lsp.enable('java-lsp')
vim.lsp.enable('clangd-lsp')
-- Setup Treesitter -- Setup Treesitter
require'nvim-treesitter'.setup { require'nvim-treesitter'.setup {
-- Directory to install parsers and queries to (prepended to `runtimepath` to have priority) -- Directory to install parsers and queries to (prepended to `runtimepath` to have priority)
install_dir = vim.fn.stdpath('data') .. '/site' install_dir = vim.fn.stdpath('data') .. '/site'
} }
require'nvim-treesitter'.install {
"bash", --require'nvim-treesitter'.install {
"c", -- "bash",
"diff", -- "c",
"html", -- "diff",
"hcl", -- "html",
"javascript", -- "hcl",
"jsdoc", -- "javascript",
"json", -- "jsdoc",
--"jsonc", -- "json",
"lua", -- --"jsonc",
"luadoc", -- "lua",
"luap", -- "luadoc",
"markdown", -- "luap",
"markdown_inline", -- "markdown",
"python", -- "markdown_inline",
"query", -- "python",
"regex", -- "query",
"toml", -- "regex",
"tsx", -- "toml",
"typescript", -- "tsx",
"terraform", -- "typescript",
"vim", -- "terraform",
"vimdoc", -- "vim",
"xml", -- "vimdoc",
"yaml", -- "xml",
"rust", -- "yaml",
"toml", -- "rust",
"ron", -- "toml",
"hcl", -- "ron",
"terraform" -- "hcl",
} -- "terraform"
-- }
vim.diagnostic.config({ virtual_text = true }) vim.diagnostic.config({ virtual_text = true })

View File

@@ -1,18 +1,19 @@
{ {
"catppuccin": { "branch": "main", "commit": "beaf41a30c26fd7d6c386d383155cbd65dd554cd" }, "catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" },
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" }, "cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" }, "cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
"crates.nvim": { "branch": "main", "commit": "ac9fa498a9edb96dc3056724ff69d5f40b898453" }, "crates.nvim": { "branch": "main", "commit": "694357861ec9ebf12475ddcdd04ea45a0923c32d" },
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
"neo-tree.nvim": { "branch": "v3.x", "commit": "f3df514fff2bdd4318127c40470984137f87b62e" }, "lean.nvim": { "branch": "main", "commit": "75b7822d565054606af84fa61771eb0030e2ceec" },
"nightfly": { "branch": "master", "commit": "3b48dc0c5921f899aeb1e6e61b77b9345888a2f7" }, "neo-tree.nvim": { "branch": "v3.x", "commit": "84c75e7a7e443586f60508d12fc50f90d9aee14e" },
"nightfly": { "branch": "master", "commit": "4980ccc6de5f361fc9da116240ce7592e7d9a53a" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"nvim-cmp": { "branch": "main", "commit": "da88697d7f45d16852c6b2769dc52387d1ddc45f" }, "nvim-cmp": { "branch": "main", "commit": "a1d504892f2bc56c2e79b65c6faded2fd21f3eca" },
"nvim-lspconfig": { "branch": "master", "commit": "66fd02ad1c7ea31616d3ca678fa04e6d0b360824" }, "nvim-lspconfig": { "branch": "master", "commit": "451d4ef9abd4f0f08e379ef0d55d1c391b6125a7" },
"nvim-treesitter": { "branch": "main", "commit": "45a07f869b0cffba342276f2c77ba7c116d35db8" }, "nvim-treesitter": { "branch": "master", "commit": "cf12346a3414fa1b06af75c79faebe7f76df080a" },
"nvim-web-devicons": { "branch": "master", "commit": "746ffbb17975ebd6c40142362eee1b0249969c5c" }, "nvim-web-devicons": { "branch": "master", "commit": "4fc505ac7bd7692824a142e96e5f529c133862f8" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
"rustaceanvim": { "branch": "master", "commit": "88575b98bb9937fb9983ddec5e532b67e75ce677" }, "rustaceanvim": { "branch": "master", "commit": "88575b98bb9937fb9983ddec5e532b67e75ce677" },
"tokyonight.nvim": { "branch": "main", "commit": "5da1b76e64daf4c5d410f06bcb6b9cb640da7dfd" } "tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" }
} }

25
lsp/clangd-lsp.lua Normal file
View File

@@ -0,0 +1,25 @@
return {
filetypes = { "c", "cpp", "h" },
cmd = { "clangd-18", '--background-index', '--clang-tidy', '--log=verbose',
"--header-insertion=iwyu",
"--completion-style=detailed",
"--function-arg-placeholders",
"--fallback-style=llvm",
},
root_markers = {
"compile_commands.json",
"compile_flags.txt",
"configure.ac", -- AutoTools
"Makefile",
"configure.ac",
"configure.in",
"config.h.in",
"meson.build",
"meson_options.txt",
"build.ninja",
".git",
},
init_options = {
clangdFileStatus = true,
},
}

7
lsp/java-lsp.lua Normal file
View File

@@ -0,0 +1,7 @@
-- Install jdtls by hand, then use this
-- https://github.com/eclipse-jdtls/eclipse.jdt.ls
return {
filetypes = { "java" },
cmd = { "jdtls" },
root_markers = { ".git" },
}

13
lsp/ruby-lsp.lua Normal file
View File

@@ -0,0 +1,13 @@
return {
filetypes = { "ruby" },
cmd = { "ruby-lsp" }, -- or { "bundle", "exec", "ruby-lsp" },
root_markers = { "Gemfile", ".git" },
init_options = {
formatter = 'standard',
linters = { 'standard' },
},
}

22
lua/plugins/lean.lua Normal file
View File

@@ -0,0 +1,22 @@
return {{
'Julian/lean.nvim',
event = { 'BufReadPre *.lean', 'BufNewFile *.lean' },
dependencies = {
'nvim-lua/plenary.nvim',
-- optional dependencies:
-- a completion engine
-- hrsh7th/nvim-cmp or Saghen/blink.cmp are popular choices
-- 'nvim-telescope/telescope.nvim', -- for 2 Lean-specific pickers
-- 'andymass/vim-matchup', -- for enhanced % motion behavior
-- 'andrewradev/switch.vim', -- for switch support
-- 'tomtom/tcomment_vim', -- for commenting
},
---@type lean.Config
opts = { -- see below for full configuration options
mappings = true,
}
}}