This commit is contained in:
Varris 2023-05-21 02:35:32 +02:00
parent 7b982e991f
commit abebb119ae
8 changed files with 92 additions and 79 deletions

View File

@ -59,22 +59,6 @@
"type": "github"
}
},
"friendly-snippets": {
"flake": false,
"locked": {
"lastModified": 1684537978,
"narHash": "sha256-HxkNW8b/iG+hEaZmbpiwLbGUVRmR7FgE1PAJEHD3zes=",
"owner": "rafamadriz",
"repo": "friendly-snippets",
"rev": "f674dae71b9daf5ba4a4daf0734f7780417237b1",
"type": "github"
},
"original": {
"owner": "rafamadriz",
"repo": "friendly-snippets",
"type": "github"
}
},
"gamescope-git-src": {
"flake": false,
"locked": {
@ -354,7 +338,6 @@
"inputs": {
"catppuccin-hyprland": "catppuccin-hyprland",
"chaotic-nyx": "chaotic-nyx",
"friendly-snippets": "friendly-snippets",
"grub2-themes": "grub2-themes",
"gruvbox-kvantum": "gruvbox-kvantum",
"home-manager": "home-manager",

View File

@ -9,11 +9,6 @@
inputs.nixpkgs.follows = "nixpkgs";
};
friendly-snippets = {
url = "github:rafamadriz/friendly-snippets";
flake = false;
};
xorg-git = {
url = "gitlab:xorg/xserver?host=gitlab.freedesktop.org";
flake = false;

View File

@ -3,7 +3,7 @@
enable = true;
settings = {
plugins = "ftintitle fetchart embedart chroma edit replaygain";
plugins = "ftintitle fetchart embedart chroma edit replaygain badfiles fish";
directory = "/mnt/hdd/Music";
library = "/mnt/hdd/Music/library.db";

View File

@ -14,6 +14,9 @@
neo-tree-nvim
nvim-notify
which-key-nvim
nvim-surround
luasnip
dressing-nvim
telescope-nvim
telescope-fzf-native-nvim
@ -27,6 +30,8 @@
cmp-path
cmp-buffer
cmp-nvim-lsp
cmp_luasnip
friendly-snippets
];
extraLuaConfig = builtins.readFile ./init.lua;

View File

@ -16,27 +16,6 @@ vim.o.timeoutlen = 100
vim.wo.number = true
vim.wo.relativenumber = true
-- keymaps
vim.keymap.set("n", "<C-h>", "<C-w>h", { desc = "Go to left window" })
vim.keymap.set("n", "<C-j>", "<C-w>j", { desc = "Go to lower window" })
vim.keymap.set("n", "<C-k>", "<C-w>k", { desc = "Go to upper window" })
vim.keymap.set("n", "<C-l>", "<C-w>l", { desc = "Go to right window" })
vim.keymap.set("n", "<C-Up>", "<cmd>resize +2<cr>", { desc = "Increase window height" })
vim.keymap.set("n", "<C-Down>", "<cmd>resize -2<cr>", { desc = "Decrease window height" })
vim.keymap.set("n", "<C-Left>", "<cmd>vertical resize -2<cr>", { desc = "Decrease window width" })
vim.keymap.set("n", "<C-Right>", "<cmd>vertical resize +2<cr>", { desc = "Increase window width" })
vim.keymap.set("n", "n", "'Nn'[v:searchforward]", { expr = true, desc = "Next search result" })
vim.keymap.set("x", "n", "'Nn'[v:searchforward]", { expr = true, desc = "Next search result" })
vim.keymap.set("o", "n", "'Nn'[v:searchforward]", { expr = true, desc = "Next search result" })
vim.keymap.set("n", "N", "'nN'[v:searchforward]", { expr = true, desc = "Prev search result" })
vim.keymap.set("x", "N", "'nN'[v:searchforward]", { expr = true, desc = "Prev search result" })
vim.keymap.set("o", "N", "'nN'[v:searchforward]", { expr = true, desc = "Prev search result" })
vim.keymap.set({ "i", "n" }, "<esc>", "<cmd>noh<cr><esc>", { desc = "Escape and clear hlsearch" })
require("catppuccin").setup({
flavour = "macchiato",
transparent_background = true,
@ -45,10 +24,12 @@ vim.cmd.colorscheme "catppuccin"
require("lualine").setup({
options = {
theme = "catppuccin"
theme = "catppuccin",
}
})
require("dressing").setup()
require("bufferline").setup({
highlights = require("catppuccin.groups.integrations.bufferline").get(),
options = {
@ -105,7 +86,6 @@ require("neo-tree").setup({
}
},
})
vim.keymap.set("n", "<C-n>", "<cmd>NeoTreeFocusToggle<CR>")
require("nvim-treesitter.configs").setup({
highlight = { enable = true, },
@ -122,9 +102,15 @@ vim.keymap.set('n', '<leader>fc', ts_builtin.git_files, { desc = "Find Files (Gi
require("telescope").load_extension("fzf")
require('nvim-surround').setup()
local capabilities = require('cmp_nvim_lsp').default_capabilities()
local lspconfig = require("lspconfig")
lspconfig.rnix.setup {}
lspconfig.rnix.setup {
capabilities = capabilities
}
lspconfig.lua_ls.setup {
capabilities = capabilities,
settings = {
Lua = {
diagnostics = {
@ -138,15 +124,23 @@ lspconfig.lua_ls.setup {
}
lspconfig.clangd.setup {}
require("luasnip.loaders.from_vscode").lazy_load()
local has_words_before = function()
unpack = unpack or table.unpack
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
end
local cmp = require("cmp")
local lspkind = require("lspkind")
local luasnip = require("luasnip")
cmp.setup({
preselect = cmp.PreselectMode.None,
formatting = {
format = lspkind.cmp_format ({
mode = "symbol",
maxwidth = 50,
ellipsis_char = "...",
symbol_map = {
Text = "󰉿",
@ -175,10 +169,15 @@ cmp.setup({
Operator = "󰆕",
TypeParameter = ""
},
}),
},
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body)
end,
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
@ -188,6 +187,7 @@ cmp.setup({
{ name = "buffer" },
{ name = "path" },
{ name = "nvim_lsp" },
{ name = "luasnip" },
}),
mapping = cmp.mapping.preset.insert({
@ -196,13 +196,37 @@ cmp.setup({
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm({ select = false }),
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
-- You could replace the expand_or_jumpable() calls with expand_or_locally_jumpable()
-- they way you will only jump inside the snippet region
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif has_words_before() then
cmp.complete()
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, { "i", "s" }),
}),
})
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
cmp.event:on(
'confirm_done',
cmp_autopairs.on_confirm_done()
'confirm_done',
cmp_autopairs.on_confirm_done()
)
cmp.setup.cmdline(":", {
@ -219,3 +243,29 @@ cmp.setup.cmdline("/", {
{ name = "buffer" },
})
})
-- keymaps
vim.keymap.set("n", "<C-n>", "<cmd>NeoTreeFocusToggle<CR>")
vim.keymap.set("n", "<C-h>", "<C-w>h", { desc = "Go to left window" })
vim.keymap.set("n", "<C-j>", "<C-w>j", { desc = "Go to lower window" })
vim.keymap.set("n", "<C-k>", "<C-w>k", { desc = "Go to upper window" })
vim.keymap.set("n", "<C-l>", "<C-w>l", { desc = "Go to right window" })
vim.keymap.set("n", "<C-Up>", "<cmd>resize +2<cr>", { desc = "Increase window height" })
vim.keymap.set("n", "<C-Down>", "<cmd>resize -2<cr>", { desc = "Decrease window height" })
vim.keymap.set("n", "<C-Left>", "<cmd>vertical resize -2<cr>", { desc = "Decrease window width" })
vim.keymap.set("n", "<C-Right>", "<cmd>vertical resize +2<cr>", { desc = "Increase window width" })
vim.keymap.set("n", "n", "'Nn'[v:searchforward]", { expr = true, desc = "Next search result" })
vim.keymap.set("x", "n", "'Nn'[v:searchforward]", { expr = true, desc = "Next search result" })
vim.keymap.set("o", "n", "'Nn'[v:searchforward]", { expr = true, desc = "Next search result" })
vim.keymap.set("n", "N", "'nN'[v:searchforward]", { expr = true, desc = "Prev search result" })
vim.keymap.set("x", "N", "'nN'[v:searchforward]", { expr = true, desc = "Prev search result" })
vim.keymap.set("o", "N", "'nN'[v:searchforward]", { expr = true, desc = "Prev search result" })
vim.keymap.set({ "i", "n" }, "<esc>", "<cmd>noh<cr><esc>", { desc = "Escape and clear hlsearch" })
vim.keymap.set("n", "<S-h>", "<cmd>BufferLineCyclePrev<cr>", { desc = "Prev buffer" })
vim.keymap.set("n", "<S-l>", "<cmd>BufferLineCycleNext<cr>", { desc = "Next buffer" })
vim.keymap.set("n", "[b", "<cmd>BufferLineCyclePrev<cr>", { desc = "Prev buffer" })
vim.keymap.set("n", "]b", "<cmd>BufferLineCycleNext<cr>", { desc = "Next buffer" })

View File

@ -0,0 +1,6 @@
{ config, pkgs, ... }:
{
programs.tmux = {
enable = true;
};
}

View File

@ -1,26 +0,0 @@
{ config, lib, pkgs, ...}:
{
programs.zellij = {
enable = true;
enableFishIntegration = false;
settings = {
theme = "catppuccin-macchiato";
themes.catppuccin-macchiato = {
bg = "#5b6078";
fg = "#cad3f5";
red = "#ed8796";
green = "#a6da95";
blue = "#8aadf4";
yellow = "#eed49f";
magenta = "#f5bde6";
orange = "#f5a97f";
cyan = "#91d7e3";
black = "#1e2030";
white = "#cad3f5";
};
};
};
}

View File

@ -13,7 +13,7 @@
./configs/dircolors.nix
./configs/xdg-mime.nix
./configs/kvantum
./configs/zellij.nix
./configs/tmux
];
# Home Manager needs a bit of information about you and the