File tree Expand file tree Collapse file tree
opencode/src/cli/cmd/tui/context Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -35,6 +35,7 @@ import tokyonight from "./theme/tokyonight.json" with { type: "json" }
3535import vercel from "./theme/vercel.json" with { type : "json" }
3636import vesper from "./theme/vesper.json" with { type : "json" }
3737import zenburn from "./theme/zenburn.json" with { type : "json" }
38+ import carbonfox from "./theme/carbonfox.json" with { type : "json" }
3839import { useKV } from "./kv"
3940import { useRenderer } from "@opentui/solid"
4041import { createStore , produce } from "solid-js/store"
@@ -170,6 +171,7 @@ export const DEFAULT_THEMES: Record<string, ThemeJson> = {
170171 vesper,
171172 vercel,
172173 zenburn,
174+ carbonfox,
173175}
174176
175177function resolveTheme ( theme : ThemeJson , mode : "dark" | "light" ) {
Original file line number Diff line number Diff line change 1+ {
2+ "$schema" : " https://opencode.ai/theme.json" ,
3+ "defs" : {
4+ "bg0" : " #0d0d0d" ,
5+ "bg1" : " #161616" ,
6+ "bg1a" : " #1a1a1a" ,
7+ "bg2" : " #1e1e1e" ,
8+ "bg3" : " #262626" ,
9+ "bg4" : " #303030" ,
10+ "fg0" : " #ffffff" ,
11+ "fg1" : " #f2f4f8" ,
12+ "fg2" : " #a9afbc" ,
13+ "fg3" : " #7d848f" ,
14+ "lbg0" : " #ffffff" ,
15+ "lbg1" : " #f4f4f4" ,
16+ "lbg2" : " #e8e8e8" ,
17+ "lbg3" : " #dcdcdc" ,
18+ "lfg0" : " #000000" ,
19+ "lfg1" : " #161616" ,
20+ "lfg2" : " #525252" ,
21+ "lfg3" : " #6f6f6f" ,
22+ "red" : " #ee5396" ,
23+ "green" : " #25be6a" ,
24+ "yellow" : " #08bdba" ,
25+ "blue" : " #78a9ff" ,
26+ "magenta" : " #be95ff" ,
27+ "cyan" : " #33b1ff" ,
28+ "white" : " #dfdfe0" ,
29+ "orange" : " #3ddbd9" ,
30+ "pink" : " #ff7eb6" ,
31+ "blueBright" : " #8cb6ff" ,
32+ "cyanBright" : " #52c7ff" ,
33+ "greenBright" : " #46c880" ,
34+ "redLight" : " #9f1853" ,
35+ "greenLight" : " #198038" ,
36+ "yellowLight" : " #007d79" ,
37+ "blueLight" : " #0043ce" ,
38+ "magentaLight" : " #6929c4" ,
39+ "cyanLight" : " #0072c3" ,
40+ "warning" : " #f1c21b" ,
41+ "diffGreen" : " #50fa7b" ,
42+ "diffRed" : " #ff6b6b" ,
43+ "diffGreenBg" : " #0f2418" ,
44+ "diffRedBg" : " #2a1216"
45+ },
46+ "theme" : {
47+ "primary" : {
48+ "dark" : " cyan" ,
49+ "light" : " blueLight"
50+ },
51+ "secondary" : {
52+ "dark" : " blue" ,
53+ "light" : " blueLight"
54+ },
55+ "accent" : {
56+ "dark" : " pink" ,
57+ "light" : " redLight"
58+ },
59+ "error" : {
60+ "dark" : " red" ,
61+ "light" : " redLight"
62+ },
63+ "warning" : {
64+ "dark" : " warning" ,
65+ "light" : " yellowLight"
66+ },
67+ "success" : {
68+ "dark" : " green" ,
69+ "light" : " greenLight"
70+ },
71+ "info" : {
72+ "dark" : " blue" ,
73+ "light" : " blueLight"
74+ },
75+ "text" : {
76+ "dark" : " fg1" ,
77+ "light" : " lfg1"
78+ },
79+ "textMuted" : {
80+ "dark" : " fg3" ,
81+ "light" : " lfg3"
82+ },
83+ "background" : {
84+ "dark" : " bg1" ,
85+ "light" : " lbg0"
86+ },
87+ "backgroundPanel" : {
88+ "dark" : " bg1a" ,
89+ "light" : " lbg1"
90+ },
91+ "backgroundElement" : {
92+ "dark" : " bg2" ,
93+ "light" : " lbg1"
94+ },
95+ "border" : {
96+ "dark" : " bg4" ,
97+ "light" : " lbg3"
98+ },
99+ "borderActive" : {
100+ "dark" : " cyan" ,
101+ "light" : " blueLight"
102+ },
103+ "borderSubtle" : {
104+ "dark" : " bg3" ,
105+ "light" : " lbg2"
106+ },
107+ "diffAdded" : {
108+ "dark" : " diffGreen" ,
109+ "light" : " greenLight"
110+ },
111+ "diffRemoved" : {
112+ "dark" : " diffRed" ,
113+ "light" : " redLight"
114+ },
115+ "diffContext" : {
116+ "dark" : " fg3" ,
117+ "light" : " lfg3"
118+ },
119+ "diffHunkHeader" : {
120+ "dark" : " blue" ,
121+ "light" : " blueLight"
122+ },
123+ "diffHighlightAdded" : {
124+ "dark" : " #7dffaa" ,
125+ "light" : " greenLight"
126+ },
127+ "diffHighlightRemoved" : {
128+ "dark" : " #ff9999" ,
129+ "light" : " redLight"
130+ },
131+ "diffAddedBg" : {
132+ "dark" : " diffGreenBg" ,
133+ "light" : " #defbe6"
134+ },
135+ "diffRemovedBg" : {
136+ "dark" : " diffRedBg" ,
137+ "light" : " #fff1f1"
138+ },
139+ "diffContextBg" : {
140+ "dark" : " bg1" ,
141+ "light" : " lbg1"
142+ },
143+ "diffLineNumber" : {
144+ "dark" : " fg3" ,
145+ "light" : " lfg3"
146+ },
147+ "diffAddedLineNumberBg" : {
148+ "dark" : " diffGreenBg" ,
149+ "light" : " #defbe6"
150+ },
151+ "diffRemovedLineNumberBg" : {
152+ "dark" : " diffRedBg" ,
153+ "light" : " #fff1f1"
154+ },
155+ "markdownText" : {
156+ "dark" : " fg1" ,
157+ "light" : " lfg1"
158+ },
159+ "markdownHeading" : {
160+ "dark" : " blueBright" ,
161+ "light" : " blueLight"
162+ },
163+ "markdownLink" : {
164+ "dark" : " blue" ,
165+ "light" : " blueLight"
166+ },
167+ "markdownLinkText" : {
168+ "dark" : " cyan" ,
169+ "light" : " cyanLight"
170+ },
171+ "markdownCode" : {
172+ "dark" : " green" ,
173+ "light" : " greenLight"
174+ },
175+ "markdownBlockQuote" : {
176+ "dark" : " fg3" ,
177+ "light" : " lfg3"
178+ },
179+ "markdownEmph" : {
180+ "dark" : " magenta" ,
181+ "light" : " magentaLight"
182+ },
183+ "markdownStrong" : {
184+ "dark" : " fg0" ,
185+ "light" : " lfg0"
186+ },
187+ "markdownHorizontalRule" : {
188+ "dark" : " bg4" ,
189+ "light" : " lbg3"
190+ },
191+ "markdownListItem" : {
192+ "dark" : " cyan" ,
193+ "light" : " cyanLight"
194+ },
195+ "markdownListEnumeration" : {
196+ "dark" : " cyan" ,
197+ "light" : " cyanLight"
198+ },
199+ "markdownImage" : {
200+ "dark" : " blue" ,
201+ "light" : " blueLight"
202+ },
203+ "markdownImageText" : {
204+ "dark" : " cyan" ,
205+ "light" : " cyanLight"
206+ },
207+ "markdownCodeBlock" : {
208+ "dark" : " fg2" ,
209+ "light" : " lfg2"
210+ },
211+ "syntaxComment" : {
212+ "dark" : " fg3" ,
213+ "light" : " lfg3"
214+ },
215+ "syntaxKeyword" : {
216+ "dark" : " magenta" ,
217+ "light" : " magentaLight"
218+ },
219+ "syntaxFunction" : {
220+ "dark" : " blueBright" ,
221+ "light" : " blueLight"
222+ },
223+ "syntaxVariable" : {
224+ "dark" : " white" ,
225+ "light" : " lfg1"
226+ },
227+ "syntaxString" : {
228+ "dark" : " green" ,
229+ "light" : " greenLight"
230+ },
231+ "syntaxNumber" : {
232+ "dark" : " orange" ,
233+ "light" : " yellowLight"
234+ },
235+ "syntaxType" : {
236+ "dark" : " yellow" ,
237+ "light" : " yellowLight"
238+ },
239+ "syntaxOperator" : {
240+ "dark" : " fg2" ,
241+ "light" : " lfg2"
242+ },
243+ "syntaxPunctuation" : {
244+ "dark" : " fg2" ,
245+ "light" : " lfg1"
246+ }
247+ }
248+ }
Original file line number Diff line number Diff line change @@ -11,6 +11,7 @@ import oneDarkProThemeJson from "./themes/onedarkpro.json"
1111import shadesOfPurpleThemeJson from "./themes/shadesofpurple.json"
1212import nightowlThemeJson from "./themes/nightowl.json"
1313import vesperThemeJson from "./themes/vesper.json"
14+ import carbonfoxThemeJson from "./themes/carbonfox.json"
1415
1516export const oc1Theme = oc1ThemeJson as DesktopTheme
1617export const tokyonightTheme = tokyoThemeJson as DesktopTheme
@@ -24,6 +25,7 @@ export const oneDarkProTheme = oneDarkProThemeJson as DesktopTheme
2425export const shadesOfPurpleTheme = shadesOfPurpleThemeJson as DesktopTheme
2526export const nightowlTheme = nightowlThemeJson as DesktopTheme
2627export const vesperTheme = vesperThemeJson as DesktopTheme
28+ export const carbonfoxTheme = carbonfoxThemeJson as DesktopTheme
2729
2830export const DEFAULT_THEMES : Record < string , DesktopTheme > = {
2931 "oc-1" : oc1Theme ,
@@ -38,4 +40,5 @@ export const DEFAULT_THEMES: Record<string, DesktopTheme> = {
3840 shadesofpurple : shadesOfPurpleTheme ,
3941 nightowl : nightowlTheme ,
4042 vesper : vesperTheme ,
43+ carbonfox : carbonfoxTheme ,
4144}
You can’t perform that action at this time.
0 commit comments