Enforce Script Highlighter – Extension
Category: MediaWiki Extension
Lou Montana (talk | contribs)  (Add guessClasses parameter)  | 
				Lou Montana (talk | contribs)   (guessClasses → noGuess - activate guessing by default)  | 
				||
| Line 14: | Line 14: | ||
|  | |  | ||
* 2022-07-30: "v0" (0.00a), first upload, Syntaxhighlight's C# syntax wrapper  | * 2022-07-30: "v0" (0.00a), first upload, Syntaxhighlight's C# syntax wrapper  | ||
* 2023-06-15: v0.95, first custom lexer   | * 2023-06-15: v0.95, first custom lexer with {{Link|Arma Reforger:Script Editor|Script Editor}}'s theme  | ||
|-  | |-  | ||
! Version  | ! Version  | ||
| Line 32: | Line 32: | ||
** {{hl|1= game="armaR"}} (Optional, default {{hl|"armaR"}}) used to define which game links should be used  | ** {{hl|1= game="armaR"}} (Optional, default {{hl|"armaR"}}) used to define which game links should be used  | ||
** {{hl|1= classes="SCR_ClassA SCR_ClassB"}} (case-sensitive) additional classes to be declared (if outside the example)  | ** {{hl|1= classes="SCR_ClassA SCR_ClassB"}} (case-sensitive) additional classes to be declared (if outside the example)  | ||
** {{hl|  | ** {{hl|noGuess}} to disable guessing unknown token as classes (regex: {{hl|^(SCR_)?E?[A-Z][a-z][A-Za-z0-9_]*$}}) as false positives can happen - use {{hl|classes}} in that case  | ||
Revision as of 21:27, 15 June 2023
| Enforce Script Highlighter | |
|---|---|
| Description | Highlights Enforce Script code. | 
| Author | Lou Montana | 
| Project Start | 2022-07-30: Project start | 
| Release Date | 
  | 
| Version | 0.95 | 
This extension highlights Enforce Script Syntax using Script Editor's theme.
Features
- Enforce Script Syntax support
 - "Copy code to clipboard" button on hover
 - Enforce Script tag button in the wiki edit toolbar (next to B and I)
 - Options:
- inline for inline code
 - notrim to remove the auto trim (lines themselves will always be rtrimmed)
 - game="armaR" (Optional, default "armaR") used to define which game links should be used
 - classes="SCR_ClassA SCR_ClassB" (case-sensitive) additional classes to be declared (if outside the example)
 - noGuess to disable guessing unknown token as classes (regex: ^(SCR_)?E?[A-Z][a-z][A-Za-z0-9_]*$) as false positives can happen - use classes in that case
 
 
Installation
- Unzip the directory to wiki
/extensions /EnforceScriptHighlighter  - Add 
wfLoadExtension( 'EnforceScriptHighlighter' );to LocalSettings.php - There are no settings
 
Usage
Using <enforce> tags will auto-generate syntax highlighting.
| Code | Result | 
|---|---|
<enforce/>
 | 
-no code provided- 
 | 
<enforce></enforce>
 | 
-no code provided- 
 | 
<enforce> </enforce>
 | 
-no code provided- 
 | 
<enforce>int i = 3;</enforce>
 | 
|
<enforce>
#ifdef WORKBENCH
class ABC
{
}
class DEF : ABC
{
	// unreachable
	protected static void Print(string text)
	{
		Print(text + 42, LogLevel.NORMAL);
	}
}
#endif
</enforce>
 | 
|
This is <enforce inline>int i = 0; i++;</enforce> absolutely inline.<br>
And here comes another one <enforce inline>float value = 0.001;</enforce> inline text.<br>
And another one <enforce inline>array<string> = {};</enforce>
 | 
 This is int i = 0; i++; absolutely inline.  | 
Known Issues
| Version | Issue | Report Date | Fix Date | 
|---|---|---|---|
| 0.00a | N/A | ||
| 0.95 | N/A | ||