From 8da6a29bda4788d472878f299a6cb33a94643752 Mon Sep 17 00:00:00 2001 From: kossLAN Date: Mon, 21 Apr 2025 01:48:51 -0400 Subject: [PATCH] nvim/base16: init --- nix/neovim-overlay.nix | 8 +++----- nvim/init.lua | 8 ++++---- nvim/plugin/base16.lua | 41 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 9 deletions(-) create mode 100644 nvim/plugin/base16.lua diff --git a/nix/neovim-overlay.nix b/nix/neovim-overlay.nix index 6b89248..ef801f7 100644 --- a/nix/neovim-overlay.nix +++ b/nix/neovim-overlay.nix @@ -4,10 +4,9 @@ with final.pkgs.lib; let pkgs = final; # Use this to create a plugin from a flake input - mkNvimPlugin = src: pname: + mkNvimPlugin = pname: version: src: pkgs.vimUtils.buildVimPlugin { - inherit pname src; - version = src.lastModifiedDate; + inherit pname version src; }; # Make sure we use the pinned nixpkgs instance for wrapNeovimUnstable, @@ -82,8 +81,6 @@ with final.pkgs.lib; let which-key-nvim # Autoformatting conform-nvim - # Theme for neovim - catppuccin-nvim # QOL Plugin for visuals mostly mini-nvim # https://github.com/echasnovski/mini.nvim/ # Debugging @@ -96,6 +93,7 @@ with final.pkgs.lib; let fidget-nvim # Color Highlights nvim-highlight-colors + base16-nvim ]; extraPackages = with pkgs; [ diff --git a/nvim/init.lua b/nvim/init.lua index 15120db..79b8c5a 100644 --- a/nvim/init.lua +++ b/nvim/init.lua @@ -108,8 +108,8 @@ cmd.packadd('cfilter') -- Allows filtering the quickfix list with :cfdo vim.g.sqlite_clib_path = require('luv').os_getenv('LIBSQLITE') -- Vim Theme -require('catppuccin').setup { - flavour = 'macchiato', -} +-- require('catppuccin').setup { +-- flavour = 'macchiato', +-- } -vim.cmd.colorscheme('catppuccin') +-- vim.cmd.colorscheme('lushwal') diff --git a/nvim/plugin/base16.lua b/nvim/plugin/base16.lua new file mode 100644 index 0000000..a24ee87 --- /dev/null +++ b/nvim/plugin/base16.lua @@ -0,0 +1,41 @@ +local colors_file = io.open(os.getenv('HOME') .. '/.cache/mutagen/colors.json', 'r') +if not colors_file then + vim.notify('Mutagen colors file not found', vim.log.levels.ERROR) + return +end + +local content = colors_file:read('*all') +colors_file:close() + +local ok, colors_data = pcall(vim.fn.json_decode, content) +if not ok then + vim.notify('Failed to parse Mutagen colors JSON: ' .. tostring(colors_data), vim.log.levels.ERROR) + return +end + +local colors = colors_data.colors +if not colors then + vim.notify('No colors found in Mutagen JSON', vim.log.levels.ERROR) + return +end + +local base16_colors = { + base00 = colors.base00, + base01 = colors.base01, + base02 = colors.base02, + base03 = colors.base03, + base04 = colors.base04, + base05 = colors.base05, + base06 = colors.base06, + base07 = colors.base07, + base08 = colors.base08, + base09 = colors.base09, + base0A = colors.base0A, + base0B = colors.base0B, + base0C = colors.base0C, + base0D = colors.base0D, + base0E = colors.base0E, + base0F = colors.base0F, +} + +require('base16-colorscheme').setup(base16_colors)