├── images ├── logo.png └── screenshot.png ├── .gitignore ├── .vscodeignore ├── .circleci └── config.yml ├── package.json ├── CHANGELOG.md ├── README.md ├── themes ├── Hopscotch [proofreader].json ├── Hopscotch Mono [proofreader].json ├── Hopscotch Classic.json ├── hopscotch.json ├── Hopscotch Mono.json └── hopscotch.tmTheme └── LICENSE /images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/idleberg/vscode-hopscotch/HEAD/images/logo.png -------------------------------------------------------------------------------- /images/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/idleberg/vscode-hopscotch/HEAD/images/screenshot.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Development 2 | *.map 3 | 4 | # Package managers 5 | bower_components/ 6 | node_modules/ 7 | npm-debug.log* 8 | pnpm-lock.yaml 9 | shrinkwrap.yaml 10 | vendor/ 11 | yarn.lock 12 | 13 | # Project specific 14 | *.vsix 15 | todo.md 16 | -------------------------------------------------------------------------------- /.vscodeignore: -------------------------------------------------------------------------------- 1 | # Development 2 | *.map 3 | 4 | # Package managers 5 | bower_components/ 6 | node_modules/ 7 | npm-debug.log* 8 | pnpm-lock.yaml 9 | shrinkwrap.yaml 10 | vendor/ 11 | yarn.lock 12 | 13 | # Project specific 14 | *.vsix 15 | todo.md 16 | -------------------------------------------------------------------------------- /.circleci/config.yml: -------------------------------------------------------------------------------- 1 | version: 2.1 2 | 3 | commands: 4 | run-tests: 5 | steps: 6 | - checkout 7 | - restore_cache: 8 | key: dependency-cache-{{ checksum "package.json" }} 9 | - run: 10 | name: Installing Dependencies 11 | command: npm ci 12 | - save_cache: 13 | key: dependency-cache-{{ checksum "package.json" }} 14 | paths: 15 | - ./node_modules 16 | - run: 17 | name: Lint Source 18 | command: npm run test 19 | 20 | jobs: 21 | node-latest: 22 | docker: 23 | - image: circleci/node:latest 24 | steps: 25 | - run-tests 26 | 27 | node-lts: 28 | docker: 29 | - image: circleci/node:lts 30 | steps: 31 | - run-tests 32 | 33 | workflows: 34 | node-multi-build: 35 | jobs: 36 | - node-latest 37 | - node-lts 38 | version: 2 39 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hopscotch", 3 | "displayName": "Hopscotch", 4 | "description": "Color scheme inspired by the Hopscotch learning platform for kids", 5 | "version": "0.8.2", 6 | "publisher": "idleberg", 7 | "license": "CC0-1.0", 8 | "author": { 9 | "name": "Jan T. Sott", 10 | "url": "http://github.com/idleberg" 11 | }, 12 | "scripts": { 13 | "test": "vscode-linter", 14 | "vscode:prepublish": "npm run test" 15 | }, 16 | "keywords": [ 17 | "hopscotch" 18 | ], 19 | "repository": { 20 | "type": "git", 21 | "url": "https://github.com/idleberg/vscode-hopscotch" 22 | }, 23 | "homepage": "https://github.com/idleberg/vscode-hopscotch#readme", 24 | "bugs": { 25 | "url": "https://github.com/idleberg/vscode-hopscotch/issues" 26 | }, 27 | "icon": "images/logo.png", 28 | "galleryBanner": { 29 | "color": "#322931", 30 | "theme": "dark" 31 | }, 32 | "engines": { 33 | "vscode": "^1.0.0" 34 | }, 35 | "categories": [ 36 | "Themes" 37 | ], 38 | "contributes": { 39 | "themes": [ 40 | { 41 | "label": "Hopscotch", 42 | "uiTheme": "vs-dark", 43 | "path": "./themes/Hopscotch.json" 44 | }, 45 | { 46 | "label": "Hopscotch [proofreader]", 47 | "uiTheme": "vs-dark", 48 | "path": "./themes/Hopscotch [proofreader].json" 49 | }, 50 | { 51 | "label": "Hopscotch Mono", 52 | "uiTheme": "vs-dark", 53 | "path": "./themes/Hopscotch Mono.json" 54 | }, 55 | { 56 | "label": "Hopscotch Mono [proofreader]", 57 | "uiTheme": "vs-dark", 58 | "path": "./themes/Hopscotch Mono [proofreader].json" 59 | }, 60 | { 61 | "label": "Hopscotch Classic", 62 | "uiTheme": "vs-dark", 63 | "path": "./themes/Hopscotch Classic.json" 64 | }, 65 | { 66 | "label": "Hopscotch (TextMate)", 67 | "uiTheme": "vs-dark", 68 | "path": "./themes/Hopscotch.tmTheme" 69 | } 70 | ] 71 | }, 72 | "devDependencies": { 73 | "husky": "^4.2.5", 74 | "vscode-linter": "^0.3.1" 75 | }, 76 | "husky": { 77 | "hooks": { 78 | "pre-commit": "npm run test" 79 | } 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # v0.8.2 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.8.2) 2 | 3 | - switch background colors for active selection/hover in list 4 | 5 | # v0.8.1 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.8.1) 6 | 7 | - fix filename of classic and TextMate versions 8 | 9 | # v0.8.0 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.8.0) 10 | 11 | - add variants for proofreaders 12 | - rename theme files 13 | - update dependencies 14 | 15 | # v0.7.0 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.7.0) 16 | 17 | - add list colors 18 | - adjust terminal colors 19 | - adjust remote status bar item color 20 | 21 | # v0.6.0 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.6.0) 22 | 23 | - add support for [semantic highlighting](https://github.com/microsoft/vscode/wiki/Semantic-Highlighting-Overview) 24 | - add support for `statusBarItem.remoteBackground` 25 | 26 | # v0.5.0 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.5.0) 27 | 28 | - add Hopscotch Mono variant 29 | - rename other variants 30 | 31 | # v0.4.1 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.4.1) 32 | 33 | - remove gulp build script 34 | 35 | # v0.4.0 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.4.0) 36 | 37 | - add badge styles 38 | - change logo 39 | 40 | # v0.3.0 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.3.0) 41 | 42 | - style parts of the editor window (*work in progress*) 43 | - rename old theme to "Syntax Theme" 44 | 45 | # v0.2.3 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.2.3) 46 | 47 | - update description 48 | - update dependencies 49 | 50 | # v0.2.2 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.2.2) 51 | 52 | - replace linter 53 | - update dependencies 54 | 55 | # v0.2.1 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.2.1) 56 | 57 | - update development toolchain 58 | - update Travis CI configuration 59 | 60 | # v0.2.0 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.2.0) 61 | 62 | - switch to JSON theme format 63 | 64 | # v0.1.5 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.1.5) 65 | 66 | - use PNG logo (as required by upcoming versions of Code) 67 | - update `devDependencies` 68 | 69 | # v0.1.4 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.1.4) 70 | 71 | - integrate `yarn.lock` into Travis CI tests 72 | 73 | # v0.1.3 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.1.3) 74 | 75 | - add `LICENSE` 76 | 77 | # v0.1.2 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.1.2) 78 | 79 | - fix logo 80 | - fix caption 81 | 82 | # v0.1.1 [#](https://github.com/idleberg/vscode-hopscotch/releases/tag/0.1.1) 83 | 84 | - first release 85 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Hopscotch for Visual Studio Code 2 | 3 | [![Creative Commons](https://flat.badgen.net/badge/license/CC0%201.0/orange)](http://creativecommons.org/publicdomain/zero/1.0/) 4 | [![GitHub](https://flat.badgen.net/github/release/idleberg/vscode-hopscotch)](https://github.com/idleberg/vscode-hopscotch/releases) 5 | [![Visual Studio Marketplace](https://vsmarketplacebadge.apphb.com/installs-short/idleberg.hopscotch.svg?style=flat-square)](https://marketplace.visualstudio.com/items?itemName=idleberg.hopscotch) 6 | [![CircleCI](https://flat.badgen.net/circleci/github/idleberg/vscode-hopscotch)](https://circleci.com/gh/idleberg/vscode-hopscotch) 7 | 8 | Color scheme inspired by the Hopscotch learning platform for kids 9 | 10 | ![Screenshot](https://raw.githubusercontent.com/idleberg/vscode-hopscotch/master/images/screenshot.png) 11 | 12 | *Generic screenshot* 13 | 14 | This extension now includes severals variants of the theme: 15 | 16 | - Hopscotch 17 | - Hopscotch Mono, a less colourful variant 18 | - Hopscotch Classic, a syntax-only theme 19 | - TextMate 20 | 21 | Additionally, *Hopscotch* and *Hopscotch Mono* are available in variants for proofreaders, highlighting only comments and strings. 22 | 23 | Also [available](https://github.com/idleberg/Hopscotch) for these apps: 24 | 25 | * [Atom](https://atom.io/themes/hopscotch) 26 | * BBEdit 27 | * Brackets 28 | * CodeMirror 29 | * Emacs 30 | * Gedit 31 | * highlight.js 32 | * IDEA 33 | * iTerm2 34 | * Mou 35 | * Notepad++ 36 | * Prettify.js 37 | * Prism.js 38 | * PuTTY 39 | * Pygments 40 | * Rainbow 41 | * Shell 42 | * [Sublime Text](https://packagecontrol.io/packages/Hopscotch%20Color%20Scheme) 43 | * Terminal 44 | * TextMate 45 | * Vim 46 | * Visual Studio 47 | * Windows Command Prompt 48 | * XCode 49 | 50 | ## Installation 51 | 52 | ### Extension Marketplace 53 | 54 | Launch Quick Open, paste the following command, and press Enter 55 | 56 | `ext install idleberg.hopscotch` 57 | 58 | ### CLI 59 | 60 | With [shell commands](https://code.visualstudio.com/docs/editor/command-line) installed, you can use the following command to install the extension: 61 | 62 | `$ code --install-extension idleberg.hopscotch` 63 | 64 | ### Packaged Extension 65 | 66 | Download the packaged extension from the the [release page](https://github.com/idleberg/vscode-hopscotch/releases) and install it from the command-line: 67 | 68 | ```bash 69 | $ code --install-extension path/to/hopscotch-*.vsix 70 | ``` 71 | 72 | Alternatively, you can download the packaged extension from the [Open VSX Registry](https://open-vsx.org/) or install it using the [`ovsx`](https://www.npmjs.com/package/ovsx) command-line tool: 73 | 74 | ```bash 75 | $ ovsx get idleberg.hopscotch 76 | ``` 77 | 78 | ### Clone Repository 79 | 80 | Change to your Visual Studio Code extensions directory: 81 | 82 | ```bash 83 | # Windows 84 | $ cd %USERPROFILE%\.vscode\extensions 85 | 86 | # Linux & macOS 87 | $ cd ~/.vscode/extensions/ 88 | ``` 89 | 90 | Clone repository as `hopscotch`: 91 | 92 | ```bash 93 | $ git clone https://github.com/idleberg/vscode-hopscotch idleberg.hopscotch 94 | ``` 95 | 96 | ## License 97 | 98 | This work is licensed under the [Creative Commons CC0 1.0 Universal License](http://creativecommons.org/publicdomain/zero/1.0/legalcode). -------------------------------------------------------------------------------- /themes/Hopscotch [proofreader].json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hopscotch Mono (Proof Reader)", 3 | "type": "dark", 4 | "semanticHighlighting": true, 5 | "colors": { 6 | "activityBar.activeBackground": "#645287", 7 | "activityBar.activeBorder": "#645287", 8 | "activityBar.background": "#392f4b", 9 | "activityBar.foreground": "#fffde6", 10 | "activityBar.inactiveForeground": "#b9b5b8", 11 | "activityBarBadge.background": "#fc332b", 12 | "activityBarBadge.foreground": "#fdcb23", 13 | "badge.background": "#19988b", 14 | "button.background": "#829bd6", 15 | "button.foreground": "#fffde6", 16 | "button.hoverBackground": "#f490c1", 17 | "editor.background": "#322931", 18 | "editor.foreground": "#797379", 19 | "editor.lineHighlightBackground": "#0e4842", 20 | "editor.selectionBackground": "#5d283c", 21 | "editor.selectionHighlightBackground": "#4a3f5e", 22 | "editorGroupHeader.tabsBackground": "#171015", 23 | "editorLineNumber.foreground": "#b9b5b8", 24 | "editorLink.activeForeground": "#75f0c3", 25 | "editorWidget.background": "#171015", 26 | "extensionButton.prominentBackground": "#0b998c", 27 | "extensionButton.prominentHoverBackground": "#59c9be", 28 | "focusBorder": "#fdcb23", 29 | "list.activeSelectionBackground": "#dd464c", 30 | "list.focusBackground": "#962a3e", 31 | "list.highlightForeground": "#fffde6", 32 | "list.hoverBackground": "#af393d", 33 | "list.hoverForeground": "#fffde6", 34 | "list.inactiveSelectionBackground": "#962a3e", 35 | "minimap.background": "#322931", 36 | "minimap.selectionHighlight": "#5d283c", 37 | "notificationCenter.border": "#171015", 38 | "notificationCenterHeader.background": "#4a1c2e", 39 | "notificationCenterHeader.foreground": "#fffde6", 40 | "notificationLink.foreground": "#fdcb23", 41 | "notifications.background": "#645287", 42 | "notifications.foreground": "#fffde6", 43 | "notificationsErrorIcon.foreground": "#f2480f", 44 | "notificationsInfoIcon.foreground": "#1290bf", 45 | "notificationsWarningIcon.foreground": "#fd8b19", 46 | "sideBar.background": "#171015", 47 | "sideBar.debuggingBackground": "#e2430e", 48 | "sideBar.foreground": "#b9b5b8", 49 | "sideBarSectionHeader.background": "#645287", 50 | "sideBarSectionHeader.foreground": "#fffde6", 51 | "statusBar.background": "#1290bf", 52 | "statusBar.debuggingBackground": "#fd8b19", 53 | "statusBar.foreground": "#fff", 54 | "statusBar.noFolderBackground": "#7d3765", 55 | "statusBarItem.remoteBackground": "#1290bf", 56 | "tab.activeBackground": "#645287", 57 | "tab.inactiveBackground": "#392f4b", 58 | "terminal.ansiBlue": "#1290bf", 59 | "terminal.ansiBrightBlue": "#829bd6", 60 | "terminal.ansiBrightCyan": "#1ac9bf", 61 | "terminal.ansiBrightGreen": "#5fdba7", 62 | "terminal.ansiBrightMagenta": "#f490c1", 63 | "terminal.ansiBrightRed": "#fd948c", 64 | "terminal.ansiBrightWhite": "#fff", 65 | "terminal.ansiBrigthYellow": "#fed46b", 66 | "terminal.ansiCyan": "#19988b", 67 | "terminal.ansiGreen": "#8fc13e", 68 | "terminal.ansiMagenta": "#fc608a", 69 | "terminal.ansiRed": "#fc332b", 70 | "terminal.ansiWhite": "#fffde6", 71 | "terminal.ansiYellow": "#fdcb23", 72 | "terminal.foreground": "#b9b5b8", 73 | "terminal.selectionBackground": "#5d283c", 74 | "textLink.activeForeground": "#f490c1", 75 | "textLink.foreground": "#829bd6", 76 | "titleBar.activeBackground": "#171015", 77 | "window.activeBorder": "#171015", 78 | "window.inactiveBorder": "#171015" 79 | }, 80 | "tokenColors": [ 81 | { 82 | "name": "Comments, Strings", 83 | "scope": [ 84 | "comment", 85 | "punctuation.definition.comment", 86 | "string" 87 | ], 88 | "settings": { 89 | "foreground": "#b9b5b8" 90 | } 91 | }, 92 | { 93 | "name": "Classes, Storage, Variables", 94 | "scope": [ 95 | "entity", 96 | "storage", 97 | "variable" 98 | ], 99 | "settings": { 100 | "foreground": "#797379" 101 | } 102 | }, 103 | { 104 | "name": "Escape Characters", 105 | "scope": "constant.character.escape", 106 | "settings": { 107 | "foreground": "#7e602c" 108 | } 109 | } 110 | ] 111 | } -------------------------------------------------------------------------------- /themes/Hopscotch Mono [proofreader].json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hopscotch Mono (Proof Reader)", 3 | "type": "dark", 4 | "semanticHighlighting": true, 5 | "colors": { 6 | "activityBar.activeBackground": "#171015", 7 | "activityBar.activeBorder": "#645287", 8 | "activityBar.background": "#171015", 9 | "activityBar.foreground": "#fffde6", 10 | "activityBar.inactiveForeground": "#b9b5b8", 11 | "activityBarBadge.background": "#fc332b", 12 | "activityBarBadge.foreground": "#fdcb23", 13 | "badge.background": "#19988b", 14 | "button.background": "#829bd6", 15 | "button.foreground": "#fffde6", 16 | "button.hoverBackground": "#f490c1", 17 | "editor.background": "#322931", 18 | "editor.foreground": "#797379", 19 | "editor.lineHighlightBackground": "#0e4842", 20 | "editor.selectionBackground": "#5d283c", 21 | "editor.selectionHighlightBackground": "#4a3f5e", 22 | "editorGroupHeader.tabsBackground": "#171015", 23 | "editorLineNumber.foreground": "#b9b5b8", 24 | "editorLink.activeForeground": "#75f0c3", 25 | "editorWidget.background": "#171015", 26 | "extensionButton.prominentBackground": "#0b998c", 27 | "extensionButton.prominentHoverBackground": "#59c9be", 28 | "focusBorder": "#171015", 29 | "list.activeSelectionBackground": "#645287", 30 | "list.focusBackground": "#645287", 31 | "list.highlightForeground": "#75f0c3", 32 | "list.hoverBackground": "#392f4b", 33 | "list.hoverForeground": "#fffde6", 34 | "list.inactiveSelectionBackground": "#322931", 35 | "minimap.background": "#322931", 36 | "minimap.selectionHighlight": "#5d283c", 37 | "notificationCenter.border": "#171015", 38 | "notificationCenterHeader.background": "#171015", 39 | "notificationCenterHeader.foreground": "#fffde6", 40 | "notificationLink.foreground": "#fdcb23", 41 | "notifications.background": "#645287", 42 | "notifications.foreground": "#fffde6", 43 | "notificationsErrorIcon.foreground": "#f2480f", 44 | "notificationsInfoIcon.foreground": "#1290bf", 45 | "notificationsWarningIcon.foreground": "#fd8b19", 46 | "sideBar.background": "#171015", 47 | "sideBar.debuggingBackground": "#171015", 48 | "sideBar.foreground": "#b9b5b8", 49 | "sideBarSectionHeader.background": "#171015", 50 | "sideBarSectionHeader.foreground": "#fffde6", 51 | "statusBar.background": "#171015", 52 | "statusBar.debuggingBackground": "#fd8b19", 53 | "statusBar.foreground": "#fff", 54 | "statusBar.noFolderBackground": "#171015", 55 | "statusBarItem.remoteBackground": "#171015", 56 | "tab.activeBackground": "#322931", 57 | "tab.inactiveBackground": "#171015", 58 | "terminal.ansiBlue": "#1290bf", 59 | "terminal.ansiBrightBlue": "#829bd6", 60 | "terminal.ansiBrightCyan": "#1ac9bf", 61 | "terminal.ansiBrightGreen": "#5fdba7", 62 | "terminal.ansiBrightMagenta": "#f490c1", 63 | "terminal.ansiBrightRed": "#fd948c", 64 | "terminal.ansiBrightWhite": "#fff", 65 | "terminal.ansiBrigthYellow": "#fed46b", 66 | "terminal.ansiCyan": "#19988b", 67 | "terminal.ansiGreen": "#8fc13e", 68 | "terminal.ansiMagenta": "#fc608a", 69 | "terminal.ansiRed": "#fc332b", 70 | "terminal.ansiWhite": "#fffde6", 71 | "terminal.ansiYellow": "#fdcb23", 72 | "terminal.foreground": "#b9b5b8", 73 | "terminal.selectionBackground": "#5d283c", 74 | "textLink.activeForeground": "#f490c1", 75 | "textLink.foreground": "#829bd6", 76 | "titleBar.activeBackground": "#171015", 77 | "window.activeBorder": "#171015", 78 | "window.inactiveBorder": "#171015" 79 | }, 80 | "tokenColors": [ 81 | { 82 | "name": "Comments, Strings", 83 | "scope": [ 84 | "comment", 85 | "punctuation.definition.comment", 86 | "string" 87 | ], 88 | "settings": { 89 | "foreground": "#b9b5b8" 90 | } 91 | }, 92 | { 93 | "name": "Classes, Storage, Variables", 94 | "scope": [ 95 | "entity", 96 | "storage", 97 | "variable" 98 | ], 99 | "settings": { 100 | "foreground": "#797379" 101 | } 102 | }, 103 | { 104 | "name": "Escape Characters", 105 | "scope": "constant.character.escape", 106 | "settings": { 107 | "foreground": "#7e602c" 108 | } 109 | } 110 | ] 111 | } -------------------------------------------------------------------------------- /themes/Hopscotch Classic.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hopscotch Classic", 3 | "type": "dark", 4 | "semanticHighlighting": true, 5 | "colors": { 6 | "editor.background": "#322931", 7 | "editor.foreground": "#b9b5b8" 8 | }, 9 | "tokenColors": [ 10 | { 11 | "settings": { 12 | "background": "#322931", 13 | "foreground": "#b9b5b8" 14 | } 15 | }, 16 | { 17 | "name": "Text", 18 | "scope": "variable.parameter.function", 19 | "settings": { 20 | "foreground": "#b9b5b8" 21 | } 22 | }, 23 | { 24 | "name": "Comments", 25 | "scope": [ 26 | "comment", 27 | "punctuation.definition.comment" 28 | ], 29 | "settings": { 30 | "foreground": "#797379" 31 | } 32 | }, 33 | { 34 | "name": "Punctuation", 35 | "scope": [ 36 | "punctuation.definition.string", 37 | "punctuation.definition.variable", 38 | "punctuation.definition.string", 39 | "punctuation.definition.parameters", 40 | "punctuation.definition.string", 41 | "punctuation.definition.array" 42 | ], 43 | "settings": { 44 | "foreground": "#b9b5b8" 45 | } 46 | }, 47 | { 48 | "name": "Delimiters", 49 | "scope": "none", 50 | "settings": { 51 | "foreground": "#b9b5b8" 52 | } 53 | }, 54 | { 55 | "name": "Operators", 56 | "scope": "keyword.operator", 57 | "settings": { 58 | "foreground": "#b9b5b8" 59 | } 60 | }, 61 | { 62 | "name": "Keywords", 63 | "scope": [ 64 | "keyword", 65 | "keyword.control" 66 | ], 67 | "settings": { 68 | "foreground": "#c85e7c" 69 | } 70 | }, 71 | { 72 | "name": "Variables", 73 | "scope": "variable", 74 | "settings": { 75 | "foreground": "#dd464c" 76 | } 77 | }, 78 | { 79 | "name": "Functions", 80 | "scope": [ 81 | "entity.name.function", 82 | "meta.require", 83 | "support.function.any-method" 84 | ], 85 | "settings": { 86 | "foreground": "#1290bf" 87 | } 88 | }, 89 | { 90 | "name": "Classes", 91 | "scope": [ 92 | "support.class", 93 | "entity.name.class", 94 | "entity.name.type" 95 | ], 96 | "settings": { 97 | "foreground": "#fdcc59" 98 | } 99 | }, 100 | { 101 | "name": "Methods", 102 | "scope": "keyword.other.special-method", 103 | "settings": { 104 | "foreground": "#1290bf" 105 | } 106 | }, 107 | { 108 | "name": "Storage", 109 | "scope": "storage", 110 | "settings": { 111 | "foreground": "#c85e7c" 112 | } 113 | }, 114 | { 115 | "name": "Support", 116 | "scope": "support.function", 117 | "settings": { 118 | "foreground": "#7e602c" 119 | } 120 | }, 121 | { 122 | "name": "Strings, Inherited Class", 123 | "scope": [ 124 | "string", 125 | "constant.other.symbol", 126 | "entity.other.inherited-class" 127 | ], 128 | "settings": { 129 | "foreground": "#8fc13e" 130 | } 131 | }, 132 | { 133 | "name": "Integers", 134 | "scope": "constant.numeric", 135 | "settings": { 136 | "foreground": "#fd8b19" 137 | } 138 | }, 139 | { 140 | "name": "Floats", 141 | "scope": "none", 142 | "settings": { 143 | "foreground": "#fd8b19" 144 | } 145 | }, 146 | { 147 | "name": "Boolean", 148 | "scope": "none", 149 | "settings": { 150 | "foreground": "#fd8b19" 151 | } 152 | }, 153 | { 154 | "name": "Constants", 155 | "scope": "constant", 156 | "settings": { 157 | "foreground": "#fd8b19" 158 | } 159 | }, 160 | { 161 | "name": "Tags", 162 | "scope": "entity.name.tag", 163 | "settings": { 164 | "foreground": "#dd464c" 165 | } 166 | }, 167 | { 168 | "name": "Attributes", 169 | "scope": "entity.other.attribute-name", 170 | "settings": { 171 | "foreground": "#fd8b19" 172 | } 173 | }, 174 | { 175 | "name": "Attribute IDs", 176 | "scope": [ 177 | "entity.other.attribute-name.id", 178 | "punctuation.definition.entity" 179 | ], 180 | "settings": { 181 | "foreground": "#1290bf" 182 | } 183 | }, 184 | { 185 | "name": "Selector", 186 | "scope": "meta.selector", 187 | "settings": { 188 | "foreground": "#c85e7c" 189 | } 190 | }, 191 | { 192 | "name": "Values", 193 | "scope": "none", 194 | "settings": { 195 | "foreground": "#fd8b19" 196 | } 197 | }, 198 | { 199 | "name": "Headings", 200 | "scope": [ 201 | "markup.heading", 202 | "markup.heading.setext", 203 | "punctuation.definition.heading", 204 | "entity.name.section" 205 | ], 206 | "settings": { 207 | "fontStyle": "", 208 | "foreground": "#1290bf" 209 | } 210 | }, 211 | { 212 | "name": "Units", 213 | "scope": "keyword.other.unit", 214 | "settings": { 215 | "foreground": "#fd8b19" 216 | } 217 | }, 218 | { 219 | "name": "Bold", 220 | "scope": [ 221 | "markup.bold", 222 | "punctuation.definition.bold" 223 | ], 224 | "settings": { 225 | "fontStyle": "bold", 226 | "foreground": "#fdcc59" 227 | } 228 | }, 229 | { 230 | "name": "Italic", 231 | "scope": [ 232 | "markup.italic", 233 | "punctuation.definition.italic" 234 | ], 235 | "settings": { 236 | "fontStyle": "italic", 237 | "foreground": "#c85e7c" 238 | } 239 | }, 240 | { 241 | "name": "Code", 242 | "scope": "markup.inline.raw", 243 | "settings": { 244 | "foreground": "#8fc13e" 245 | } 246 | }, 247 | { 248 | "name": "Link Text", 249 | "scope": "string.other.link", 250 | "settings": { 251 | "foreground": "#dd464c" 252 | } 253 | }, 254 | { 255 | "name": "Link Url", 256 | "scope": "meta.link", 257 | "settings": { 258 | "foreground": "#fd8b19" 259 | } 260 | }, 261 | { 262 | "name": "Lists", 263 | "scope": "markup.list", 264 | "settings": { 265 | "foreground": "#dd464c" 266 | } 267 | }, 268 | { 269 | "name": "Quotes", 270 | "scope": "markup.quote", 271 | "settings": { 272 | "foreground": "#fd8b19" 273 | } 274 | }, 275 | { 276 | "name": "Separator", 277 | "scope": "meta.separator", 278 | "settings": { 279 | "background": "#5c545b", 280 | "foreground": "#b9b5b8" 281 | } 282 | }, 283 | { 284 | "name": "Inserted", 285 | "scope": "markup.inserted", 286 | "settings": { 287 | "foreground": "#8fc13e" 288 | } 289 | }, 290 | { 291 | "name": "Deleted", 292 | "scope": "markup.deleted", 293 | "settings": { 294 | "foreground": "#dd464c" 295 | } 296 | }, 297 | { 298 | "name": "Changed", 299 | "scope": "markup.changed", 300 | "settings": { 301 | "foreground": "#c85e7c" 302 | } 303 | }, 304 | { 305 | "name": "Colors", 306 | "scope": "constant.other.color", 307 | "settings": { 308 | "foreground": "#7e602c" 309 | } 310 | }, 311 | { 312 | "name": "Regular Expressions", 313 | "scope": "string.regexp", 314 | "settings": { 315 | "foreground": "#7e602c" 316 | } 317 | }, 318 | { 319 | "name": "Escape Characters", 320 | "scope": "constant.character.escape", 321 | "settings": { 322 | "foreground": "#7e602c" 323 | } 324 | }, 325 | { 326 | "name": "Embedded", 327 | "scope": [ 328 | "punctuation.section.embedded", 329 | "variable.interpolation" 330 | ], 331 | "settings": { 332 | "foreground": "#149b93" 333 | } 334 | }, 335 | { 336 | "name": "Invalid", 337 | "scope": "invalid.illegal", 338 | "settings": { 339 | "foreground": "#dd464c" 340 | } 341 | } 342 | ] 343 | } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Creative Commons Legal Code 2 | 3 | CC0 1.0 Universal 4 | 5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE 6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN 7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS 8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES 9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS 10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM 11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED 12 | HEREUNDER. 13 | 14 | Statement of Purpose 15 | 16 | The laws of most jurisdictions throughout the world automatically confer 17 | exclusive Copyright and Related Rights (defined below) upon the creator 18 | and subsequent owner(s) (each and all, an "owner") of an original work of 19 | authorship and/or a database (each, a "Work"). 20 | 21 | Certain owners wish to permanently relinquish those rights to a Work for 22 | the purpose of contributing to a commons of creative, cultural and 23 | scientific works ("Commons") that the public can reliably and without fear 24 | of later claims of infringement build upon, modify, incorporate in other 25 | works, reuse and redistribute as freely as possible in any form whatsoever 26 | and for any purposes, including without limitation commercial purposes. 27 | These owners may contribute to the Commons to promote the ideal of a free 28 | culture and the further production of creative, cultural and scientific 29 | works, or to gain reputation or greater distribution for their Work in 30 | part through the use and efforts of others. 31 | 32 | For these and/or other purposes and motivations, and without any 33 | expectation of additional consideration or compensation, the person 34 | associating CC0 with a Work (the "Affirmer"), to the extent that he or she 35 | is an owner of Copyright and Related Rights in the Work, voluntarily 36 | elects to apply CC0 to the Work and publicly distribute the Work under its 37 | terms, with knowledge of his or her Copyright and Related Rights in the 38 | Work and the meaning and intended legal effect of CC0 on those rights. 39 | 40 | 1. Copyright and Related Rights. A Work made available under CC0 may be 41 | protected by copyright and related or neighboring rights ("Copyright and 42 | Related Rights"). Copyright and Related Rights include, but are not 43 | limited to, the following: 44 | 45 | i. the right to reproduce, adapt, distribute, perform, display, 46 | communicate, and translate a Work; 47 | ii. moral rights retained by the original author(s) and/or performer(s); 48 | iii. publicity and privacy rights pertaining to a person's image or 49 | likeness depicted in a Work; 50 | iv. rights protecting against unfair competition in regards to a Work, 51 | subject to the limitations in paragraph 4(a), below; 52 | v. rights protecting the extraction, dissemination, use and reuse of data 53 | in a Work; 54 | vi. database rights (such as those arising under Directive 96/9/EC of the 55 | European Parliament and of the Council of 11 March 1996 on the legal 56 | protection of databases, and under any national implementation 57 | thereof, including any amended or successor version of such 58 | directive); and 59 | vii. other similar, equivalent or corresponding rights throughout the 60 | world based on applicable law or treaty, and any national 61 | implementations thereof. 62 | 63 | 2. Waiver. To the greatest extent permitted by, but not in contravention 64 | of, applicable law, Affirmer hereby overtly, fully, permanently, 65 | irrevocably and unconditionally waives, abandons, and surrenders all of 66 | Affirmer's Copyright and Related Rights and associated claims and causes 67 | of action, whether now known or unknown (including existing as well as 68 | future claims and causes of action), in the Work (i) in all territories 69 | worldwide, (ii) for the maximum duration provided by applicable law or 70 | treaty (including future time extensions), (iii) in any current or future 71 | medium and for any number of copies, and (iv) for any purpose whatsoever, 72 | including without limitation commercial, advertising or promotional 73 | purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each 74 | member of the public at large and to the detriment of Affirmer's heirs and 75 | successors, fully intending that such Waiver shall not be subject to 76 | revocation, rescission, cancellation, termination, or any other legal or 77 | equitable action to disrupt the quiet enjoyment of the Work by the public 78 | as contemplated by Affirmer's express Statement of Purpose. 79 | 80 | 3. Public License Fallback. Should any part of the Waiver for any reason 81 | be judged legally invalid or ineffective under applicable law, then the 82 | Waiver shall be preserved to the maximum extent permitted taking into 83 | account Affirmer's express Statement of Purpose. In addition, to the 84 | extent the Waiver is so judged Affirmer hereby grants to each affected 85 | person a royalty-free, non transferable, non sublicensable, non exclusive, 86 | irrevocable and unconditional license to exercise Affirmer's Copyright and 87 | Related Rights in the Work (i) in all territories worldwide, (ii) for the 88 | maximum duration provided by applicable law or treaty (including future 89 | time extensions), (iii) in any current or future medium and for any number 90 | of copies, and (iv) for any purpose whatsoever, including without 91 | limitation commercial, advertising or promotional purposes (the 92 | "License"). The License shall be deemed effective as of the date CC0 was 93 | applied by Affirmer to the Work. Should any part of the License for any 94 | reason be judged legally invalid or ineffective under applicable law, such 95 | partial invalidity or ineffectiveness shall not invalidate the remainder 96 | of the License, and in such case Affirmer hereby affirms that he or she 97 | will not (i) exercise any of his or her remaining Copyright and Related 98 | Rights in the Work or (ii) assert any associated claims and causes of 99 | action with respect to the Work, in either case contrary to Affirmer's 100 | express Statement of Purpose. 101 | 102 | 4. Limitations and Disclaimers. 103 | 104 | a. No trademark or patent rights held by Affirmer are waived, abandoned, 105 | surrendered, licensed or otherwise affected by this document. 106 | b. Affirmer offers the Work as-is and makes no representations or 107 | warranties of any kind concerning the Work, express, implied, 108 | statutory or otherwise, including without limitation warranties of 109 | title, merchantability, fitness for a particular purpose, non 110 | infringement, or the absence of latent or other defects, accuracy, or 111 | the present or absence of errors, whether or not discoverable, all to 112 | the greatest extent permissible under applicable law. 113 | c. Affirmer disclaims responsibility for clearing rights of other persons 114 | that may apply to the Work or any use thereof, including without 115 | limitation any person's Copyright and Related Rights in the Work. 116 | Further, Affirmer disclaims responsibility for obtaining any necessary 117 | consents, permissions or other rights required for any use of the 118 | Work. 119 | d. Affirmer understands and acknowledges that Creative Commons is not a 120 | party to this document and has no duty or obligation with respect to 121 | this CC0 or use of the Work. -------------------------------------------------------------------------------- /themes/hopscotch.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hopscotch", 3 | "type": "dark", 4 | "semanticHighlighting": true, 5 | "colors": { 6 | "activityBar.activeBackground": "#645287", 7 | "activityBar.activeBorder": "#645287", 8 | "activityBar.background": "#392f4b", 9 | "activityBar.foreground": "#fffde6", 10 | "activityBar.inactiveForeground": "#b9b5b8", 11 | "activityBarBadge.background": "#fc332b", 12 | "activityBarBadge.foreground": "#fdcb23", 13 | "badge.background": "#19988b", 14 | "button.background": "#829bd6", 15 | "button.foreground": "#fffde6", 16 | "button.hoverBackground": "#f490c1", 17 | "editor.background": "#322931", 18 | "editor.foreground": "#b9b5b8", 19 | "editor.lineHighlightBackground": "#0e4842", 20 | "editor.selectionBackground": "#5d283c", 21 | "editor.selectionHighlightBackground": "#4a3f5e", 22 | "editorGroupHeader.tabsBackground": "#171015", 23 | "editorLineNumber.foreground": "#b9b5b8", 24 | "editorLink.activeForeground": "#75f0c3", 25 | "editorWidget.background": "#171015", 26 | "extensionButton.prominentBackground": "#0b998c", 27 | "extensionButton.prominentHoverBackground": "#59c9be", 28 | "focusBorder": "#fdcb23", 29 | "list.activeSelectionBackground": "#dd464c", 30 | "list.focusBackground": "#962a3e", 31 | "list.highlightForeground": "#fffde6", 32 | "list.hoverBackground": "#af393d", 33 | "list.hoverForeground": "#fffde6", 34 | "list.inactiveSelectionBackground": "#962a3e", 35 | "minimap.background": "#322931", 36 | "minimap.selectionHighlight": "#5d283c", 37 | "notificationCenter.border": "#171015", 38 | "notificationCenterHeader.background": "#4a1c2e", 39 | "notificationCenterHeader.foreground": "#fffde6", 40 | "notificationLink.foreground": "#fdcb23", 41 | "notifications.background": "#645287", 42 | "notifications.foreground": "#fffde6", 43 | "notificationsErrorIcon.foreground": "#f2480f", 44 | "notificationsInfoIcon.foreground": "#1290bf", 45 | "notificationsWarningIcon.foreground": "#fd8b19", 46 | "sideBar.background": "#171015", 47 | "sideBar.debuggingBackground": "#e2430e", 48 | "sideBar.foreground": "#b9b5b8", 49 | "sideBarSectionHeader.background": "#645287", 50 | "sideBarSectionHeader.foreground": "#fffde6", 51 | "statusBar.background": "#1290bf", 52 | "statusBar.debuggingBackground": "#fd8b19", 53 | "statusBar.foreground": "#fff", 54 | "statusBar.noFolderBackground": "#7d3765", 55 | "statusBarItem.remoteBackground": "#1290bf", 56 | "tab.activeBackground": "#645287", 57 | "tab.inactiveBackground": "#392f4b", 58 | "terminal.ansiBlue": "#1290bf", 59 | "terminal.ansiBrightBlue": "#829bd6", 60 | "terminal.ansiBrightCyan": "#1ac9bf", 61 | "terminal.ansiBrightGreen": "#5fdba7", 62 | "terminal.ansiBrightMagenta": "#f490c1", 63 | "terminal.ansiBrightRed": "#fd948c", 64 | "terminal.ansiBrightWhite": "#fff", 65 | "terminal.ansiBrigthYellow": "#fed46b", 66 | "terminal.ansiCyan": "#19988b", 67 | "terminal.ansiGreen": "#8fc13e", 68 | "terminal.ansiMagenta": "#fc608a", 69 | "terminal.ansiRed": "#fc332b", 70 | "terminal.ansiWhite": "#fffde6", 71 | "terminal.ansiYellow": "#fdcb23", 72 | "terminal.foreground": "#b9b5b8", 73 | "terminal.selectionBackground": "#5d283c", 74 | "textLink.activeForeground": "#f490c1", 75 | "textLink.foreground": "#829bd6", 76 | "titleBar.activeBackground": "#171015", 77 | "window.activeBorder": "#171015", 78 | "window.inactiveBorder": "#171015" 79 | }, 80 | "tokenColors": [ 81 | { 82 | "settings": { 83 | "background": "#322931", 84 | "foreground": "#b9b5b8" 85 | } 86 | }, 87 | { 88 | "name": "Text", 89 | "scope": "variable.parameter.function", 90 | "settings": { 91 | "foreground": "#b9b5b8" 92 | } 93 | }, 94 | { 95 | "name": "Comments", 96 | "scope": [ 97 | "comment", 98 | "punctuation.definition.comment" 99 | ], 100 | "settings": { 101 | "foreground": "#797379" 102 | } 103 | }, 104 | { 105 | "name": "Punctuation", 106 | "scope": [ 107 | "punctuation.definition.string", 108 | "punctuation.definition.variable", 109 | "punctuation.definition.string", 110 | "punctuation.definition.parameters", 111 | "punctuation.definition.string", 112 | "punctuation.definition.array" 113 | ], 114 | "settings": { 115 | "foreground": "#b9b5b8" 116 | } 117 | }, 118 | { 119 | "name": "Delimiters", 120 | "scope": "none", 121 | "settings": { 122 | "foreground": "#b9b5b8" 123 | } 124 | }, 125 | { 126 | "name": "Operators", 127 | "scope": "keyword.operator", 128 | "settings": { 129 | "foreground": "#b9b5b8" 130 | } 131 | }, 132 | { 133 | "name": "Keywords", 134 | "scope": [ 135 | "keyword", 136 | "keyword.control" 137 | ], 138 | "settings": { 139 | "foreground": "#c85e7c" 140 | } 141 | }, 142 | { 143 | "name": "Variables", 144 | "scope": "variable", 145 | "settings": { 146 | "foreground": "#dd464c" 147 | } 148 | }, 149 | { 150 | "name": "Functions", 151 | "scope": [ 152 | "entity.name.function", 153 | "meta.require", 154 | "support.function.any-method" 155 | ], 156 | "settings": { 157 | "foreground": "#1290bf" 158 | } 159 | }, 160 | { 161 | "name": "Classes", 162 | "scope": [ 163 | "support.class", 164 | "entity.name.class", 165 | "entity.name.type" 166 | ], 167 | "settings": { 168 | "foreground": "#fdcc59" 169 | } 170 | }, 171 | { 172 | "name": "Methods", 173 | "scope": "keyword.other.special-method", 174 | "settings": { 175 | "foreground": "#1290bf" 176 | } 177 | }, 178 | { 179 | "name": "Storage", 180 | "scope": "storage", 181 | "settings": { 182 | "foreground": "#c85e7c" 183 | } 184 | }, 185 | { 186 | "name": "Support", 187 | "scope": "support.function", 188 | "settings": { 189 | "foreground": "#7e602c" 190 | } 191 | }, 192 | { 193 | "name": "Strings, Inherited Class", 194 | "scope": [ 195 | "string", 196 | "constant.other.symbol", 197 | "entity.other.inherited-class" 198 | ], 199 | "settings": { 200 | "foreground": "#8fc13e" 201 | } 202 | }, 203 | { 204 | "name": "Integers", 205 | "scope": "constant.numeric", 206 | "settings": { 207 | "foreground": "#fd8b19" 208 | } 209 | }, 210 | { 211 | "name": "Floats", 212 | "scope": "none", 213 | "settings": { 214 | "foreground": "#fd8b19" 215 | } 216 | }, 217 | { 218 | "name": "Boolean", 219 | "scope": "none", 220 | "settings": { 221 | "foreground": "#fd8b19" 222 | } 223 | }, 224 | { 225 | "name": "Constants", 226 | "scope": "constant", 227 | "settings": { 228 | "foreground": "#fd8b19" 229 | } 230 | }, 231 | { 232 | "name": "Tags", 233 | "scope": "entity.name.tag", 234 | "settings": { 235 | "foreground": "#dd464c" 236 | } 237 | }, 238 | { 239 | "name": "Attributes", 240 | "scope": "entity.other.attribute-name", 241 | "settings": { 242 | "foreground": "#fd8b19" 243 | } 244 | }, 245 | { 246 | "name": "Attribute IDs", 247 | "scope": [ 248 | "entity.other.attribute-name.id", 249 | "punctuation.definition.entity" 250 | ], 251 | "settings": { 252 | "foreground": "#1290bf" 253 | } 254 | }, 255 | { 256 | "name": "Selector", 257 | "scope": "meta.selector", 258 | "settings": { 259 | "foreground": "#c85e7c" 260 | } 261 | }, 262 | { 263 | "name": "Values", 264 | "scope": "none", 265 | "settings": { 266 | "foreground": "#fd8b19" 267 | } 268 | }, 269 | { 270 | "name": "Headings", 271 | "scope": [ 272 | "markup.heading", 273 | "markup.heading.setext", 274 | "punctuation.definition.heading", 275 | "entity.name.section" 276 | ], 277 | "settings": { 278 | "fontStyle": "", 279 | "foreground": "#1290bf" 280 | } 281 | }, 282 | { 283 | "name": "Units", 284 | "scope": "keyword.other.unit", 285 | "settings": { 286 | "foreground": "#fd8b19" 287 | } 288 | }, 289 | { 290 | "name": "Bold", 291 | "scope": [ 292 | "markup.bold", 293 | "punctuation.definition.bold" 294 | ], 295 | "settings": { 296 | "fontStyle": "bold", 297 | "foreground": "#fdcc59" 298 | } 299 | }, 300 | { 301 | "name": "Italic", 302 | "scope": [ 303 | "markup.italic", 304 | "punctuation.definition.italic" 305 | ], 306 | "settings": { 307 | "fontStyle": "italic", 308 | "foreground": "#c85e7c" 309 | } 310 | }, 311 | { 312 | "name": "Code", 313 | "scope": "markup.inline.raw", 314 | "settings": { 315 | "foreground": "#8fc13e" 316 | } 317 | }, 318 | { 319 | "name": "Link Text", 320 | "scope": "string.other.link", 321 | "settings": { 322 | "foreground": "#dd464c" 323 | } 324 | }, 325 | { 326 | "name": "Link Url", 327 | "scope": "meta.link", 328 | "settings": { 329 | "foreground": "#fd8b19" 330 | } 331 | }, 332 | { 333 | "name": "Lists", 334 | "scope": "markup.list", 335 | "settings": { 336 | "foreground": "#dd464c" 337 | } 338 | }, 339 | { 340 | "name": "Quotes", 341 | "scope": "markup.quote", 342 | "settings": { 343 | "foreground": "#fd8b19" 344 | } 345 | }, 346 | { 347 | "name": "Separator", 348 | "scope": "meta.separator", 349 | "settings": { 350 | "background": "#5c545b", 351 | "foreground": "#b9b5b8" 352 | } 353 | }, 354 | { 355 | "name": "Inserted", 356 | "scope": "markup.inserted", 357 | "settings": { 358 | "foreground": "#8fc13e" 359 | } 360 | }, 361 | { 362 | "name": "Deleted", 363 | "scope": "markup.deleted", 364 | "settings": { 365 | "foreground": "#dd464c" 366 | } 367 | }, 368 | { 369 | "name": "Changed", 370 | "scope": "markup.changed", 371 | "settings": { 372 | "foreground": "#c85e7c" 373 | } 374 | }, 375 | { 376 | "name": "Colors", 377 | "scope": "constant.other.color", 378 | "settings": { 379 | "foreground": "#7e602c" 380 | } 381 | }, 382 | { 383 | "name": "Regular Expressions", 384 | "scope": "string.regexp", 385 | "settings": { 386 | "foreground": "#7e602c" 387 | } 388 | }, 389 | { 390 | "name": "Escape Characters", 391 | "scope": "constant.character.escape", 392 | "settings": { 393 | "foreground": "#7e602c" 394 | } 395 | }, 396 | { 397 | "name": "Embedded", 398 | "scope": [ 399 | "punctuation.section.embedded", 400 | "variable.interpolation" 401 | ], 402 | "settings": { 403 | "foreground": "#149b93" 404 | } 405 | }, 406 | { 407 | "name": "Invalid", 408 | "scope": "invalid.illegal", 409 | "settings": { 410 | "foreground": "#dd464c" 411 | } 412 | } 413 | ] 414 | } -------------------------------------------------------------------------------- /themes/Hopscotch Mono.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hopscotch Mono", 3 | "type": "dark", 4 | "semanticHighlighting": true, 5 | "colors": { 6 | "activityBar.activeBackground": "#171015", 7 | "activityBar.activeBorder": "#645287", 8 | "activityBar.background": "#171015", 9 | "activityBar.foreground": "#fffde6", 10 | "activityBar.inactiveForeground": "#b9b5b8", 11 | "activityBarBadge.background": "#fc332b", 12 | "activityBarBadge.foreground": "#fdcb23", 13 | "badge.background": "#19988b", 14 | "button.background": "#829bd6", 15 | "button.foreground": "#fffde6", 16 | "button.hoverBackground": "#f490c1", 17 | "editor.background": "#322931", 18 | "editor.foreground": "#b9b5b8", 19 | "editor.lineHighlightBackground": "#0e4842", 20 | "editor.selectionBackground": "#5d283c", 21 | "editor.selectionHighlightBackground": "#4a3f5e", 22 | "editorGroupHeader.tabsBackground": "#171015", 23 | "editorLineNumber.foreground": "#b9b5b8", 24 | "editorLink.activeForeground": "#75f0c3", 25 | "editorWidget.background": "#171015", 26 | "extensionButton.prominentBackground": "#0b998c", 27 | "extensionButton.prominentHoverBackground": "#59c9be", 28 | "focusBorder": "#171015", 29 | "list.activeSelectionBackground": "#645287", 30 | "list.focusBackground": "#645287", 31 | "list.highlightForeground": "#75f0c3", 32 | "list.hoverBackground": "#392f4b", 33 | "list.hoverForeground": "#fffde6", 34 | "list.inactiveSelectionBackground": "#322931", 35 | "minimap.background": "#322931", 36 | "minimap.selectionHighlight": "#5d283c", 37 | "notificationCenter.border": "#171015", 38 | "notificationCenterHeader.background": "#171015", 39 | "notificationCenterHeader.foreground": "#fffde6", 40 | "notificationLink.foreground": "#fdcb23", 41 | "notifications.background": "#645287", 42 | "notifications.foreground": "#fffde6", 43 | "notificationsErrorIcon.foreground": "#f2480f", 44 | "notificationsInfoIcon.foreground": "#1290bf", 45 | "notificationsWarningIcon.foreground": "#fd8b19", 46 | "sideBar.background": "#171015", 47 | "sideBar.debuggingBackground": "#171015", 48 | "sideBar.foreground": "#b9b5b8", 49 | "sideBarSectionHeader.background": "#171015", 50 | "sideBarSectionHeader.foreground": "#fffde6", 51 | "statusBar.background": "#171015", 52 | "statusBar.debuggingBackground": "#fd8b19", 53 | "statusBar.foreground": "#fff", 54 | "statusBar.noFolderBackground": "#171015", 55 | "statusBarItem.remoteBackground": "#171015", 56 | "tab.activeBackground": "#322931", 57 | "tab.inactiveBackground": "#171015", 58 | "terminal.ansiBlue": "#1290bf", 59 | "terminal.ansiBrightBlue": "#829bd6", 60 | "terminal.ansiBrightCyan": "#1ac9bf", 61 | "terminal.ansiBrightGreen": "#5fdba7", 62 | "terminal.ansiBrightMagenta": "#f490c1", 63 | "terminal.ansiBrightRed": "#fd948c", 64 | "terminal.ansiBrightWhite": "#fff", 65 | "terminal.ansiBrigthYellow": "#fed46b", 66 | "terminal.ansiCyan": "#19988b", 67 | "terminal.ansiGreen": "#8fc13e", 68 | "terminal.ansiMagenta": "#fc608a", 69 | "terminal.ansiRed": "#fc332b", 70 | "terminal.ansiWhite": "#fffde6", 71 | "terminal.ansiYellow": "#fdcb23", 72 | "terminal.foreground": "#b9b5b8", 73 | "terminal.selectionBackground": "#5d283c", 74 | "textLink.activeForeground": "#f490c1", 75 | "textLink.foreground": "#829bd6", 76 | "titleBar.activeBackground": "#171015", 77 | "window.activeBorder": "#171015", 78 | "window.inactiveBorder": "#171015" 79 | }, 80 | "tokenColors": [ 81 | { 82 | "settings": { 83 | "background": "#171015", 84 | "foreground": "#b9b5b8" 85 | } 86 | }, 87 | { 88 | "name": "Text", 89 | "scope": "variable.parameter.function", 90 | "settings": { 91 | "foreground": "#b9b5b8" 92 | } 93 | }, 94 | { 95 | "name": "Comments", 96 | "scope": [ 97 | "comment", 98 | "punctuation.definition.comment" 99 | ], 100 | "settings": { 101 | "foreground": "#797379" 102 | } 103 | }, 104 | { 105 | "name": "Punctuation", 106 | "scope": [ 107 | "punctuation.definition.string", 108 | "punctuation.definition.variable", 109 | "punctuation.definition.string", 110 | "punctuation.definition.parameters", 111 | "punctuation.definition.string", 112 | "punctuation.definition.array" 113 | ], 114 | "settings": { 115 | "foreground": "#b9b5b8" 116 | } 117 | }, 118 | { 119 | "name": "Delimiters", 120 | "scope": "none", 121 | "settings": { 122 | "foreground": "#b9b5b8" 123 | } 124 | }, 125 | { 126 | "name": "Operators", 127 | "scope": "keyword.operator", 128 | "settings": { 129 | "foreground": "#b9b5b8" 130 | } 131 | }, 132 | { 133 | "name": "Keywords", 134 | "scope": [ 135 | "keyword", 136 | "keyword.control" 137 | ], 138 | "settings": { 139 | "foreground": "#c85e7c" 140 | } 141 | }, 142 | { 143 | "name": "Variables", 144 | "scope": "variable", 145 | "settings": { 146 | "foreground": "#dd464c" 147 | } 148 | }, 149 | { 150 | "name": "Functions", 151 | "scope": [ 152 | "entity.name.function", 153 | "meta.require", 154 | "support.function.any-method" 155 | ], 156 | "settings": { 157 | "foreground": "#1290bf" 158 | } 159 | }, 160 | { 161 | "name": "Classes", 162 | "scope": [ 163 | "support.class", 164 | "entity.name.class", 165 | "entity.name.type" 166 | ], 167 | "settings": { 168 | "foreground": "#fdcc59" 169 | } 170 | }, 171 | { 172 | "name": "Methods", 173 | "scope": "keyword.other.special-method", 174 | "settings": { 175 | "foreground": "#1290bf" 176 | } 177 | }, 178 | { 179 | "name": "Storage", 180 | "scope": "storage", 181 | "settings": { 182 | "foreground": "#c85e7c" 183 | } 184 | }, 185 | { 186 | "name": "Support", 187 | "scope": "support.function", 188 | "settings": { 189 | "foreground": "#7e602c" 190 | } 191 | }, 192 | { 193 | "name": "Strings, Inherited Class", 194 | "scope": [ 195 | "string", 196 | "constant.other.symbol", 197 | "entity.other.inherited-class" 198 | ], 199 | "settings": { 200 | "foreground": "#8fc13e" 201 | } 202 | }, 203 | { 204 | "name": "Integers", 205 | "scope": "constant.numeric", 206 | "settings": { 207 | "foreground": "#fd8b19" 208 | } 209 | }, 210 | { 211 | "name": "Floats", 212 | "scope": "none", 213 | "settings": { 214 | "foreground": "#fd8b19" 215 | } 216 | }, 217 | { 218 | "name": "Boolean", 219 | "scope": "none", 220 | "settings": { 221 | "foreground": "#fd8b19" 222 | } 223 | }, 224 | { 225 | "name": "Constants", 226 | "scope": "constant", 227 | "settings": { 228 | "foreground": "#fd8b19" 229 | } 230 | }, 231 | { 232 | "name": "Tags", 233 | "scope": "entity.name.tag", 234 | "settings": { 235 | "foreground": "#dd464c" 236 | } 237 | }, 238 | { 239 | "name": "Attributes", 240 | "scope": "entity.other.attribute-name", 241 | "settings": { 242 | "foreground": "#fd8b19" 243 | } 244 | }, 245 | { 246 | "name": "Attribute IDs", 247 | "scope": [ 248 | "entity.other.attribute-name.id", 249 | "punctuation.definition.entity" 250 | ], 251 | "settings": { 252 | "foreground": "#1290bf" 253 | } 254 | }, 255 | { 256 | "name": "Selector", 257 | "scope": "meta.selector", 258 | "settings": { 259 | "foreground": "#c85e7c" 260 | } 261 | }, 262 | { 263 | "name": "Values", 264 | "scope": "none", 265 | "settings": { 266 | "foreground": "#fd8b19" 267 | } 268 | }, 269 | { 270 | "name": "Headings", 271 | "scope": [ 272 | "markup.heading", 273 | "markup.heading.setext", 274 | "punctuation.definition.heading", 275 | "entity.name.section" 276 | ], 277 | "settings": { 278 | "fontStyle": "", 279 | "foreground": "#1290bf" 280 | } 281 | }, 282 | { 283 | "name": "Units", 284 | "scope": "keyword.other.unit", 285 | "settings": { 286 | "foreground": "#fd8b19" 287 | } 288 | }, 289 | { 290 | "name": "Bold", 291 | "scope": [ 292 | "markup.bold", 293 | "punctuation.definition.bold" 294 | ], 295 | "settings": { 296 | "fontStyle": "bold", 297 | "foreground": "#fdcc59" 298 | } 299 | }, 300 | { 301 | "name": "Italic", 302 | "scope": [ 303 | "markup.italic", 304 | "punctuation.definition.italic" 305 | ], 306 | "settings": { 307 | "fontStyle": "italic", 308 | "foreground": "#c85e7c" 309 | } 310 | }, 311 | { 312 | "name": "Code", 313 | "scope": "markup.inline.raw", 314 | "settings": { 315 | "foreground": "#8fc13e" 316 | } 317 | }, 318 | { 319 | "name": "Link Text", 320 | "scope": "string.other.link", 321 | "settings": { 322 | "foreground": "#dd464c" 323 | } 324 | }, 325 | { 326 | "name": "Link Url", 327 | "scope": "meta.link", 328 | "settings": { 329 | "foreground": "#fd8b19" 330 | } 331 | }, 332 | { 333 | "name": "Lists", 334 | "scope": "markup.list", 335 | "settings": { 336 | "foreground": "#dd464c" 337 | } 338 | }, 339 | { 340 | "name": "Quotes", 341 | "scope": "markup.quote", 342 | "settings": { 343 | "foreground": "#fd8b19" 344 | } 345 | }, 346 | { 347 | "name": "Separator", 348 | "scope": "meta.separator", 349 | "settings": { 350 | "background": "#5c545b", 351 | "foreground": "#b9b5b8" 352 | } 353 | }, 354 | { 355 | "name": "Inserted", 356 | "scope": "markup.inserted", 357 | "settings": { 358 | "foreground": "#8fc13e" 359 | } 360 | }, 361 | { 362 | "name": "Deleted", 363 | "scope": "markup.deleted", 364 | "settings": { 365 | "foreground": "#dd464c" 366 | } 367 | }, 368 | { 369 | "name": "Changed", 370 | "scope": "markup.changed", 371 | "settings": { 372 | "foreground": "#c85e7c" 373 | } 374 | }, 375 | { 376 | "name": "Colors", 377 | "scope": "constant.other.color", 378 | "settings": { 379 | "foreground": "#7e602c" 380 | } 381 | }, 382 | { 383 | "name": "Regular Expressions", 384 | "scope": "string.regexp", 385 | "settings": { 386 | "foreground": "#7e602c" 387 | } 388 | }, 389 | { 390 | "name": "Escape Characters", 391 | "scope": "constant.character.escape", 392 | "settings": { 393 | "foreground": "#7e602c" 394 | } 395 | }, 396 | { 397 | "name": "Embedded", 398 | "scope": [ 399 | "punctuation.section.embedded", 400 | "variable.interpolation" 401 | ], 402 | "settings": { 403 | "foreground": "#149b93" 404 | } 405 | }, 406 | { 407 | "name": "Invalid", 408 | "scope": "invalid.illegal", 409 | "settings": { 410 | "foreground": "#dd464c" 411 | } 412 | } 413 | ] 414 | } -------------------------------------------------------------------------------- /themes/hopscotch.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | author 6 | Jan T. Sott 7 | name 8 | Hopscotch 9 | semanticClass 10 | base16.hopscotch.dark 11 | colorSpaceName 12 | sRGB 13 | gutterSettings 14 | 15 | background 16 | #433b42 17 | divider 18 | #433b42 19 | foreground 20 | #797379 21 | selectionBackground 22 | #5c545b 23 | selectionForeground 24 | #989498 25 | 26 | settings 27 | 28 | 29 | settings 30 | 31 | background 32 | #322931 33 | caret 34 | #b9b5b8 35 | foreground 36 | #b9b5b8 37 | invisibles 38 | #797379 39 | lineHighlight 40 | #79737955 41 | selection 42 | #5c545b 43 | 44 | 45 | 46 | name 47 | Text 48 | scope 49 | variable.parameter.function 50 | settings 51 | 52 | foreground 53 | #b9b5b8 54 | 55 | 56 | 57 | name 58 | Comments 59 | scope 60 | comment, punctuation.definition.comment 61 | settings 62 | 63 | foreground 64 | #797379 65 | 66 | 67 | 68 | name 69 | Punctuation 70 | scope 71 | punctuation.definition.string, punctuation.definition.variable, punctuation.definition.string, punctuation.definition.parameters, punctuation.definition.string, punctuation.definition.array 72 | settings 73 | 74 | foreground 75 | #b9b5b8 76 | 77 | 78 | 79 | name 80 | Delimiters 81 | scope 82 | none 83 | settings 84 | 85 | foreground 86 | #b9b5b8 87 | 88 | 89 | 90 | name 91 | Operators 92 | scope 93 | keyword.operator 94 | settings 95 | 96 | foreground 97 | #b9b5b8 98 | 99 | 100 | 101 | name 102 | Keywords 103 | scope 104 | keyword 105 | settings 106 | 107 | foreground 108 | #c85e7c 109 | 110 | 111 | 112 | name 113 | Variables 114 | scope 115 | variable 116 | settings 117 | 118 | foreground 119 | #dd464c 120 | 121 | 122 | 123 | name 124 | Functions 125 | scope 126 | entity.name.function, meta.require, support.function.any-method 127 | settings 128 | 129 | foreground 130 | #1290bf 131 | 132 | 133 | 134 | name 135 | Classes 136 | scope 137 | support.class, entity.name.class, entity.name.type.class 138 | settings 139 | 140 | foreground 141 | #fdcc59 142 | 143 | 144 | 145 | name 146 | Classes 147 | scope 148 | meta.class 149 | settings 150 | 151 | foreground 152 | #ffffff 153 | 154 | 155 | 156 | name 157 | Methods 158 | scope 159 | keyword.other.special-method 160 | settings 161 | 162 | foreground 163 | #1290bf 164 | 165 | 166 | 167 | name 168 | Storage 169 | scope 170 | storage 171 | settings 172 | 173 | foreground 174 | #c85e7c 175 | 176 | 177 | 178 | name 179 | Support 180 | scope 181 | support.function 182 | settings 183 | 184 | foreground 185 | #149b93 186 | 187 | 188 | 189 | name 190 | Strings, Inherited Class 191 | scope 192 | string, constant.other.symbol, entity.other.inherited-class 193 | settings 194 | 195 | foreground 196 | #8fc13e 197 | 198 | 199 | 200 | name 201 | Integers 202 | scope 203 | constant.numeric 204 | settings 205 | 206 | foreground 207 | #fd8b19 208 | 209 | 210 | 211 | name 212 | Floats 213 | scope 214 | none 215 | settings 216 | 217 | foreground 218 | #fd8b19 219 | 220 | 221 | 222 | name 223 | Boolean 224 | scope 225 | none 226 | settings 227 | 228 | foreground 229 | #fd8b19 230 | 231 | 232 | 233 | name 234 | Constants 235 | scope 236 | constant 237 | settings 238 | 239 | foreground 240 | #fd8b19 241 | 242 | 243 | 244 | name 245 | Tags 246 | scope 247 | entity.name.tag 248 | settings 249 | 250 | foreground 251 | #dd464c 252 | 253 | 254 | 255 | name 256 | Attributes 257 | scope 258 | entity.other.attribute-name 259 | settings 260 | 261 | foreground 262 | #fd8b19 263 | 264 | 265 | 266 | name 267 | Attribute IDs 268 | scope 269 | entity.other.attribute-name.id, punctuation.definition.entity 270 | settings 271 | 272 | foreground 273 | #1290bf 274 | 275 | 276 | 277 | name 278 | Selector 279 | scope 280 | meta.selector 281 | settings 282 | 283 | foreground 284 | #c85e7c 285 | 286 | 287 | 288 | name 289 | Values 290 | scope 291 | none 292 | settings 293 | 294 | foreground 295 | #fd8b19 296 | 297 | 298 | 299 | name 300 | Headings 301 | scope 302 | markup.heading punctuation.definition.heading, entity.name.section 303 | settings 304 | 305 | fontStyle 306 | 307 | foreground 308 | #1290bf 309 | 310 | 311 | 312 | name 313 | Units 314 | scope 315 | keyword.other.unit 316 | settings 317 | 318 | foreground 319 | #fd8b19 320 | 321 | 322 | 323 | name 324 | Bold 325 | scope 326 | markup.bold, punctuation.definition.bold 327 | settings 328 | 329 | fontStyle 330 | bold 331 | foreground 332 | #fdcc59 333 | 334 | 335 | 336 | name 337 | Italic 338 | scope 339 | markup.italic, punctuation.definition.italic 340 | settings 341 | 342 | fontStyle 343 | italic 344 | foreground 345 | #c85e7c 346 | 347 | 348 | 349 | name 350 | Code 351 | scope 352 | markup.raw.inline 353 | settings 354 | 355 | foreground 356 | #8fc13e 357 | 358 | 359 | 360 | name 361 | Link Text 362 | scope 363 | string.other.link, punctuation.definition.string.end.markdown 364 | settings 365 | 366 | foreground 367 | #dd464c 368 | 369 | 370 | 371 | name 372 | Link Url 373 | scope 374 | meta.link 375 | settings 376 | 377 | foreground 378 | #fd8b19 379 | 380 | 381 | 382 | name 383 | Lists 384 | scope 385 | markup.list 386 | settings 387 | 388 | foreground 389 | #dd464c 390 | 391 | 392 | 393 | name 394 | Quotes 395 | scope 396 | markup.quote 397 | settings 398 | 399 | foreground 400 | #fd8b19 401 | 402 | 403 | 404 | name 405 | Separator 406 | scope 407 | meta.separator 408 | settings 409 | 410 | background 411 | #5c545b 412 | foreground 413 | #b9b5b8 414 | 415 | 416 | 417 | name 418 | Inserted 419 | scope 420 | markup.inserted 421 | settings 422 | 423 | foreground 424 | #8fc13e 425 | 426 | 427 | 428 | name 429 | Deleted 430 | scope 431 | markup.deleted 432 | settings 433 | 434 | foreground 435 | #dd464c 436 | 437 | 438 | 439 | name 440 | Changed 441 | scope 442 | markup.changed 443 | settings 444 | 445 | foreground 446 | #c85e7c 447 | 448 | 449 | 450 | name 451 | Colors 452 | scope 453 | constant.other.color 454 | settings 455 | 456 | foreground 457 | #149b93 458 | 459 | 460 | 461 | name 462 | Regular Expressions 463 | scope 464 | string.regexp 465 | settings 466 | 467 | foreground 468 | #149b93 469 | 470 | 471 | 472 | name 473 | Escape Characters 474 | scope 475 | constant.character.escape 476 | settings 477 | 478 | foreground 479 | #149b93 480 | 481 | 482 | 483 | name 484 | Embedded 485 | scope 486 | punctuation.section.embedded, variable.interpolation 487 | settings 488 | 489 | foreground 490 | #b33508 491 | 492 | 493 | 494 | name 495 | Illegal 496 | scope 497 | invalid.illegal 498 | settings 499 | 500 | background 501 | #dd464c 502 | foreground 503 | #ffffff 504 | 505 | 506 | 507 | name 508 | Broken 509 | scope 510 | invalid.broken 511 | settings 512 | 513 | background 514 | #fd8b19 515 | foreground 516 | #322931 517 | 518 | 519 | 520 | name 521 | Deprecated 522 | scope 523 | invalid.deprecated 524 | settings 525 | 526 | background 527 | #b33508 528 | foreground 529 | #ffffff 530 | 531 | 532 | 533 | name 534 | Unimplemented 535 | scope 536 | invalid.unimplemented 537 | settings 538 | 539 | background 540 | #797379 541 | foreground 542 | #ffffff 543 | 544 | 545 | 546 | 547 | 548 | name 549 | String Variables 550 | scope 551 | string.variable 552 | settings 553 | 554 | foreground 555 | #dd464c 556 | 557 | 558 | 559 | uuid 560 | c6576628-8dce-4a51-adc7-ad39b1358be2 561 | 562 | 563 | --------------------------------------------------------------------------------