little tweaks, neovim lsp
This commit is contained in:
parent
a7e35b5db6
commit
6225a0b19b
8 changed files with 49 additions and 119 deletions
24
flake.lock
generated
24
flake.lock
generated
|
|
@ -28,11 +28,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1765384171,
|
||||
"narHash": "sha256-FuFtkJrW1Z7u+3lhzPRau69E0CNjADku1mLQQflUORo=",
|
||||
"lastModified": 1765979862,
|
||||
"narHash": "sha256-/r9/1KamvbHJx6I40H4HsSXnEcBAkj46ZwibhBx9kg0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "44777152652bc9eacf8876976fa72cc77ca8b9d8",
|
||||
"rev": "d3135ab747fd9dac250ffb90b4a7e80634eacbe9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -44,11 +44,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1765311797,
|
||||
"narHash": "sha256-mSD5Ob7a+T2RNjvPvOA1dkJHGVrNVl8ZOrAwBjKBDQo=",
|
||||
"lastModified": 1765838191,
|
||||
"narHash": "sha256-m5KWt1nOm76ILk/JSCxBM4MfK3rYY7Wq9/TZIIeGnT8=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "09eb77e94fa25202af8f3e81ddc7353d9970ac1b",
|
||||
"rev": "c6f52ebd45e5925c188d1a20119978aa4ffd5ef6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -60,11 +60,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1765186076,
|
||||
"narHash": "sha256-hM20uyap1a0M9d344I692r+ik4gTMyj60cQWO+hAYP8=",
|
||||
"lastModified": 1765779637,
|
||||
"narHash": "sha256-KJ2wa/BLSrTqDjbfyNx70ov/HdgNBCBBSQP3BIzKnv4=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
|
||||
"rev": "1306659b587dc277866c7b69eb97e5f07864d8c4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -80,11 +80,11 @@
|
|||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1765583185,
|
||||
"narHash": "sha256-v1WcrCvPJXjDwQTbWCuPnK+iCWhxNSa1z7MJAHF2+jw=",
|
||||
"lastModified": 1766058243,
|
||||
"narHash": "sha256-lGN5FrjWDM3OaRI0J5N1uBoCLL/prKXemUzpSn7BiwQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nur",
|
||||
"rev": "65ea83daeb5af2b16e64d17820625db7ed5e8268",
|
||||
"rev": "ae427c51dbb9d49ce1b47086a7db9d35e696471f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
|
|
@ -19,7 +19,11 @@
|
|||
set -gx EDITOR "nvim"
|
||||
set -gx VISUAL "nvim"
|
||||
|
||||
function fish_greeting; end
|
||||
function fish_greeting;
|
||||
echo (set_color magenta)fish $version(set_color normal)
|
||||
end
|
||||
|
||||
fzf --fish | source
|
||||
|
||||
function startrloft --description 'Starts R with custom environment'
|
||||
set -lx R_ENVIRON_USER "~/.config/rloft/RLoft_environ"
|
||||
|
|
|
|||
|
|
@ -7,11 +7,11 @@
|
|||
|
||||
main = {
|
||||
shell = "${pkgs.fish}/bin/fish -c 'tmux attach'";
|
||||
pad = "18x18";
|
||||
pad = "34x34";
|
||||
# font = "JetBrains Mono:size=16";
|
||||
font = "Adwaita Mono:size=16";
|
||||
font = "Adwaita Mono:size=17";
|
||||
initial-window-mode = "maximized";
|
||||
line-height = "20";
|
||||
# line-height = "20";
|
||||
};
|
||||
|
||||
mouse.hide-when-typing = "yes";
|
||||
|
|
|
|||
|
|
@ -2,16 +2,22 @@
|
|||
|
||||
{
|
||||
imports = [ ./khard-dump.nix ];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
nodePackages.typescript-language-server
|
||||
astro-language-server
|
||||
marksman
|
||||
nil
|
||||
typescript-language-server
|
||||
];
|
||||
|
||||
programs.neovim = {
|
||||
extraConfig = builtins.readFile ./config.vim;
|
||||
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
plugins = with pkgs.vimPlugins;
|
||||
|
||||
extraConfig = builtins.readFile ./config.vim;
|
||||
|
||||
plugins = with pkgs.vimPlugins;
|
||||
let
|
||||
woof = pkgs.vimUtils.buildVimPlugin {
|
||||
name = "woof.vim";
|
||||
|
|
@ -24,25 +30,22 @@
|
|||
in
|
||||
|
||||
[
|
||||
{
|
||||
plugin = woof;
|
||||
config = ''
|
||||
let maplocalleader="\\"
|
||||
let mapleader=" "
|
||||
'';
|
||||
}
|
||||
woof
|
||||
|
||||
# cmp-nvim-lsp
|
||||
# cmp-buffer
|
||||
# cmp-emoji
|
||||
# cmp-path
|
||||
# cmp-cmdline
|
||||
# cmp-nvim-ultisnips
|
||||
# nvim-cmp
|
||||
|
||||
cmp-nvim-lsp
|
||||
cmp-buffer
|
||||
cmp-emoji
|
||||
cmp-path
|
||||
cmp-cmdline
|
||||
cmp-nvim-ultisnips
|
||||
nvim-cmp
|
||||
{
|
||||
plugin = nvim-lspconfig;
|
||||
config = builtins.readFile ./lsp.vim;
|
||||
type = "lua";
|
||||
config = builtins.readFile ./lsp.lua;
|
||||
}
|
||||
|
||||
{
|
||||
plugin = fzf-vim;
|
||||
config = ''
|
||||
|
|
|
|||
6
home/nvim/lsp.lua
Normal file
6
home/nvim/lsp.lua
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
vim.lsp.enable('astro')
|
||||
vim.lsp.enable('marksman')
|
||||
vim.lsp.enable('nil_ls')
|
||||
vim.lsp.enable('r_language_server')
|
||||
vim.lsp.enable('texlab')
|
||||
vim.lsp.enable('ts_ls')
|
||||
|
|
@ -1,84 +0,0 @@
|
|||
lua <<EOF
|
||||
|
||||
local cmp = require('cmp')
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
vim.fn["UltiSnips#Anon"](args.body)
|
||||
end,
|
||||
},
|
||||
performance = {
|
||||
debounce = 500,
|
||||
throttle = 500,
|
||||
},
|
||||
window = {
|
||||
documentation = cmp.config.window.bordered(),
|
||||
completion = cmp.config.window.bordered(),
|
||||
},
|
||||
mapping = {
|
||||
['<C-p>'] = cmp.mapping.select_prev_item(),
|
||||
['<C-n>'] = cmp.mapping.select_next_item(),
|
||||
['<C-g>'] = cmp.mapping.abort(),
|
||||
-- ['<Tab>'] = cmp.mapping.confirm({ select = true }),
|
||||
['<Cr>'] = cmp.mapping.confirm({ select = false }),
|
||||
['<C-d>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||
},
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'emoji' },
|
||||
}, {
|
||||
{ name = 'buffer', option = { keyword_pattern = [[\k\+]]}},
|
||||
})
|
||||
})
|
||||
|
||||
cmp.setup.filetype('gitcommit', {
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'cmp_git' },
|
||||
}, {
|
||||
{ name = 'buffer' },
|
||||
})
|
||||
})
|
||||
|
||||
cmp.setup.cmdline({ '/', '?' }, {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
{ name = 'buffer' }
|
||||
}
|
||||
})
|
||||
|
||||
cmp.setup.cmdline(':', {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources( {
|
||||
{ name = 'cmdline' }
|
||||
})
|
||||
})
|
||||
|
||||
local on_attach = function(_, _)
|
||||
vim.keymap.set('n', '<leader>rn', vim.lsp.buf.rename, {})
|
||||
vim.keymap.set('n', '<leader>ca', vim.lsp.buf.code_action, {})
|
||||
vim.keymap.set('n', '<leader>f', vim.lsp.buf.format, {})
|
||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, {})
|
||||
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, {})
|
||||
vim.keymap.set('n', 'gr', vim.lsp.buf.references, {})
|
||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, {})
|
||||
vim.keymap.set('n', '<leader>e', vim.diagnostic.open_float, {})
|
||||
end
|
||||
|
||||
-- this interferes with cool vim surround stuff
|
||||
vim.keymap.del('i', '<C-s>', {})
|
||||
|
||||
local nvim_lsp = require('lspconfig')
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
local servers = { "r_language_server", "ts_ls", "astro", "texlab", "marksman" }
|
||||
for _, lsp in ipairs(servers) do
|
||||
nvim_lsp[lsp].setup {
|
||||
on_attach = on_attach,
|
||||
flags = {
|
||||
debounce_text_changes = 1000,
|
||||
},
|
||||
capabilities = capabilities
|
||||
}
|
||||
end
|
||||
EOF
|
||||
|
|
@ -24,6 +24,6 @@
|
|||
];
|
||||
|
||||
services.gnome.gnome-browser-connector.enable = true;
|
||||
services.gnome.gnome-keyring.enable = lib.mkForce false;
|
||||
# services.gnome.gnome-keyring.enable = lib.mkForce false;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
services.flaresolverr.enable = true;
|
||||
services.prowlarr.enable = true;
|
||||
services.bazarr.enable = true;
|
||||
services.lidarr.enable = true;
|
||||
|
||||
users.groups.media = {};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue