improv: Added new text editor semantic highlighting themes. (#422)

* improv: Added new text editor semantic highlighting themes.

Current themes use the same colors  for all identifier types. These two new themes are just examples of what the new feature makes possible.
One aims to simulate CLion Darcula theme and the other is an extension of the original dark theme.

* fix: corrected entries to readme file

* fix: corrected base for the theme

Made sure readme looks correctly on fork and links go to files.
This commit is contained in:
paxcut
2025-07-16 07:01:43 -07:00
committed by GitHub
parent 5c6cb9dccc
commit f4f004f0eb
3 changed files with 730 additions and 0 deletions

View File

@@ -293,6 +293,8 @@ Everything will immediately show up in ImHex's Content Store and gets bundled wi
| Catppuccin Frappe | [`themes/catppuccin-frappe.json`](themes/catppuccin-frappe.json) | Catppuccin Frappe Flavor (Dark Theme) |
| Catppuccin Macchiato | [`themes/catppuccin-macchiato.json`](themes/catppuccin-macchiato.json) | Catppuccin Macchiato Flavor (Dark Theme) |
| Catppuccin Mocha | [`themes/catppuccin-mocha.json`](themes/catppuccin-mocha.json) | Catppuccin Mocha Flavor (Dark Theme) |
| Theme Lion | [`themes/theme_lion.json`](themes/theme_lion.json) | Semantic CLion inspired theme (Dark Theme) |
| Retina Dark | [`themes/retina_dark.json`](themes/retina_dark.json) | Semantic theme based on Dark Theme |
### Disassemblers

364
themes/retina_dark.json Normal file
View File

@@ -0,0 +1,364 @@
{
"base": "Dark",
"colors": {
"imgui": {
"border": "#6D6D7F7F",
"border-shadow": "#00000000",
"button": "#4296F966",
"button-active": "#0F87F9FF",
"button-hovered": "#4296F9FF",
"check-mark": "#4296F9FF",
"child-background": "#00000000",
"docking-empty-background": "#0F0F0FEF",
"docking-preview": "#4296F9B2",
"drag-drop-target": "#FFFF00E5",
"frame-background": "#28497A89",
"frame-background-active": "#4296F9AA",
"frame-background-hovered": "#4296F966",
"header": "#4296F94F",
"header-active": "#4296F9FF",
"header-hovered": "#4296F9CC",
"menu-bar-background": "#232323FF",
"modal-window-dim-background": "#CCCCCC59",
"nav-highlight": "#4296F9FF",
"nav-windowing-background": "#CCCCCC33",
"nav-windowing-highlight": "#FFFFFFB2",
"plot-histogram": "#E5B200FF",
"plot-histogram-hovered": "#FF9900FF",
"plot-lines": "#9B9B9BFF",
"plot-lines-hovered": "#FF6D59FF",
"popup-background": "#141414FF",
"resize-grip": "#4296F933",
"resize-grip-active": "#4296F9F2",
"resize-grip-hovered": "#4296F9AA",
"scrollbar-background": "#05050587",
"scrollbar-grab": "#4F4F4FFF",
"scrollbar-grab-active": "#828282FF",
"scrollbar-grab-hovered": "#686868FF",
"separator": "#6D6D7F7F",
"separator-active": "#1966BFFF",
"separator-hovered": "#1966BFC6",
"slider-grab": "#3D84E0FF",
"slider-grab-active": "#4296F9FF",
"tab": "#2D5993DB",
"tab-active": "#3268ADFF",
"tab-hovered": "#4296F9CC",
"tab-unfocused": "#111A25F7",
"tab-unfocused-active": "#22426CFF",
"table-border-light": "#3A3A3FFF",
"table-border-strong": "#4F4F59FF",
"table-header-background": "#303033FF",
"table-row-background": "#00000000",
"table-row-background-alt": "#FFFFFF0F",
"text": "#FFFFFFFF",
"text-disabled": "#7F7F7FFF",
"text-selected-background": "#4296F959",
"title-background": "#232323FF",
"title-background-active": "#232323FF",
"title-background-collapse": "#232323FF",
"window-background": "#0F0F0FFF",
"window-shadow": "#000000FF"
},
"imhex": {
"IEEE-tool-exp": "#5D7F5DFF",
"IEEE-tool-mantissa": "#7F5D5DFF",
"IEEE-tool-sign": "#5D5D7FFF",
"achievement-unlocked": "#F1C40FFF",
"advanced-encoding-ascii": "#06539BFF",
"advanced-encoding-multi": "#F1C40FFF",
"advanced-encoding-single": "#E74C3CFF",
"advanced-encoding-unknown": "#E74C3CFF",
"blur-background": "#00000000",
"desc-button": "#141414FF",
"desc-button-active": "#3C3C3CFF",
"desc-button-hovered": "#282828FF",
"diff-added": "#388B42FF",
"diff-changed": "#F1C40FFF",
"diff-removed": "#E74C3CFF",
"find-highlight": "#672A78FF",
"highlight": "#4DC69BFF",
"logger-debug": "#388B42FF",
"logger-error": "#E74C3CFF",
"logger-fatal": "#672A78FF",
"logger-info": "#06539BFF",
"logger-warning": "#F1C40FFF",
"patches": "#E74C3CFF",
"pattern-selected": "#3683CBFF",
"toolbar-blue": "#06539BFF",
"toolbar-brown": "#DBB377FF",
"toolbar-gray": "#E6E6E6FF",
"toolbar-green": "#388B42FF",
"toolbar-purple": "#672A78FF",
"toolbar-red": "#E74C3CFF",
"toolbar-yellow": "#F1C40FFF"
},
"imnodes": {
"box-selector": "#3D85E01E",
"box-selector-outline": "#3D85E096",
"grid-background": "#282832C8",
"grid-line": "#C8C8C828",
"grid-line-primary": "#F0F0F03C",
"link": "#3D85E0C8",
"link-hovered": "#4296FAFF",
"link-selected": "#4296FAFF",
"mini-map-background": "#19191996",
"mini-map-background-hovered": "#191919C8",
"mini-map-canvas": "#C8C8C819",
"mini-map-canvas-outline": "#C8C8C8C8",
"mini-map-link": "#3D85E0C8",
"mini-map-link-selected": "#4296FAFF",
"mini-map-node-background": "#C8C8C864",
"mini-map-node-background-hovered": "#C8C8C8FF",
"mini-map-node-background-selected": "#C8C8C8FF",
"mini-map-node-outline": "#C8C8C864",
"mini-map-outline": "#96969664",
"mini-map-outline-hovered": "#969696C8",
"node-background": "#323232FF",
"node-background-hovered": "#4B4B4BFF",
"node-background-selected": "#4B4B4BFF",
"node-outline": "#646464FF",
"pin": "#F5CB25FF",
"pin-hovered": "#FA8335FF",
"title-bar": "#294A7AFF",
"title-bar-hovered": "#4296FAFF",
"title-bar-selected": "#4296FAFF"
},
"implot": {
"axis-bg": "#00000000",
"axis-bg-active": "#00000000",
"axis-bg-hovered": "#00000000",
"axis-grid": "#FFFFFF3F",
"axis-text": "#FFFFFFFF",
"axis-tick": "#00000000",
"crosshairs": "#FFFFFF7F",
"error-bar": "#00000000",
"fill": "#00000000",
"frame-bg": "#FFFFFF11",
"inlay-text": "#FFFFFFFF",
"legend-bg": "#141414EF",
"legend-border": "#6D6D7F7F",
"legend-text": "#FFFFFFFF",
"line": "#00000000",
"marker-fill": "#00000000",
"marker-outline": "#00000000",
"plot-bg": "#0000007F",
"plot-border": "#6D6D7F7F",
"selection": "#FF9900FF",
"title-text": "#FFFFFFFF"
},
"text-editor": {
"attribute": "#C09494FF",
"background": "#101010FF",
"breakpoint": "#89140340",
"calculated-pointer": "#AAAAAAFF",
"char-literal": "#936848FF",
"comment": "#206020FF",
"current-line-edge": "#A0A0A040",
"current-line-fill": "#00000040",
"current-line-fill-inactive": "#80808040",
"cursor": "#E0E0E0FF",
"debug-text": "#8A8A8AFF",
"default": "#7F7F7FFF",
"default-text": "#7F7F7FFF",
"doc-block-comment": "#73B473FF",
"doc-comment": "#406020FF",
"doc-global-comment": "#506050FF",
"error-marker": "#90140280",
"error-text": "#96130080",
"function": "#C3C283FF",
"function-parameter": "#DADADAFF",
"function-variable": "#B7B7B7FF",
"global-variable": "#CECECEFF",
"identifier": "#AAAAAAFF",
"keyword": "#4880AFFF",
"known-identifier": "#45B28CFF",
"line-number": "#02A7A7FF",
"local-variable": "#C1C1C1FF",
"multi-line-comment": "#206040FF",
"namespace": "#A96226FF",
"number": "#287928FF",
"pattern-variable": "#D3D3D3FF",
"placed-variable": "#C8C6C6FF",
"preproc-identifier": "#BCB999FF",
"preprocessor": "#C0C04CFF",
"preprocessor-deactivated": "#4F4F4F45",
"punctuation": "#B6B6B6FF",
"selection": "#2060A080",
"separator": "#C4C4C4FF",
"string": "#7E3D3DFF",
"template-variable": "#7C7C7CFF",
"typedef": "#75C34CFF",
"unknown-identifier": "#BC2323FE",
"user-defined-type": "#73BCB2FF",
"view": "#7D7D7DFF",
"warning-text": "#A9A906FF"
}
},
"image_theme": "dark",
"name": "Retina Dark",
"styles": {
"imgui": {
"alpha": 1.0,
"button-text-align": [
0.5,
0.5
],
"cell-padding": [
4.0,
2.0
],
"child-border-size": 1.0,
"child-rounding": 0.0,
"disabled-alpha": 0.6000000238418579,
"frame-border-size": 0.0,
"frame-padding": [
4.0,
3.0
],
"frame-rounding": 0.0,
"grab-min-size": 12.0,
"grab-rounding": 0.0,
"indent-spacing": 10.0,
"item-inner-spacing": [
4.0,
4.0
],
"item-spacing": [
8.0,
4.0
],
"popup-border-size": 1.0,
"popup-rounding": 0.0,
"scrollbar-rounding": 9.0,
"scrollbar-size": 14.0,
"selectable-text-align": [
0.0,
0.0
],
"tab-rounding": 4.0,
"window-border-size": 1.0,
"window-min-size": [
32.0,
32.0
],
"window-padding": [
8.0,
8.0
],
"window-rounding": 0.0,
"window-shadow-angle": 0.0,
"window-shadow-offset": 0.0,
"window-shadow-size": 64.0,
"window-title-align": [
0.0,
0.5
]
},
"imhex": {
"popup-alpha": 0.6499999761581421,
"window-blur": 0.0
},
"imnodes": {
"grid-spacing": 24.0,
"link-hover-distance": 10.0,
"link-line-segments-per-length": 0.10000000149011612,
"link-thickness": 3.0,
"mini-map-offset": [
4.0,
4.0
],
"mini-map-padding": [
8.0,
8.0
],
"node-border-thickness": 1.0,
"node-corner-rounding": 4.0,
"node-padding": [
8.0,
8.0
],
"pin-circle-radius": 4.0,
"pin-hover-radius": 10.0,
"pin-line-thickness": 1.0,
"pin-offset": 0.0,
"pin-quad-side-length": 7.0,
"pin-triangle-side-length": 9.5
},
"implot": {
"annotation-padding": [
2.0,
2.0
],
"digital-bit-gap": 4.0,
"digital-bit-height": 8.0,
"error-bar-size": 5.0,
"error-bar-weight": 1.5,
"fill-alpha": 1.0,
"fit-padding": [
0.0,
0.0
],
"label-padding": [
5.0,
5.0
],
"legend-inner-padding": [
5.0,
5.0
],
"legend-padding": [
10.0,
10.0
],
"legend-spacing": [
5.0,
0.0
],
"line-weight": 1.0,
"major-grid-size": [
1.0,
1.0
],
"major-tick-len": [
10.0,
10.0
],
"major-tick-size": [
1.0,
1.0
],
"marker-size": 4.0,
"marker-weight": 1.0,
"minor-alpha": 0.25,
"minor-grid-size": [
1.0,
1.0
],
"minor-tick-len": [
5.0,
5.0
],
"minor-tick-size": [
1.0,
1.0
],
"mouse-pos-padding": [
10.0,
10.0
],
"plot-border-size": 1.0,
"plot-default-size": [
400.0,
300.0
],
"plot-min-size": [
200.0,
150.0
],
"plot-padding": [
10.0,
10.0
]
}
}
}

364
themes/theme_lion.json Normal file
View File

@@ -0,0 +1,364 @@
{
"base": "Dark",
"colors": {
"imgui": {
"border": "#6D6D7F7F",
"border-shadow": "#2B2B2B00",
"button": "#21BEA866",
"button-active": "#0FF9E8FF",
"button-hovered": "#25BAB2FF",
"check-mark": "#1AC3BAFF",
"child-background": "#2B2B2B00",
"docking-empty-background": "#2B2B2BEF",
"docking-preview": "#108691B2",
"drag-drop-target": "#FFFF00E5",
"frame-background": "#28717A89",
"frame-background-active": "#24AAB6AA",
"frame-background-hovered": "#10B3B566",
"header": "#20999F4F",
"header-active": "#269DA5FF",
"header-hovered": "#33A2AECC",
"menu-bar-background": "#313537FF",
"modal-window-dim-background": "#CCCCCC59",
"nav-highlight": "#42F9E7FF",
"nav-windowing-background": "#CCCCCC33",
"nav-windowing-highlight": "#FFFFFFB2",
"plot-histogram": "#E5B200FF",
"plot-histogram-hovered": "#FF9900FF",
"plot-lines": "#9B9B9BFF",
"plot-lines-hovered": "#FF6D59FF",
"popup-background": "#3B3F41FF",
"resize-grip": "#42F9D433",
"resize-grip-active": "#42F9E4F2",
"resize-grip-hovered": "#42F9E7AA",
"scrollbar-background": "#2B2B2B87",
"scrollbar-grab": "#4F4F4FFF",
"scrollbar-grab-active": "#828282FF",
"scrollbar-grab-hovered": "#686868FF",
"separator": "#6D747F7F",
"separator-active": "#19BFA4FF",
"separator-hovered": "#19BFACC6",
"slider-grab": "#2C8990FF",
"slider-grab-active": "#267C83FF",
"tab": "#2D8F93DB",
"tab-active": "#158891FF",
"tab-hovered": "#36A3C1CC",
"tab-unfocused": "#1E2D31F7",
"tab-unfocused-active": "#226C6CFF",
"table-border-light": "#3A3A3FFF",
"table-border-strong": "#4F4F59FF",
"table-header-background": "#2B2B2BFF",
"table-row-background": "#2B2B2B6A",
"table-row-background-alt": "#FFFFFF0F",
"text": "#A9B7C6FF",
"text-disabled": "#7F7F7FFF",
"text-selected-background": "#19B8A259",
"title-background": "#3C3F41FF",
"title-background-active": "#232323FF",
"title-background-collapse": "#232323FF",
"window-background": "#2B2B2BFF",
"window-shadow": "#1B1B1BFF"
},
"imhex": {
"IEEE-tool-exp": "#5D7F5DFF",
"IEEE-tool-mantissa": "#7F5D5DFF",
"IEEE-tool-sign": "#5D5D7FFF",
"achievement-unlocked": "#F1C40FFF",
"advanced-encoding-ascii": "#06539BFF",
"advanced-encoding-multi": "#F1C40FFF",
"advanced-encoding-single": "#E74C3CFF",
"advanced-encoding-unknown": "#E74C3CFF",
"blur-background": "#22B2B2B0",
"desc-button": "#2B2B2BFF",
"desc-button-active": "#3C3C3CFF",
"desc-button-hovered": "#4B4B4BFF",
"diff-added": "#388B42FF",
"diff-changed": "#F1C40FFF",
"diff-removed": "#E74C3CFF",
"find-highlight": "#672A78FF",
"highlight": "#4DC69BFF",
"logger-debug": "#388B42FF",
"logger-error": "#E74C3CFF",
"logger-fatal": "#672A78FF",
"logger-info": "#06539BFF",
"logger-warning": "#F1C40FFF",
"patches": "#E74C3CFF",
"pattern-selected": "#06539BFF",
"toolbar-blue": "#06539BFF",
"toolbar-brown": "#DBB377FF",
"toolbar-gray": "#E6E6E6FF",
"toolbar-green": "#388B42FF",
"toolbar-purple": "#672A78FF",
"toolbar-red": "#E74C3CFF",
"toolbar-yellow": "#F1C40FFF"
},
"imnodes": {
"box-selector": "#3D78E01E",
"box-selector-outline": "#3D78E096",
"grid-background": "#282832C8",
"grid-line": "#C8C8C828",
"grid-line-primary": "#F0F0F03C",
"link": "#3D85E0C8",
"link-hovered": "#4285FAFF",
"link-selected": "#4285FAFF",
"mini-map-background": "#19191996",
"mini-map-background-hovered": "#191919C8",
"mini-map-canvas": "#C8C8C819",
"mini-map-canvas-outline": "#C8C8C8C8",
"mini-map-link": "#3D85E0C8",
"mini-map-link-selected": "#4285FAFF",
"mini-map-node-background": "#C8C8C864",
"mini-map-node-background-hovered": "#C8C8C8FF",
"mini-map-node-background-selected": "#C8C8C8FF",
"mini-map-node-outline": "#C8C8C864",
"mini-map-outline": "#96969664",
"mini-map-outline-hovered": "#969696C8",
"node-background": "#323232FF",
"node-background-hovered": "#4B4B4BFF",
"node-background-selected": "#4B4B4BFF",
"node-outline": "#646464FF",
"pin": "#F5CB25FF",
"pin-hovered": "#FA8335FF",
"title-bar": "#29467AFF",
"title-bar-hovered": "#4285FAFF",
"title-bar-selected": "#4285FAFF"
},
"implot": {
"axis-bg": "#00000000",
"axis-bg-active": "#00000000",
"axis-bg-hovered": "#00000000",
"axis-grid": "#FFFFFF3F",
"axis-text": "#FFFFFFFF",
"axis-tick": "#00000000",
"crosshairs": "#FFFFFF7F",
"error-bar": "#00000000",
"fill": "#00000000",
"frame-bg": "#FFFFFF11",
"inlay-text": "#FFFFFFFF",
"legend-bg": "#141414EF",
"legend-border": "#6D6D7F7F",
"legend-text": "#FFFFFFFF",
"line": "#00000000",
"marker-fill": "#00000000",
"marker-outline": "#00000000",
"plot-bg": "#0000007F",
"plot-border": "#6D6D7F7F",
"selection": "#FF9900FF",
"title-text": "#FFFFFFFF"
},
"text-editor": {
"attribute": "#30A090FF",
"background": "#2B2B2BFF",
"multi-line-comment": "#B0B0B0FF",
"breakpoint": "#3A2323FF",
"know-identifier": "#F09A3BFF",
"calculated-pointer": "#F2C7FEFF",
"char-literal": "#38E517FF",
"comment": "#808080FF",
"current-line-edge": "#A0A0A040",
"current-line-fill": "#00000040",
"current-line-fill-inactive": "#80808040",
"cursor": "#E0E0E0FF",
"debug-text": "#8A8A8AFF",
"default": "#7F7F7FFF",
"default-text": "#7F7F7FFF",
"preprocessor": "#BBB529FF",
"doc-block-comment": "#416438FF",
"doc-comment": "#629755FF",
"doc-global-comment": "#74B265FF",
"error-marker": "#FF0C0080",
"error-text": "#FF200080",
"function": "#FFC66DFF",
"function-parameter": "#A9B7C6FF",
"function-variable": "#798CADFF",
"global-variable": "#B8C5BFFF",
"identifier": "#AAAAAAFF",
"keyword": "#CC7832FF",
"line-number": "#676767FF",
"local-variable": "#FF7FCAFF",
"namespace": "#B5B6E3FF",
"number": "#6897BBFF",
"punctutation": "#ABD374FF",
"pattern-variable": "#FCADDCFF",
"placed-variable": "#A9B7C6FF",
"preprocessor-deactivated": "#686A4BB8",
"preproc-identifier": "#908B25FF",
"selection": "#209CA080",
"separator": "#AA9C89FF",
"string": "#6A8759FF",
"template-variable": "#9876AAFF",
"typedef": "#B9BCD1FF",
"unknown-identifier": "#BC3F3CFF",
"user-defined-type": "#B1B2FFFF",
"view": "#C7CAFFFF",
"warning-text": "#FFFF00FF"
}
},
"image_postfix": "dark",
"name": "Theme Lion",
"styles": {
"imgui": {
"alpha": 1.0,
"button-text-align": [
0.5,
0.5
],
"cell-padding": [
4.0,
2.0
],
"child-border-size": 1.0,
"child-rounding": 0.0,
"disabled-alpha": 0.6000000238418579,
"frame-border-size": 0.0,
"frame-padding": [
4.0,
3.0
],
"frame-rounding": 0.0,
"grab-min-size": 12.0,
"grab-rounding": 0.0,
"indent-spacing": 10.0,
"item-inner-spacing": [
4.0,
4.0
],
"item-spacing": [
8.0,
4.0
],
"popup-border-size": 1.0,
"popup-rounding": 0.0,
"scrollbar-rounding": 9.0,
"scrollbar-size": 14.0,
"selectable-text-align": [
0.0,
0.0
],
"tab-rounding": 4.0,
"window-border-size": 1.0,
"window-min-size": [
32.0,
32.0
],
"window-padding": [
8.0,
8.0
],
"window-rounding": 0.0,
"window-shadow-angle": 0.0,
"window-shadow-offset": 0.0,
"window-shadow-size": 64.0,
"window-title-align": [
0.0,
0.5
]
},
"imhex": {
"popup-alpha": 0.6499999761581421,
"window-blur": 0.0
},
"imnodes": {
"grid-spacing": 24.0,
"link-hover-distance": 10.0,
"link-line-segments-per-length": 0.10000000149011612,
"link-thickness": 3.0,
"mini-map-offset": [
4.0,
4.0
],
"mini-map-padding": [
8.0,
8.0
],
"node-border-thickness": 1.0,
"node-corner-rounding": 4.0,
"node-padding": [
8.0,
8.0
],
"pin-circle-radius": 4.0,
"pin-hover-radius": 10.0,
"pin-line-thickness": 1.0,
"pin-offset": 0.0,
"pin-quad-side-length": 7.0,
"pin-triangle-side-length": 9.5
},
"implot": {
"annotation-padding": [
2.0,
2.0
],
"digital-bit-gap": 4.0,
"digital-bit-height": 8.0,
"error-bar-size": 5.0,
"error-bar-weight": 1.5,
"fill-alpha": 1.0,
"fit-padding": [
0.0,
0.0
],
"label-padding": [
5.0,
5.0
],
"legend-inner-padding": [
5.0,
5.0
],
"legend-padding": [
10.0,
10.0
],
"legend-spacing": [
5.0,
0.0
],
"line-weight": 1.0,
"major-grid-size": [
1.0,
1.0
],
"major-tick-len": [
10.0,
10.0
],
"major-tick-size": [
1.0,
1.0
],
"marker-size": 4.0,
"marker-weight": 1.0,
"minor-alpha": 0.25,
"minor-grid-size": [
1.0,
1.0
],
"minor-tick-len": [
5.0,
5.0
],
"minor-tick-size": [
1.0,
1.0
],
"mouse-pos-padding": [
10.0,
10.0
],
"plot-border-size": 1.0,
"plot-default-size": [
400.0,
300.0
],
"plot-min-size": [
200.0,
150.0
],
"plot-padding": [
10.0,
10.0
]
}
}
}