;(
function
()
{
typeof
(require) !=
'undefined'
? SyntaxHighlighter = require(
'shCore'
).SyntaxHighlighter :
null
;
function
Brush()
{
var
keywords =
'Add-Content Add-History Add-Member Add-PSSnapin Clear(-Content)? Clear-Item '
+
'Clear-ItemProperty Clear-Variable Compare-Object ConvertFrom-SecureString Convert-Path '
+
'ConvertTo-Html ConvertTo-SecureString Copy(-Item)? Copy-ItemProperty Export-Alias '
+
'Export-Clixml Export-Console Export-Csv ForEach(-Object)? Format-Custom Format-List '
+
'Format-Table Format-Wide Get-Acl Get-Alias Get-AuthenticodeSignature Get-ChildItem Get-Command '
+
'Get-Content Get-Credential Get-Culture Get-Date Get-EventLog Get-ExecutionPolicy '
+
'Get-Help Get-History Get-Host Get-Item Get-ItemProperty Get-Location Get-Member '
+
'Get-PfxCertificate Get-Process Get-PSDrive Get-PSProvider Get-PSSnapin Get-Service '
+
'Get-TraceSource Get-UICulture Get-Unique Get-Variable Get-WmiObject Group-Object '
+
'Import-Alias Import-Clixml Import-Csv Invoke-Expression Invoke-History Invoke-Item '
+
'Join-Path Measure-Command Measure-Object Move(-Item)? Move-ItemProperty New-Alias '
+
'New-Item New-ItemProperty New-Object New-PSDrive New-Service New-TimeSpan '
+
'New-Variable Out-Default Out-File Out-Host Out-Null Out-Printer Out-String Pop-Location '
+
'Push-Location Read-Host Remove-Item Remove-ItemProperty Remove-PSDrive Remove-PSSnapin '
+
'Remove-Variable Rename-Item Rename-ItemProperty Resolve-Path Restart-Service Resume-Service '
+
'Select-Object Select-String Set-Acl Set-Alias Set-AuthenticodeSignature Set-Content '
+
'Set-Date Set-ExecutionPolicy Set-Item Set-ItemProperty Set-Location Set-PSDebug '
+
'Set-Service Set-TraceSource Set(-Variable)? Sort-Object Split-Path Start-Service '
+
'Start-Sleep Start-Transcript Stop-Process Stop-Service Stop-Transcript Suspend-Service '
+
'Tee-Object Test-Path Trace-Command Update-FormatData Update-TypeData Where(-Object)? '
+
'Write-Debug Write-Error Write(-Host)? Write-Output Write-Progress Write-Verbose Write-Warning'
;
var
alias =
'ac asnp clc cli clp clv cpi cpp cvpa diff epal epcsv fc fl '
+
'ft fw gal gc gci gcm gdr ghy gi gl gm gp gps group gsv '
+
'gsnp gu gv gwmi iex ihy ii ipal ipcsv mi mp nal ndr ni nv oh rdr '
+
'ri rni rnp rp rsnp rv rvpa sal sasv sc select si sl sleep sort sp '
+
'spps spsv sv tee cat cd cp h history kill lp ls '
+
'mount mv popd ps pushd pwd r rm rmdir echo cls chdir del dir '
+
'erase rd ren type % \\?'
;
this
.regexList = [
{ regex: /
#.*$/gm, css: 'comments' }, // one line comments
{ regex: /\$[a-zA-Z0-9]+\b/g, css:
'value'
},
{ regex: /\-[a-zA-Z]+\b/g, css:
'keyword'
},
{ regex: SyntaxHighlighter.regexLib.doubleQuotedString, css:
'string'
},
{ regex: SyntaxHighlighter.regexLib.singleQuotedString, css:
'string'
},
{ regex:
new
RegExp(
this
.getKeywords(keywords),
'gmi'
), css:
'keyword'
},
{ regex:
new
RegExp(
this
.getKeywords(alias),
'gmi'
), css:
'keyword'
}
];
};
Brush.prototype =
new
SyntaxHighlighter.Highlighter();
Brush.aliases = [
'powershell'
,
'ps'
];
SyntaxHighlighter.brushes.PowerShell = Brush;
typeof
(exports) !=
'undefined'
? exports.Brush = Brush :
null
;
})();