├── .editorconfig
├── .github
└── FUNDING.yml
├── .gitignore
├── .vscode
└── launch.json
├── .vscodeignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── alternight-logo.png
├── images
├── preview-css.png
├── preview-html.png
├── preview-javascript.png
├── preview-json.png
├── preview-react.png
├── preview-sass.png
└── preview-sidebar.png
├── package.json
└── themes
├── alternight-color-theme-no-italics.json
└── alternight-color-theme.json
/.editorconfig:
--------------------------------------------------------------------------------
1 | # https://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | charset = utf-8
6 | end_of_line = lf
7 | indent_size = 2
8 | indent_style = space
9 | insert_final_newline = true
10 | max_line_length = 80
11 | trim_trailing_whitespace = true
12 |
13 | [*.md]
14 | max_line_length = 0
15 | trim_trailing_whitespace = false
16 |
17 | [COMMIT_EDITMSG]
18 | max_line_length = 0
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: [mprcodes]
4 | custom: ['buymeacoffee.com/mprcodes']
5 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.vsix
--------------------------------------------------------------------------------
/.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 | "args": [
13 | "--extensionDevelopmentPath=${workspaceFolder}"
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/.vscodeignore:
--------------------------------------------------------------------------------
1 | .vscode/**
2 | .vscode-test/**
3 | .gitignore
4 | vsc-extension-quickstart.md
5 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Change Log
2 |
3 | All notable changes to this project will be documented in this file.
4 |
5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6 |
7 | ## [3.0.0] - 2021-10-16
8 |
9 | ### Changed
10 |
11 | - Change editor foreground color to #CAAEEB
12 |
13 | - Change integrated terminal colors
14 |
15 | - Adjust multiple colors for better visual consistency
16 |
17 | - Change styles for hovering over tabs
18 |
19 | ### Added
20 |
21 | - Add italics for main theme
22 |
23 | - Add variant without italics
24 |
25 | - Add color syntax for .pug and .prisma files
26 |
27 | ## [2.6.1] - 2021-03-15
28 |
29 | ### Changed
30 |
31 | - Change color of punctuation of template expressions
32 |
33 | - Change color of `variable.parameter`
34 |
35 | ## [2.6.0] - 2021-03-09
36 |
37 | ### Added
38 |
39 | - Add Syntax Support for TypeScript.
40 |
41 | - Add Syntax Support for GraphQL.
42 |
43 | - Add styles for `sash.hoverBorder`.
44 |
45 | ### Changed
46 |
47 | - Change template/interpolated strings' green to match regular strings'.
48 |
49 | ### Updated
50 |
51 | - Update JSON Colors to match theme's palette.
52 |
53 | - Update Markdown Colors to match theme's palette.
54 |
55 | ## [2.5.6] - 2021-02-13
56 |
57 | ### Changed
58 |
59 | - Update background and foreground colors of color status for debugging mode (fixes #6).
60 |
61 | ## [2.5.5] - 2021-02-11
62 |
63 | ### Updated
64 |
65 | - Update sample screenshots.
66 |
67 | ## [2.5.4] - 2021-01-30
68 |
69 | ### Changed
70 |
71 | - Update styles of editor tabs.
72 |
73 | ## [2.5.3] - 2021-01-18
74 |
75 | ### Added
76 |
77 | - Add preview screenshots for React and Sass.
78 |
79 | ### Changed
80 |
81 | - Update theme preview screenshots.
82 |
83 | - Update year on license.
84 |
85 | ## [2.5.0] - 2021-01-08
86 |
87 | ### Changed
88 |
89 | - Color adjustments.
90 |
91 | ## [2.1.0] - 2020-12-30
92 |
93 | ### Changed
94 |
95 | - Change some colors for JSX and sass.
96 |
97 | ## [2.0.3] - 2020-12-15
98 |
99 | ### Changed
100 |
101 | - Change editor.selectionBackground's color.
102 |
103 | - Change Status bar background/foreground to match editor's
104 |
105 | - Change color for CSS variables, functions, and at-rules.
106 |
107 | ## [2.0.0] - 2020-12-01
108 |
109 | ### Added
110 |
111 | - Add Styles for Editor Hover Widget.
112 |
113 | ### Changed
114 |
115 | - The entire theme color palette has been updated.
116 |
117 | ## [1.0.8] - 2020-11-23
118 |
119 | ### Added
120 |
121 | - Add Styles for CSS Element Selectors.
122 |
123 | - Add Styles for CSS At-Rules.
124 |
125 | - Add new image to preview changes for CSS
126 |
127 | ### Changed
128 |
129 | - Change color for CSS Property Names
130 |
131 | - Change color for CSS Class Selectors
132 |
133 | ### Removed
134 |
135 | - Remove preview image with old CSS styles
136 |
137 | ## [1.0.4] - 2020-11-23
138 |
139 | ### Added
140 |
141 | - Add VS Marketplace Version and Downloads badges.
142 |
143 | ### Changed
144 |
145 | - Update installation steps on README.md
146 |
147 | - Increase contrast ratio of `editorLineNumber.foreground`
148 |
149 | ### Removed
150 |
151 | - Duplicate object key from `alternight-color-theme.json`
152 |
153 | ## [Unreleased]
154 |
155 | - Initial release
156 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021 Mauricio Paternina
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # AlterNight 🌠
2 |
3 | [](https://marketplace.visualstudio.com/items?itemName=spaceinvadev.alternight)
4 | [](https://marketplace.visualstudio.com/items?itemName=spaceinvadev.alternight)
5 |
6 | A Visual Studio Code theme for those who code at night
7 |
8 |
9 |
10 | ## Previews
11 |
12 | 
13 |
14 |
15 |
16 | ### ReactJS
17 |
18 | 
19 |
20 |
21 |
22 | ### JavaScript
23 |
24 | 
25 |
26 |
27 |
28 | ### HTML
29 |
30 | 
31 |
32 |
33 |
34 | ### Sass
35 |
36 | 
37 |
38 |
39 |
40 | ### CSS
41 |
42 | 
43 |
44 |
45 |
46 | ### JSON
47 |
48 | 
49 |
50 |
51 |
52 | ## Installation
53 |
54 | 1. Open the **Extensions** sidebar panel in VS Code. `View → Extensions`
55 |
56 | 2. Search for `AlterNight`
57 |
58 | 3. Click `Install`
59 |
60 | 4. When prompted, select `AlterNight` as the color theme
61 |
62 | > In case of not being prompted to select a Color Theme upon installing, go to the menu bar and select: `Code (File, on Windows) > Preferences > Color Theme > AlterNight`. Alternatively, you can use the shortcut `⌘/Ctrl + K > ⌘/Ctrl + T` and select `AlterNight`.
63 |
64 |
65 |
66 | ### Recommended settings for a better experience
67 |
68 | The typeface shown in the screenshots is **MD IO** — a nice monospace font I really like. You can get it from [Future Fonts](https://www.futurefonts.xyz/mass-driver/io). I've also added some preferred typography-related settings, which you can get by adding the following to your `settings.json` file.
69 |
70 | ```json
71 | // Controls the font family
72 | "editor.fontFamily": "'MD IO 0.3', monospace",
73 |
74 | // Controls the font size in pixels
75 | "editor.fontSize": 18,
76 |
77 | // Controls letter spacing in pixels
78 | "editor.letterSpacing": -0.72,
79 |
80 | // Controls the font weight
81 | "editor.fontWeight": "400",
82 |
83 | // Controls the line height. Use 0 to compute the line height from the font size
84 | "editor.lineHeight": 34,
85 |
86 | // Enables/Disables font ligatures
87 | "editor.fontLigatures": true,
88 | ```
89 |
90 |
91 |
92 | ### Customize/Override theme colors
93 |
94 | You can customize/override the AlterNight theme colors by adding the following theme-specific configuration to your settings file. For more advanced customization, refer to the corresponding [VS Code Docs](https://code.visualstudio.com/docs/getstarted/themes#_customizing-a-color-theme).
95 |
96 |
97 |
98 | #### Example of basic customization
99 |
100 | ```json
101 | "editor.tokenColorCustomizations": {
102 | "[AlterNight]": {
103 | "comments": "#229977"
104 | }
105 | },
106 | ```
107 |
108 |
109 |
110 | #### Example of advanced customization
111 |
112 | ```json
113 | "editor.tokenColorCustomizations": {
114 | "[Your_Custom_AlterNight]": {
115 | "textMateRules": [
116 | {
117 | "scope": [
118 | "punctuation.definition.comment",
119 | "comment.block",
120 | "comment.line",
121 | "comment.block.documentation"
122 | ],
123 | "settings": {
124 | "foreground": "#ffff00"
125 | }
126 | }
127 | ]
128 | },
129 | },
130 |
131 | "workbench.colorCustomizations": {
132 | "[Your_Custom_AlterNight]": {
133 | "sideBar.background": "#ffff00",
134 | }
135 | },
136 | ```
137 |
138 |
139 |
140 | ### Contributions, Issues & Suggestions
141 |
142 | Any feedback, issue reporting or suggestion is welcome. Feel free to submit your concern via the [Repo's GitHub Issues](https://github.com/spaceinvadev/alternight-vscode-theme/issues) page, provide feedback or request a feature by submitting a PR.
143 |
144 |
145 |
146 | ### Changelog
147 |
148 | All notable changes to this project are documented in the [changelog](CHANGELOG.md). Consider checking the changelog prior to filing any issues as they may have already been addressed.
149 |
150 |
151 |
152 | ## Credits
153 |
154 | Made with ❤️ by [@spaceinvadev](https://twitter.com/spaceinvadev)
155 |
--------------------------------------------------------------------------------
/alternight-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/alternight-logo.png
--------------------------------------------------------------------------------
/images/preview-css.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/images/preview-css.png
--------------------------------------------------------------------------------
/images/preview-html.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/images/preview-html.png
--------------------------------------------------------------------------------
/images/preview-javascript.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/images/preview-javascript.png
--------------------------------------------------------------------------------
/images/preview-json.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/images/preview-json.png
--------------------------------------------------------------------------------
/images/preview-react.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/images/preview-react.png
--------------------------------------------------------------------------------
/images/preview-sass.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/images/preview-sass.png
--------------------------------------------------------------------------------
/images/preview-sidebar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/patternina/alternight-vscode-theme/db3c54971da25a6221e95342adb41e827ec3a579/images/preview-sidebar.png
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "alternight",
3 | "displayName": "AlterNight",
4 | "description": "A Visual Studio Code theme for those who code at night",
5 | "version": "3.0.0",
6 | "publisher": "spaceinvadev",
7 | "author": {
8 | "name": "Mauricio Paternina",
9 | "url": "https://spaceinvadev.github.io/alternight/",
10 | "email": "hello@spaceinva.dev"
11 | },
12 | "icon": "alternight-logo.png",
13 | "galleryBanner": {
14 | "color": "#1f172b",
15 | "theme": "dark"
16 | },
17 | "repository": {
18 | "type": "git",
19 | "url": "https://github.com/spaceinvadev/alternight-vscode-theme"
20 | },
21 | "bugs": {
22 | "url": "https://github.com/spaceinvadev/alternight-vscode-theme/issues"
23 | },
24 | "engines": {
25 | "vscode": "^1.51.0"
26 | },
27 | "categories": [
28 | "Themes"
29 | ],
30 | "keywords": [
31 | "Theme",
32 | "Themes",
33 | "Dark",
34 | "Purple",
35 | "Blue",
36 | "Indie",
37 | "Retro",
38 | "80s",
39 | "Neon",
40 | "Alternative",
41 | "Night",
42 | "Cobalt",
43 | "Ocean",
44 | "Ocean Next",
45 | "React",
46 | "React Theme",
47 | "italic"
48 | ],
49 | "contributes": {
50 | "themes": [
51 | {
52 | "label": "AlterNight",
53 | "uiTheme": "vs-dark",
54 | "path": "./themes/alternight-color-theme.json"
55 | },
56 | {
57 | "label": "AlterNight (No Italics)",
58 | "uiTheme": "vs-dark",
59 | "path": "./themes/alternight-color-theme-no-italics.json"
60 | }
61 | ]
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/themes/alternight-color-theme-no-italics.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "alternight",
3 | "type": "dark",
4 | "semanticHighlighting": true,
5 | "colors": {
6 | // Editor
7 | "editor.background": "#1f172b",
8 | "editor.foreground": "#caaeeb",
9 | "editor.selectionBackground": "#5C7FE280",
10 | "editorCursor.foreground": "#ff0",
11 | "editorLineNumber.foreground": "#9077b688",
12 | "editor.lineHighlightBackground": "#caaeeb12",
13 | "editor.foldBackground": "#291b3d",
14 |
15 | "titleBar.activeBackground": "#1f172b",
16 | "titleBar.activeForeground": "#9077b6",
17 | "titleBar.inactiveBackground": "#1f172b80",
18 | "titleBar.inactiveForeground": "#9077b680",
19 |
20 | // Activity bar
21 | "activityBar.background": "#1f172b",
22 | "activityBar.foreground": "#bcadd3",
23 | "activityBar.activeBorder": "#bcadd3",
24 | "activityBar.inactiveForeground": "#9077b680",
25 | "activityBarBadge.background": "#e29fa4",
26 | "activityBarBadge.foreground": "#1f172b",
27 |
28 | // Sidebar
29 | "sideBar.background": "#1f172b",
30 | "sideBar.foreground": "#9077b6",
31 | "sideBarTitle.foreground": "#bcadd3",
32 | "sideBarSectionHeader.background": "#312a3c",
33 | "sideBarSectionHeader.foreground": "#9b8eb0",
34 |
35 | // Tabs
36 | "editorGroupHeader.tabsBackground": "#1f172b",
37 | "tab.activeBorderTop": "#f78c6c",
38 | "tab.activeForeground": "#f78c6c",
39 | "tab.inactiveBackground": "#1b1b31",
40 | "tab.inactiveForeground": "#7F7fb8",
41 | "tab.hoverBackground": "#251a36",
42 | "tab.hoverForeground": "#f78c6c",
43 |
44 | // Status bar
45 | "statusBar.background": "#1f172b",
46 | "statusBar.foreground": "#9077b6",
47 | "statusBarItem.hoverBackground": "#312642",
48 | "statusBar.debuggingBackground": "#e29fa4",
49 | "statusBar.debuggingForeground": "#1f172b",
50 |
51 | // Integrated Terminal
52 | "terminal.background": "#1f172b",
53 | "terminal.foreground": "#bba8d1",
54 | "terminal.selectionBackground": "#5C7FE280",
55 | "terminalCursor.foreground": "#ff0",
56 | "terminal.ansiBlack": "#292929",
57 | "terminal.ansiBlue": "#5C7FE2",
58 | "terminal.ansiCyan": "#40CFCF",
59 | "terminal.ansiGreen": "#4CA779",
60 | "terminal.ansiMagenta": "#c869d1",
61 | "terminal.ansiRed": "#f07c7c",
62 | "terminal.ansiWhite": "#FAFAFA",
63 | "terminal.ansiYellow": "#FFCB6B",
64 | "terminal.ansiBrightBlack": "#080808",
65 | "terminal.ansiBrightBlue": "#718edf",
66 | "terminal.ansiBrightCyan": "#70d1d1",
67 | "terminal.ansiBrightGreen": "#71bd97",
68 | "terminal.ansiBrightMagenta": "#d581dd",
69 | "terminal.ansiBrightRed": "#f08a8a",
70 | "terminal.ansiBrightWhite": "#FFFFFF",
71 | "terminal.ansiBrightYellow": "#fdda9a",
72 |
73 | // Menu
74 | "menu.background": "#1f172b",
75 | "menu.foreground": "#c6abde",
76 | "menu.border": "#c6abde",
77 | "menu.selectionBackground": "#fefefe40",
78 | "menu.separatorBackground": "#fefefe32",
79 | "window.activeBorder": "#9292e424",
80 |
81 | "editor.hoverHighlightBackground": "#695d5e",
82 | "editorIndentGuide.background": "#312a3c",
83 | "editorIndentGuide.activeBackground": "#797480",
84 |
85 | // Hover Widget
86 | "editorHoverWidget.background": "#312a3c",
87 | "editorHoverWidget.border": "#c6abde",
88 | "editorHoverWidget.foreground": "#c6abde",
89 |
90 | "editorGutter.addedBackground": "#9fff20",
91 | "editorGutter.foldingControlForeground": "#ff0",
92 |
93 | // Misc
94 | "scrollbar.shadow": "#caaeeb24",
95 | "sash.hoverBorder": "#f78c6c"
96 | },
97 | "tokenColors": [
98 | {
99 | "name": "Comment",
100 | "scope": [
101 | "comment",
102 | "comment.line",
103 | "comment.block",
104 | "comment.block.documentation",
105 | "punctuation.definition.comment"
106 | ],
107 | "settings": {
108 | "foreground": "#524168"
109 | }
110 | },
111 | {
112 | "name": "Template Strings",
113 | "scope": [
114 | "punctuation.definition.string.template.begin",
115 | "punctuation.definition.string.template.begin.js",
116 | "punctuation.definition.string.template.begin.jsx",
117 | "punctuation.definition.string.template.begin.ts",
118 | "punctuation.definition.string.template.begin.tsx",
119 | "punctuation.definition.string.template.end",
120 | "punctuation.definition.string.template.end.js",
121 | "punctuation.definition.string.template.end.jsx",
122 | "punctuation.definition.string.template.end.ts",
123 | "punctuation.definition.string.template.end.tsx"
124 | ],
125 | "settings": {
126 | "foreground": "#4CA779"
127 | }
128 | },
129 | {
130 | "name": "Template Expression",
131 | "scope": [
132 | "punctuation.definition.template-expression.begin",
133 | "punctuation.definition.template-expression.begin.js",
134 | "punctuation.definition.template-expression.begin.jsx",
135 | "punctuation.definition.template-expression.begin.ts",
136 | "punctuation.definition.template-expression.begin.tsx",
137 | "punctuation.definition.template-expression.end",
138 | "punctuation.definition.template-expression.end.js",
139 | "punctuation.definition.template-expression.end.jsx",
140 | "punctuation.definition.template-expression.end.ts",
141 | "punctuation.definition.template-expression.end.tsx"
142 | ],
143 | "settings": {
144 | "foreground": "#caaeeb"
145 | }
146 | },
147 | {
148 | "name": "variables",
149 | "scope": ["variable.other.readwrite", "variable.other.constant"],
150 | "settings": {
151 | "foreground": "#DF84A2"
152 | }
153 | },
154 | {
155 | "name": "HTML Entities",
156 | "scope": [
157 | "constant.character.entity",
158 | "constant.character.entity.js",
159 | "constant.character.entity.jsx",
160 | "constant.character.entity.ts",
161 | "constant.character.entity.tsx"
162 | ],
163 | "settings": {
164 | "foreground": "#43c2e2"
165 | }
166 | },
167 | {
168 | "name": "Punctuation of HTML Entities",
169 | "scope": [
170 | "punctuation.definition.entity",
171 | "punctuation.definition.entity.js",
172 | "punctuation.definition.entity.jsx",
173 | "punctuation.definition.entity.ts",
174 | "punctuation.definition.entity.tsx"
175 | ],
176 | "settings": {
177 | "foreground": "#3896ad"
178 | }
179 | },
180 | {
181 | "name": "TS Tag Directives",
182 | "scope": [
183 | "entity.name.tag.directive",
184 | "entity.name.tag.directive.js",
185 | "entity.name.tag.directive.jsx",
186 | "entity.name.tag.directive.ts",
187 | "entity.name.tag.directive.tsx"
188 | ],
189 | "settings": {
190 | "foreground": "#f0bb6b"
191 | }
192 | },
193 | {
194 | "name": "Punctuation of TS Tag Directives",
195 | "scope": [
196 | "punctuation.definition.tag.directive",
197 | "punctuation.definition.tag.directive.js",
198 | "punctuation.definition.tag.directive.jsx",
199 | "punctuation.definition.tag.directive.ts",
200 | "punctuation.definition.tag.directive.tsx"
201 | ],
202 | "settings": {
203 | "foreground": "#ac66c9"
204 | }
205 | },
206 | {
207 | "name": "Colors",
208 | "scope": ["constant.other.color"],
209 | "settings": {
210 | "foreground": "#fefefe"
211 | }
212 | },
213 | {
214 | "name": "Invalid",
215 | "scope": ["invalid", "invalid.illegal"],
216 | "settings": {
217 | "foreground": "#ff5370"
218 | }
219 | },
220 | {
221 | "name": "Keyword, Storage",
222 | "scope": ["keyword", "storage.type", "storage.modifier"],
223 | "settings": {
224 | // "foreground": "#823eaa"
225 | "foreground": "#a477be"
226 | }
227 | },
228 | {
229 | "name": "async keyword",
230 | "scope": ["storage.modifier.async"],
231 | "settings": {
232 | "foreground": "#664a86"
233 | }
234 | },
235 | {
236 | "name": "Keyword Operator Assignment",
237 | "scope": [
238 | "keyword.operator.assignment",
239 | "keyword.operator.type.annotation"
240 | ],
241 | "settings": {
242 | "foreground": "#caaeeb"
243 | }
244 | },
245 | {
246 | "name": "Entity HTML Tags",
247 | "scope": ["entity.name.tag.html"],
248 | "settings": {
249 | "foreground": "#d4785d"
250 | }
251 | },
252 | {
253 | "name": "HTML Tags",
254 | "scope": [
255 | "punctuation.definition.tag.html",
256 | "punctuation.definition.tag.begin.html",
257 | "punctuation.definition.tag.end.html"
258 | ],
259 | "settings": {
260 | "foreground": "#ac66c9"
261 | }
262 | },
263 | {
264 | "name": "Operator, Misc",
265 | "scope": [
266 | "keyword.control",
267 | "constant.other.color",
268 | "punctuation",
269 | "meta.brace.square",
270 | "meta.tag",
271 | "punctuation.definition.tag",
272 | "punctuation.section.embedded",
273 | "keyword.other.template",
274 | "keyword.other.substitution",
275 | "keyword.operator"
276 | ],
277 | "settings": {
278 | "foreground": "#caaeeb"
279 | }
280 | },
281 | {
282 | "name": "Tag",
283 | "scope": [
284 | "entity.name.tag",
285 | "meta.tag.sgml",
286 | "markup.deleted.git_gutter"
287 | ],
288 | "settings": {
289 | "foreground": "#5d2cb9"
290 | }
291 | },
292 | {
293 | "name": "Function, Special Method",
294 | "scope": [
295 | "entity.name.function",
296 | "meta.function-call",
297 | "variable.function",
298 | "support.function",
299 | "keyword.other.special-method"
300 | ],
301 | "settings": {
302 | "foreground": "#e7d5a4"
303 | }
304 | },
305 | {
306 | "name": "Block Level Variables",
307 | "scope": ["meta.block variable.other"],
308 | "settings": {
309 | "foreground": "#df84a2"
310 | }
311 | },
312 | {
313 | "name": "Other Variable, String Link",
314 | "scope": ["support.other.variable", "string.other.link"],
315 | "settings": {
316 | "foreground": "#e0a1a4",
317 | "fontStyle": "bold"
318 | }
319 | },
320 | {
321 | "name": "Number, Constant, Function Argument, Tag Attribute, Embedded",
322 | "scope": [
323 | "constant.language",
324 | "support.constant",
325 | "constant.character",
326 | "constant.escape",
327 | "keyword.other.unit",
328 | "keyword.other"
329 | ],
330 | "settings": {
331 | "foreground": "#b1bdbd",
332 | "fontStyle": ""
333 | }
334 | },
335 | {
336 | "name": "Numeric Constant",
337 | "scope": "constant.numeric",
338 | "settings": {
339 | "foreground": "#f1b718"
340 | }
341 | },
342 | {
343 | "name": "CSS Constants",
344 | "scope": [
345 | "support.constant.property-value.css",
346 | "constant.numeric.css",
347 | "constant.other.color.rgb-value.hex.css",
348 | "constant.language.color.rgb-value.css.sass"
349 | ],
350 | "settings": {
351 | "foreground": "#a07fc7"
352 | }
353 | },
354 | {
355 | "name": "CSS Units",
356 | "scope": [
357 | "keyword.other.unit.percentage.css",
358 | "keyword.other.unit.px.css",
359 | "keyword.other.unit.rem.css",
360 | "keyword.other.unit.em.css",
361 | "keyword.other.unit.ms.css",
362 | "keyword.other.unit.s.css",
363 | "keyword.other.unit.deg.css",
364 | "keyword.other.unit.fr.css",
365 | "punctuation.definition.constant.css",
366 | "keyword.control.unit.css.sass"
367 | ],
368 | "settings": {
369 | "foreground": "#664a86"
370 | }
371 | },
372 | {
373 | "name": "Referenced CSS properties",
374 | "scope": "invalid.deprecated.color.system.css", // Reference a CSS property in `transition`
375 | "settings": {
376 | "foreground": "#a07fc7"
377 | }
378 | },
379 | {
380 | "name": "Sass %",
381 | "scope": "entity.other.inherited-class.placeholder-selector.css.sass",
382 | "settings": {
383 | "foreground": "#F0BB6B"
384 | }
385 | },
386 | {
387 | "name": "CSS Variables",
388 | "scope": "variable.other.value",
389 | "settings": {
390 | "foreground": "#DF84A2"
391 | }
392 | },
393 | {
394 | "name": "String, Symbols, Inherited Class, Markup Heading",
395 | "scope": [
396 | "string",
397 | "constant.other.symbol",
398 | "constant.other.key",
399 | "entity.other.inherited-class",
400 | "markup.heading",
401 | "markup.inserted.git_gutter",
402 | "meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js",
403 | "meta.group.braces.curly constant.other.object.key.jsx string.unquoted.label.jsx",
404 | "meta.group.braces.curly constant.other.object.key.ts string.unquoted.label.ts",
405 | "meta.group.braces.curly constant.other.object.key.tsx string.unquoted.label.tsx"
406 | ],
407 | "settings": {
408 | "foreground": "#4CA779"
409 | }
410 | },
411 | {
412 | "name": "String variable",
413 | "scope": "meta.embedded.line",
414 | "settings": {
415 | "foreground": "#CAAEEB"
416 | }
417 | },
418 | {
419 | "name": "Class, Support",
420 | "scope": [
421 | "entity.name",
422 | "support.type",
423 | "markup.changed.git_gutter",
424 | "support.type.sys-types"
425 | ],
426 | "settings": {
427 | "foreground": "#f0bb6b"
428 | }
429 | },
430 | {
431 | "name": "Entity Types",
432 | "scope": ["support.type"],
433 | "settings": {
434 | "foreground": "#b2ccd6"
435 | }
436 | },
437 | {
438 | "name": "CSS at-rules",
439 | "scope": [
440 | "keyword.control.at-rule.css",
441 | "keyword.control.at-rule.sass",
442 | "keyword.control.at-rule.scss",
443 | "keyword.control.at-rule.use",
444 | "support.function.name.sass.library",
445 | "support.function.name.scss.library"
446 | ],
447 | "settings": {
448 | "foreground": "#c2a0fd",
449 | "fontStyle": ""
450 | }
451 | },
452 | {
453 | "name": "CSS/sass/scss functions",
454 | "scope": [
455 | "support.function.name.sass.library",
456 | "support.function.name.scss.library"
457 | ],
458 | "settings": {
459 | "foreground": "#d153bc",
460 | "fontStyle": "bold"
461 | }
462 | },
463 | {
464 | "name": "CSS Variable",
465 | "scope": ["variable.css"],
466 | "settings": {
467 | "foreground": "#c7c7df"
468 | }
469 | },
470 | {
471 | "name": "CSS String",
472 | "scope": [
473 | "constant.character.css",
474 | "constant.character.css.sass",
475 | "constant.character.css.scss"
476 | ],
477 | "settings": {
478 | "foreground": "#4CA779"
479 | }
480 | },
481 | {
482 | "name": "CSS Class and Support",
483 | "scope": [
484 | "source.css support.type.property-name",
485 | "source.sass support.type.property-name",
486 | "source.scss support.type.property-name",
487 | "source.less support.type.property-name",
488 | "source.stylus support.type.property-name",
489 | "source.postcss support.type.property-name"
490 | ],
491 | "settings": {
492 | "foreground": "#f78c6c"
493 | }
494 | },
495 | {
496 | "name": "Sub-methods",
497 | "scope": [
498 | "entity.name.module.js",
499 | "entity.name.module.jsx",
500 | "entity.name.module.ts",
501 | "entity.name.module.tsx",
502 | "variable.import.parameter.js",
503 | "variable.import.parameter.jsx",
504 | "variable.import.parameter.ts",
505 | "variable.import.parameter.tsx",
506 | "variable.other.class.js",
507 | "variable.other.class.jsx",
508 | "variable.other.class.ts",
509 | "variable.other.class.tsx"
510 | ],
511 | "settings": {
512 | "foreground": "#ff5370"
513 | }
514 | },
515 | {
516 | "name": "Language methods",
517 | "scope": ["variable.language"],
518 | "settings": {
519 | "foreground": "#ff6781"
520 | }
521 | },
522 | {
523 | "name": "JS trycatch",
524 | "scope": [
525 | "keyword.control.trycatch.js",
526 | "keyword.control.trycatch.jsx",
527 | "keyword.control.trycatch.ts",
528 | "keyword.control.trycatch.tsx"
529 | ],
530 | "settings": {
531 | "foreground": "#5fe09f",
532 | "fontStyle": "bold"
533 | }
534 | },
535 | {
536 | "name": "entity.name.method.js",
537 | "scope": [
538 | "entity.name.method.js",
539 | "entity.name.method.jsx",
540 | "entity.name.method.ts",
541 | "entity.name.method.tsx"
542 | ],
543 | "settings": {
544 | "foreground": "#82aaff"
545 | }
546 | },
547 | {
548 | "name": "Variable Parameters",
549 | "scope": "variable.parameter",
550 | "settings": {
551 | "foreground": "#8ecbd6"
552 | }
553 | },
554 | {
555 | "name": "meta.method.js",
556 | "scope": [
557 | "meta.class-method.js entity.name.function.js",
558 | "meta.class-method.jsx entity.name.function.jsx",
559 | "meta.class-method.ts entity.name.function.ts",
560 | "meta.class-method.tsx entity.name.function.tsx",
561 | "variable.function.constructor"
562 | ],
563 | "settings": {
564 | "foreground": "#82aaff"
565 | }
566 | },
567 | {
568 | "name": "Constant Language",
569 | "scope": "constant.language",
570 | "settings": {
571 | "foreground": "#40cfcf"
572 | }
573 | },
574 | {
575 | "name": "null/undefined Keywords JS",
576 | "scope": [
577 | "constant.language.null.js",
578 | "constant.language.null.jsx",
579 | "constant.language.null.ts",
580 | "constant.language.null.tsx",
581 | "constant.language.undefined.js",
582 | "constant.language.undefined.jsx",
583 | "constant.language.undefined.ts",
584 | "constant.language.undefined.tsx"
585 | ],
586 | "settings": {
587 | "fontStyle": "bold"
588 | }
589 | },
590 | {
591 | "name": "Object Keys Keyword JS",
592 | "scope": [
593 | "meta.object-literal.key.js",
594 | "meta.object-literal.key.jsx",
595 | "meta.object-literal.key.ts",
596 | "meta.object-literal.key.tsx",
597 | "meta.object.member.js",
598 | "meta.object.member.jsx",
599 | "meta.object.member.ts",
600 | "meta.object.member.tsx",
601 | "meta.objectliteral.js",
602 | "meta.objectliteral.jsx",
603 | "meta.objectliteral.ts",
604 | "meta.objectliteral.tsx"
605 | ],
606 | "settings": {
607 | "foreground": "#e8f3f3"
608 | }
609 | },
610 |
611 | // JSX-specific Rules
612 | {
613 | "name": "JSX Tag Name",
614 | "scope": [
615 | "entity.name.tag.js",
616 | "entity.name.tag.jsx",
617 | "entity.name.tag.ts",
618 | "entity.name.tag.tsx"
619 | ],
620 | "settings": {
621 | "foreground": "#d4785d"
622 | }
623 | },
624 | {
625 | "name": "Object Properties",
626 | "scope": [
627 | "variable.other.property.js",
628 | "variable.other.property.jsx",
629 | "variable.other.property.ts",
630 | "variable.other.property.tsx"
631 | ],
632 | "settings": {
633 | "foreground": "#5c7fe2"
634 | }
635 | },
636 | {
637 | "name": "Variables",
638 | "scope": [
639 | "variable.other.readwrite.alias",
640 | "variable.other.readwrite.alias.js",
641 | "variable.other.readwrite.alias.jsx",
642 | "variable.other.readwrite.alias",
643 | "variable.other.readwrite.alias.ts",
644 | "variable.other.readwrite.alias.tsx"
645 | ],
646 | "settings": {
647 | "foreground": "#f78c6c"
648 | }
649 | },
650 | {
651 | "name": "false/true Keywords",
652 | "scope": [
653 | "constant.language.boolean.false",
654 | "constant.language.boolean.false.js",
655 | "constant.language.boolean.false.jsx",
656 | "constant.language.boolean.false.ts",
657 | "constant.language.boolean.false.tsx",
658 | "constant.language.boolean.true",
659 | "constant.language.boolean.true.js",
660 | "constant.language.boolean.true.jsx",
661 | "constant.language.boolean.true.ts",
662 | "constant.language.boolean.true.tsx"
663 | ],
664 | "settings": {
665 | "foreground": "#40cfcf",
666 | "fontStyle": "bold"
667 | }
668 | },
669 | {
670 | "name": "Conditional Keywords",
671 | "scope": [
672 | "keyword.control.conditional",
673 | "keyword.control.conditional.js",
674 | "keyword.control.conditional.jsx",
675 | "keyword.control.conditional.ts",
676 | "keyword.control.conditional.tsx",
677 | "keyword.control.switch",
678 | "keyword.control.switch.js",
679 | "keyword.control.switch.jsx",
680 | "keyword.control.switch.ts",
681 | "keyword.control.switch.tsx"
682 | ],
683 | "settings": {
684 | "foreground": "#5fe09f",
685 | "fontStyle": "bold"
686 | }
687 | },
688 | {
689 | "name": "Return Keyword",
690 | "scope": [
691 | "keyword.control.flow",
692 | "keyword.control.flow.js",
693 | "keyword.control.flow.jsx",
694 | "keyword.control.flow.ts",
695 | "keyword.control.flow.tsx",
696 | "keyword.control.loop",
697 | "keyword.control.loop.js",
698 | "keyword.control.loop.jsx",
699 | "keyword.control.loop.ts",
700 | "keyword.control.loop.tsx",
701 | "keyword.operator.new"
702 | ],
703 | "settings": {
704 | "foreground": "#e27171",
705 | "fontStyle": "bold"
706 | }
707 | },
708 | {
709 | "name": "Export, Default Keywords",
710 | "scope": [
711 | "keyword.control.export",
712 | "keyword.control.export.js",
713 | "keyword.control.export.jsx",
714 | "keyword.control.export.ts",
715 | "keyword.control.export.tsx",
716 | "keyword.control.default",
717 | "keyword.control.default.js",
718 | "keyword.control.default.jsx",
719 | "keyword.control.default.ts",
720 | "keyword.control.default.tsx"
721 | ],
722 | "settings": {
723 | "foreground": "#e4baba"
724 | }
725 | },
726 | {
727 | "name": "TypeScript Primitive Types",
728 | "scope": [
729 | "support.type",
730 | "support.type.primitive",
731 | "support.type.primitive.js",
732 | "support.type.primitive.jsx",
733 | "support.type.primitive.ts",
734 | "support.type.primitive.tsx",
735 | "support.type.builtin",
736 | "support.type.builtin.js",
737 | "support.type.builtin.jsx",
738 | "support.type.builtin.ts",
739 | "support.type.builtin.tsx"
740 | ],
741 | "settings": {
742 | "foreground": "#dae63d"
743 | }
744 | },
745 | {
746 | "name": "JSX Tags",
747 | "scope": [
748 | "entity.name.tag.js",
749 | "entity.name.tag.jsx",
750 | "entity.name.tag.ts",
751 | "entity.name.tag.tsx"
752 | ],
753 | "settings": {
754 | "foreground": "#d4785d"
755 | }
756 | },
757 | {
758 | "name": "JSX Meta",
759 | "scope": ["meta.tag.js", "meta.tag.jsx", "meta.tag.ts", "meta.tag.tsx"],
760 | "settings": {
761 | "foreground": "#d5d5d5"
762 | }
763 | },
764 | {
765 | "name": "JSX Tag Punctuation",
766 | "scope": [
767 | "punctuation.definition.tag.begin.js",
768 | "punctuation.definition.tag.begin.jsx",
769 | "punctuation.definition.tag.begin.ts",
770 | "punctuation.definition.tag.begin.tsx",
771 | "punctuation.definition.tag.end.js",
772 | "punctuation.definition.tag.end.jsx",
773 | "punctuation.definition.tag.end.ts",
774 | "punctuation.definition.tag.end.tsx"
775 | ],
776 | "settings": {
777 | "foreground": "#ac66c9"
778 | }
779 | },
780 | {
781 | "name": "Import JS",
782 | "scope": [
783 | "keyword.control.import",
784 | "keyword.control.import.js",
785 | "keyword.control.import.jsx",
786 | "keyword.control.import.ts",
787 | "keyword.control.import.tsx",
788 | "keyword.control.from",
789 | "keyword.control.from.js",
790 | "keyword.control.from.jsx",
791 | "keyword.control.from.ts",
792 | "keyword.control.from.tsx"
793 | ],
794 | "settings": {
795 | "foreground": "#e4baba"
796 | }
797 | },
798 | {
799 | "name": "Attributes",
800 | "scope": ["entity.other.attribute-name"],
801 | "settings": {
802 | "foreground": "#e4baba"
803 | }
804 | },
805 | {
806 | "name": "HTML Attributes",
807 | "scope": [
808 | "text.html.basic entity.other.attribute-name.html",
809 | "text.html.basic entity.other.attribute-name"
810 | ],
811 | "settings": {
812 | "fontStyle": "italic",
813 | "foreground": "#ffcb6b"
814 | }
815 | },
816 |
817 | // CSS-Specific Rules
818 | {
819 | "name": "CSS Element Selector",
820 | "scope": ["entity.name.tag.css"],
821 | "settings": {
822 | "fontStyle": "bold",
823 | "foreground": "#e0a1a4"
824 | }
825 | },
826 | {
827 | "name": "CSS Classes",
828 | "scope": ["entity.other.attribute-name.class"],
829 | "settings": {
830 | "foreground": "#a477be"
831 | }
832 | },
833 | {
834 | "name": "CSS Pseudo Class",
835 | "scope": ["entity.other.attribute-name.pseudo-class.css"],
836 | "settings": {
837 | "foreground": "#e0a1a4"
838 | }
839 | },
840 | {
841 | "name": "Attribute Selector",
842 | "scope": [
843 | "entity.other.attribute-selector.css",
844 | "entity.other.attribute-selector.scss",
845 | "entity.other.attribute-selector.sass"
846 | ],
847 | "settings": {
848 | "foreground": "#41c09a"
849 | }
850 | },
851 | {
852 | "name": "CSS ID's",
853 | "scope": ["source.sass keyword.control"],
854 | "settings": {
855 | "foreground": "#82aaff"
856 | }
857 | },
858 | {
859 | "name": "CSS At Rules",
860 | "scope": [
861 | "keyword.control.at-rule.media.scss",
862 | "meta.at-rule.media.scss"
863 | ],
864 | "settings": {
865 | "fontStyle": "bold"
866 | }
867 | },
868 | {
869 | "name": "sass variables",
870 | "scope": ["sass.script.maps", "scss.script.maps"],
871 | "settings": {
872 | "foreground": "#DF84A2"
873 | }
874 | },
875 | {
876 | "name": "sass function interpolation",
877 | "scope": [
878 | "support.function.interpolation.sass",
879 | "support.function.interpolation.scss"
880 | ],
881 | "settings": {
882 | "foreground": "#7c97bb"
883 | }
884 | },
885 | {
886 | "name": "Inserted",
887 | "scope": ["markup.inserted"],
888 | "settings": {
889 | "foreground": "#c3e88d"
890 | }
891 | },
892 | {
893 | "name": "Deleted",
894 | "scope": ["markup.deleted"],
895 | "settings": {
896 | "foreground": "#ff5370"
897 | }
898 | },
899 | {
900 | "name": "Changed",
901 | "scope": ["markup.changed"],
902 | "settings": {
903 | "foreground": "#c792ea"
904 | }
905 | },
906 | {
907 | "name": "Regular Expressions",
908 | "scope": ["string.regexp"],
909 | "settings": {
910 | "foreground": "#89ddff"
911 | }
912 | },
913 | {
914 | "name": "Escape Characters",
915 | "scope": ["constant.character.escape"],
916 | "settings": {
917 | "foreground": "#89ddff"
918 | }
919 | },
920 | {
921 | "name": "URL",
922 | "scope": ["*url*", "*link*", "*uri*"],
923 | "settings": {
924 | "fontStyle": "underline"
925 | }
926 | },
927 | {
928 | "name": "Decorators",
929 | "scope": [
930 | "tag.decorator.js entity.name.tag.js",
931 | "tag.decorator.jsx entity.name.tag.jsx",
932 | "tag.decorator.ts entity.name.tag.ts",
933 | "tag.decorator.tsx entity.name.tag.tsx",
934 | "tag.decorator.js punctuation.definition.tag.js",
935 | "tag.decorator.jsx punctuation.definition.tag.jsx",
936 | "tag.decorator.ts punctuation.definition.tag.ts",
937 | "tag.decorator.tsx punctuation.definition.tag.tsx"
938 | ],
939 | "settings": {
940 | "fontStyle": "italic",
941 | "foreground": "#82aaff"
942 | }
943 | },
944 | {
945 | "name": "ES7 Bind Operator",
946 | "scope": [
947 | "source.js constant.other.object.key.js string.unquoted.label.js",
948 | "source.jsx constant.other.object.key.jsx string.unquoted.label.jsx",
949 | "source.ts constant.other.object.key.ts string.unquoted.label.ts",
950 | "source.tsx constant.other.object.key.tsx string.unquoted.label.tsx"
951 | ],
952 | "settings": {
953 | "fontStyle": "italic",
954 | "foreground": "#ff5370"
955 | }
956 | },
957 | {
958 | "name": "Optional Operator",
959 | "scope": [
960 | "keyword.operator.optional",
961 | "keyword.operator.optional.js",
962 | "keyword.operator.optional.jsx",
963 | "keyword.operator.optional.ts",
964 | "keyword.operator.optional.tsx",
965 | "punctuation.accessor.optional",
966 | "punctuation.accessor.optional.js",
967 | "punctuation.accessor.optional.jsx",
968 | "punctuation.accessor.optional.ts",
969 | "punctuation.accessor.optional.tsx",
970 | "keyword.operator.ternary"
971 | ],
972 | "settings": {
973 | "foreground": "#e78797",
974 | "fontStyle": ""
975 | }
976 | },
977 |
978 | // JSON
979 | {
980 | "name": "JSON Key - Level 0",
981 | "scope": "source.json meta.structure.dictionary.json support.type.property-name.json",
982 | "settings": {
983 | "foreground": "#c792ea"
984 | }
985 | },
986 | {
987 | "name": "JSON Key - Level 1",
988 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
989 | "settings": {
990 | "foreground": "#ffcb6b"
991 | }
992 | },
993 | {
994 | "name": "JSON Key - Level 2",
995 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
996 | "settings": {
997 | "foreground": "#f78c6c"
998 | }
999 | },
1000 | {
1001 | "name": "JSON Key - Level 3",
1002 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1003 | "settings": {
1004 | "foreground": "#6a7cdc"
1005 | }
1006 | },
1007 | {
1008 | "name": "JSON Key - Level 4",
1009 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1010 | "settings": {
1011 | "foreground": "#ac66c9"
1012 | }
1013 | },
1014 | {
1015 | "name": "JSON Key - Level 5",
1016 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1017 | "settings": {
1018 | "foreground": "#43c2e2"
1019 | }
1020 | },
1021 | {
1022 | "name": "JSON Key - Level 6",
1023 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1024 | "settings": {
1025 | "foreground": "#e0a1a4"
1026 | }
1027 | },
1028 | {
1029 | "name": "JSON Key - Level 7",
1030 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1031 | "settings": {
1032 | "foreground": "#df84a2"
1033 | }
1034 | },
1035 | {
1036 | "name": "JSON Key - Level 8",
1037 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1038 | "settings": {
1039 | "foreground": "#f0bb6b"
1040 | }
1041 | },
1042 | {
1043 | "name": "Numeric Constant",
1044 | "scope": "constant.numeric.json",
1045 | "settings": {
1046 | "foreground": "#d4785d"
1047 | }
1048 | },
1049 | {
1050 | "name": "Language Constant",
1051 | "scope": "constant.language.json",
1052 | "settings": {
1053 | "foreground": "#40cfcf",
1054 | "fontStyle": "bold"
1055 | }
1056 | },
1057 | {
1058 | "name": "Punctuation Definition Dictionary",
1059 | "scope": [
1060 | "punctuation.definition.dictionary.begin.json",
1061 | "punctuation.definition.dictionary.end.json"
1062 | ],
1063 | "settings": {
1064 | "foreground": "#ffcb6b"
1065 | }
1066 | },
1067 | {
1068 | "name": "Punctuation Definition Strings",
1069 | "scope": [
1070 | "punctuation.support.type.property-name.begin.json",
1071 | "punctuation.support.type.property-name.end.json",
1072 | "punctuation.definition.string.begin.json",
1073 | "punctuation.definition.string.end.json"
1074 | ],
1075 | "settings": {
1076 | "foreground": "#d5d5d5"
1077 | }
1078 | },
1079 |
1080 | // Markdown Styles - ✅
1081 | {
1082 | "name": "Markdown - Plain Text",
1083 | "scope": [
1084 | "text.html.markdown",
1085 | "punctuation.definition.list_item.markdown"
1086 | ],
1087 | "settings": {
1088 | "foreground": "#caaeeb"
1089 | }
1090 | },
1091 | {
1092 | "name": "Markdown - Markup Raw Inline",
1093 | "scope": "text.html.markdown markup.inline.raw.string.markdown",
1094 | "settings": {
1095 | "foreground": "#4CA779"
1096 | }
1097 | },
1098 | {
1099 | "name": "Markdown - Markup Raw Inline Punctuation",
1100 | "scope": "text.html.markdown punctuation.definition.raw.markdown",
1101 | "settings": {
1102 | "foreground": "#4CA779"
1103 | }
1104 | },
1105 | {
1106 | "name": "Markdown - Heading Punctuation",
1107 | "scope": "punctuation.definition.heading.markdown",
1108 | "settings": {
1109 | "foreground": "#f78c6c96"
1110 | }
1111 | },
1112 | {
1113 | "name": "Markdown - Heading Text",
1114 | "scope": "entity.name.section.markdown",
1115 | "settings": {
1116 | "foreground": "#f78c6c"
1117 | }
1118 | },
1119 | {
1120 | "name": "Markup - Italic",
1121 | "scope": "markup.italic.markdown",
1122 | "settings": {
1123 | "fontStyle": "italic",
1124 | "foreground": "#7a8491"
1125 | }
1126 | },
1127 | {
1128 | "name": "Markup - Bold",
1129 | "scope": "markup.bold.markdown",
1130 | "settings": {
1131 | "fontStyle": "bold",
1132 | "foreground": "#7a8491"
1133 | }
1134 | },
1135 | {
1136 | "name": "Markup - Bold-Italic",
1137 | "scope": [
1138 | "markup.bold.markdown markup.italic.markdown",
1139 | "markup.italic.markdown markup.bold.markdown",
1140 | "markup.quote.markdown markup.bold.markdown"
1141 | ],
1142 | "settings": {
1143 | "fontStyle": "italic bold",
1144 | "foreground": "#7a8491"
1145 | }
1146 | },
1147 | {
1148 | "name": "Markup - Underline",
1149 | "scope": "markup.underline.markdown",
1150 | "settings": {
1151 | "fontStyle": "underline",
1152 | "foreground": "#7a8491"
1153 | }
1154 | },
1155 | {
1156 | "name": "Markdown - Blockquote",
1157 | "scope": ["markup.quote punctuation.definition.blockquote.markdown"],
1158 | "settings": {
1159 | "fontStyle": "italic",
1160 | "foreground": "#6a7cdc"
1161 | }
1162 | },
1163 | {
1164 | "name": "Markup - Quote",
1165 | "scope": "markup.quote.markdown",
1166 | "settings": {
1167 | "fontStyle": "italic",
1168 | "foreground": "#6a7cdc"
1169 | }
1170 | },
1171 | {
1172 | "name": "Markup - Quote Punctuation",
1173 | "scope": "punctuation.definition.quote.begin.markdown",
1174 | "settings": {
1175 | "fontStyle": "italic",
1176 | "foreground": "#6a7cdc96"
1177 | }
1178 | },
1179 | {
1180 | "name": "Markup - List Punctuation",
1181 | "scope": "punctuation.definition.list.begin.markdown",
1182 | "settings": {
1183 | "foreground": "#caaeeb80"
1184 | }
1185 | },
1186 | {
1187 | "name": "Markup - List Text",
1188 | "scope": [
1189 | "markup.list.unnumbered.markdown",
1190 | "markup.list.numbered.markdown"
1191 | ],
1192 | "settings": {
1193 | "foreground": "#caaeeb"
1194 | }
1195 | },
1196 |
1197 | // Links
1198 | {
1199 | "name": "Markdown - Link",
1200 | "scope": [
1201 | "string.other.link.title.markdown",
1202 | "string.other.link.description.markdown"
1203 | ],
1204 | "settings": {
1205 | "foreground": "#c2a0fd"
1206 | }
1207 | },
1208 | {
1209 | "name": "Markdown - Link",
1210 | "scope": [
1211 | "markup.underline.link.markdown",
1212 | "markup.underline.link.image.markdown"
1213 | ],
1214 | "settings": {
1215 | "foreground": "#e0a1a4"
1216 | }
1217 | },
1218 | {
1219 | "name": "Markdown - Punctuation Link",
1220 | "scope": [
1221 | "punctuation.definition.string.begin.markdown",
1222 | "punctuation.definition.string.end.markdown"
1223 | ],
1224 | "settings": {
1225 | "foreground": "#f0bb6b"
1226 | }
1227 | },
1228 | {
1229 | "name": "Markdown - Link Description",
1230 | "scope": ["string.other.link.description.title.markdown"],
1231 | "settings": {
1232 | "foreground": "#c792ea"
1233 | }
1234 | },
1235 | {
1236 | "name": "Markdown - Link Anchor",
1237 | "scope": ["constant.other.reference.link.markdown"],
1238 | "settings": {
1239 | "foreground": "#ac66c9"
1240 | }
1241 | },
1242 |
1243 | // Block Codes
1244 | {
1245 | "name": "Markup - Raw Block",
1246 | "scope": ["markup.raw.block"],
1247 | "settings": {
1248 | "foreground": "#e27171"
1249 | }
1250 | },
1251 | {
1252 | "name": "Markdown - Raw Block Fenced",
1253 | "scope": "markup.fenced_code.block.markdown",
1254 | "settings": {
1255 | "foreground": "#7a8491"
1256 | }
1257 | },
1258 | {
1259 | "name": "Markdown - Fenced Bode Block Punctuation",
1260 | "scope": "punctuation.definition.markdown",
1261 | "settings": {
1262 | "foreground": "#4CA779"
1263 | }
1264 | },
1265 | {
1266 | "name": "Markdown - Fenced Bode Block Language",
1267 | "scope": "fenced_code.block.language.markdown",
1268 | "settings": {
1269 | "foreground": "#6a7cdc"
1270 | }
1271 | },
1272 | {
1273 | "name": "Markdown - Fenced Bode Block Variable",
1274 | "scope": [
1275 | "markup.raw.block.fenced.markdown",
1276 | "variable.language.fenced.markdown",
1277 | "punctuation.section.class.end"
1278 | ],
1279 | "settings": {
1280 | "foreground": "#eeffff"
1281 | }
1282 | },
1283 | {
1284 | "name": "Markdown - Separator",
1285 | "scope": ["meta.separator"],
1286 | "settings": {
1287 | "fontStyle": "bold",
1288 | "foreground": "#7a8491"
1289 | }
1290 | },
1291 | {
1292 | "name": "Markdown - Escaped Characters",
1293 | "scope": "constant.character.escape.markdown",
1294 | "settings": {
1295 | "foreground": "#43c2e2"
1296 | }
1297 | },
1298 |
1299 | // YAML
1300 | {
1301 | "name": "YAML Plain Text",
1302 | "scope": "string.unquoted.plain.out.yaml",
1303 | "settings": {
1304 | "foreground": "#b37895"
1305 | }
1306 | },
1307 |
1308 | // XML and SVGs
1309 | {
1310 | "name": "XML Tags",
1311 | "scope": ["entity.name.tag.localname.xml", "meta.tag.xml"],
1312 | "settings": {
1313 | "foreground": "#a56e55"
1314 | }
1315 | },
1316 | {
1317 | "name": "XML Punctuation",
1318 | "scope": "punctuation.definition.tag.xml",
1319 | "settings": {
1320 | "foreground": "#ac66c9"
1321 | }
1322 | },
1323 |
1324 | //GraphQL
1325 | {
1326 | "name": "Keyword",
1327 | "scope": "keyword.operation.graphql",
1328 | "settings": {
1329 | "foreground": "#a477be"
1330 | }
1331 | },
1332 | {
1333 | "name": "Keyword",
1334 | "scope": "entity.name.function.graphql",
1335 | "settings": {
1336 | "foreground": "#e27171",
1337 | "fontStyle": "bold"
1338 | }
1339 | },
1340 | {
1341 | "name": "Variable",
1342 | "scope": "variable.graphql",
1343 | "settings": {
1344 | "foreground": "#fa72c1"
1345 | }
1346 | },
1347 | {
1348 | "name": "Variable Parameter",
1349 | "scope": "variable.parameter.graphql",
1350 | "settings": {
1351 | "foreground": "#40cfcf"
1352 | }
1353 | },
1354 | {
1355 | "name": "Numeric Constant",
1356 | "scope": "constant.numeric.float.graphql",
1357 | "settings": {
1358 | "foreground": "#d4785d"
1359 | }
1360 | },
1361 | {
1362 | "name": "Set Selection",
1363 | "scope": "meta.selectionset.graphql",
1364 | "settings": {
1365 | "foreground": "#f78c6c"
1366 | }
1367 | },
1368 | {
1369 | "name": "Set Selection",
1370 | "scope": "support.type.builtin.graphql",
1371 | "settings": {
1372 | "foreground": "#e4baba",
1373 | "fontStyle": "bold"
1374 | }
1375 | },
1376 | {
1377 | "name": "Brackets",
1378 | "scope": "meta.brace.round.directive.graphql",
1379 | "settings": {
1380 | "foreground": "#ac66c9"
1381 | }
1382 | },
1383 | {
1384 | "name": "Punctuation Operation",
1385 | "scope": "punctuation.operation.graphql",
1386 | "settings": {
1387 | "foreground": "#ffcb6b"
1388 | }
1389 | },
1390 | {
1391 | "name": "Spread Operator",
1392 | "scope": "keyword.operator.spread.graphql",
1393 | "settings": {
1394 | "foreground": "#ffcb6b"
1395 | }
1396 | },
1397 |
1398 | // Pug-specific Rules
1399 | {
1400 | "name": "Pug Tag Names",
1401 | "scope": ["entity.name.tag.pug", "meta.tag.sgml.doctype.html"],
1402 | "settings": {
1403 | "foreground": "#D4785D"
1404 | }
1405 | },
1406 |
1407 | // Prisma-specific rules
1408 | {
1409 | "name": "Prisma Built-in Types",
1410 | "scope": "support.type.primitive.prisma",
1411 | "settings": {
1412 | "foreground": "#F78C6C"
1413 | }
1414 | }
1415 | ]
1416 | }
1417 |
--------------------------------------------------------------------------------
/themes/alternight-color-theme.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "alternight",
3 | "type": "dark",
4 | "semanticHighlighting": true,
5 | "colors": {
6 | // Editor
7 | "editor.background": "#1f172b",
8 | "editor.foreground": "#caaeeb",
9 | "editor.selectionBackground": "#5C7FE280",
10 | "editorCursor.foreground": "#ff0",
11 | "editorLineNumber.foreground": "#9077b688",
12 | "editor.lineHighlightBackground": "#caaeeb12",
13 | "editor.foldBackground": "#291b3d",
14 |
15 | "titleBar.activeBackground": "#1f172b",
16 | "titleBar.activeForeground": "#9077b6",
17 | "titleBar.inactiveBackground": "#1f172b80",
18 | "titleBar.inactiveForeground": "#9077b680",
19 |
20 | // Activity bar
21 | "activityBar.background": "#1f172b",
22 | "activityBar.foreground": "#bcadd3",
23 | "activityBar.activeBorder": "#bcadd3",
24 | "activityBar.inactiveForeground": "#9077b680",
25 | "activityBarBadge.background": "#e29fa4",
26 | "activityBarBadge.foreground": "#1f172b",
27 |
28 | // Sidebar
29 | "sideBar.background": "#1f172b",
30 | "sideBar.foreground": "#9077b6",
31 | "sideBarTitle.foreground": "#bcadd3",
32 | "sideBarSectionHeader.background": "#312a3c",
33 | "sideBarSectionHeader.foreground": "#9b8eb0",
34 |
35 | // Tabs
36 | "editorGroupHeader.tabsBackground": "#1f172b",
37 | "tab.activeBorderTop": "#f78c6c",
38 | "tab.activeForeground": "#f78c6c",
39 | "tab.inactiveBackground": "#1b1b31",
40 | "tab.inactiveForeground": "#7F7fb8",
41 | "tab.hoverBackground": "#251a36",
42 | "tab.hoverForeground": "#f78c6c",
43 |
44 | // Status bar
45 | "statusBar.background": "#1f172b",
46 | "statusBar.foreground": "#9077b6",
47 | "statusBarItem.hoverBackground": "#312642",
48 | "statusBar.debuggingBackground": "#e29fa4",
49 | "statusBar.debuggingForeground": "#1f172b",
50 |
51 | // Integrated Terminal
52 | "terminal.background": "#1f172b",
53 | "terminal.foreground": "#bba8d1",
54 | "terminal.selectionBackground": "#5C7FE280",
55 | "terminalCursor.foreground": "#ff0",
56 | "terminal.ansiBlack": "#292929",
57 | "terminal.ansiBlue": "#5C7FE2",
58 | "terminal.ansiCyan": "#40CFCF",
59 | "terminal.ansiGreen": "#4CA779",
60 | "terminal.ansiMagenta": "#c869d1",
61 | "terminal.ansiRed": "#f07c7c",
62 | "terminal.ansiWhite": "#FAFAFA",
63 | "terminal.ansiYellow": "#FFCB6B",
64 | "terminal.ansiBrightBlack": "#080808",
65 | "terminal.ansiBrightBlue": "#718edf",
66 | "terminal.ansiBrightCyan": "#70d1d1",
67 | "terminal.ansiBrightGreen": "#71bd97",
68 | "terminal.ansiBrightMagenta": "#d581dd",
69 | "terminal.ansiBrightRed": "#f08a8a",
70 | "terminal.ansiBrightWhite": "#FFFFFF",
71 | "terminal.ansiBrightYellow": "#fdda9a",
72 |
73 | // Menu
74 | "menu.background": "#1f172b",
75 | "menu.foreground": "#c6abde",
76 | "menu.border": "#c6abde",
77 | "menu.selectionBackground": "#fefefe40",
78 | "menu.separatorBackground": "#fefefe32",
79 | "window.activeBorder": "#9292e424",
80 |
81 | "editor.hoverHighlightBackground": "#695d5e",
82 | "editorIndentGuide.background": "#312a3c",
83 | "editorIndentGuide.activeBackground": "#797480",
84 |
85 | // Hover Widget
86 | "editorHoverWidget.background": "#312a3c",
87 | "editorHoverWidget.border": "#c6abde",
88 | "editorHoverWidget.foreground": "#c6abde",
89 |
90 | "editorGutter.addedBackground": "#9fff20",
91 | "editorGutter.foldingControlForeground": "#ff0",
92 |
93 | // Misc
94 | "scrollbar.shadow": "#caaeeb24",
95 | "sash.hoverBorder": "#f78c6c"
96 | },
97 | "tokenColors": [
98 | {
99 | "name": "Comment",
100 | "scope": [
101 | "comment",
102 | "comment.line",
103 | "comment.block",
104 | "comment.block.documentation",
105 | "punctuation.definition.comment"
106 | ],
107 | "settings": {
108 | "foreground": "#524168"
109 | }
110 | },
111 | {
112 | "name": "Template Strings",
113 | "scope": [
114 | "punctuation.definition.string.template.begin",
115 | "punctuation.definition.string.template.begin.js",
116 | "punctuation.definition.string.template.begin.jsx",
117 | "punctuation.definition.string.template.begin.ts",
118 | "punctuation.definition.string.template.begin.tsx",
119 | "punctuation.definition.string.template.end",
120 | "punctuation.definition.string.template.end.js",
121 | "punctuation.definition.string.template.end.jsx",
122 | "punctuation.definition.string.template.end.ts",
123 | "punctuation.definition.string.template.end.tsx"
124 | ],
125 | "settings": {
126 | "foreground": "#4CA779"
127 | }
128 | },
129 | {
130 | "name": "Template Expression",
131 | "scope": [
132 | "punctuation.definition.template-expression.begin",
133 | "punctuation.definition.template-expression.begin.js",
134 | "punctuation.definition.template-expression.begin.jsx",
135 | "punctuation.definition.template-expression.begin.ts",
136 | "punctuation.definition.template-expression.begin.tsx",
137 | "punctuation.definition.template-expression.end",
138 | "punctuation.definition.template-expression.end.js",
139 | "punctuation.definition.template-expression.end.jsx",
140 | "punctuation.definition.template-expression.end.ts",
141 | "punctuation.definition.template-expression.end.tsx"
142 | ],
143 | "settings": {
144 | "foreground": "#caaeeb"
145 | }
146 | },
147 | {
148 | "name": "variables",
149 | "scope": ["variable.other.readwrite", "variable.other.constant.js"],
150 | "settings": {
151 | "foreground": "#DF84A2"
152 | }
153 | },
154 | {
155 | "name": "HTML Entities",
156 | "scope": [
157 | "constant.character.entity",
158 | "constant.character.entity.js",
159 | "constant.character.entity.jsx",
160 | "constant.character.entity.ts",
161 | "constant.character.entity.tsx"
162 | ],
163 | "settings": {
164 | "foreground": "#43c2e2"
165 | }
166 | },
167 | {
168 | "name": "Punctuation of HTML Entities",
169 | "scope": [
170 | "punctuation.definition.entity",
171 | "punctuation.definition.entity.js",
172 | "punctuation.definition.entity.jsx",
173 | "punctuation.definition.entity.ts",
174 | "punctuation.definition.entity.tsx"
175 | ],
176 | "settings": {
177 | "foreground": "#3896ad"
178 | }
179 | },
180 | {
181 | "name": "TS Tag Directives",
182 | "scope": [
183 | "entity.name.tag.directive",
184 | "entity.name.tag.directive.js",
185 | "entity.name.tag.directive.jsx",
186 | "entity.name.tag.directive.ts",
187 | "entity.name.tag.directive.tsx"
188 | ],
189 | "settings": {
190 | "foreground": "#f0bb6b"
191 | }
192 | },
193 | {
194 | "name": "Punctuation of TS Tag Directives",
195 | "scope": [
196 | "punctuation.definition.tag.directive",
197 | "punctuation.definition.tag.directive.js",
198 | "punctuation.definition.tag.directive.jsx",
199 | "punctuation.definition.tag.directive.ts",
200 | "punctuation.definition.tag.directive.tsx"
201 | ],
202 | "settings": {
203 | "foreground": "#A477BE"
204 | }
205 | },
206 | {
207 | "name": "Colors",
208 | "scope": ["constant.other.color"],
209 | "settings": {
210 | "foreground": "#fafafa"
211 | }
212 | },
213 | {
214 | "name": "Invalid",
215 | "scope": ["invalid", "invalid.illegal"],
216 | "settings": {
217 | "foreground": "#ff5370"
218 | }
219 | },
220 | {
221 | "name": "Keyword, Storage",
222 | "scope": ["keyword", "storage.type", "storage.modifier"],
223 | "settings": {
224 | "foreground": "#a477be",
225 | "fontStyle": "italic"
226 | }
227 | },
228 | {
229 | "name": "async keyword",
230 | "scope": ["storage.modifier.async"],
231 | "settings": {
232 | "foreground": "#664a86"
233 | }
234 | },
235 | {
236 | "name": "Keyword Operator Assignment",
237 | "scope": [
238 | "keyword.operator.assignment",
239 | "keyword.operator.type.annotation"
240 | ],
241 | "settings": {
242 | "foreground": "#caaeeb",
243 | "fontStyle": ""
244 | }
245 | },
246 | {
247 | "name": "Entity HTML Tags",
248 | "scope": ["entity.name.tag.html"],
249 | "settings": {
250 | "foreground": "#d4785d"
251 | }
252 | },
253 | {
254 | "name": "HTML Tags",
255 | "scope": [
256 | "punctuation.definition.tag.html",
257 | "punctuation.definition.tag.begin.html",
258 | "punctuation.definition.tag.end.html"
259 | ],
260 | "settings": {
261 | "foreground": "#ac66c9"
262 | }
263 | },
264 | {
265 | "name": "Operator, Misc",
266 | "scope": [
267 | "keyword.control",
268 | "constant.other.color",
269 | "punctuation",
270 | "meta.brace.square",
271 | "meta.tag",
272 | "punctuation.definition.tag",
273 | "punctuation.section.embedded",
274 | "keyword.other.template",
275 | "keyword.other.substitution",
276 | "keyword.operator"
277 | ],
278 | "settings": {
279 | "foreground": "#caaeeb",
280 | "fontStyle": ""
281 | }
282 | },
283 | {
284 | "name": "Tag",
285 | "scope": [
286 | "entity.name.tag",
287 | "meta.tag.sgml",
288 | "markup.deleted.git_gutter"
289 | ],
290 | "settings": {
291 | "foreground": "#A477BE"
292 | }
293 | },
294 | {
295 | "name": "Function, Special Method",
296 | "scope": [
297 | "entity.name.function",
298 | "meta.function-call",
299 | "variable.function",
300 | "support.function",
301 | "keyword.other.special-method"
302 | ],
303 | "settings": {
304 | "foreground": "#e7d5a4"
305 | }
306 | },
307 | {
308 | "name": "Block Level Variables",
309 | "scope": ["meta.block variable.other"],
310 | "settings": {
311 | "foreground": "#df84a2"
312 | }
313 | },
314 | {
315 | "name": "Other Variable, String Link",
316 | "scope": ["support.other.variable", "string.other.link"],
317 | "settings": {
318 | "foreground": "#e0a1a4",
319 | "fontStyle": "bold"
320 | }
321 | },
322 | {
323 | "name": "Number, Constant, Function Argument, Tag Attribute, Embedded",
324 | "scope": [
325 | "constant.language",
326 | "support.constant",
327 | "constant.character",
328 | "constant.escape",
329 | "keyword.other.unit",
330 | "keyword.other"
331 | ],
332 | "settings": {
333 | "foreground": "#75dfbc",
334 | "fontStyle": ""
335 | }
336 | },
337 | {
338 | "name": "Numeric Constant",
339 | "scope": "constant.numeric",
340 | "settings": {
341 | "foreground": "#f1b718"
342 | }
343 | },
344 | {
345 | "name": "CSS Constants",
346 | "scope": [
347 | "support.constant.property-value.css",
348 | "constant.numeric.css",
349 | "constant.other.color.rgb-value.hex.css",
350 | "constant.language.color.rgb-value.css.sass"
351 | ],
352 | "settings": {
353 | "foreground": "#a07fc7",
354 | "fontStyle": ""
355 | }
356 | },
357 | {
358 | "name": "CSS Units",
359 | "scope": [
360 | "keyword.other.unit.percentage.css",
361 | "keyword.other.unit.px.css",
362 | "keyword.other.unit.rem.css",
363 | "keyword.other.unit.em.css",
364 | "keyword.other.unit.ms.css",
365 | "keyword.other.unit.s.css",
366 | "keyword.other.unit.deg.css",
367 | "keyword.other.unit.fr.css",
368 | "punctuation.definition.constant.css",
369 | "keyword.control.unit.css.sass"
370 | ],
371 | "settings": {
372 | "foreground": "#664a86"
373 | }
374 | },
375 | {
376 | "name": "Referenced CSS properties",
377 | "scope": "invalid.deprecated.color.system.css", // Reference a CSS property in `transition`
378 | "settings": {
379 | "foreground": "#a07fc7"
380 | }
381 | },
382 | {
383 | "name": "Sass %",
384 | "scope": "entity.other.inherited-class.placeholder-selector.css.sass",
385 | "settings": {
386 | "foreground": "#F0BB6B"
387 | }
388 | },
389 | {
390 | "name": "CSS Variables",
391 | "scope": "variable.other.value",
392 | "settings": {
393 | "foreground": "#DF84A2"
394 | }
395 | },
396 | {
397 | "name": "String, Symbols, Inherited Class, Markup Heading",
398 | "scope": [
399 | "string",
400 | "constant.other.symbol",
401 | "constant.other.key",
402 | "entity.other.inherited-class",
403 | "markup.heading",
404 | "markup.inserted.git_gutter",
405 | "meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js",
406 | "meta.group.braces.curly constant.other.object.key.jsx string.unquoted.label.jsx",
407 | "meta.group.braces.curly constant.other.object.key.ts string.unquoted.label.ts",
408 | "meta.group.braces.curly constant.other.object.key.tsx string.unquoted.label.tsx"
409 | ],
410 | "settings": {
411 | "foreground": "#4CA779"
412 | }
413 | },
414 | {
415 | "name": "String variable",
416 | "scope": "meta.embedded.line",
417 | "settings": {
418 | "foreground": "#CAAEEB"
419 | }
420 | },
421 | {
422 | "name": "Class, Support",
423 | "scope": [
424 | "entity.name",
425 | "support.class",
426 | "markup.changed.git_gutter",
427 | "support.type.sys-types"
428 | ],
429 | "settings": {
430 | "foreground": "#f0bb6b"
431 | }
432 | },
433 | {
434 | "name": "Entity Types",
435 | "scope": ["support.type"],
436 | "settings": {
437 | "foreground": "#b2ccd6"
438 | }
439 | },
440 | {
441 | "name": "CSS at-rules",
442 | "scope": [
443 | "keyword.control.at-rule.css",
444 | "keyword.control.at-rule.sass",
445 | "keyword.control.at-rule.scss",
446 | "keyword.control.at-rule.use"
447 | ],
448 | "settings": {
449 | "foreground": "#40CFCF",
450 | "fontStyle": "italic"
451 | }
452 | },
453 | {
454 | "name": "CSS/sass/scss functions",
455 | "scope": [
456 | "support.function.name.sass.library",
457 | "support.function.name.scss.library"
458 | ],
459 | "settings": {
460 | "foreground": "#E7D5A4",
461 | "fontStyle": "italic"
462 | }
463 | },
464 | {
465 | "name": "CSS Variable",
466 | "scope": ["variable.css"],
467 | "settings": {
468 | "foreground": "#c7c7df"
469 | }
470 | },
471 | {
472 | "name": "CSS String",
473 | "scope": [
474 | "constant.character.css",
475 | "constant.character.css.sass",
476 | "constant.character.css.scss"
477 | ],
478 | "settings": {
479 | "foreground": "#4CA779"
480 | }
481 | },
482 | {
483 | "name": "CSS Class and Support",
484 | "scope": [
485 | "source.css support.type.property-name",
486 | "source.sass support.type.property-name",
487 | "source.scss support.type.property-name",
488 | "source.less support.type.property-name",
489 | "source.stylus support.type.property-name",
490 | "source.postcss support.type.property-name"
491 | ],
492 | "settings": {
493 | "foreground": "#f78c6c"
494 | }
495 | },
496 | {
497 | "name": "CSS Vendored Properties",
498 | "scope": [
499 | "support.type.vendored.property-name.css",
500 | "support.type.vendored.property-name.sass",
501 | "support.type.vendored.property-name.scss",
502 | "support.type.vendored.property-name.less"
503 | ],
504 | "settings": {
505 | "foreground": "#f0bb6b"
506 | }
507 | },
508 | {
509 | "name": "Sub-methods",
510 | "scope": [
511 | "entity.name.module",
512 | "entity.name.module.js",
513 | "entity.name.module.jsx",
514 | "entity.name.module.ts",
515 | "entity.name.module.tsx",
516 | "variable.import.parameter",
517 | "variable.import.parameter.js",
518 | "variable.import.parameter.jsx",
519 | "variable.import.parameter.ts",
520 | "variable.import.parameter.tsx",
521 | "variable.other.class",
522 | "variable.other.class.js",
523 | "variable.other.class.jsx",
524 | "variable.other.class.ts",
525 | "variable.other.class.tsx"
526 | ],
527 | "settings": {
528 | "foreground": "#ff5370"
529 | }
530 | },
531 | {
532 | "name": "Variable language",
533 | "scope": ["variable.language"],
534 | "settings": {
535 | "foreground": "#ff6781",
536 | "fontStyle": "italic"
537 | }
538 | },
539 | {
540 | "name": "JS trycatch",
541 | "scope": [
542 | "keyword.control.trycatch.js",
543 | "keyword.control.trycatch.jsx",
544 | "keyword.control.trycatch.ts",
545 | "keyword.control.trycatch.tsx"
546 | ],
547 | "settings": {
548 | "foreground": "#5fe09f", // #775fe0
549 | "fontStyle": "italic"
550 | }
551 | },
552 | {
553 | "name": "entity.name.method.js",
554 | "scope": [
555 | "entity.name.method.js",
556 | "entity.name.method.jsx",
557 | "entity.name.method.ts",
558 | "entity.name.method.tsx"
559 | ],
560 | "settings": {
561 | "foreground": "#82aaff"
562 | }
563 | },
564 | {
565 | "name": "Variable Parameters",
566 | "scope": "variable.parameter",
567 | "settings": {
568 | "foreground": "#8ecbd6"
569 | }
570 | },
571 | {
572 | "name": "meta.method.js",
573 | "scope": [
574 | "meta.class-method.js entity.name.function.js",
575 | "meta.class-method.jsx entity.name.function.jsx",
576 | "meta.class-method.ts entity.name.function.ts",
577 | "meta.class-method.tsx entity.name.function.tsx",
578 | "variable.function.constructor"
579 | ],
580 | "settings": {
581 | "foreground": "#82aaff"
582 | }
583 | },
584 | {
585 | "name": "Constant Language",
586 | "scope": "constant.language",
587 | "settings": {
588 | "foreground": "#40cfcf"
589 | }
590 | },
591 | {
592 | "name": "null/undefined Keywords JS",
593 | "scope": [
594 | "constant.language.null",
595 | "constant.language.null.js",
596 | "constant.language.null.jsx",
597 | "constant.language.null.ts",
598 | "constant.language.null.tsx",
599 | "constant.language.undefined",
600 | "constant.language.undefined.js",
601 | "constant.language.undefined.jsx",
602 | "constant.language.undefined.ts",
603 | "constant.language.undefined.tsx"
604 | ],
605 | "settings": {
606 | "foreground": "#40CFCF",
607 | "fontStyle": "italic"
608 | }
609 | },
610 | {
611 | "name": "Object Keys Keyword JS",
612 | "scope": [
613 | "meta.object-literal.key.js",
614 | "meta.object-literal.key.jsx",
615 | "meta.object-literal.key.ts",
616 | "meta.object-literal.key.tsx",
617 | "meta.object.member.js",
618 | "meta.object.member.jsx",
619 | "meta.object.member.ts",
620 | "meta.object.member.tsx",
621 | "meta.objectliteral.js",
622 | "meta.objectliteral.jsx",
623 | "meta.objectliteral.ts",
624 | "meta.objectliteral.tsx"
625 | ],
626 | "settings": {
627 | "foreground": "#e8f3f3"
628 | }
629 | },
630 |
631 | // JSX-specific Rules
632 | {
633 | "name": "JSX Tag Name",
634 | "scope": [
635 | "entity.name.tag.js",
636 | "entity.name.tag.jsx",
637 | "entity.name.tag.ts",
638 | "entity.name.tag.tsx"
639 | ],
640 | "settings": {
641 | "foreground": "#d4785d"
642 | }
643 | },
644 | {
645 | "name": "Object Properties",
646 | "scope": [
647 | "variable.other.property.js",
648 | "variable.other.property.jsx",
649 | "variable.other.property.ts",
650 | "variable.other.property.tsx"
651 | ],
652 | "settings": {
653 | "foreground": "#5c7fe2"
654 | }
655 | },
656 | {
657 | "name": "Variables",
658 | "scope": [
659 | "variable.other.readwrite.alias.js",
660 | "variable.other.readwrite.alias.jsx",
661 | "variable.other.readwrite.alias.ts",
662 | "variable.other.readwrite.alias.tsx"
663 | ],
664 | "settings": {
665 | "foreground": "#f78c6c"
666 | }
667 | },
668 | {
669 | "name": "false/true Keywords",
670 | "scope": [
671 | "constant.language.boolean.false",
672 | "constant.language.boolean.false.js",
673 | "constant.language.boolean.false.jsx",
674 | "constant.language.boolean.false.ts",
675 | "constant.language.boolean.false.tsx",
676 | "constant.language.boolean.true",
677 | "constant.language.boolean.true.js",
678 | "constant.language.boolean.true.jsx",
679 | "constant.language.boolean.true.ts",
680 | "constant.language.boolean.true.tsx"
681 | ],
682 | "settings": {
683 | "foreground": "#40cfcf",
684 | "fontStyle": "italic"
685 | }
686 | },
687 | {
688 | "name": "Conditional Keywords",
689 | "scope": [
690 | "keyword.control.conditional",
691 | "keyword.control.conditional.js",
692 | "keyword.control.conditional.jsx",
693 | "keyword.control.conditional.ts",
694 | "keyword.control.conditional.tsx",
695 | "keyword.control.switch",
696 | "keyword.control.switch.js",
697 | "keyword.control.switch.jsx",
698 | "keyword.control.switch.ts",
699 | "keyword.control.switch.tsx"
700 | ],
701 | "settings": {
702 | "foreground": "#5fe09f",
703 | "fontStyle": "italic"
704 | }
705 | },
706 | {
707 | "name": "Return Keyword",
708 | "scope": [
709 | "keyword.control.flow",
710 | "keyword.control.flow.js",
711 | "keyword.control.flow.jsx",
712 | "keyword.control.flow.ts",
713 | "keyword.control.flow.tsx",
714 | "keyword.control.loop",
715 | "keyword.control.loop.js",
716 | "keyword.control.loop.jsx",
717 | "keyword.control.loop.ts",
718 | "keyword.control.loop.tsx",
719 | "keyword.operator.new"
720 | ],
721 | "settings": {
722 | "foreground": "#e27171",
723 | "fontStyle": "italic"
724 | }
725 | },
726 | {
727 | "name": "TypeScript Primitive Types",
728 | "scope": [
729 | "support.type",
730 | "support.type.primitive",
731 | "support.type.primitive.js",
732 | "support.type.primitive.jsx",
733 | "support.type.primitive.ts",
734 | "support.type.primitive.tsx",
735 | "support.type.builtin",
736 | "support.type.builtin.js",
737 | "support.type.builtin.jsx",
738 | "support.type.builtin.ts",
739 | "support.type.builtin.tsx"
740 | ],
741 | "settings": {
742 | "foreground": "#dae63d",
743 | "fontStyle": "italic"
744 | }
745 | },
746 | {
747 | "name": "Export, Default Keywords",
748 | "scope": [
749 | "keyword.control.export",
750 | "keyword.control.export.js",
751 | "keyword.control.export.jsx",
752 | "keyword.control.export.ts",
753 | "keyword.control.export.tsx",
754 | "keyword.control.default",
755 | "keyword.control.default.js",
756 | "keyword.control.default.jsx",
757 | "keyword.control.default.ts",
758 | "keyword.control.default.tsx"
759 | ],
760 | "settings": {
761 | "foreground": "#e4baba",
762 | "fontStyle": "italic"
763 | }
764 | },
765 | {
766 | "name": "JSX Tags",
767 | "scope": [
768 | "entity.name.tag.js",
769 | "entity.name.tag.jsx",
770 | "entity.name.tag.ts",
771 | "entity.name.tag.tsx"
772 | ],
773 | "settings": {
774 | "foreground": "#d4785d"
775 | }
776 | },
777 | {
778 | "name": "JSX Meta",
779 | "scope": ["meta.tag.js", "meta.tag.jsx", "meta.tag.ts", "meta.tag.tsx"],
780 | "settings": {
781 | "foreground": "#d5d5d5"
782 | }
783 | },
784 | {
785 | "name": "JSX Tag Punctuation",
786 | "scope": [
787 | "punctuation.definition.tag.begin.js",
788 | "punctuation.definition.tag.begin.jsx",
789 | "punctuation.definition.tag.begin.ts",
790 | "punctuation.definition.tag.begin.tsx",
791 | "punctuation.definition.tag.end.js",
792 | "punctuation.definition.tag.end.jsx",
793 | "punctuation.definition.tag.end.ts",
794 | "punctuation.definition.tag.end.tsx"
795 | ],
796 | "settings": {
797 | "foreground": "#ac66c9"
798 | }
799 | },
800 | {
801 | "name": "Import JS",
802 | "scope": [
803 | "keyword.control.import.js",
804 | "keyword.control.import.jsx",
805 | "keyword.control.import.ts",
806 | "keyword.control.import.tsx",
807 | "keyword.control.from.js",
808 | "keyword.control.from.jsx",
809 | "keyword.control.from.ts",
810 | "keyword.control.from.tsx",
811 | "keyword.control.default.js",
812 | "keyword.control.default.jsx",
813 | "keyword.control.default.ts",
814 | "keyword.control.default.tsx"
815 | ],
816 | "settings": {
817 | "foreground": "#e4baba",
818 | "fontStyle": "italic"
819 | }
820 | },
821 | {
822 | "name": "Attributes",
823 | "scope": ["entity.other.attribute-name"],
824 | "settings": {
825 | "foreground": "#e4baba",
826 | "fontStyle": "italic"
827 | }
828 | },
829 | {
830 | "name": "HTML Attributes",
831 | "scope": [
832 | "text.html.basic entity.other.attribute-name.html",
833 | "text.html.basic entity.other.attribute-name"
834 | ],
835 | "settings": {
836 | "fontStyle": "italic",
837 | "foreground": "#ffcb6b"
838 | }
839 | },
840 |
841 | // CSS-Specific Rules
842 | {
843 | "name": "CSS Element Selector",
844 | "scope": ["entity.name.tag.css"],
845 | "settings": {
846 | "fontStyle": "bold",
847 | "foreground": "#e0a1a4"
848 | }
849 | },
850 | {
851 | "name": "CSS Classes",
852 | "scope": ["entity.other.attribute-name.class"],
853 | "settings": {
854 | "foreground": "#a477be"
855 | }
856 | },
857 | {
858 | "name": "CSS Pseudo Class",
859 | "scope": ["entity.other.attribute-name.pseudo-class.css"],
860 | "settings": {
861 | "foreground": "#e0a1a4"
862 | }
863 | },
864 | {
865 | "name": "Attribute Selector",
866 | "scope": [
867 | "entity.other.attribute-selector.css",
868 | "entity.other.attribute-selector.scss",
869 | "entity.other.attribute-selector.sass"
870 | ],
871 | "settings": {
872 | "foreground": "#41c09a"
873 | }
874 | },
875 | {
876 | "name": "CSS ID's",
877 | "scope": ["source.sass keyword.control"],
878 | "settings": {
879 | "foreground": "#82aaff"
880 | }
881 | },
882 | {
883 | "name": "CSS At Rules",
884 | "scope": [
885 | "keyword.control.at-rule.media.scss",
886 | "meta.at-rule.media.scss"
887 | ],
888 | "settings": {
889 | "fontStyle": "italic"
890 | }
891 | },
892 | {
893 | "name": "sass variables",
894 | "scope": ["sass.script.maps", "scss.script.maps"],
895 | "settings": {
896 | "foreground": "#DF84A2"
897 | }
898 | },
899 | {
900 | "name": "sass function interpolation",
901 | "scope": [
902 | "support.function.interpolation.sass",
903 | "support.function.interpolation.scss"
904 | ],
905 | "settings": {
906 | "foreground": "#7c97bb"
907 | }
908 | },
909 | {
910 | "name": "Inserted",
911 | "scope": ["markup.inserted"],
912 | "settings": {
913 | "foreground": "#c3e88d"
914 | }
915 | },
916 | {
917 | "name": "Deleted",
918 | "scope": ["markup.deleted"],
919 | "settings": {
920 | "foreground": "#ff5370"
921 | }
922 | },
923 | {
924 | "name": "Changed",
925 | "scope": ["markup.changed"],
926 | "settings": {
927 | "foreground": "#c792ea"
928 | }
929 | },
930 | {
931 | "name": "Regular Expressions",
932 | "scope": ["string.regexp"],
933 | "settings": {
934 | "foreground": "#89ddff"
935 | }
936 | },
937 | {
938 | "name": "Escape Characters",
939 | "scope": ["constant.character.escape"],
940 | "settings": {
941 | "foreground": "#89ddff"
942 | }
943 | },
944 | {
945 | "name": "URL",
946 | "scope": ["*url*", "*link*", "*uri*"],
947 | "settings": {
948 | "fontStyle": "underline"
949 | }
950 | },
951 | {
952 | "name": "Decorators",
953 | "scope": [
954 | "tag.decorator.js entity.name.tag.js",
955 | "tag.decorator.jsx entity.name.tag.jsx",
956 | "tag.decorator.ts entity.name.tag.ts",
957 | "tag.decorator.tsx entity.name.tag.tsx",
958 | "tag.decorator.js punctuation.definition.tag.js",
959 | "tag.decorator.jsx punctuation.definition.tag.jsx",
960 | "tag.decorator.ts punctuation.definition.tag.ts",
961 | "tag.decorator.tsx punctuation.definition.tag.tsx"
962 | ],
963 | "settings": {
964 | "fontStyle": "italic",
965 | "foreground": "#82aaff"
966 | }
967 | },
968 | {
969 | "name": "ES7 Bind Operator",
970 | "scope": [
971 | "source.js constant.other.object.key.js string.unquoted.label.js",
972 | "source.jsx constant.other.object.key.jsx string.unquoted.label.jsx",
973 | "source.ts constant.other.object.key.ts string.unquoted.label.ts",
974 | "source.tsx constant.other.object.key.tsx string.unquoted.label.tsx"
975 | ],
976 | "settings": {
977 | "fontStyle": "italic",
978 | "foreground": "#ff5370"
979 | }
980 | },
981 | {
982 | "name": "Optional Operator",
983 | "scope": [
984 | "keyword.operator.optional",
985 | "keyword.operator.optional.js",
986 | "keyword.operator.optional.jsx",
987 | "keyword.operator.optional.ts",
988 | "keyword.operator.optional.tsx",
989 | "punctuation.accessor.optional",
990 | "punctuation.accessor.optional.js",
991 | "punctuation.accessor.optional.jsx",
992 | "punctuation.accessor.optional.ts",
993 | "punctuation.accessor.optional.tsx",
994 | "keyword.operator.ternary"
995 | ],
996 | "settings": {
997 | "foreground": "#e78797",
998 | "fontStyle": ""
999 | }
1000 | },
1001 |
1002 | // JSON
1003 | {
1004 | "name": "JSON Key - Level 0",
1005 | "scope": "source.json meta.structure.dictionary.json support.type.property-name.json",
1006 | "settings": {
1007 | "foreground": "#c792ea"
1008 | }
1009 | },
1010 | {
1011 | "name": "JSON Key - Level 1",
1012 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1013 | "settings": {
1014 | "foreground": "#ffcb6b"
1015 | }
1016 | },
1017 | {
1018 | "name": "JSON Key - Level 2",
1019 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1020 | "settings": {
1021 | "foreground": "#f78c6c"
1022 | }
1023 | },
1024 | {
1025 | "name": "JSON Key - Level 3",
1026 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1027 | "settings": {
1028 | "foreground": "#6a7cdc"
1029 | }
1030 | },
1031 | {
1032 | "name": "JSON Key - Level 4",
1033 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1034 | "settings": {
1035 | "foreground": "#ac66c9"
1036 | }
1037 | },
1038 | {
1039 | "name": "JSON Key - Level 5",
1040 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1041 | "settings": {
1042 | "foreground": "#43c2e2"
1043 | }
1044 | },
1045 | {
1046 | "name": "JSON Key - Level 6",
1047 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1048 | "settings": {
1049 | "foreground": "#e0a1a4"
1050 | }
1051 | },
1052 | {
1053 | "name": "JSON Key - Level 7",
1054 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1055 | "settings": {
1056 | "foreground": "#df84a2"
1057 | }
1058 | },
1059 | {
1060 | "name": "JSON Key - Level 8",
1061 | "scope": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json",
1062 | "settings": {
1063 | "foreground": "#f0bb6b"
1064 | }
1065 | },
1066 | {
1067 | "name": "Numeric Constant",
1068 | "scope": "constant.numeric.json",
1069 | "settings": {
1070 | "foreground": "#d4785d"
1071 | }
1072 | },
1073 | {
1074 | "name": "Language Constant",
1075 | "scope": "constant.language.json",
1076 | "settings": {
1077 | "foreground": "#40cfcf",
1078 | "fontStyle": "italic"
1079 | }
1080 | },
1081 | {
1082 | "name": "Punctuation Definition Dictionary",
1083 | "scope": [
1084 | "punctuation.definition.dictionary.begin.json",
1085 | "punctuation.definition.dictionary.end.json"
1086 | ],
1087 | "settings": {
1088 | "foreground": "#ffcb6b"
1089 | }
1090 | },
1091 | {
1092 | "name": "Punctuation Definition Strings",
1093 | "scope": [
1094 | "punctuation.support.type.property-name.begin.json",
1095 | "punctuation.support.type.property-name.end.json",
1096 | "punctuation.definition.string.begin.json",
1097 | "punctuation.definition.string.end.json"
1098 | ],
1099 | "settings": {
1100 | "foreground": "#d5d5d5"
1101 | }
1102 | },
1103 |
1104 | // Markdown Styles - ✅
1105 | {
1106 | "name": "Markdown - Plain Text",
1107 | "scope": [
1108 | "text.html.markdown",
1109 | "punctuation.definition.list_item.markdown"
1110 | ],
1111 | "settings": {
1112 | "foreground": "#caaeeb"
1113 | }
1114 | },
1115 | {
1116 | "name": "Markdown - Markup Raw Inline",
1117 | "scope": "text.html.markdown markup.inline.raw.string.markdown",
1118 | "settings": {
1119 | "foreground": "#4CA779"
1120 | }
1121 | },
1122 | {
1123 | "name": "Markdown - Markup Raw Inline Punctuation",
1124 | "scope": "text.html.markdown punctuation.definition.raw.markdown",
1125 | "settings": {
1126 | "foreground": "#4CA779"
1127 | }
1128 | },
1129 | {
1130 | "name": "Markdown - Heading Punctuation",
1131 | "scope": "punctuation.definition.heading.markdown",
1132 | "settings": {
1133 | "foreground": "#f78c6c96"
1134 | }
1135 | },
1136 | {
1137 | "name": "Markdown - Heading Text",
1138 | "scope": "entity.name.section.markdown",
1139 | "settings": {
1140 | "foreground": "#f78c6c"
1141 | }
1142 | },
1143 | {
1144 | "name": "Markup - Italic",
1145 | "scope": "markup.italic.markdown",
1146 | "settings": {
1147 | "fontStyle": "italic",
1148 | "foreground": "#7a8491"
1149 | }
1150 | },
1151 | {
1152 | "name": "Markup - Bold",
1153 | "scope": "markup.bold.markdown",
1154 | "settings": {
1155 | "fontStyle": "bold",
1156 | "foreground": "#7a8491"
1157 | }
1158 | },
1159 | {
1160 | "name": "Markup - Bold-Italic",
1161 | "scope": [
1162 | "markup.bold.markdown markup.italic.markdown",
1163 | "markup.italic.markdown markup.bold.markdown",
1164 | "markup.quote.markdown markup.bold.markdown"
1165 | ],
1166 | "settings": {
1167 | "fontStyle": "italic bold",
1168 | "foreground": "#7a8491"
1169 | }
1170 | },
1171 | {
1172 | "name": "Markup - Underline",
1173 | "scope": "markup.underline.markdown",
1174 | "settings": {
1175 | "fontStyle": "underline",
1176 | "foreground": "#7a8491"
1177 | }
1178 | },
1179 | {
1180 | "name": "Markdown - Blockquote",
1181 | "scope": ["markup.quote punctuation.definition.blockquote.markdown"],
1182 | "settings": {
1183 | "fontStyle": "italic",
1184 | "foreground": "#6a7cdc"
1185 | }
1186 | },
1187 | {
1188 | "name": "Markup - Quote",
1189 | "scope": "markup.quote.markdown",
1190 | "settings": {
1191 | "fontStyle": "italic",
1192 | "foreground": "#6a7cdc"
1193 | }
1194 | },
1195 | {
1196 | "name": "Markup - Quote Punctuation",
1197 | "scope": "punctuation.definition.quote.begin.markdown",
1198 | "settings": {
1199 | "fontStyle": "italic",
1200 | "foreground": "#6a7cdc96"
1201 | }
1202 | },
1203 | {
1204 | "name": "Markup - List Punctuation",
1205 | "scope": "punctuation.definition.list.begin.markdown",
1206 | "settings": {
1207 | "foreground": "#caaeeb80"
1208 | }
1209 | },
1210 | {
1211 | "name": "Markup - List Text",
1212 | "scope": [
1213 | "markup.list.unnumbered.markdown",
1214 | "markup.list.numbered.markdown"
1215 | ],
1216 | "settings": {
1217 | "foreground": "#caaeeb"
1218 | }
1219 | },
1220 |
1221 | // Links
1222 | {
1223 | "name": "Markdown - Link",
1224 | "scope": [
1225 | "string.other.link.title.markdown",
1226 | "string.other.link.description.markdown"
1227 | ],
1228 | "settings": {
1229 | "foreground": "#c2a0fd"
1230 | }
1231 | },
1232 | {
1233 | "name": "Markdown - Link",
1234 | "scope": [
1235 | "markup.underline.link.markdown",
1236 | "markup.underline.link.image.markdown"
1237 | ],
1238 | "settings": {
1239 | "foreground": "#e0a1a4"
1240 | }
1241 | },
1242 | {
1243 | "name": "Markdown - Punctuation Link",
1244 | "scope": [
1245 | "punctuation.definition.string.begin.markdown",
1246 | "punctuation.definition.string.end.markdown"
1247 | ],
1248 | "settings": {
1249 | "foreground": "#f0bb6b"
1250 | }
1251 | },
1252 | {
1253 | "name": "Markdown - Link Description",
1254 | "scope": ["string.other.link.description.title.markdown"],
1255 | "settings": {
1256 | "foreground": "#c792ea"
1257 | }
1258 | },
1259 | {
1260 | "name": "Markdown - Link Anchor",
1261 | "scope": ["constant.other.reference.link.markdown"],
1262 | "settings": {
1263 | "foreground": "#ac66c9"
1264 | }
1265 | },
1266 |
1267 | // Block Codes
1268 | {
1269 | "name": "Markup - Raw Block",
1270 | "scope": ["markup.raw.block"],
1271 | "settings": {
1272 | "foreground": "#e27171"
1273 | }
1274 | },
1275 | {
1276 | "name": "Markdown - Raw Block Fenced",
1277 | "scope": "markup.fenced_code.block.markdown",
1278 | "settings": {
1279 | "foreground": "#7a8491"
1280 | }
1281 | },
1282 | {
1283 | "name": "Markdown - Fenced Bode Block Punctuation",
1284 | "scope": "punctuation.definition.markdown",
1285 | "settings": {
1286 | "foreground": "#4CA779"
1287 | }
1288 | },
1289 | {
1290 | "name": "Markdown - Fenced Bode Block Language",
1291 | "scope": "fenced_code.block.language.markdown",
1292 | "settings": {
1293 | "foreground": "#6a7cdc"
1294 | }
1295 | },
1296 | {
1297 | "name": "Markdown - Fenced Bode Block Variable",
1298 | "scope": [
1299 | "markup.raw.block.fenced.markdown",
1300 | "variable.language.fenced.markdown",
1301 | "punctuation.section.class.end"
1302 | ],
1303 | "settings": {
1304 | "foreground": "#eeffff"
1305 | }
1306 | },
1307 | {
1308 | "name": "Markdown - Separator",
1309 | "scope": ["meta.separator"],
1310 | "settings": {
1311 | "fontStyle": "bold",
1312 | "foreground": "#7a8491"
1313 | }
1314 | },
1315 | {
1316 | "name": "Markdown - Escaped Characters",
1317 | "scope": "constant.character.escape.markdown",
1318 | "settings": {
1319 | "foreground": "#43c2e2"
1320 | }
1321 | },
1322 |
1323 | // YAML
1324 | {
1325 | "name": "YAML Plain Text",
1326 | "scope": "string.unquoted.plain.out.yaml",
1327 | "settings": {
1328 | "foreground": "#b37895"
1329 | }
1330 | },
1331 |
1332 | // XML and SVGs
1333 | {
1334 | "name": "XML Tags",
1335 | "scope": ["entity.name.tag.localname.xml", "meta.tag.xml"],
1336 | "settings": {
1337 | "foreground": "#a56e55"
1338 | }
1339 | },
1340 | {
1341 | "name": "XML Punctuation",
1342 | "scope": "punctuation.definition.tag.xml",
1343 | "settings": {
1344 | "foreground": "#ac66c9"
1345 | }
1346 | },
1347 |
1348 | //GraphQL
1349 | {
1350 | "name": "Keyword",
1351 | "scope": "keyword.operation.graphql",
1352 | "settings": {
1353 | "foreground": "#a477be"
1354 | }
1355 | },
1356 | {
1357 | "name": "Keyword",
1358 | "scope": "entity.name.function.graphql",
1359 | "settings": {
1360 | "foreground": "#e27171",
1361 | "fontStyle": "italic"
1362 | }
1363 | },
1364 | {
1365 | "name": "Variable",
1366 | "scope": "variable.graphql",
1367 | "settings": {
1368 | "foreground": "#fa72c1"
1369 | }
1370 | },
1371 | {
1372 | "name": "Variable Parameter",
1373 | "scope": "variable.parameter.graphql",
1374 | "settings": {
1375 | "foreground": "#40cfcf"
1376 | }
1377 | },
1378 | {
1379 | "name": "Numeric Constant",
1380 | "scope": "constant.numeric.float.graphql",
1381 | "settings": {
1382 | "foreground": "#d4785d"
1383 | }
1384 | },
1385 | {
1386 | "name": "Set Selection",
1387 | "scope": "meta.selectionset.graphql",
1388 | "settings": {
1389 | "foreground": "#f78c6c"
1390 | }
1391 | },
1392 | {
1393 | "name": "Set Selection",
1394 | "scope": "support.type.builtin.graphql",
1395 | "settings": {
1396 | "foreground": "#e4baba",
1397 | "fontStyle": "italic"
1398 | }
1399 | },
1400 | {
1401 | "name": "Brackets",
1402 | "scope": "meta.brace.round.directive.graphql",
1403 | "settings": {
1404 | "foreground": "#ac66c9"
1405 | }
1406 | },
1407 | {
1408 | "name": "Punctuation Operation",
1409 | "scope": "punctuation.operation.graphql",
1410 | "settings": {
1411 | "foreground": "#ffcb6b"
1412 | }
1413 | },
1414 | {
1415 | "name": "Spread Operator",
1416 | "scope": "keyword.operator.spread.graphql",
1417 | "settings": {
1418 | "foreground": "#ffcb6b"
1419 | }
1420 | },
1421 |
1422 | // Pug-specific Rules
1423 | {
1424 | "name": "Pug Tag Names",
1425 | "scope": ["entity.name.tag.pug", "meta.tag.sgml.doctype.html"],
1426 | "settings": {
1427 | "foreground": "#D4785D"
1428 | }
1429 | },
1430 |
1431 | // Prisma-specific rules
1432 | {
1433 | "name": "Prisma Built-in Types",
1434 | "scope": "support.type.primitive.prisma",
1435 | "settings": {
1436 | "foreground": "#F78C6C"
1437 | }
1438 | }
1439 | ]
1440 | }
1441 |
--------------------------------------------------------------------------------