Skip to content

Instantly share code, notes, and snippets.

@rsms
Last active October 26, 2021 04:36
  • Star 14 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save rsms/e6ccb8e26a2a42ee2181e14245091f76 to your computer and use it in GitHub Desktop.
{
"name": "rsms dark v2 mono",
"author": "rsms",
"variables": {
"red": "hsl(5, 0%, 50%)",
"orange": "hsl(27, 0%, 50%)",
"yellow": "hsl(60, 0%, 50%)",
"green": "hsl(150, 0%, 43%)",
"cyan": "hsl(180, 0%, 50%)",
"blue": "hsl(210, 0%, 50%)",
// "transparent": "#ff000000", // note: ff needed to force transparency
"fg": "#fff",
"bg": "hsl(0, 0%, 8%)",
"unimportant": "color(var(fg) alpha(0.4))",
"cursor": "hsl(320, 90%, 70%)",
"selection": "hsl(204, 100%, 70%)",
"type": "var(orange)",
"keyword": "var(blue)",
"data": "var(green)",
"fgBase": "color(var(fg) alpha(0.8))",
"typeRef": "color(var(type) lightness(87%))",
"keywordBase": "color(var(keyword) lightness(70%))",
"dataBase": "color(var(data) lightness(70%))",
},
"globals": {
"foreground": "var(fgBase)",
"background": "var(bg)",
"caret": "var(cursor)",
// selection
"selection": "color(var(selection) alpha(0.3))",
"selection_border_width": "0",
"inactive_selection": "color(var(selection) alpha(0.2))",
// gutter
// "gutter": "#000", // defaults to background
"gutter_foreground": "color(var(fg) alpha(0.3))",
"line_highlight": "color(var(fg) alpha(0.12))",
"line_diff_width": "2", // width of diff lines (in dp)
"line_diff_added": "var(green)",
"line_diff_modified": "color(var(yellow) lightness(65%))",
"line_diff_deleted": "color(var(red) lightness(60%))",
// guides
// alpha part controls color of guides (vertical tab lines)
"guide": "color(var(fg) alpha(0.06))",
// decorations
"highlight": "color(var(selection) alpha(0.4) lightness(70%))", // border of "other" matches
"find_highlight_foreground": "#000",
"find_highlight": "var(yellow)",
"misspelling": "color(var(red) lightness(65%))",
// "invisibles": "#000", // defaults to color(foreground alpha(0.35))
// brackets
"brackets_options": "foreground underline",
"bracket_contents_options": "foreground",
"brackets_foreground": "var(cursor)",
"bracket_contents_foreground": "var(cursor)",
// canvas shadow (indicates scroll)
"shadow": "color(var(cursor) alpha(0.8))",
"shadow_width": "5",
},
"rules": [
{
// Comments
"scope": "comment",
"foreground": "color(var(fg) alpha(0.35))",
// "foreground_adjust": "alpha(0.3)"
},
{
// Punctuation
// separator e.g. "," and ":" in `{ foo: bar, baz: cat }`
// terminator e.g. ";" in `x = y;`
// accessor e.g. "->" and "." in `foo->bar.baz`
// section e.g. "(" and ")" in `foo((baz)bar)`
// section e.g. "[" and "]" in `foo[bar]`
// section e.g. "{" and "}" in `if { ... }`
//
// keyword.operator.type.annotation is for TypeScript
// e.g. ":" in
// interface Foo {
// name :string
// }
//
// meta.interface keyword.operator.optional is for TypeScript
// e.g. "?" in
// interface Foo {
// name? :string
// }
//
"scope": "punctuation.separator, punctuation.terminator, punctuation.accessor, punctuation.section, keyword.operator.type.annotation, meta.interface keyword.operator.optional, meta.field.declaration keyword.operator.optional",
"foreground": "var(unimportant)"
},
// Type
{
// Type definition
// e.g. "Foo" in `typedef struct x Foo` (C)
"scope": "entity.name.type, meta.type.declaration entity.name.type, entity.name.type.typedef",
"foreground": "color(var(type) lightness(70%))"
},
{
// Type reference
// e.g. "Foo" in `function hello(f :Foo)` (TS)
"scope": "support.type, meta.type.annotation entity.name.type, source.go storage.type, entity.other.inherited-class",
"foreground": "var(typeRef)",
// void getThing(const Foo* p)
// const meta.function.parameters meta.group storage.modifier
// Foo meta.function.parameters meta.group
// p meta.function.parameters meta.group variable.parameter
},
// Keyword
{
// Keyword
// e.g. "if" and "else" in "if this else that"
// storage.type.type e.g. "type" in "type foo = int"
// storage.type.interface e.g. "interface" in "interface Foo {}"
// storage.type.class e.g. "class" in "class Foo {}"
// keyword.operator.new e.g. "new" in "new Error()"
"scope": "keyword, storage, storage.type.keyword, keyword.operator.new, keyword.operator.delete",
"foreground": "var(keywordBase)",
},
{
"scope": "keyword.operator",
// "foreground": "var(fgBase)"
"foreground": "color(var(orange) lightness(80%))"
},
// Function
{ // Function definitions
"scope": "entity.name.function - meta.function-call",
"foreground": "var(fg)",
"font_style": "bold",
},
// Data
{ // e.g. "foo" and 42
"scope": "string, constant",
"foreground": "var(dataBase)"
},
{ // e.g. "%d" in `"age: %d"`
"scope": "string constant",
"foreground": "color(var(data) lightness(90%))"
},
{ // e.g. "name" in `"user: ${name}"`
"scope": "string variable",
"foreground": "var(fgBase)"
},
{ // regexp
"scope": "string.regexp",
"background": "color(var(keyword) alpha(0.1) lightness(60%))"
},
// {
// "scope": "constant.language",
// "foreground": [
// "color(var(yellow) blend(#0f0 70%) lightness(70%))", // nil, true
// "color(var(yellow) blend(#f00 70%) lightness(70%))", // undefined
// "color(var(yellow) blend(#f00 70%) lightness(70%))", // false, null
// "color(var(yellow) blend(#00f 70%) lightness(70%))"
// ],
// // Uses "Hashed Syntax Highlighting"
// // https://www.sublimetext.com/docs/3/color_schemes.html#hashed_syntax_highlighting
// },
// XML, HTML etc with tags
{
"scope": "meta.tag",
"foreground": "var(unimportant)"
},
{ // things inside tag
"scope": "meta.tag entity, meta.tag.attributes",
"foreground": "var(fgBase)"
},
{ // e.g. "a" in `<a href="hello"></a>`
"scope": "meta.tag entity.name",
"foreground": "var(typeRef)"
},
// Assembly
{
"scope": "storage.register, storage.other.register, constant.language.registers, entity.name.function.reg, constant.language.register",
"foreground": "var(typeRef)"
},
{
"scope": "source.asm entity.directive, source.asm support.function.directive",
"foreground": "color(var(yellow) lightness(80%))"
},
// Structured text
{
"scope": "text punctuation",
"foreground": "var(unimportant)"
},
{
"scope": "text markup.heading",
"foreground": "var(fg)",
"font_style": "bold"
},
{ "scope": "text markup.italic", "font_style": "italic" },
{ "scope": "text markup.bold", "font_style": "bold" },
{ "scope": "text markup.bold & markup.italic", "font_style": "bold italic" },
{ "scope": "text markup.strikethrough", "foreground": "var(unimportant)" },
{ // List bullets
// "-" in "- hello\n- world"
"scope": "text markup.list punctuation.definition.list_item",
"foreground": "color(var(yellow) lightness(80%))",
"font_style": "bold"
},
// { // List item
// "scope": "text markup.list meta.paragraph.list",
// "foreground": "color(var(yellow) lightness(92%))",
// },
{ // table header text
"scope": "text.html.markdown meta.table.header",
"foreground": "var(dataBase)",
},
{ // table lines
"scope": "text.html.markdown punctuation.separator.table-cell, text.html.markdown meta.table.header-separator punctuation.section.table-header",
"foreground": "var(dataBase)",
},
// link, e.g. [Title](url)
{ "scope": "text meta.link", "foreground": "var(fg)" },
{ "scope": "text meta.link markup.underline.link", "foreground": "var(unimportant)" },
// image, e.g. ![alt](url)
{ "scope": "text meta.image", "foreground": "var(unimportant)" },
{ "scope": "text meta.image markup.underline.link", "foreground": "var(fg)" },
{ // code, e.g. `...` and ```...```
"scope": "text markup.raw, text meta.code-fence.definition, text markup.raw.code-fence",
"background": "color(var(fg) alpha(0.07))"
},
{
"scope": "text meta.code-fence.definition constant",
"foreground": "var(unimportant)"
},
// misc
{
"scope": "invalid.deprecated",
"foreground": "var(red)",
"font_style": "italic underline"
},
{
"scope": "invalid.illegal",
"foreground": "var(fg)",
"background": "var(red)"
},
// Example of Hashed Syntax Highlighting
// https://www.sublimetext.com/docs/3/color_schemes.html#hashed_syntax_highlighting
// Note: It seems that "source - punctuation" means "source minus punctuation", but
// I'm not sure. I can't find documentation on this.
// {
// "scope": "source - punctuation - keyword",
// "foreground": ["hsl(200, 60%, 70%)", "hsl(330, 60%, 70%)"]
// }
]
}
{
"name": "rsms dark v2",
"author": "rsms",
"variables": {
"red": "hsl(5, 100%, 50%)",
"orange": "hsl(27, 100%, 50%)",
"yellow": "hsl(60, 100%, 50%)",
"green": "hsl(150, 100%, 43%)",
"cyan": "hsl(180, 100%, 50%)",
"blue": "hsl(210, 100%, 50%)",
// "transparent": "#ff000000", // note: ff needed to force transparency
"fg": "#fff",
"bg": "hsl(60, 5%, 8%)",
"unimportant": "color(var(fg) alpha(0.4))",
"cursor": "hsl(320, 90%, 70%)",
"selection": "hsl(204, 100%, 70%)",
"type": "var(orange)",
"keyword": "var(blue)",
"data": "var(green)",
"fgBase": "color(var(fg) alpha(0.8))",
"typeRef": "color(var(type) lightness(87%) saturation(100%))",
"keywordBase": "color(var(keyword) lightness(70%) saturation(40%))",
"dataBase": "color(var(data) saturation(70%) lightness(70%))",
},
"globals": {
"foreground": "var(fgBase)",
"background": "var(bg)",
"caret": "var(cursor)",
// selection
"selection": "color(var(selection) alpha(0.3))",
"selection_border_width": "0",
"inactive_selection": "color(var(selection) alpha(0.2) saturation(0%))",
// gutter
// "gutter": "#000", // defaults to background
"gutter_foreground": "color(var(fg) alpha(0.3))",
"line_highlight": "color(var(fg) alpha(0.12))",
"line_diff_width": "2", // width of diff lines (in dp)
"line_diff_added": "var(green)",
"line_diff_modified": "color(var(yellow) lightness(65%))",
"line_diff_deleted": "color(var(red) lightness(60%))",
// guides
// alpha part controls color of guides (vertical tab lines)
"guide": "color(var(fg) alpha(0.06))",
// decorations
"highlight": "color(var(selection) alpha(0.4) lightness(70%))", // border of "other" matches
"find_highlight_foreground": "#000",
"find_highlight": "var(yellow)",
"misspelling": "color(var(red) lightness(65%))",
// "invisibles": "#000", // defaults to color(foreground alpha(0.35))
// brackets
"brackets_options": "foreground underline",
"bracket_contents_options": "foreground",
"brackets_foreground": "var(cursor)",
"bracket_contents_foreground": "var(cursor)",
// canvas shadow (indicates scroll)
"shadow": "color(var(cursor) alpha(0.8))",
"shadow_width": "5",
},
"rules": [
{
// Comments
"scope": "comment",
"foreground": "color(var(fg) alpha(0.35))",
// "foreground_adjust": "alpha(0.3)"
},
{
// Punctuation
// separator e.g. "," and ":" in `{ foo: bar, baz: cat }`
// terminator e.g. ";" in `x = y;`
// accessor e.g. "->" and "." in `foo->bar.baz`
// section e.g. "(" and ")" in `foo((baz)bar)`
// section e.g. "[" and "]" in `foo[bar]`
// section e.g. "{" and "}" in `if { ... }`
//
// keyword.operator.type.annotation is for TypeScript
// e.g. ":" in
// interface Foo {
// name :string
// }
//
// meta.interface keyword.operator.optional is for TypeScript
// e.g. "?" in
// interface Foo {
// name? :string
// }
//
"scope": "punctuation.separator, punctuation.terminator, punctuation.accessor, punctuation.section, keyword.operator.type.annotation, meta.interface keyword.operator.optional, meta.field.declaration keyword.operator.optional",
"foreground": "var(unimportant)"
},
// Type
{
// Type definition
// e.g. "Foo" in `typedef struct x Foo` (C)
"scope": "entity.name.type, meta.type.declaration entity.name.type, entity.name.type.typedef",
"foreground": "color(var(type) lightness(70%) saturation(90%))"
},
{
// Type reference
// e.g. "Foo" in `function hello(f :Foo)` (TS)
"scope": "support.type, meta.type.annotation entity.name.type, source.go storage.type, entity.other.inherited-class",
"foreground": "var(typeRef)",
// void getThing(const Foo* p)
// const meta.function.parameters meta.group storage.modifier
// Foo meta.function.parameters meta.group
// p meta.function.parameters meta.group variable.parameter
},
// Keyword
{
// Keyword
// e.g. "if" and "else" in "if this else that"
// storage.type.type e.g. "type" in "type foo = int"
// storage.type.interface e.g. "interface" in "interface Foo {}"
// storage.type.class e.g. "class" in "class Foo {}"
// keyword.operator.new e.g. "new" in "new Error()"
"scope": "keyword, storage, storage.type.keyword, keyword.operator.new, keyword.operator.delete",
"foreground": "var(keywordBase)",
},
{
"scope": "keyword.operator",
// "foreground": "var(fgBase)"
"foreground": "color(var(orange) lightness(80%))"
},
// Function
{ // Function definitions
"scope": "entity.name.function - meta.function-call",
"foreground": "var(fg)",
"font_style": "bold",
},
// Data
{ // e.g. "foo" and 42
"scope": "string, constant",
"foreground": "var(dataBase)"
},
{ // e.g. "%d" in `"age: %d"`
"scope": "string constant",
"foreground": "color(var(data) lightness(90%))"
},
{ // e.g. "name" in `"user: ${name}"`
"scope": "string variable",
"foreground": "var(fgBase)"
},
{ // regexp
"scope": "string.regexp",
"background": "color(var(keyword) alpha(0.1) lightness(60%))"
},
// {
// "scope": "constant.language",
// "foreground": [
// "color(var(yellow) blend(#0f0 70%) lightness(70%))", // nil, true
// "color(var(yellow) blend(#f00 70%) lightness(70%))", // undefined
// "color(var(yellow) blend(#f00 70%) lightness(70%))", // false, null
// "color(var(yellow) blend(#00f 70%) lightness(70%))"
// ],
// // Uses "Hashed Syntax Highlighting"
// // https://www.sublimetext.com/docs/3/color_schemes.html#hashed_syntax_highlighting
// },
// XML, HTML etc with tags
{
"scope": "meta.tag",
"foreground": "var(unimportant)"
},
{ // things inside tag
"scope": "meta.tag entity, meta.tag.attributes",
"foreground": "var(fgBase)"
},
{ // e.g. "a" in `<a href="hello"></a>`
"scope": "meta.tag entity.name",
"foreground": "var(typeRef)"
},
// Assembly
{
"scope": "storage.register, storage.other.register, constant.language.registers, entity.name.function.reg, constant.language.register",
"foreground": "var(typeRef)"
},
{
"scope": "source.asm entity.directive, source.asm support.function.directive",
"foreground": "color(var(yellow) lightness(80%))"
},
// Structured text
{
"scope": "text punctuation",
"foreground": "var(unimportant)"
},
{
"scope": "text markup.heading",
"foreground": "var(fg)",
"font_style": "bold"
},
{ "scope": "text markup.italic", "font_style": "italic" },
{ "scope": "text markup.bold", "font_style": "bold" },
{ "scope": "text markup.bold & markup.italic", "font_style": "bold italic" },
{ "scope": "text markup.strikethrough", "foreground": "var(unimportant)" },
{ // List bullets
// "-" in "- hello\n- world"
"scope": "text markup.list punctuation.definition.list_item",
"foreground": "color(var(yellow) lightness(80%))",
"font_style": "bold"
},
// { // List item
// "scope": "text markup.list meta.paragraph.list",
// "foreground": "color(var(yellow) lightness(92%))",
// },
{ // table header text
"scope": "text.html.markdown meta.table.header",
"foreground": "var(dataBase)",
},
{ // table lines
"scope": "text.html.markdown punctuation.separator.table-cell, text.html.markdown meta.table.header-separator punctuation.section.table-header",
"foreground": "var(dataBase)",
},
// link, e.g. [Title](url)
{ "scope": "text meta.link", "foreground": "var(fg)" },
{ "scope": "text meta.link markup.underline.link", "foreground": "var(unimportant)" },
// image, e.g. ![alt](url)
{ "scope": "text meta.image", "foreground": "var(unimportant)" },
{ "scope": "text meta.image markup.underline.link", "foreground": "var(fg)" },
{ // code, e.g. `...` and ```...```
"scope": "text markup.raw, text meta.code-fence.definition, text markup.raw.code-fence",
"background": "color(var(fg) alpha(0.07))"
},
{
"scope": "text meta.code-fence.definition constant",
"foreground": "var(unimportant)"
},
// misc
{
"scope": "invalid.deprecated",
"foreground": "var(red)",
"font_style": "italic underline"
},
{
"scope": "invalid.illegal",
"foreground": "var(fg)",
"background": "var(red)"
},
// Example of Hashed Syntax Highlighting
// https://www.sublimetext.com/docs/3/color_schemes.html#hashed_syntax_highlighting
// Note: It seems that "source - punctuation" means "source minus punctuation", but
// I'm not sure. I can't find documentation on this.
// {
// "scope": "source - punctuation - keyword",
// "foreground": ["hsl(200, 60%, 70%)", "hsl(330, 60%, 70%)"]
// }
]
}
{
"name": "rsms light",
"author": "rsms",
"variables":
{
"black": "hsl(0, 0%, 0%)",
"black2": "hsl(30, 100%, 13%)",
"black3": "hsl(240, 100%, 10%)",
"black4": "hsl(200, 100%, 10%)",
"blue": "hsl(216, 100%, 33%)",
"blue2": "hsl(224, 100%, 50%)",
"blue3": "hsl(240, 100%, 23%)",
"blue4": "hsl(204, 100%, 83%)",
"cyan": "hsl(147, 100%, 76%)",
"cyan2": "hsl(144, 71%, 23%)",
"cyanDark": "hsl(160, 40%, 4%)",
"green": "hsl(85, 85%, 79%)",
"green2": "hsl(120, 14%, 23%)",
"grey": "hsl(0, 0%, 20%)",
"grey2": "hsl(0, 0%, 40%)",
"grey3": "hsl(0, 0%, 80%)",
"orange": "hsl(24, 61%, 74%)",
"pink": "hsl(317, 100%, 23%)",
"purple": "hsl(255, 29%, 47%)",
"red": "hsl(0, 100%, 30%)",
"red2": "hsl(0, 100%, 50%)",
"red3": "hsl(12, 100%, 50%)",
"red4": "hsl(345, 100%, 73%)",
"white": "hsl(0, 0%, 100%)",
"white2": "hsl(60, 47%, 96%)",
"yellow": "hsl(60, 100%, 50%)",
"yellow2": "hsl(53, 89%, 79%)",
"yellow3": "hsl(52, 100%, 63%)"
},
"globals":
{
"foreground": "var(black)",
"background": "var(white2)",
"caret": "var(blue2)",
"invisibles": "var(red2)",
"line_highlight": "color(var(yellow) alpha(0.31))",
"selection": "color(var(blue4) alpha(0.5))",
"selection_border": "color(var(black) alpha(0))",
"inactive_selection": "color(var(blue4) alpha(0.25))",
"gutter_foreground": "var(grey3)",
"shadow": "var(white)",
// alpha part controls color of guides (vertical tab lines)
"guide": "color(var(black) alpha(0.059))",
"find_highlight_foreground": "var(black)",
"find_highlight": "var(yellow3)"
},
"rules":
[
{
"scope": "comment",
"foreground": "color(var(black) alpha(0.47))"
},
{
"scope": "comment.documentation, meta.documentation.tag",
"foreground": "var(grey)"
},
{
"scope": "keyword.other.documentation, punctuation.definition.keyword",
"foreground": "var(grey)"
},
{
"scope": "constant, string constant",
"foreground": "var(pink)"
},
{
// e.g. ":" in `{foo: bar}`
"scope": "constant.other.object.key",
"foreground": "var(grey2)"
},
{
// e.g. "->" and "." in `foo->bar.baz`
"scope": "punctuation.accessor",
"foreground": "color(var(black3) alpha(0.47))"
},
{
// e.g. "(" and ")" in `foo((baz)bar)`
// e.g. "[" and "]" in `foo[bar]`
// e.g. "{" and "}" in `if { ... }`
"scope": "punctuation.section.group, punctuation.section.brackets, meta.brace, punctuation.section.block, punctuation.terminator",
"foreground": "color(var(black3) alpha(0.47))"
},
{
// e.g. "Foo" in `typedef struct x Foo` (C)
// e.g. "Config" in `new Config()` (TS)
"scope": "entity.name.type, source.ts support.type",
"foreground": "var(blue)"
},
{
// e.g. "Config" in `class Config` (TS)
"scope": "entity.name.type.class, entity.name.type.interface",
"font_style": "bold"
},
{
"scope": "keyword, storage",
"foreground": "color(var(black) alpha(0.6))"
},
{
"scope": "storage.type, support.type",
"foreground": "color(var(black4) alpha(0.8))"
},
{
// e.g. "if"
"scope": "keyword.control",
"foreground": "color(var(blue3) alpha(0.67))"
},
{
// e.g. "#define"
"scope": "meta.preprocessor keyword.control",
"foreground": "color(var(black2) alpha(0.73))"
},
{
"scope": "entity.other.inherited-class",
"foreground": "var(grey2)",
"font_style": "bold"
},
{
"scope": "entity.name.function",
"font_style": "bold"
},
{
"scope": "meta.function-call entity.name.function, entity.invocation entity.name.function",
"font_style": "normal"
},
{
"scope": "string, string.unquoted, constant.character.escape",
"foreground": "var(cyan2)"
},
{
"scope": "string variable, string constant",
"foreground": "var(cyanDark)"
},
{
"scope": "string.regexp",
"foreground": "var(red4)"
},
{
"scope": "declaration.tag, declaration.tag entity, meta.tag, meta.tag entity",
"foreground": "var(purple)"
},
{
"scope": "entity.other.attribute-name",
"foreground": "var(grey)"
},
{
"scope": "meta.tag string, declaration.tag string",
"foreground": "var(green2)"
},
// machine code assembly
{
"scope": "storage.register",
"foreground": "var(yellow2)"
},
{
"scope": "storage.register.ip",
"foreground": "var(cyan)"
},
{
"scope": "storage.register.x64",
"foreground": "var(green)"
},
{
"scope": "entity.directive",
"foreground": "var(orange)"
},
// misc
{
"scope": "invalid.deprecated",
"foreground": "var(red)",
"font_style": "italic underline"
},
{
"scope": "invalid.illegal",
"foreground": "var(white)",
"background": "var(red3)"
}
]
}
@rsms
Copy link
Author

rsms commented Jan 28, 2020

Screen Shot 2020-01-28 at 15 10 16

Screen Shot 2020-01-28 at 15 10 08

Screen Shot 2020-01-28 at 15 10 22

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment