11.stylix/modules/opencode/hm.nix
Tim Kleinschmidt 296aa01b46
Some checks failed
Label Merge Conflicts / conflicts (push) Has been cancelled
opencode: brighten default text colors (#2100)
Using base09 for diff hunk headers and base0A for markdown block quotes
made neutral UI elements look urgent. Markdown code blocks also reused
the default text color as a background, reducing contrast.

Return these components to neutral backgrounds instead: keep diff hunk
headers on base03, block quotes on base03/base01, and code blocks on
base01 so warnings stay on base0A and urgency cues remain meaningful.

Link: https://github.com/nix-community/stylix/pull/2100

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Approved-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Tested-by: Mirza Arnaut <mirza.arnaut45@gmail.com>
Approved-by: Mirza Arnaut <mirza.arnaut45@gmail.com>
(cherry picked from commit b135edbdd4)
2026-01-23 22:06:55 +01:00

220 lines
7.6 KiB
Nix

{ mkTarget, ... }:
mkTarget {
config =
{ colors }:
{
programs.opencode =
let
theme = "stylix";
in
{
settings = { inherit theme; };
themes.${theme} = {
theme = {
accent = {
dark = colors.withHashtag.base0F;
light = colors.withHashtag.base07;
};
background = {
dark = colors.withHashtag.base00;
light = colors.withHashtag.base06;
};
backgroundElement = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base04;
};
backgroundPanel = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base05;
};
border = {
dark = colors.withHashtag.base02;
light = colors.withHashtag.base03;
};
borderActive = {
dark = colors.withHashtag.base03;
light = colors.withHashtag.base02;
};
borderSubtle = {
dark = colors.withHashtag.base02;
light = colors.withHashtag.base03;
};
diffAdded = {
dark = colors.withHashtag.base0B;
light = colors.withHashtag.base0B;
};
diffAddedBg = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base05;
};
diffAddedLineNumberBg = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base05;
};
diffContext = {
dark = colors.withHashtag.base03;
light = colors.withHashtag.base03;
};
diffContextBg = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base05;
};
diffHighlightAdded = {
dark = colors.withHashtag.base0B;
light = colors.withHashtag.base0B;
};
diffHighlightRemoved = {
dark = colors.withHashtag.base08;
light = colors.withHashtag.base08;
};
diffHunkHeader = {
dark = colors.withHashtag.base03;
light = colors.withHashtag.base03;
};
diffLineNumber = {
dark = colors.withHashtag.base03;
light = colors.withHashtag.base04;
};
diffRemoved = {
dark = colors.withHashtag.base08;
light = colors.withHashtag.base08;
};
diffRemovedBg = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base05;
};
diffRemovedLineNumberBg = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base05;
};
error = {
dark = colors.withHashtag.base08;
light = colors.withHashtag.base08;
};
info = {
dark = colors.withHashtag.base0C;
light = colors.withHashtag.base0F;
};
markdownBlockQuote = {
dark = colors.withHashtag.base03;
light = colors.withHashtag.base01;
};
markdownCode = {
dark = colors.withHashtag.base0B;
light = colors.withHashtag.base0B;
};
markdownCodeBlock = {
dark = colors.withHashtag.base01;
light = colors.withHashtag.base00;
};
markdownEmph = {
dark = colors.withHashtag.base0A;
light = colors.withHashtag.base09;
};
markdownHeading = {
dark = colors.withHashtag.base0E;
light = colors.withHashtag.base0F;
};
markdownHorizontalRule = {
dark = colors.withHashtag.base04;
light = colors.withHashtag.base03;
};
markdownImage = {
dark = colors.withHashtag.base0D;
light = colors.withHashtag.base0D;
};
markdownImageText = {
dark = colors.withHashtag.base0C;
light = colors.withHashtag.base07;
};
markdownLink = {
dark = colors.withHashtag.base0D;
light = colors.withHashtag.base0D;
};
markdownLinkText = {
dark = colors.withHashtag.base0C;
light = colors.withHashtag.base07;
};
markdownListEnumeration = {
dark = colors.withHashtag.base0C;
light = colors.withHashtag.base07;
};
markdownListItem = {
dark = colors.withHashtag.base0D;
light = colors.withHashtag.base0F;
};
markdownStrong = {
dark = colors.withHashtag.base09;
light = colors.withHashtag.base0A;
};
markdownText = {
dark = colors.withHashtag.base05;
light = colors.withHashtag.base00;
};
primary = {
dark = colors.withHashtag.base0D;
light = colors.withHashtag.base0F;
};
secondary = {
dark = colors.withHashtag.base0E;
light = colors.withHashtag.base0D;
};
success = {
dark = colors.withHashtag.base0B;
light = colors.withHashtag.base0B;
};
syntaxComment = {
dark = colors.withHashtag.base04;
light = colors.withHashtag.base03;
};
syntaxFunction = {
dark = colors.withHashtag.base0D;
light = colors.withHashtag.base0C;
};
syntaxKeyword = {
dark = colors.withHashtag.base0E;
light = colors.withHashtag.base0D;
};
syntaxNumber = {
dark = colors.withHashtag.base09;
light = colors.withHashtag.base0E;
};
syntaxOperator = {
dark = colors.withHashtag.base0C;
light = colors.withHashtag.base0D;
};
syntaxPunctuation = {
dark = colors.withHashtag.base05;
light = colors.withHashtag.base00;
};
syntaxString = {
dark = colors.withHashtag.base0B;
light = colors.withHashtag.base0B;
};
syntaxType = {
dark = colors.withHashtag.base0A;
light = colors.withHashtag.base07;
};
syntaxVariable = {
dark = colors.withHashtag.base07;
light = colors.withHashtag.base07;
};
text = {
dark = colors.withHashtag.base05;
light = colors.withHashtag.base00;
};
textMuted = {
dark = colors.withHashtag.base04;
light = colors.withHashtag.base01;
};
warning = {
dark = colors.withHashtag.base0A;
light = colors.withHashtag.base0A;
};
};
};
};
};
}