Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

InuProt

A two-variant colour scheme pack, published for Visual Studio Code and Sublime Text.

Who this is for

InuProt is tuned for readers with red-green color vision deficiencies (red-green color blindness), specifically:

  • Protanomaly / protanopia — red-weak or red-blind vision
  • Deuteranomaly / deuteranopia — green-weak or green-blind vision
  • Anyone whose eyes find saturated neon greens painful or hard to read

In typical syntax themes the keyword green and the control-flow / string / number orange sit close in both hue and luminance, so they merge for these readers. InuProt fixes that pairing: the green ramp is dimmed away from the orange in the dark variant, and the light variant uses a green-tinted chrome that stays distinguishable.

If you searched for colorblind theme, protanopia theme, red-green colorblind color scheme, high-contrast accessible VS Code theme, or accessible Sublime Text theme — this project is for you.

Keywords: colorblind, colorblind-friendly, protanopia, protanomaly, deuteranopia, deuteranomaly, red-green color vision deficiency, accessible, accessibility, high contrast, VS Code theme, Sublime Text color scheme.


Variants

VariantSurfaceOrigins
InuProt Darkblack + ink-greenForked from Human High Contrast by Tom Hall, with the green ramp dimmed for better separation from the orange control-flow / string color.
InuProt Lightsoft green tintForked from GitHub Light Colorblind (Beta) (primer/github-vscode-theme, MIT), with the editor surface retinted to #edf3eb and chrome to #e6eee4; syntax token colors are inherited unchanged (the upstream theme is already tuned for colorblind accessibility).

About the name.Prot stands for Protanomaly (red-weak color vision deficiency). People with protanomaly — and the more general category of deuteranomaly / red-green color blindness — have trouble distinguishing green from orange/red. Two of the most important colors in almost every code syntax theme are green (keywords) and orange/yellow (control-flow + strings + numbers). When those two sit close together in hue and luminance, they merge for protanopic readers. InuProt exists specifically to separate them: the Dark variant dims the green ramp away from the orange, and the Light variant uses a soft green-tinted chrome that stays distinguishable. The accompanying Inu prefix is the Japanese 犬 ("dog") — a small nod to its🐾 pedigree (an Inu watches over what it keeps close).


What changed from upstream?

InuProt Dark (from Human High Contrast)

Only the green ramp was retuned, to lower its luminance away from the orange/yellow control-flow + string color. Source changes are in source/changes-dark.md; in short:

Token roleBeforeAfter
keywords / cursor / button#00FF00#00AA00
function names / gutter added#00EE00#009900
git untracked / hint#00DD00#008800

Everything else (UI chrome, terminal ANSI, token rules) is unchanged.

InuProt Light (from GitHub Light Colorblind)

Only background surfaces were retinted to a soft green. Syntax token colors are inherited unchanged from GitHub Light Colorblind. Source changes are in source/changes-light.md; in short:

SurfaceBeforeAfter
editor / gutter / active tab#FFFFFF#edf3eb
sideBar / activityBar / statusBar / panel / titleBar / tab inactive / widgets#FAFAFD#e6eee4
sticky hover / no-folder status#F0F0F3#dfe7dd

input.background and dropdown.background stay #FFFFFF so white controls still read cleanly on the green chrome.


Previews

InuProt DarkInuProt Light
InuProt DarkInuProt Light

Captured manually from real VS Code. To update: open previews/inuprot-preview-sample.ts with the theme active, screenshot, and replace the PNGs.

Install

Visual Studio Code

code --install-extension ./vscode/inuprot-1.0.5.vsix

Or use the Command Palette → Preferences: Color ThemeInuProt Dark or InuProt Light.

Sublime Text

Copy the two files in sublime/ into your Packages/User directory:

  • sublime/InuProt Dark.sublime-color-scheme
  • sublime/InuProt Light.sublime-color-scheme
  • (legacy) sublime/InuProt Dark.tmTheme / sublime/InuProt Light.tmTheme

Then in Preferences.sublime-settings:

{
"color_scheme": "InuProt Dark.sublime-color-scheme",
"dark_color_scheme": "InuProt Dark.sublime-color-scheme",
"light_color_scheme": "InuProt Light.sublime-color-scheme",
}

Project layout

InuProt/
├── vscode/ # VS Code extension (packaged as vsix)
│ ├── package.json
│ ├── .vscodeignore
│ └── themes/
│ ├── inuprot-dark.json
│ └── inuprot-light.json (+ light_modern/plus/vs from upstream, for include)
├── sublime/
│ ├── InuProt Dark.sublime-color-scheme # modern format (preferred)
│ ├── InuProt Light.sublime-color-scheme
│ ├── InuProt Dark.tmTheme # legacy TextMate format
│ └── InuProt Light.tmTheme
└── source/ # build scripts
├── vscode_to_tmtheme.py
└── vscode_to_sublime_colorscheme.py

The source/ directory contains the converters used to flatten VS Code's theme JSON (resolving its include chain) into self-contained Sublime color scheme files.


Attribution & Licenses

This project is MIT-licensed. Both upstreams are also MIT-licensed, which permits modification and redistribution provided the original notices are retained. See LICENSE and THIRD_PARTY_NOTICES.md for the full notices.

About

Colorblind-friendly (protanopia / deuteranopia / red-green) VS Code & Sublime Text themes. Dark ink-green + soft-green-tinted light variant, tuned so keyword-green separates from orange control-flow & strings.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages