mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2026-10-03 12:11:51 +00:00
feat: update nvim config
This commit is contained in:
@@ -14,6 +14,7 @@ in
|
||||
"buffers"
|
||||
"curdir"
|
||||
"folds"
|
||||
"globals"
|
||||
"help"
|
||||
"tabpages"
|
||||
"winsize"
|
||||
@@ -34,10 +35,6 @@ in
|
||||
};
|
||||
};
|
||||
lz-n.enable = true;
|
||||
neo-tree.lazyLoad = {
|
||||
enable = true;
|
||||
settings.cmd = "Neotree";
|
||||
};
|
||||
fidget.lazyLoad = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
{ lib, config, ... }:
|
||||
let
|
||||
cfg = config.presets.base.tabs;
|
||||
in
|
||||
{
|
||||
options.presets.base.tabs = {
|
||||
enable = lib.mkEnableOption "Tabs";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
keymaps = [
|
||||
{
|
||||
key = "<A-f>";
|
||||
action = # vim
|
||||
"<cmd>BufferPrevious<CR>";
|
||||
options.desc = "Navigate Buffer Left";
|
||||
}
|
||||
{
|
||||
key = "<A-h>";
|
||||
action = # vim
|
||||
"<cmd>BufferNext<CR>";
|
||||
options.desc = "Navigate Buffer Right";
|
||||
}
|
||||
{
|
||||
key = "<A-F>";
|
||||
action = # vim
|
||||
"<cmd>BufferMovePrevious<CR>";
|
||||
options.desc = "Move Buffer Left";
|
||||
}
|
||||
{
|
||||
key = "<A-H>";
|
||||
action = # vim
|
||||
"<cmd>BufferMoveNext<CR>";
|
||||
options.desc = "Move Buffer Right";
|
||||
}
|
||||
{
|
||||
key = "<A-p>";
|
||||
action = # vim
|
||||
"<cmd>BufferPin<CR>";
|
||||
options.desc = "Pin Buffer";
|
||||
}
|
||||
{
|
||||
key = "<A-c>";
|
||||
action = # vim
|
||||
"<cmd>BufferClose<CR>";
|
||||
options.desc = "Close Buffer";
|
||||
}
|
||||
{
|
||||
key = "<A-C>";
|
||||
action = # vim
|
||||
"<cmd>BufferRestore<CR>";
|
||||
options.desc = "Close Buffer";
|
||||
}
|
||||
{
|
||||
key = "gb";
|
||||
action = # vim
|
||||
"<cmd>BufferPick<CR>";
|
||||
options.desc = "Pick Buffer";
|
||||
}
|
||||
];
|
||||
plugins = {
|
||||
barbar = {
|
||||
enable = true;
|
||||
settings = {
|
||||
highlight_inactive_file_icons = true;
|
||||
icons = {
|
||||
button = "";
|
||||
separator = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
modified.button = "";
|
||||
separator_at_end = false;
|
||||
pinned = {
|
||||
button = "";
|
||||
filename = true;
|
||||
};
|
||||
current = {
|
||||
filetype.custom_colors = true;
|
||||
separator = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
};
|
||||
inactive = {
|
||||
separator = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
minimum_padding = 1;
|
||||
maximum_padding = 1;
|
||||
letters = "etarfkcdmhsunobwgiyzqxvplj.,-ETARFKCDMHSUNOBWGIYZQXVPLJ";
|
||||
};
|
||||
};
|
||||
/*
|
||||
scope = {
|
||||
enable = true;
|
||||
settings.hooks = {
|
||||
pre_tab_leave.__raw = ''
|
||||
function()
|
||||
vim.api.nvim_exec_autocmds('User', {pattern = 'ScopeTabLeavePre'})
|
||||
end
|
||||
'';
|
||||
post_tab_enter.__raw = ''
|
||||
function()
|
||||
vim.api.nvim_exec_autocmds('User', {pattern = 'ScopeTabEnterPost'})
|
||||
end
|
||||
'';
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -20,6 +20,10 @@ in
|
||||
web-devicons.enable = true;
|
||||
neo-tree = {
|
||||
enable = true;
|
||||
lazyLoad = {
|
||||
enable = true;
|
||||
settings.cmd = "Neotree";
|
||||
};
|
||||
settings = {
|
||||
window.position = "float";
|
||||
filesystem = {
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
{ lib, config, ... }:
|
||||
let
|
||||
cfg = config.presets.base.yazi;
|
||||
in
|
||||
{
|
||||
options.presets.base.yazi = {
|
||||
enable = lib.mkEnableOption "yazi";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>y";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
];
|
||||
action = # vim
|
||||
"<cmd>Yazi<CR>";
|
||||
}
|
||||
];
|
||||
globals.loaded_netrwPlugin = 1;
|
||||
plugins = {
|
||||
web-devicons.enable = true;
|
||||
yazi = {
|
||||
enable = true;
|
||||
settings = {
|
||||
enable_mouse_support = true;
|
||||
open_for_directories = true;
|
||||
yazi_floating_window_border = "none";
|
||||
keymaps.show_help = "<?>";
|
||||
};
|
||||
lazyLoad = {
|
||||
enable = true;
|
||||
settings.cmd = "Yazi";
|
||||
};
|
||||
};
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>y";
|
||||
desc = "Yazi";
|
||||
icon = "";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -34,7 +34,9 @@
|
||||
./base/spellcheck.nix
|
||||
./base/status-line.nix
|
||||
./base/syntax.nix
|
||||
./base/tabs.nix
|
||||
./base/tree.nix
|
||||
./base/yazi.nix
|
||||
|
||||
./languages/angular.nix
|
||||
./languages/c.nix
|
||||
|
||||
@@ -60,7 +60,6 @@
|
||||
lazygit.enable = true;
|
||||
mergetool.enable = true;
|
||||
undotree.enable = true;
|
||||
harpoon.enable = true;
|
||||
base = {
|
||||
completion = {
|
||||
enable = true;
|
||||
@@ -77,7 +76,8 @@
|
||||
spellcheck.enable = true;
|
||||
status-line.enable = true;
|
||||
syntax.enable = true;
|
||||
tree.enable = true;
|
||||
tabs.enable = true;
|
||||
yazi.enable = true;
|
||||
};
|
||||
languages = {
|
||||
c.enable = true;
|
||||
@@ -116,6 +116,7 @@
|
||||
origami.enable = false;
|
||||
nvim-surround.enable = true;
|
||||
fidget.enable = true;
|
||||
gitsigns.enable = true;
|
||||
treesitter-context = {
|
||||
enable = false; # TODO: looks weird with Neovide
|
||||
settings.line_numbers = false;
|
||||
|
||||
@@ -221,6 +221,24 @@ hi! MatchParen gui=none guibg={{colors.surface_container_highest.default.hex}}
|
||||
|
||||
hi! LspInlayHint gui=italic guifg={{colors.outline.default.hex}} guibg={{colors.surface_container_highest.default.hex}}
|
||||
|
||||
hi BufferCurrent guibg={{colors.primary.default.hex}} guifg={{colors.on_primary.default.hex}}
|
||||
hi BufferCurrentMod guibg={{colors.primary.default.hex}} guifg={{colors.on_primary.default.hex}}
|
||||
hi BufferCurrentIcon guibg={{colors.primary.default.hex}} guifg={{colors.on_primary.default.hex}}
|
||||
hi BufferCurrentSign guibg={{colors.surface.default.hex}} guifg={{colors.primary.default.hex}}
|
||||
hi BufferCurrentTarget guibg={{colors.primary.default.hex}} guifg={{colors.on_primary.default.hex}}
|
||||
|
||||
hi BufferVisible guibg={{colors.primary_container.default.hex}} guifg={{colors.on_primary_container.default.hex}}
|
||||
hi BufferVisibleIcon guibg={{colors.primary_container.default.hex}}
|
||||
hi BufferVisibleSign guibg={{colors.surface.default.hex}} guifg={{colors.primary_container.default.hex}}
|
||||
hi BufferVisibleTarget guibg={{colors.primary_container.default.hex}} guifg={{colors.primary.default.hex}}
|
||||
|
||||
hi BufferInactive guibg={{colors.surface.default.hex}} guifg={{colors.on_surface.default.hex}}
|
||||
hi BufferInactiveIcon guibg={{colors.surface.default.hex}}
|
||||
hi BufferInactiveSign guibg={{colors.surface.default.hex}} guifg={{colors.outline.default.hex}}
|
||||
hi BufferInactiveTarget guibg={{colors.surface.default.hex}} guifg={{colors.primary.default.hex}}
|
||||
|
||||
hi BufferTabpageFill guibg={{colors.surface.default.hex}} guifg={{colors.on_surface.default.hex}}
|
||||
|
||||
let g:lualine_theme = {
|
||||
\ "insert": {
|
||||
\ "a": {"fg": "{{colors.on_green.default.hex}}", "bg": "{{colors.green.default.hex}}", "gui": "bold"},
|
||||
|
||||
Reference in New Issue
Block a user