I can't seem to find how to create a custom syntax highlighting rule for the ACE code editor.
My editor is configured for PHP mode as follows (and is working perfectly);
var phpeditor = ace.edit("php_inc");
phpeditor.setTheme("ace/theme/dreamweaver");
phpeditor.getSession().setMode("ace/mode/php");
phpeditor.setOptions({
enableBasicAutocompletion: true,
enableSnippets: true,
enableLiveAutocompletion: false,
});
What I would like the editor to do is to treat all instances of %%variable%% (with any text between the percent signs) to be highlighted with a custom rule and treated as a variable.
For example;
<?php echo %%my_variable_name%%; ?>
Is there a way of extending the editor to allow this functionality?
Easiest way is to modify php_highlight_rules file and add https://github.com/ajaxorg/ace/blob/master/lib/ace/mode/php_highlight_rules.js#L900 a rule
{
token: "variable",
regex: "%%\\w+%%"
}
doing this dynamically instead, is a bit harder as ace doesn't provide convenient way to hook into mode creation, if you need to do that, perhaps you should open an issue on ace site on github.