theme preset coverage

This commit is contained in:
Ryan Fleury
2025-05-05 17:19:29 -07:00
parent e52ab7ad6b
commit 64010486fe
5 changed files with 190 additions and 24 deletions
File diff suppressed because one or more lines are too long
+4 -3
View File
@@ -401,6 +401,7 @@ RD_ThemePreset_VSLight,
RD_ThemePreset_SolarizedDark,
RD_ThemePreset_SolarizedLight,
RD_ThemePreset_HandmadeHero,
RD_ThemePreset_Naysayer,
RD_ThemePreset_FourCoder,
RD_ThemePreset_Grove,
RD_ThemePreset_FarManager,
@@ -573,9 +574,9 @@ extern String8 rd_binding_version_remap_old_name_table[8];
extern String8 rd_binding_version_remap_new_name_table[8];
extern String8 rd_icon_kind_text_table[75];
extern String8 rd_code_color_slot_name_table[14];
extern String8 rd_theme_preset_display_string_table[10];
extern String8 rd_theme_preset_code_string_table[10];
extern String8 rd_theme_preset_cfg_string_table[10];
extern String8 rd_theme_preset_display_string_table[11];
extern String8 rd_theme_preset_code_string_table[11];
extern String8 rd_theme_preset_cfg_string_table[11];
read_only global U8 rd_icon_font_bytes__data[] =
{
0x00,0x01,0x00,0x00,0x00,0x0f,0x00,0x80,0x00,0x03,0x00,0x70,0x47,0x53,0x55,0x42,0x20,0x8b,0x25,0x7a,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x54,0x4f,0x53,0x2f,0x32,0x56,0x43,0x62,0x25,0x00,0x00,0x01,0x50,0x00,0x00,0x00,0x60,0x63,0x6d,0x61,0x70,0xa3,0x60,0xa4,0x23,0x00,0x00,0x01,0xb0,0x00,0x00,0x06,0x12,0x63,0x76,0x74,0x20,
+159 -1
View File
@@ -1650,7 +1650,84 @@ RD_ThemePresetTable:
}
//- rjf: to-do
{ VSLight vs_light "VS (Light)" }
{ VSLight vs_light "VS (Light)",
```theme:
{
theme_color:{tags: background, value: 0xffffffff}
theme_color:{tags: "alt background", value: 0xefefefff}
theme_color:{tags: "pop background", value: 0xe3eaf2ff}
theme_color:{tags: "fresh background", value: 0xeccbbeff}
theme_color:{tags: "match background", value: 0xedcbf9ff}
theme_color:{tags: border, value: 0xe7e7e7ff}
theme_color:{tags: text, value: 0xff}
theme_color:{tags: "weak text", value: 0x353535ff}
theme_color:{tags: "good text", value: 0x32a852ff}
theme_color:{tags: "neutral text", value: 0x3a90bbff}
theme_color:{tags: "bad text", value: 0xcf5242ff}
theme_color:{tags: hover, value: 0xa7ffff}
theme_color:{tags: "focus overlay", value: 0x8eff3f}
theme_color:{tags: "focus border", value: 0x8effff}
theme_color:{tags: cursor, value: 0xff}
theme_color:{tags: selection, value: 0x56aaff77}
theme_color:{tags: "inactive background", value: 0x17}
theme_color:{tags: drop_shadow, value: 0xe7b27}
theme_color:{tags: "good_pop background", value: 0x21a43dff}
theme_color:{tags: "good_pop border", value: 0x21a43dff}
theme_color:{tags: "good_pop hover", value: 0xe3f5d3ff}
theme_color:{tags: "good_pop weak text", value: 0xe3f5d3ff}
theme_color:{tags: "good_pop text", value: 0xe3f5d3ff}
theme_color:{tags: "bad_pop background", value: 0xcb3f23ff}
theme_color:{tags: "bad_pop text", value: 0xffcdc4ff}
theme_color:{tags: "bad_pop text weak", value: 0xffcdc4ff}
theme_color:{tags: "bad_pop hover", value: 0xff825cff}
theme_color:{tags: code_default, value: 0x000000ff}
theme_color:{tags: code_symbol, value: 0x74531fff}
theme_color:{tags: code_type, value: 0x2b91afff}
theme_color:{tags: code_local, value: 0x1f377fff}
theme_color:{tags: code_register, value: 0x8a1bffff}
theme_color:{tags: code_keyword, value: 0x0000ffff}
theme_color:{tags: code_delimiter_or_operator, value: 0x767676ff}
theme_color:{tags: code_numeric, value: 0xff}
theme_color:{tags: code_numeric_alt_digit_group, value: 0x1d1d1dff}
theme_color:{tags: code_string, value: 0xa61515ff}
theme_color:{tags: code_meta, value: 0x808080ff}
theme_color:{tags: code_comment, value: 0x008000ff}
theme_color:{tags: line_info_0, value: 0xb5d9c8ff}
theme_color:{tags: line_info_1, value: 0xa9c1d0ff}
theme_color:{tags: line_info_2, value: 0x99abc5ff}
theme_color:{tags: line_info_3, value: 0xc6bcd5ff}
theme_color:{tags: thread_0, value: 0xffb141ff}
theme_color:{tags: thread_1, value: 0x66c407ff}
theme_color:{tags: thread_unwound, value: 0x67b3d7ff}
theme_color:{tags: thread_error, value: 0xff2900ff}
theme_color:{tags: breakpoint, value: 0xff2800ff}
theme_color:{tags: "floating background", value: 0xffffffff}
theme_color:{tags: "floating background alt", value: 0x11}
theme_color:{tags: "floating background fresh", value: 0xa0c2d318}
theme_color:{tags: "floating border", value: 0x50}
theme_color:{tags: "floating scroll_bar background", value: 0x3b3b3b5f}
theme_color:{tags: "floating scroll_bar border", value: 0x5f5f5f5f}
theme_color:{tags: "menu_bar background", value: 0xccd5f0ff}
theme_color:{tags: "menu_bar border", value: 0xbabdc3ff}
theme_color:{tags: "scroll_bar background", value: 0xe4e4e4ff}
theme_color:{tags: "implicit background", value: 0x00000000}
theme_color:{tags: "implicit border", value: 0x00000000}
theme_color:{tags: "hollow background", value: 0x00000000}
theme_color:{tags: "hollow border", value: 0xffffff1f}
theme_color:{tags: "tab background", value: 0xf5cc84ff}
theme_color:{tags: "tab border", value: 0xae7718ff}
theme_color:{tags: "tab inactive background", value: 0x3b4f81ff}
theme_color:{tags: "tab inactive text", value: 0xffffffff}
theme_color:{tags: "tab inactive border", value: 0x3b4f81ff}
theme_color:{tags: "tab auto background", value: 0xe99595ff}
theme_color:{tags: "tab auto border", value: 0xff6262ff}
theme_color:{tags: "tab auto inactive background", value: 0xac6060ff}
theme_color:{tags: "tab auto inactive border", value: 0xff6262ff}
theme_color:{tags: "drop_site background", value: 0xffffff05}
theme_color:{tags: "drop_site border", value: 0xa7ffff}
}
```
}
//- rjf: solarized (dark) theme
{ SolarizedDark solarized_dark "Solarized (Dark)",
@@ -1803,6 +1880,87 @@ RD_ThemePresetTable:
```
}
//- rjf: naysayer
{ Naysayer naysayer "Naysayer",
```theme:
{
theme_color:{tags: background, value: 0x042327ff}
theme_color:{tags: "alt background", value: 0x11b1fff}
theme_color:{tags: "pop background", value: 0x355b6eff}
theme_color:{tags: "pop text", value: 0xbad7e6ff}
theme_color:{tags: "fresh background", value: 0x31393dff}
theme_color:{tags: "match background", value: 0x31393dff}
theme_color:{tags: border, value: 0x334d50ff}
theme_color:{tags: text, value: 0xdad3beff}
theme_color:{tags: "weak text", value: 0xb0a688ff}
theme_color:{tags: "good text", value: 0x32a852ff}
theme_color:{tags: "neutral text", value: 0x3a90bbff}
theme_color:{tags: "bad text", value: 0xcf5242ff}
theme_color:{tags: "menu_bar good text", value: 0x2a8242ff}
theme_color:{tags: "menu_bar neutral text", value: 0x5681ff}
theme_color:{tags: "menu_bar bad text", value: 0xa21200ff}
theme_color:{tags: "menu_bar weak text", value: 0x313131ff}
theme_color:{tags: "menu_bar bad_pop text weak", value: 0xffffffff}
theme_color:{tags: hover, value: 0xffffffff}
theme_color:{tags: "focus overlay", value: 0x86e08e20}
theme_color:{tags: "focus border", value: 0x86e08fff}
theme_color:{tags: cursor, value: 0x86e08fff}
theme_color:{tags: selection, value: 0x99ccff0f}
theme_color:{tags: "inactive background", value: 0x0000002f}
theme_color:{tags: drop_shadow, value: 0x0000007f}
theme_color:{tags: "good_pop background", value: 0x2c5b36ff}
theme_color:{tags: "good_pop border", value: 0x568761ff}
theme_color:{tags: "good_pop hover", value: 0xe3f5d3ff}
theme_color:{tags: "good_pop weak text", value: 0xe3f5d3ff}
theme_color:{tags: "bad_pop background", value: 0x803425ff}
theme_color:{tags: "bad_pop hover", value: 0xff825cff}
theme_color:{tags: code_default, value: 0xbdb395ff}
theme_color:{tags: code_symbol, value: 0xcbe0f5ff}
theme_color:{tags: code_type, value: 0xcbe0f5ff}
theme_color:{tags: code_local, value: 0xd9cfb3ff}
theme_color:{tags: code_register, value: 0xb7afd5ff}
theme_color:{tags: code_keyword, value: 0x9de3c0ff}
theme_color:{tags: code_delimiter_or_operator, value: 0x767676ff}
theme_color:{tags: code_numeric, value: 0x2ca198ff}
theme_color:{tags: code_numeric_alt_digit_group, value: 0x217770ff}
theme_color:{tags: code_string, value: 0x2ca198ff}
theme_color:{tags: code_meta, value: 0xB0FFB0ff}
theme_color:{tags: code_comment, value: 0x31b72cff}
theme_color:{tags: line_info_0, value: 0x4f3022ff}
theme_color:{tags: line_info_1, value: 0x4f3e15ff}
theme_color:{tags: line_info_2, value: 0x434e2aff}
theme_color:{tags: line_info_3, value: 0x36241fff}
theme_color:{tags: thread_0, value: 0xffcb7fff}
theme_color:{tags: thread_1, value: 0xb2ff65ff}
theme_color:{tags: thread_unwound, value: 0xb2ccd8ff}
theme_color:{tags: thread_error, value: 0xb23219ff}
theme_color:{tags: breakpoint, value: 0xa72911ff}
theme_color:{tags: "floating background", value: 0x3232792}
theme_color:{tags: "floating background alt", value: 0x0000005f}
theme_color:{tags: "floating background fresh", value: 0x31393d5f}
theme_color:{tags: "floating scroll_bar background", value: 0xe363bff}
theme_color:{tags: "menu_bar background", value: 0xb59e7aff}
theme_color:{tags: "menu_bar text", value: 0xff}
theme_color:{tags: "menu_bar border", value: 0x947d5aff}
theme_color:{tags: "scroll_bar background", value: 0xe363bff}
theme_color:{tags: "implicit background", value: 0x00000000}
theme_color:{tags: "implicit border", value: 0x00000000}
theme_color:{tags: "hollow background", value: 0x00000000}
theme_color:{tags: "hollow border", value: 0xffffff1f}
theme_color:{tags: "tab background", value: 0x13533aff}
theme_color:{tags: "tab border", value: 0x6c9182ff}
theme_color:{tags: "tab inactive background", value: 0x0}
theme_color:{tags: "tab inactive border", value: 0x947d5a6c}
theme_color:{tags: "tab auto background", value: 0x5b3939ff}
theme_color:{tags: "tab auto border", value: 0x875c5cff}
theme_color:{tags: "tab auto inactive background", value: 0x251b1bff}
theme_color:{tags: "tab auto inactive border", value: 0x563d3dff}
theme_color:{tags: "drop_site background", value: 0xffffff05}
theme_color:{tags: "drop_site border", value: 0xffffff0f}
}
```
}
//- rjf: 4coder theme
{ FourCoder four_coder "4coder",
```theme:
+18 -12
View File
@@ -8631,14 +8631,17 @@ rd_window_frame(void)
{
continue;
}
TabTask *t = push_array(scratch.arena, TabTask, 1);
t->tab = tab;
t->fstrs = rd_title_fstrs_from_cfg(scratch.arena, tab);
F32 tab_width_target = dr_dim_from_fstrs(&t->fstrs).x + tab_close_width_px + ui_top_font_size()*1.f;
tab_width_target = Min(max_tab_width_px, tab_width_target);
t->tab_width = floor_f32(ui_anim(ui_key_from_stringf(ui_key_zero(), "tab_width_%p", tab), tab_width_target, .initial = reset ? tab_width_target : 0));
SLLQueuePush(first_tab_task, last_tab_task, t);
tab_task_count += 1;
UI_TagF(tab != panel->selected_tab ? "inactive" : "")
{
TabTask *t = push_array(scratch.arena, TabTask, 1);
t->tab = tab;
t->fstrs = rd_title_fstrs_from_cfg(scratch.arena, tab);
F32 tab_width_target = dr_dim_from_fstrs(&t->fstrs).x + tab_close_width_px + ui_top_font_size()*1.f;
tab_width_target = Min(max_tab_width_px, tab_width_target);
t->tab_width = floor_f32(ui_anim(ui_key_from_stringf(ui_key_zero(), "tab_width_%p", tab), tab_width_target, .initial = reset ? tab_width_target : 0));
SLLQueuePush(first_tab_task, last_tab_task, t);
tab_task_count += 1;
}
}
}
@@ -14892,12 +14895,15 @@ rd_frame(void)
String8 data = str8_list_join(scratch.arena, &strings, 0);
if(os_write_data_to_file_path(dst_path, data))
{
for(RD_CfgNode *n = colors.first; n != 0; n = n->next)
if(kind == RD_CmdKind_SaveAndSetTheme)
{
rd_cfg_release(n->v);
for(RD_CfgNode *n = colors.first; n != 0; n = n->next)
{
rd_cfg_release(n->v);
}
RD_Cfg *theme = rd_cfg_child_from_string_or_alloc(parent, str8_lit("theme"));
rd_cfg_new_replace(theme, name);
}
RD_Cfg *theme = rd_cfg_child_from_string_or_alloc(parent, str8_lit("theme"));
rd_cfg_new_replace(theme, name);
}
else
{
+2 -4
View File
@@ -201,10 +201,6 @@
// [ ] maybe add extra caching layer to process memory querying? we pay a pretty
// heavy cost even to just read 8 bytes...
// [ ] crash bug, release mode - filter globals view (try with debugging raddbg, typing `dev` in globals view)
//
//- no immediate action but check before release:
// [ ] user switching
// [ ] project switching
////////////////////////////////
//~ rjf: post-0.9.16 TODO notes
@@ -508,6 +504,8 @@
// how to load them, but not how you save them. Obviously I can just copy
// the files myself in the shell, but it seemed weird that there was no
// "save" option in the menus.
// [x] user switching
// [x] project switching
////////////////////////////////
//~ rjf: Build Options