Notepad++: Syntax highlighting for GameMaker ≤ 8.1

Similar to other few posts about Notepad++ on this blog, this one also contains a user defined language for said program. As you can guess from title, it's for pre-Studio versions of GameMaker Language (GML).
I've made this UDF file a while ago actually, but wasn't publishing it, since it seemed that there is at least one more solution existing for this. Apparently not anymore.

This language definition supports all standard language structures of GameMaker. As well it highlights all existing functions, constants, and "special" variables (like global/self/other). Colour "conventions" are kept to ones of GameMaker. User-defined script and constant names are not automatically detected, unfortunately, but you may include these in Keyword Group 6 manually for them to be highlighted.

Download UDF

And if you are looking for GameMaker: Studio syntax highlighting, there's a UDL for that as well.

Related posts:

7 thoughts on “Notepad++: Syntax highlighting for GameMaker ≤ 8.1

    • Hello, sure! Also check if someone did that already – I know that there’s a Sublime Text 2 plugin.

  1. Thanks. This will be great for the d3d funtions. I personally never liked the built-in editor for GM8.0 Pro.

  2. Hi… How do i import this into Notepad++… its been a long time since i have added an item to Npp++, and i cant seem to be able to get it to play nicely…

    • Syntax highlighting files are to be added via “Define you language…” panel. You may have ot set affected file type field to “gml” manually. Takes effect for newly loaded files.

    • GameMaker: Studio version is going to be released shortly.
      Main problems here are that the code in GMX files is being escaped (e.g. “<" symbols are being replaced with "<" to avoid clashing with XML format) and that Notepad++ currently lacks ability to fully define keyword hierarchy.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.