craftzdog / solarized-osaka.nvim

🏯 A clean, dark Neovim theme written in Lua, with support for lsp, treesitter and lots of plugins.
Apache License 2.0
650 stars 29 forks source link

bug: Color Mismatch in Alacritty #17

Closed starkovv closed 7 months ago

starkovv commented 7 months ago

Did you check docs and existing issues?

Neovim version (nvim -v)

0.9.5

Operating system/version

macOS 14.2.1 (23C71)

Describe the bug

I'm using Alacritty 0.13.1 and tmux 3.3a, with the classic 'solarized-dark' theme set up for Alacritty.

However, after installing nvim, lazy.nvim, and craftzdog/solarized-osaka.nvim, and restarting everything, my color scheme doesn't align with the colors shown in the README. Here's a screenshot for reference:

Screenshot 2024-02-11 at 5 22 04 PM

Steps To Reproduce

  1. Install Alacritty 0.13.1 on macOS 14.2.1.
  2. Use the following ~/.config/alacritty/alacritty.toml config file:
    
    live_config_reload = true
    working_directory = "None"

[bell] animation = "EaseOutExpo" color = "0xffffff" duration = 0

[colors] draw_bold_text_with_bright_colors = true

[colors.bright] black = "0x002b36" blue = "0x839496" cyan = "0x93a1a1" green = "0x586e75" magenta = "0x6c71c4" red = "0xcb4b16" white = "0xfdf6e3" yellow = "0x657b83"

[colors.cursor] cursor = "0x839496" text = "0x002b36"

[colors.normal] black = "0x073642" blue = "0x268bd2" cyan = "0x2aa198" green = "0x859900" magenta = "0xd33682" red = "0xdc322f" white = "0xeee8d5" yellow = "0xb58900"

[colors.primary] background = "0x002b36" foreground = "0x839496"

[colors.selection] background = "0x073642" text = "0x93a1a1"

[cursor] style = "Block" unfocused_hollow = true

[debug] log_level = "Warn" persistent_logging = false print_events = false render_timer = false

[env] TERM = "xterm-256color"

[font] size = 13.0

[font.bold] family = "JetBrainsMono Nerd Font" style = "Bold"

[font.glyph_offset] x = 0 y = 0

[font.italic] family = "JetBrainsMono Nerd Font" style = "Italic"

[font.normal] family = "JetBrainsMono Nerd Font" style = "Regular"

[font.offset] x = 0 y = 0

[[keyboard.bindings]] action = "Paste" key = "Paste"

[[keyboard.bindings]] action = "Copy" key = "Copy"

[[keyboard.bindings]] action = "ClearLogNotice" key = "L" mods = "Control"

[[keyboard.bindings]] chars = "\f" key = "L" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;3H" key = "Home" mods = "Alt"

[[keyboard.bindings]] chars = "\u001BOH" key = "Home" mode = "AppCursor"

[[keyboard.bindings]] chars = "\u001B[H" key = "Home" mode = "~AppCursor"

[[keyboard.bindings]] chars = "\u001B[1;3F" key = "End" mods = "Alt"

[[keyboard.bindings]] chars = "\u001BOF" key = "End" mode = "AppCursor"

[[keyboard.bindings]] chars = "\u001B[F" key = "End" mode = "~AppCursor"

[[keyboard.bindings]] action = "ScrollPageUp" key = "PageUp" mode = "~Alt" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[5;2~" key = "PageUp" mode = "Alt" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[5;5~" key = "PageUp" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[5;3~" key = "PageUp" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[5~" key = "PageUp"

[[keyboard.bindings]] action = "ScrollPageDown" key = "PageDown" mode = "~Alt" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[6;2~" key = "PageDown" mode = "Alt" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[6;5~" key = "PageDown" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[6;3~" key = "PageDown" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[6~" key = "PageDown"

[[keyboard.bindings]] chars = "\u001B[Z" key = "Tab" mods = "Shift"

[[keyboard.bindings]] chars = "\u007F" key = "Back"

[[keyboard.bindings]] chars = "\u001B\u007F" key = "Back" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[2~" key = "Insert"

[[keyboard.bindings]] chars = "\u001B[3~" key = "Delete"

[[keyboard.bindings]] chars = "\u001B[1;2D" key = "Left" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;5D" key = "Left" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;3D" key = "Left" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[D" key = "Left" mode = "~AppCursor"

[[keyboard.bindings]] chars = "\u001BOD" key = "Left" mode = "AppCursor"

[[keyboard.bindings]] chars = "\u001B[1;2C" key = "Right" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;5C" key = "Right" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;3C" key = "Right" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[C" key = "Right" mode = "~AppCursor"

[[keyboard.bindings]] chars = "\u001BOC" key = "Right" mode = "AppCursor"

[[keyboard.bindings]] chars = "\u001B[1;2A" key = "Up" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;5A" key = "Up" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;3A" key = "Up" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[A" key = "Up" mode = "~AppCursor"

[[keyboard.bindings]] chars = "\u001BOA" key = "Up" mode = "AppCursor"

[[keyboard.bindings]] chars = "\u001B[1;2B" key = "Down" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;5B" key = "Down" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;3B" key = "Down" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[B" key = "Down" mode = "~AppCursor"

[[keyboard.bindings]] chars = "\u001BOB" key = "Down" mode = "AppCursor"

[[keyboard.bindings]] chars = "\u001BOP" key = "F1"

[[keyboard.bindings]] chars = "\u001BOQ" key = "F2"

[[keyboard.bindings]] chars = "\u001BOR" key = "F3"

[[keyboard.bindings]] chars = "\u001BOS" key = "F4"

[[keyboard.bindings]] chars = "\u001B[15~" key = "F5"

[[keyboard.bindings]] chars = "\u001B[17~" key = "F6"

[[keyboard.bindings]] chars = "\u001B[18~" key = "F7"

[[keyboard.bindings]] chars = "\u001B[19~" key = "F8"

[[keyboard.bindings]] chars = "\u001B[20~" key = "F9"

[[keyboard.bindings]] chars = "\u001B[21~" key = "F10"

[[keyboard.bindings]] chars = "\u001B[23~" key = "F11"

[[keyboard.bindings]] chars = "\u001B[24~" key = "F12"

[[keyboard.bindings]] chars = "\u001B[1;2P" key = "F1" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;2Q" key = "F2" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;2R" key = "F3" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;2S" key = "F4" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[15;2~" key = "F5" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[17;2~" key = "F6" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[18;2~" key = "F7" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[19;2~" key = "F8" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[20;2~" key = "F9" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[21;2~" key = "F10" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[23;2~" key = "F11" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[24;2~" key = "F12" mods = "Shift"

[[keyboard.bindings]] chars = "\u001B[1;5P" key = "F1" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;5Q" key = "F2" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;5R" key = "F3" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;5S" key = "F4" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[15;5~" key = "F5" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[17;5~" key = "F6" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[18;5~" key = "F7" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[19;5~" key = "F8" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[20;5~" key = "F9" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[21;5~" key = "F10" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[23;5~" key = "F11" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[24;5~" key = "F12" mods = "Control"

[[keyboard.bindings]] chars = "\u001B[1;6P" key = "F1" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[1;6Q" key = "F2" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[1;6R" key = "F3" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[1;6S" key = "F4" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[15;6~" key = "F5" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[17;6~" key = "F6" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[18;6~" key = "F7" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[19;6~" key = "F8" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[20;6~" key = "F9" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[21;6~" key = "F10" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[23;6~" key = "F11" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[24;6~" key = "F12" mods = "Alt"

[[keyboard.bindings]] chars = "\u001B[1;3P" key = "F1" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[1;3Q" key = "F2" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[1;3R" key = "F3" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[1;3S" key = "F4" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[15;3~" key = "F5" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[17;3~" key = "F6" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[18;3~" key = "F7" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[19;3~" key = "F8" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[20;3~" key = "F9" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[21;3~" key = "F10" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[23;3~" key = "F11" mods = "Super"

[[keyboard.bindings]] chars = "\u001B[24;3~" key = "F12" mods = "Super"

[[keyboard.bindings]] chars = """

""" key = "NumpadEnter"

[[keyboard.bindings]] chars = "\u001Bf" key = "F" mods = "Alt"

[[keyboard.bindings]] chars = "\u001Bb" key = "B" mods = "Alt"

[[keyboard.bindings]] chars = "\u001Bd" key = "D" mods = "Alt"

[[keyboard.bindings]] key = "N" mods = "Command"

[keyboard.bindings.command] args = ["-n", "/Applications/Alacritty.app"] program = "open"

[mouse] hide_when_typing = true

[[mouse.bindings]] action = "PasteSelection" mouse = "Middle"

[scrolling] history = 0 multiplier = 3

[selection] save_to_clipboard = true semantic_escape_chars = ",│`|:\"' ()[]{}<>"

[window] decorations = "full" dynamic_padding = true startup_mode = "Windowed"

[window.dimensions] columns = 0 lines = 0

[window.padding] x = 0 y = 0

3. Install nvim 0.9.5.
4. Install lazy.nvim plugin.
5. Use the following `~/.config/nvim/init.lua` config file:

require('lazy').setup({ -- List your plugins here {'tpope/vim-unimpaired'}, {'junegunn/fzf'}, { "craftzdog/solarized-osaka.nvim", lazy = false, priority = 1000, opts = function() return { transparent = true, } end, } })

-- Redefine leader key vim.g.mapleader = " "

-- Custom keybindings vim.api.nvim_set_keymap('n', 'w', ':w', { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', 's', ':source ~/.config/nvim/init.lua', { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', 'd', ':bd', { noremap = true, silent = true }) -- remove trailing whitespaces automatically vim.api.nvim_set_keymap('n', 'x', ':%s/\s\+$//e', { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', '~', ':buffers', { noremap = true, silent = true })

-- Configure fzf plugin vim.api.nvim_set_keymap('n', 'f', ':FZF', { noremap = true, silent = true })

-- Make buffer cycling much more effective vim.api.nvim_set_keymap('n', '', ':bprev', { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', '', ':bnext', { noremap = true, silent = true })

-- Set numbering vim.wo.number = true

-- Search settings vim.o.hlsearch = true vim.o.incsearch = true

-- Set the number of spaces that a in the file counts for vim.opt.tabstop = 2

-- Set the number of spaces to use for each step of (auto)indent vim.opt.shiftwidth = 2

-- Use spaces instead of tabs vim.opt.expandtab = true

-- Optionally, set the number of spaces for a tab when editing vim.opt.softtabstop = 2

-- Enable true color (24-bit color) support vim.opt.termguicolors = true

-- Run plugins vim.cmd[[colorscheme solarized-osaka]]


### Expected Behavior

Colors must align with those depicted in the README. The bottom line in nvim should display a discernible background.

### Repro

```Lua
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "craftzdog/solarized-osaka.nvim",
  "craftzdog/solarized-osaka.nvim",
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("solarized-osaka")
-- add anything else here
starkovv commented 7 months ago

Alright. I managed it with LazyVim distro.