From 89fa2eea02afc4cc46f3694dea51ee1f5773e3dc Mon Sep 17 00:00:00 2001 From: irl Date: Thu, 3 Jul 2025 21:23:14 +0100 Subject: [PATCH] feat: more useful nvim --- home/irl.nix | 46 ++++++++-------------------------------------- 1 file changed, 8 insertions(+), 38 deletions(-) diff --git a/home/irl.nix b/home/irl.nix index fe7490e..1f40356 100644 --- a/home/irl.nix +++ b/home/irl.nix @@ -20,6 +20,7 @@ in age fish neofetch + nil rust-analyzer starship tree @@ -95,46 +96,15 @@ in vimdiffAlias = true; plugins = with pkgs.vimPlugins; [ bufferline-nvim - nvim-lspconfig - nvim-treesitter.withAllGrammars + lualine-nvim + nvim-lspconfig + nvim-web-devicons ]; extraLuaConfig = '' - vim.lsp.config('rust_analyzer', { - settings = { - ['rust-analyzer'] = {}, - }, - }) - vim.api.nvim_create_autocmd('LspAttach', { - group = vim.api.nvim_create_augroup('my.lsp', {}), - callback = function(args) - local client = assert(vim.lsp.get_client_by_id(args.data.client_id)) - if client:supports_method('textDocument/implementation') then - -- Create a keymap for vim.lsp.buf.implementation ... - end - - -- Enable auto-completion. Note: Use CTRL-Y to select an item. |complete_CTRL-Y| - if client:supports_method('textDocument/completion') then - -- Optional: trigger autocompletion on EVERY keypress. May be slow! - -- local chars = {}; for i = 32, 126 do table.insert(chars, string.char(i)) end - -- client.server_capabilities.completionProvider.triggerCharacters = chars - - vim.lsp.completion.enable(true, client.id, args.buf, {autotrigger = true}) - end - - -- Auto-format ("lint") on save. - -- Usually not needed if server supports "textDocument/willSaveWaitUntil". - if not client:supports_method('textDocument/willSaveWaitUntil') - and client:supports_method('textDocument/formatting') then - vim.api.nvim_create_autocmd('BufWritePre', { - group = vim.api.nvim_create_augroup('my.lsp', {clear=false}), - buffer = args.buf, - callback = function() - vim.lsp.buf.format({ bufnr = args.buf, id = client.id, timeout_ms = 1000 }) - end, - }) - end - end, - }) + vim.opt.termguicolors = true + require("bufferline").setup{} + require('lualine').setup{} + vim.lsp.enable("nil") ''; }; programs.starship = {