Skip to content

Instantly share code, notes, and snippets.

@thennothinghappened
Last active April 4, 2024 00:30
Show Gist options
  • Save thennothinghappened/c77397be790a8c5b763ec8a33757222e to your computer and use it in GitHub Desktop.
Save thennothinghappened/c77397be790a8c5b763ec8a33757222e to your computer and use it in GitHub Desktop.
my GameMaker IDE theme

What is this?

This gist just includes my GameMaker IDE Code Editor theme. The theme was originally just throwing together some colours, but I thought it looked kinda alright! Storing this here firstly so I don't lose it, but if you like it for whatever reason, read below to set it up!

Installing it!

Code Editor 1

The current code editor for GM stores preferences in your local_settings.json file:

  • Windows: %appdata%\GameMakerStudio2\<username>_<user_id>\local_settings.json
  • MacOS: ~/.config/GameMakerStudio2/<username>_<user_id>/local_settings.json
  • Linux: no idea, haven't checked! might be also in .config?

Basically just paste the lines into your JSON file, being careful not to make duplicates (it's not the most fun process)

Code Editor 2

Code Editor 2 has made its way out in the latest 2024.400 Beta (as of writing), and as such I ported the theme over - the new editor now uses textmate for colourization and is thus a lot more powerful, but its definitely a finicky process still; not helped by the old editor storing colours in reverse order, where the new one does it more normally.

The .tmTheme file is below. Place that in the Themes subdirectory under the same one shown for local_settings.json earlier, and on a restart the IDE should pick it up.

You can now select the theme from the dropdown in Preferences > Code Editor 2 > Theme. the IDE may need a restart before it correctly applies.

{
"cloud.General Settings.Confirm Dialogs.stopbeforerun": 0,
"cloud.General Settings.Workspace.ResetZoomOnMovingWindow": true,
"cloud.General Settings.Workspace.AllowOverlappingChains": true,
"cloud.General Settings.Workspace.ChainLinkColour": "#99DD58C5",
"cloud.General Settings.Disable Animations": true,
"cloud.Text Editors.Code Editor.Colours.Default.size": 12,
"cloud.Text Editors.Code Editor.Colours.Keywords.colour": "#FFFF98E1",
"cloud.Text Editors.Code Editor.Colours.Strings.colour": "#FF86E09A",
"cloud.Text Editors.Code Editor.Colours.Comments.colour": "#FF74776F",
"cloud.Text Editors.Code Editor.Colours.Object Variables.colour": "#FFFFE3B1",
"cloud.Text Editors.Code Editor.Colours.Enums.colour": "#FFBE7FFF",
"cloud.Text Editors.Code Editor.Colours.Enum Entries.colour": "#FFE4B2FF",
"cloud.Text Editors.Code Editor.Colours.Macros.colour": "#FFA67AFF",
"cloud.Text Editors.Code Editor.Colours.Local Variables.colour": "#FFB2EBFF",
"cloud.Text Editors.Code Editor.Colours.Static Variables.colour": "#FF99FFC2",
"cloud.Text Editors.Code Editor.Colours.Bookmark Line Numbers.size": 10,
"cloud.Text Editors.Code Editor.Colours.White Space.colour": "#38665E62",
"cloud.Text Editors.Code Editor.Colours.Background": "#FF1E1C1A",
"cloud.Text Editors.Code Editor.Colours.CurrentLine": "#A3444444",
"cloud.Text Editors.Code Editor.Colours.Selections": "#20FFEFCF",
"cloud.Text Editors.Code Editor.Options.ShowWhitespace": false,
"cloud.Text Editors.Code Editor.Options.ShowTabLines": false,
"cloud.Text Editors.Code Editor.Options.EnableColourCoding": true,
"cloud.Text Editors.Code Editor.Options.ShowObsolete": true,
"cloud.Text Editors.SyntaxCheckingDelay": 5000,
"cloud.Text Editors.CodeCompletionDelay": 100,
"cloud.Text Editors.OpenScriptsFullScreen": true,
"cloud.Text Editors.OpenShadersFullScreen": true,
"cloud.Text Editors.OpenObjectEventsFullScreen": true,
"cloud.Languages.GML.display_argument_types": true,
"cloud.Languages.GML.display_argument_description": true,
"cloud.Languages.GML.ukusfunctions": false,
"cloud.Languages.GML.max_num_syntax_errors": 500,
"cloud.Languages.default_script_pref": 1,
"cloud.Feather Settings.Message Severity.GM2017": 3,
"cloud.Feather Settings.DocumentParseDelayMs": 150,
"cloud.Feather Settings.MaxStructTooltipLength": 15,
"cloud.Feather Settings.UseStrictTypes": true,
"cloud.Feather Settings.Enabled": true
}
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>gutterSettings</key>
<dict>
<key>foreground</key>
<string>#658F9DFF</string>
<key>background</key>
<string>#20272DFF</string>
<key>divider</key>
<string>#9DAFC3FF</string>
<key>toggleableRail</key>
<string>#414A51FF</string>
<key>documentDivider</key>
<string>#3EB8E6FF</string>
</dict>
<key>name</key>
<string>Orca's Theme</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#C0C0C0FF</string>
<key>background</key>
<string>#1A1C1EFF</string>
<key>caret</key>
<string>#F8F8F0FF</string>
<key>invisibles</key>
<string>#49483EFF</string>
<key>lineHighlight</key>
<string>#44444414</string>
<key>selection</key>
<string>#CFEFFF20</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#6F7774FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment Callout</string>
<key>scope</key>
<string>comment.callout</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#008DDFFF</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>URL</string>
<key>scope</key>
<string>comment.url</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0074CCFF</string>
<key>fontStyle</key>
<string>underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String Escape Characters</string>
<key>scope</key>
<string>constant.character.escape</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF8080FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF8080FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String Escape Characters</string>
<key>scope</key>
<string>constant.other.placeholder</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF8080FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Asset Name</string>
<key>scope</key>
<string>entity.name.asset</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF8080FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFB871FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Macro Name</string>
<key>scope</key>
<string>entity.name.function.preprocessor</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF7AA6FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Obsolete Symbols</string>
<key>scope</key>
<string>invalid.deprecated</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0060FFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword.control</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#E198FFFF</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#E198FFFF</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Enum</string>
<key>scope</key>
<string>meta.enum</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF7FBEFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Rainbow Brackets - Level 1</string>
<key>scope</key>
<string>punctuation.rainbow.1</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#72CDFFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Rainbow Brackets - Level 2</string>
<key>scope</key>
<string>punctuation.rainbow.2</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF7272FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Rainbow Brackets - Level 3</string>
<key>scope</key>
<string>punctuation.rainbow.3</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8AFF72FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Rainbow Brackets - Level 4</string>
<key>scope</key>
<string>punctuation.rainbow.4</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D772FFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Braces</string>
<key>scope</key>
<string>punctuation.section.block.begin</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFB871FF</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Braces</string>
<key>scope</key>
<string>punctuation.section.block.end</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFB871FF</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>storage.modifier</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFB871FF</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Global Variables</string>
<key>scope</key>
<string>storage.modifier.global</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF7EFFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Static Variables</string>
<key>scope</key>
<string>storage.modifier.static</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#C2FF99FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>storage.type</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFB871FF</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JSDoc Directive</string>
<key>scope</key>
<string>storage.type.class.jsdoc</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B871FFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JSDoc Name</string>
<key>scope</key>
<string>storage.type.name.jsdoc</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#72BFFFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JSDoc Type</string>
<key>scope</key>
<string>storage.type.type.jsdoc</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B2B9FFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#9AE086FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in Constant</string>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF8080FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Name</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFB871FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in Variable</string>
<key>scope</key>
<string>support.variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#58E55AFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Enum Member</string>
<key>scope</key>
<string>variable.other.enummember</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFB2E4FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Instance Variable</string>
<key>scope</key>
<string>variable.other.instance</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#B1E3FFFF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Local Variables</string>
<key>scope</key>
<string>variable.other.local</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFF899FF</string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>3e7a14efe0a74414955f441a1147b058</string>
</dict>
</plist>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment