Fix VS-Dark style
This commit is contained in:
1 parent
d6b10c0584
commit
b6968a10b3
3 files changed
+39
-10
No files matched your search
+1
-1
@@ -158,7 +158,7 @@ Once installed, launch the desktop app with `neovide` from a terminal — if tha
|
||||
|
||||
## Look & feel
|
||||
|
||||
- **Theme**: [`vscode.nvim`](https://github.com/Mofiqul/vscode.nvim) (dark variant, VS Code Dark+ palette), on a near-black `#090909` background, with custom tinted backgrounds for error/warn/info/hint diagnostic virtual lines. lualine uses the plugin's own `vscode` theme.
|
||||
- **Theme**: [`vscode.nvim`](https://github.com/Mofiqul/vscode.nvim) (dark variant, VS Code Dark+ palette), on a near-black `#090909` background (explorer, tabs, statusline and popups use near-black shades too, not VS Code's grays), with macros in Visual Studio's muted purple (`#BEB7FF`) and custom tinted backgrounds for error/warn/info/hint diagnostic virtual lines. lualine uses the plugin's own `vscode` theme.
|
||||
- **Cursor animation**: an animated cursor trail in both frontends, via different mechanisms — see [Terminal vs. desktop (Neovide)](#terminal-vs-desktop-neovide) for which plugin does what and why.
|
||||
- **Dashboard**: `alpha-nvim` start screen with quick actions — find file, recent files, live grep, new file, edit config, quit.
|
||||
- **Statusline**: `lualine`, styled with true Powerline arrow separators (the seamless, edge-to-edge kind — between sections, a thinner version between components within a section). Left to right:
|
||||
|
||||
@@ -30,17 +30,34 @@ return {
|
||||
-- Neovide doesn't use this option at all -- see
|
||||
-- vim.g.neovide_opacity in init.lua for its equivalent.
|
||||
transparent = not vim.g.neovide,
|
||||
-- Near-black background instead of VS Code's #1F1F1F. (With
|
||||
-- `transparent` on, vscode.nvim forces vscBack to NONE, so this
|
||||
-- shows in Neovide; in a terminal the terminal's own background
|
||||
-- shows instead -- set that to #090909 to match.) The cursor-line
|
||||
-- shade and active-tab background are nudged to fit it.
|
||||
-- Near-black surfaces instead of VS Code's grays (#1F1F1F editor,
|
||||
-- #252526/#2D2D2D sidebar, tabs, statusline and popups). With
|
||||
-- `transparent` on, vscode.nvim forces vscBack to NONE, so the
|
||||
-- #090909 shows in Neovide; in a terminal the terminal's own
|
||||
-- background shows instead -- set that to #090909 to match.
|
||||
-- Overriding the palette (rather than individual highlight
|
||||
-- groups) means every plugin the theme styles -- the explorer,
|
||||
-- tabs, statusline, popups, messages -- picks the change up.
|
||||
color_overrides = {
|
||||
vscBack = "#090909",
|
||||
vscCursorDarkDark = "#1a1a1a",
|
||||
vscCursorDarkDark = "#1a1a1a", -- cursor line, explorer cursor line
|
||||
vscLeftDark = "#111111", -- sidebars, messages
|
||||
vscLeftMid = "#1a1a1a",
|
||||
vscTabOther = "#111111", -- inactive tabs
|
||||
vscTabCurrent = vim.g.neovide and "#090909" or "NONE",
|
||||
vscTabOutside = vim.g.neovide and "#090909" or "NONE", -- tab bar fill
|
||||
vscPopupBack = "#090909", -- floating windows, completion menu
|
||||
vscPopupHighlightGray = "#1a1a1a", -- popup scrollbar track
|
||||
},
|
||||
group_overrides = {
|
||||
-- Macros: Visual Studio's muted purple. clangd reports macro
|
||||
-- usages as semantic tokens (@lsp.type.macro, which vscode.nvim
|
||||
-- links to the constant blue); the other two cover treesitter
|
||||
-- when no language server is attached.
|
||||
["@lsp.type.macro"] = { fg = "#BEB7FF" },
|
||||
["@constant.macro"] = { fg = "#BEB7FF" },
|
||||
["@function.macro"] = { fg = "#BEB7FF" },
|
||||
|
||||
-- Tinted backgrounds behind diagnostic virtual text/lines.
|
||||
-- vscode.nvim's own Hint color is the same blue as Info, so
|
||||
-- hints use the palette's teal to match the dark-teal tint.
|
||||
|
||||
@@ -4,12 +4,24 @@ return {
|
||||
"nvim-lualine/lualine.nvim",
|
||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||
config = function()
|
||||
-- The plugin's lualine theme paints the statusline in VS Code
|
||||
-- grays (#262626 / #373737) outside transparent mode; swap those
|
||||
-- for the near-black shades used in colorscheme.lua.
|
||||
local vscode_theme = require("lualine.themes.vscode")
|
||||
local near_black = { ["#262626"] = "#090909", ["#373737"] = "#1a1a1a" }
|
||||
for _, mode in pairs(vscode_theme) do
|
||||
for _, section in pairs(mode) do
|
||||
if near_black[section.bg] then
|
||||
section.bg = near_black[section.bg]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
require("lualine").setup({
|
||||
options = {
|
||||
-- vscode.nvim ships a hand-built lualine theme, so use it
|
||||
-- instead of "auto" (which would derive colors from the
|
||||
-- active colorscheme's highlight groups).
|
||||
theme = "vscode",
|
||||
-- (patched above) instead of "auto".
|
||||
theme = vscode_theme,
|
||||
-- Powerline private-use-area glyphs (E0B0-E0B3). This needs
|
||||
-- the terminal's font actually set to the PATCHED family
|
||||
-- (e.g. "JetBrainsMono Nerd Font" / "CaskaydiaCove Nerd
|
||||
|
||||
Reference in new issue
Block a user