I made the mistake of working with the Python language file as a first one. I notice the MarkDown one is quite large as well. It might be worth examining one of the smaller (but, hopefully, similar) language files, to give an overview of what’s essential, and a basic structure.
Little bit of advice (about modifying an existing language file) - although my understanding is still limited at this stage, and you may have discovered some of the following already:
Look for an existing word, function or method that behaves similar to the word(s) that you want to include.
That is, is it always/only coloured if it is preceded by a delimiter such as a dot? Is it coloured only if followed by a bracket? Is it coloured if it appears in the middle of a chain.of.words.
Once you’ve found such a similar word, search for it in the language file. Study the expression/regex around it.
Note the scope-name for the found word and search for this also. Try to understand why it’s included/mentioned in several locations.
Follow this pattern for the words/ functions that you want to include. But first:
Read about the scope-naming conventions - you want your additions to fit neatly into the structure. But it can also be significant that the scope include certain specific words.
Although you should invent your own name for **part **of the scope, don’t put this first (or early) in the scope name - this takes it completely out of the existing structure.
Don’t invent more than, say, two or three names as part of the scope - it will quickly become messy.
Where you insert your new content is also important - if it’s too far down then it might be caught by an earlier scope rule. (Pressing Ctrl-Shift-Alt-P displays the scope for the current word/phrase in the status bar, although there is a very useful add-in to display scope mentioned elsewhere/ recently in this forum.)
And… copy the language file outside of your Packages folder
I apologise if you’ve already discovered these points, and I “disclaim”, as I’m still wrestling with it myself. Good luck, Andy.