Implement brace matching in page editing


I propose implementing brace matching in page editing. This would make it easier to write, maintain and troubleshoot complicated templates.

Especially when nested #if, #switch, and other parser functions are involved, it can get hard to pinpoint an error or even figure out how the template works just from looking at the markup. Brace matching is a useful type of syntax highlighting for seeing where each statement begins and ends and navigating through the markup.

Moreover, with all the variables, magic words, parser functions, etc. that have double or triple braces, it can be easy to leave off a brace somewhere and accidentally place an extra one somewhere else, resulting in subtle errors. With brace matching, it could be easier to find those mismatched braces. Some brace matching implementations ignore braces contained in comments. Mediawiki's brace matching might also ignore braces within nowikis (e.g. <nowiki>{<nowiki>).

Version: unspecified
Severity: enhancement

bzimport added a project: MediaWiki-Page-editing.Via ConduitNov 21 2014, 10:04 PM
bzimport added a subscriber: wikibugs-l.
bzimport set Reference to bz13302.
leucosticte created this task.Via LegacyMar 9 2008, 3:17 PM
MrStradivarius added a comment.Via ConduitMay 17 2013, 10:29 AM

I second this. We already have brace matching for Lua modules. Can we simply adapt the [[mw:Extension:CodeEditor]] code for the template namespace as well? The ability to match curly braces would be extremely useful for template editors.

Add Comment

Column Prototype
This is a very early prototype of a persistent column. It is not expected to work yet, and leaving it open will activate other new features which will break things. Press "\" (backslash) on your keyboard to close it now.