google-chrome-dark-mode-exceptions

Google Chrome Dark Mode Exceptions

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         google-chrome-dark-mode-exceptions
// @namespace    http://tampermonkey.net/
// @version      202312190930
// @description  Google Chrome Dark Mode Exceptions
// @author       Rafael David Tinoco
// @match        *://*/*
// @grant        GM_addStyle
// @run-at       document-start
// ==/UserScript==

// To be used after chrome://flags => #enable-force-dark is enabled.

;(function () {
  'use strict'

  let defaultMode = 'dark' // or "light"

  const excludedDomains = ['github.com']

  function isExcluded () {
    const currentDomain = window.location.hostname
    return excludedDomains.find(domain => currentDomain.includes(domain))
  }

  const lightCSS = `
        :root {
            color-scheme: light only !important;
        }
    `

  const darkCSS = `
        :root {
            color-scheme: darkonly !important;
        }
    `

  if (defaultMode === 'dark') {
    if (isExcluded()) {
      GM_addStyle(lightCSS)
    }
  } else if (defaultMode === 'light') {
    if (isExcluded()) {
      GM_addStyle(darkCSS)
    }
  }
})()