Add edge dark

This commit is contained in:
Sainnhe Park 2022-10-31 10:32:46 +08:00
parent 96df0392c6
commit 68251c79ca
4 changed files with 318 additions and 0 deletions

6
build.sh Executable file
View file

@ -0,0 +1,6 @@
#!/usr/bin/env bash
BASEDIR="$( cd "$( dirname "$0" )" && pwd )"
cd "${BASEDIR}"
lessc -x src/edge-dark.less > dist/theme-edge-dark.css

1
dist/theme-edge-dark.css vendored Normal file

File diff suppressed because one or more lines are too long

278
src/base-dark.less Normal file
View file

@ -0,0 +1,278 @@
:root {
--is-dark-theme: true;
--color-primary: @primary;
--color-primary-contrast: @bg0;
--color-primary-dark-1: @primary;
--color-primary-dark-2: mix(@fg, @primary, 16.7%);
--color-primary-dark-3: mix(@fg, @primary, 33.3%);
--color-primary-dark-4: mix(@fg, @primary, 50%);
--color-primary-dark-5: mix(@fg, @primary, 66.6%);
--color-primary-dark-6: mix(@fg, @primary, 83.3%);
--color-primary-dark-7: @fg;
--color-primary-light-1: @primary;
--color-primary-light-2: mix(@bg2, @primary, 16.7%);
--color-primary-light-3: mix(@bg2, @primary, 33.3%);
--color-primary-light-4: mix(@bg2, @primary, 50%);
--color-primary-light-5: mix(@bg2, @primary, 66.6%);
--color-primary-light-6: mix(@bg2, @primary, 83.3%);
--color-primary-light-7: @bg2;
--color-primary-alpha-10: fade(@primary, 10%);
--color-primary-alpha-20: fade(@primary, 20%);
--color-primary-alpha-30: fade(@primary, 30%);
--color-primary-alpha-40: fade(@primary, 40%);
--color-primary-alpha-50: fade(@primary, 50%);
--color-primary-alpha-60: fade(@primary, 60%);
--color-primary-alpha-70: fade(@primary, 70%);
--color-primary-alpha-80: fade(@primary, 80%);
--color-primary-alpha-90: fade(@primary, 90%);
--color-secondary: @bg4;
--color-secondary-dark-1: @bg4;
--color-secondary-dark-2: mix(@fg, @bg4, 8.3%);
--color-secondary-dark-3: mix(@fg, @bg4, 16.7%);
--color-secondary-dark-4: mix(@fg, @bg4, 25%);
--color-secondary-dark-5: mix(@fg, @bg4, 33.3%);
--color-secondary-dark-6: mix(@fg, @bg4, 41.7%);
--color-secondary-dark-7: mix(@fg, @bg4, 50%);
--color-secondary-dark-8: mix(@fg, @bg4, 58.3%);
--color-secondary-dark-9: mix(@fg, @bg4, 66.7%);
--color-secondary-dark-10: mix(@fg, @bg4, 75%);
--color-secondary-dark-11: mix(@fg, @bg4, 83.3%);
--color-secondary-dark-12: mix(@fg, @bg4, 91.7%);
--color-secondary-dark-13: @fg;
--color-secondary-light-1: @bg4;
--color-secondary-light-2: @bg3;
--color-secondary-light-3: @bg2;
--color-secondary-light-4: @bg1;
--color-secondary-alpha-10: fade(@bg4, 10%);
--color-secondary-alpha-20: fade(@bg4, 20%);
--color-secondary-alpha-30: fade(@bg4, 30%);
--color-secondary-alpha-40: fade(@bg4, 40%);
--color-secondary-alpha-50: fade(@bg4, 50%);
--color-secondary-alpha-60: fade(@bg4, 60%);
--color-secondary-alpha-70: fade(@bg4, 70%);
--color-secondary-alpha-80: fade(@bg4, 80%);
--color-secondary-alpha-90: fade(@bg4, 90%);
/* colors */
--color-red: @red;
--color-orange: @orange;
--color-yellow: @yellow;
--color-olive: @green;
--color-green: @green;
--color-teal: @cyan;
--color-blue: @blue;
--color-violet: @purple;
--color-purple: @purple;
--color-pink: @purple;
--color-brown: @orange;
--color-grey: @grey;
/* light variants */
--color-red-light: @red;
--color-orange-light: @orange;
--color-yellow-light: @yellow;
--color-olive-light: @green;
--color-green-light: @green;
--color-teal-light: @cyan;
--color-blue-light: @blue;
--color-violet-light: @purple;
--color-purple-light: @purple;
--color-pink-light: @purple;
--color-brown-light: @orange;
--color-grey-light: @grey;
/* other colors */
--color-black: @bg2;
--color-gold: @orange;
--color-white: @fg;
--color-diff-removed-word-bg: mix(@red-bg, @red, 70%);
--color-diff-added-word-bg: mix(@green-bg, @green, 70%);
--color-diff-removed-row-bg: @red-bg;
--color-diff-moved-row-bg: @blue-bg;
--color-diff-added-row-bg: @green-bg;
--color-diff-removed-row-border: mix(@red-bg, @red, 50%);
--color-diff-moved-row-border: mix(@blue-bg, @blue, 50%);
--color-diff-added-row-border: mix(@green-bg, @green, 50%);
--color-diff-inactive: @bg2;
--color-error-border: mix(@red-bg, @red, 50%);
--color-error-bg: @red-bg;
--color-error-text: @red;
--color-success-border: mix(@green-bg, @green, 50%);
--color-success-bg: @green-bg;
--color-success-text: @green;
--color-warning-border: mix(@yellow-bg, @yellow, 50%);
--color-warning-bg: @yellow-bg;
--color-warning-text: @yellow;
--color-info-border: mix(@blue-bg, @blue, 50%);
--color-info-bg: @blue-bg;
--color-info-text: @blue;
/* target-based colors */
--color-body: @bg0;
--color-box-header: @bg3;
--color-box-body: @bg1;
--color-box-body-highlight: @bg2;
--color-text-dark: @secondary;
--color-text: @fg;
--color-text-hover: fade(@fg, 80%);
--color-text-light: @tertiary;
--color-text-light-1: @grey;
--color-text-light-2: @fg;
--color-text-light-3: @grey;
--color-footer: @bg1;
--color-timeline: @bg4;
--color-input-text: @fg;
--color-input-background: @bg0;
--color-input-toggle-background: @bg1;
--color-input-border: @bg4;
--color-input-border-hover: mix(@bg4, @grey, 50%);
--color-navbar: @bg1;
--color-navbar-transparent: @bg1;
--color-light: @bg1;
--color-light-mimic-enabled: rgba(0, 0, 0, calc(40 / 255 * 222 / 255 / var(--opacity-disabled)));
--color-light-border: @bg4;
--color-hover: fade(@bg4, 50%);
--color-active: #ffffff00;
--color-menu: @bg1;
--color-card: @bg1;
--color-markup-table-row: @bg3;
--color-markup-code-block: @bg0;
--color-button: @bg3;
--color-code-bg: @bg0;
--color-code-sidebar-bg: @bg1;
--color-shadow: #00000060;
--color-secondary-bg: @bg1;
--color-text-focus: #fff;
--color-expand-button: @bg2;
--color-placeholder-text: @grey;
--color-editor-line-highlight: @bg1;
--color-project-board-bg: @bg0;
--color-caret: var(--color-text); /* should ideally be --color-text-dark, see #15651 */
--color-reaction-bg: #ffffff12;
--color-reaction-active-bg: var(--color-primary-alpha-40);
--color-header-bar: @bg1;
--color-label-active-bg: @bg4;
--color-accent: var(--color-primary-light-1);
--color-small-accent: var(--color-primary-light-5);
--color-active-line: @bg1;
accent-color: var(--color-accent);
color-scheme: dark;
}
/* code theme */
.chroma .nx {
color: @fg;
}
.chroma .c, .chroma .c1, .chroma .ch {
color: @grey;
}
.chroma .k, .chroma .kc, .chroma .kd, .chroma .kn, .chroma .kp, .chroma .kr {
color: @key;
}
.chroma .o, .chroma .ow {
color: @operator;
}
.chroma .s, .chroma .si, .chroma .sa, .chroma .se, .chroma .sr, .chroma .s1, .chroma .s2, .chroma .nt, .chroma .cpf {
color: @string;
}
.chroma .m, .chroma .mb, .chroma .mf, .chroma .mh, .chroma .mi, .chroma .mo {
color: @value;
}
.chroma .kt, .chroma .nc, .chroma .nn, .chroma .nv {
color: @type;
}
.chroma .nf, .chroma .nb, .chroma .na {
color: @function;
}
.chroma .bp, .chroma .cp, .chroma .ne, .chroma .nd {
color: @special;
}
/* primary buttons */
.ui.primary.button, .ui.primary.buttons .button {
background: @button1;
background-color: @button1 !important;
color: @bg0;
}
.ui.primary.button:hover, .ui.primary.buttons .button:hover {
background: fade(@button1, 80%);
background-color: fade(@button1, 80%) !important;
color: @bg0;
}
/* secondary buttons */
.ui.green.buttons .button, .ui.green.button {
background: @button2;
background-color: @button2;
color: @bg0;
}
.ui.green.buttons .button:hover, .ui.green.button:hover {
background: fade(@button2, 80%);
background-color: fade(@button2, 80%);
color: @bg0;
}
/* red buttons */
.ui.red.labels .label, .ui.ui.ui.red.label, .ui.red.button, .ui.red.buttons .button {
background: @button-red;
background-color: @button-red;
color: @bg0;
}
.ui.red.labels .label:hover, .ui.ui.ui.red.label:hover, .ui.red.button:hover, .ui.red.buttons .button:hover {
background: fade(@button-red, 80%);
background-color: fade(@button-red, 80%);
color: @bg0;
}
/* text based buttons (purple) */
.ui.labeled.button.disabled>.button, .ui.basic.buttons .button, .ui.basic.button {
color: @secondary;
}
.ui.labeled.button.disabled>.button:hover, .ui.basic.buttons .button:hover, .ui.basic.button:hover {
color: @secondary;
}
/* repo title && header */
.repo-title {
color: @secondary;
}
/* star number && fork number */
.repo-buttons button[disabled] ~ .label,
.repo-buttons .ui.labeled.button.disabled > .label {
color: @primary;
}
.ui.basic.labels .label, .ui.basic.label {
color: @primary;
}
/* hover on commits, branch, tags in project home page */
.repository .ui.segment.sub-menu .list .item a:hover,
.ui.tabular.menu .item:hover {
color: var(--color-text-hover);
}
/* scroll bar */
* {
scrollbar-color: @secondary transparent !important;
}
::-webkit-scrollbar {
width: 10px;
height: 10px;
}
::-webkit-scrollbar-thumb {
box-shadow: inset 0 0 0 6px @secondary !important;
border: 2px solid transparent;
border-radius: 5px !important;
}
::-webkit-scrollbar-thumb:window-inactive {
box-shadow: inset 0 0 0 6px @secondary !important;
}
::-webkit-scrollbar-thumb:hover {
box-shadow: inset 0 0 0 6px @secondary !important;
}
::-webkit-scrollbar-corner {
background: transparent;
}

33
src/edge-dark.less Normal file
View file

@ -0,0 +1,33 @@
@primary: #6cb6eb; // primary color used in main texts
@secondary: #d38aea; // secondary color used in some texts and text based buttons
@tertiary: #a0c980; // tertiary color used in other colored texts
@fg: #c5cdd9;
@bg0: #2b2d37;
@bg1: #333644;
@bg2: #363a49;
@bg3: #3a3e4e;
@bg4: #404455;
@red: #ec7279;
@orange: #deb974;
@yellow: #deb974;
@green: #a0c980;
@cyan: #5dbbc1;
@blue: #6cb6eb;
@purple: #d38aea;
@grey: #758094;
@red-bg: #55393d;
@green-bg: #394634;
@blue-bg: #354157;
@yellow-bg: #4e432f;
@button1: #6cb6eb;
@button2: #a0c980;
@button-red: #ec7279;
@key: @red;
@operator: @purple;
@string: @green;
@value: @green;
@type: @yellow;
@function: @blue;
@special: @cyan;
@import "base-dark";