From 4f118319d3ddd81d784642565bc1b0c49b018704 Mon Sep 17 00:00:00 2001 From: xinyangli Date: Sat, 10 May 2025 23:30:29 +0800 Subject: [PATCH] feat: add yazi, use treesitter for highlight --- config/bufferline.nix | 5 ---- config/default.nix | 7 +++--- config/{neo-tree.nix => filemanager.nix} | 30 ++++++++++++++++++++++ config/rainbow-delimiters.nix | 32 ++++++++++++------------ config/treesitter.nix | 5 ++++ config/ui.nix | 12 +++++++++ 6 files changed, 67 insertions(+), 24 deletions(-) delete mode 100644 config/bufferline.nix rename config/{neo-tree.nix => filemanager.nix} (66%) create mode 100644 config/ui.nix diff --git a/config/bufferline.nix b/config/bufferline.nix deleted file mode 100644 index fe5cf05..0000000 --- a/config/bufferline.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ - plugins.bufferline = { - enable = true; - }; -} diff --git a/config/default.nix b/config/default.nix index 0afec8f..f31afb0 100644 --- a/config/default.nix +++ b/config/default.nix @@ -1,10 +1,10 @@ { # Import all your configuration modules here imports = [ + ./rainbow-delimiters.nix ./ai/avante.nix ./buffer/bufdelete.nix ./blink.nix - ./bufferline.nix ./comment.nix ./core.nix ./direnv.nix @@ -16,13 +16,14 @@ ./lazygit.nix ./lsp ./lualine.nix - ./neo-tree.nix # ./project.nix - ./rainbow-delimiters.nix ./telescope.nix ./toggleterm.nix ./treesitter.nix ./which-key.nix + + ./filemanager.nix + ./ui.nix ]; plugins.web-devicons.enable = true; } diff --git a/config/neo-tree.nix b/config/filemanager.nix similarity index 66% rename from config/neo-tree.nix rename to config/filemanager.nix index cd3132c..4d485ec 100644 --- a/config/neo-tree.nix +++ b/config/filemanager.nix @@ -27,6 +27,12 @@ ''; window.mappings."" = ""; }; + + plugins.yazi = { + enable = true; + }; + dependencies.yazi.enable = true; + keymaps = [ { mode = [ "n" ]; @@ -40,5 +46,29 @@ desc = "Toggle Neo-Tree"; }; } + { + mode = [ "n" ]; + key = "cw"; + action = "Yazi cwd"; + options = { + desc = "Open the file manager in nvim's working directory"; + }; + } + { + mode = [ "n" ]; + key = ""; + action = "Yazi toggle"; + options = { + desc = "Resume the last yazi session"; + }; + } + { + mode = [ "n" ]; + key = "y"; + action = "Yazi"; + options = { + desc = "Open yazi at the current file"; + }; + } ]; } diff --git a/config/rainbow-delimiters.nix b/config/rainbow-delimiters.nix index a604fdb..10b9294 100644 --- a/config/rainbow-delimiters.nix +++ b/config/rainbow-delimiters.nix @@ -1,23 +1,23 @@ +{ helpers, ... }: { plugins.rainbow-delimiters = { enable = true; highlight = [ - "RainbowRed" - "RainbowYellow" - "RainbowBlue" - "RainbowOrange" - "RainbowGreen" - "RainbowViolet" - "RainbowCyan" + "RainbowDelimiterRed" + "RainbowDelimiterYellow" + "RainbowDelimiterBlue" + "RainbowDelimiterOrange" + "RainbowDelimiterGreen" + "RainbowDelimiterViolet" + "RainbowDelimiterCyan" ]; - }; - highlight = { - RainbowRed = { fg = "#E06C75"; }; - RainbowYellow = { fg = "#E5C07B"; }; - RainbowBlue = { fg = "#61AFEF"; }; - RainbowOrange = { fg = "#D19A66"; }; - RainbowGreen = { fg = "#98C379"; }; - RainbowViolet = { fg = "#C678DD"; }; - RainbowCyan = { fg = "#56B6C2"; }; + strategy = { + # Use global strategy by default + default = "global"; + }; + query = { + default = "rainbow-delimiters"; + lua = "rainbow-blocks"; + }; }; } diff --git a/config/treesitter.nix b/config/treesitter.nix index d15124b..d29e34e 100644 --- a/config/treesitter.nix +++ b/config/treesitter.nix @@ -1,5 +1,10 @@ { plugins.treesitter = { enable = true; + autoLoad = true; + nixvimInjections = true; + settings = { + highlight.enable = true; + }; }; } diff --git a/config/ui.nix b/config/ui.nix new file mode 100644 index 0000000..ec1dfad --- /dev/null +++ b/config/ui.nix @@ -0,0 +1,12 @@ +{ helpers, ... }: +{ + colorschemes.catppuccin = { + enable = true; + settings = { + flavour = "mocha"; + }; + }; + plugins.bufferline = { + enable = true; + }; +}