├── .gitignore ├── CHANGELOG.md ├── .vscode ├── settings.json └── launch.json ├── .vscodeignore ├── .gitattributes ├── images ├── icon.png └── screenshot.png ├── playground.clj ├── package.json ├── LICENSE ├── themes └── alabaster-dark-color-theme.json └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *.vsix 3 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ## 0.1.0 2 | - Initial release 3 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "cSpell.enabled": false 3 | } 4 | -------------------------------------------------------------------------------- /.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | .gitignore 4 | vsc-extension-quickstart.md 5 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Set default behavior to automatically normalize line endings. 2 | * text=auto 3 | 4 | -------------------------------------------------------------------------------- /images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gargakshit/vscode-theme-alabaster-dark/HEAD/images/icon.png -------------------------------------------------------------------------------- /images/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gargakshit/vscode-theme-alabaster-dark/HEAD/images/screenshot.png -------------------------------------------------------------------------------- /playground.clj: -------------------------------------------------------------------------------- 1 | (ns playground 2 | (:require 3 | [clojure.string :as str])) 4 | 5 | (defn clojure-function [args] 6 | (let [string "multiline\nstring" 7 | regexp #"regexp" 8 | number 100.000 9 | booleans [false true] 10 | keyword ::the-keyword] 11 | ;; this is comment 12 | (if true 13 | (->> 14 | (list [vector] {:map map} #{'set}))))) 15 | 16 | ;; current line highlight 17 | 18 | ;; find highlights: 19 | (def some-var) 20 | (defonce another-var) 21 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | // A launch configuration that launches the extension inside a new window 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | { 6 | "version": "0.2.0", 7 | "configurations": [ 8 | { 9 | "name": "Extension", 10 | "type": "extensionHost", 11 | "request": "launch", 12 | "runtimeExecutable": "${execPath}", 13 | "args": [ 14 | "--extensionDevelopmentPath=${workspaceFolder}" 15 | ] 16 | } 17 | ] 18 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "theme-alabaster-dark", 3 | "displayName": "Alabaster Dark Theme", 4 | "description": "Alabaster Dark theme ported straight from sublime text", 5 | "version": "0.1.3", 6 | "publisher": "gargakshit", 7 | "engines": { 8 | "vscode": "^1.25.0" 9 | }, 10 | "categories": [ 11 | "Themes" 12 | ], 13 | "icon": "images/icon.png", 14 | "repository": { 15 | "type": "git", 16 | "url": "https://github.com/gargakshit/vscode-theme-alabaster-dark.git" 17 | }, 18 | "license": "MIT", 19 | "contributes": { 20 | "themes": [ 21 | { 22 | "label": "Alabaster Dark", 23 | "uiTheme": "vs-dark", 24 | "path": "./themes/alabaster-dark-color-theme.json" 25 | } 26 | ] 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Nikita Prokopov 4 | Copyright (c) 2018 bernik 5 | Copyright (c) 2021 Akshit Garg 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in all 15 | copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23 | SOFTWARE. 24 | -------------------------------------------------------------------------------- /themes/alabaster-dark-color-theme.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "CodeSchool2 Minimal", 3 | "type": "dark", 4 | "colors": { 5 | "editor.background": "#0E1415", 6 | "editor.foreground": "#CECECE", 7 | "editor.lineHighlightBackground": "#FFFFFF1A", 8 | "editor.selectionBackground": "#DDF0FF33", 9 | "activityBarBadge.background": "#353a3d", 10 | "sideBar.background": "#323738", 11 | "sideBarTitle.foreground": "#F0F0F0", 12 | "sideBar.foreground": "#f0f0f0", 13 | "activityBar.background": "#323738", 14 | "activityBar.foreground": "#f0f0f0", 15 | "activityBarBadge.foreground": "#f0f0f0", 16 | "titleBar.activeBackground": "#323738", 17 | "titleBar.inactiveBackground": "#323738", 18 | "statusBar.background": "#323738", 19 | "statusBar.noFolderBackground": "#323738", 20 | "statusBar.debuggingBackground": "#BFABCB", 21 | "editorGroupHeader.tabsBackground": "#323738", 22 | "tab.inactiveBackground": "#323738", 23 | "tab.activeBackground": "#0E1415", 24 | "tab.border": "#cecece36", 25 | "editor.selectionHighlightBackground": "#DDF0FF33", 26 | "terminal.background": "#1d1f1f", 27 | "panel.background": "#1d1f1f", 28 | "statusBar.debuggingForeground": "#212121", 29 | "terminal.ansiWhite": "#cecece", 30 | "terminal.ansiBlack": "#000000", 31 | "terminal.ansiBlue": "#4a88e4", 32 | "terminal.ansiCyan": "#23acdd", 33 | "terminal.ansiGreen": "#73ca50", 34 | "terminal.ansiMagenta": "#915caf", 35 | "terminal.ansiRed": "#e25d56", 36 | "terminal.ansiYellow": "#e9bf57", 37 | "terminal.ansiBrightWhite": "#FFFFFF", 38 | "terminal.ansiBrightBlack": "#777777", 39 | "terminal.ansiBrightBlue": "#6f8fdb", 40 | "terminal.ansiBrightCyan": "#4ac9e2", 41 | "terminal.ansiBrightGreen": "#88db3f", 42 | "terminal.ansiBrightMagenta": "#e987e9", 43 | "terminal.ansiBrightRed": "#f36868", 44 | "terminal.ansiBrightYellow": "#f0bf7a" 45 | }, 46 | "tokenColors": [ 47 | { 48 | "name": "Comments", 49 | "scope": ["comment", "punctuation.definition.comment"], 50 | "settings": { 51 | "foreground": "#DFDF8E" 52 | } 53 | }, 54 | { 55 | "name": "Strings", 56 | "scope": ["string", "string.regexp", "constant.other.symbol"], 57 | "settings": { 58 | "foreground": "#95CB82" 59 | } 60 | }, 61 | { 62 | "name": "Strings: Escape Sequences", 63 | "scope": "constant.character.escape", 64 | "settings": { 65 | "foreground": "#CC8BC9" 66 | } 67 | }, 68 | { 69 | "name": "Numbers, Characters", 70 | "scope": [ 71 | "constant.numeric", 72 | "constant.character", 73 | "constant.keyword", 74 | "constant" 75 | ], 76 | "settings": { 77 | "foreground": "#CC8BC9" 78 | } 79 | }, 80 | { 81 | "name": "Global definitions", 82 | "scope": "entity.name", 83 | "settings": { 84 | "foreground": "#71ADE7" 85 | } 86 | }, 87 | { 88 | "name": "Punctuation", 89 | "scope": "punctuation", 90 | "settings": { 91 | "foreground": "#708B8D" 92 | } 93 | }, 94 | { 95 | "name": "Invalid", 96 | "scope": "invalid", 97 | "settings": { 98 | "background": "#96000014", 99 | "foreground": "#c33" 100 | } 101 | }, 102 | { 103 | "name": "Extra: Diff Range", 104 | "scope": ["meta.diff.range", "meta.diff.index", "meta.separator"], 105 | "settings": { 106 | "background": "#DDDDFF", 107 | "foreground": "#bbbbbb" 108 | } 109 | }, 110 | { 111 | "name": "Extra: Diff From", 112 | "scope": "meta.diff.header.from-file", 113 | "settings": { 114 | "background": "#FFDDDD", 115 | "foreground": "#bbbbbb" 116 | } 117 | }, 118 | { 119 | "name": "Extra: Diff To", 120 | "scope": "meta.diff.header.to-file", 121 | "settings": { 122 | "background": "#DDFFDD", 123 | "foreground": "#bbbbbb" 124 | } 125 | } 126 | ] 127 | } 128 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Alabaster Dark Theme 2 | 3 | A dark theme with minimal amount of highlighting for 4 | [Visual Studio Code](http://code.visualstudio.com). 5 | 6 | ## Motivation 7 | 8 | Most color themes highlight everything they can, ending up looking like a 9 | fireworks show. 10 | 11 | Instead, Alabaster uses minimal highlighting; it defines just four classes: 12 | 13 | 1. Strings 14 | 2. All statically known constants (numbers, symbols, keywords, boolean values) 15 | 3. Comments 16 | 4. Global definitions 17 | 18 | Additionally: 19 | 20 | - Alabaster does not highlight standard language keywords (if, else, function, 21 | etc). They are usually least important and most obvious part of any program. 22 | 23 | - Alabaster highlights comments. Most themes try to dim comments by using 24 | low-contrast greys. I think if code was complex enough that it deserved an 25 | explanation then it’s that explanation we should see and read first. It would 26 | be a crime to hide it. 27 | 28 | - Alabaster doesn’t use font variations. It’s hard to scan code when it jumps 29 | between normal, **bold** and _italics_ all the time. Also, not all fonts 30 | provide bold/italics variants. 31 | 32 | - Having minimal amount of rules means you can consciously use them to look for 33 | the exact piece of information you need. Most other “fireworks” themes provide 34 | only one meaningful contribution: if it’s colored it’s probably syntactically 35 | correct. Instead, in Alabaster you can actually remember all the rules, and 36 | e.g. if you need to look for a string you know that you’re looking for a green 37 | token. And all the strings really pop out because there are not many other 38 | things highlighted. 39 | 40 | - Alabaster only highlights things that parser could identify reliably. I 41 | believe that if highlighting works only partially then it does more harm than 42 | good. When highlighting works reliably, your brain learns to rely on it. When 43 | it’s not reliable, your brain spends precious brain cycles to re-check 44 | everything it sees on the screen. 45 | 46 | ![Screenshot](https://raw.githubusercontent.com/gargakshit/vscode-theme-alabaster-dark/master/images/screenshot.png) 47 | 48 | ## What our users [are saying](https://marketplace.visualstudio.com/items?itemName=tonsky.theme-alabaster&ssr=false#review-details)? 49 | 50 | > It's like I had this weight on my eyes, and now it's gone. Awesome! 51 | 52 | – Alex Sugak ★★★★★ 53 | 54 | > After your theme others looks like unreadable neon things 🤯 55 | 56 | – lamartire ★★★★★ 57 | 58 | > Minimalistic cool 59 | 60 | – denisgrib ★★★★★ 61 | 62 | > Super minimal and undistracting. Easy to read. 63 | 64 | – Josh Bernitt ★★★★★ 65 | 66 | > A little bit confusing at first if you're from The Dark Land. But then you 67 | > just chill. 68 | 69 | – aenor.realm ★★★★★ 70 | 71 | ## Install 72 | 73 | 1. Go to `Extensions` 74 | 2. Search for `alabaster dark` 75 | 3. Install 76 | 4. Go to `Preferences → Color Theme` and choose `Alabaster Dark` 77 | 78 | # Credits 79 | 80 | - [Original Alabaster Theme](https://github.com/tonsky/sublime-scheme-alabaster) 81 | - [Codeschool2 Minimal Theme](https://github.com/bernik/vscode-theme-codeschool2-minimal) 82 | 83 | ## License 84 | 85 | [MIT License](https://github.com/tonsky/vscode-theme-alabaster/blob/master/./LICENSE.txt) 86 | 87 | ## Variations 88 | 89 | - Dark for VS Code 90 | [apust/vscode-rubber-theme](https://github.com/apust/vscode-rubber-theme) 91 | - Dark for VS Code (closer to the original ST version) 92 | [gargakshit/vscode-theme-alabaster-dark](https://github.com/gargakshit/vscode-theme-alabaster-dark) 93 | - for Sublime Text 3 94 | [tonsky/sublime-scheme-alabaster](https://github.com/tonsky/sublime-scheme-alabaster) 95 | - for JetBrains IDEs (IntelliJ IDEA etc) 96 | [tonsky/intellij-alabaster](https://github.com/tonsky/intellij-alabaster) 97 | - for Sublime Text 2 (unofficial) 98 | [freetonik/Travertine](https://github.com/freetonik/Travertine] 99 | - Original version for LigthTable 100 | [tonsky/alabaster-lighttable-skin](https://github.com/tonsky/alabaster-lighttable-skin) 101 | --------------------------------------------------------------------------------