Feature summary (what you would like to be able to do and where):
This is a follow-up to T389902. Currently we have
const specialParserFunctions = { ifexist: 0, lst: 0, lstx: 0, lsth: 0, filepath: 6, int: 8, invoke: 828 }, ... }
Which cannot be modified by other extensions. A configuration variable such as wgCodeMirrorSpecialParserFunctions can be used to allow other extensions to add more parser functions to the list. For example, the Widgets extension can use
"CodeMirror": { "SpecialParserFunctions": { "widget": 274 } }
so that {{#widget:WidgetName}} links to Widget:WidgetName.
The code changes shouldn't be too complicated since CodeMirror just need to pass this config to the frontend and then merge additional configs from other extensions with existing values in specialParserFunctions. The main question is whether this additional complexity is warranted.