Asterisk-config-syntax-highlight
view release on metacpan or search on metacpan
lib/Asterisk/config/syntax/highlight.pm view on Meta::CPAN
map { $highlight->doStr( str => $_ ) }
split( /\n/, $datas );
$global{ ident $self}{datas} = \@data;
}
#only return array references now
sub return_html_array_ref {
my ( $self, %options ) = @_;
return $global{ ident $self}{datas};
}
sub return_ubb_array_ref {
my ( $self, %options ) = @_;
my @data =
map { $self->_html2ubb($_); } @{ $global{ ident $self}{datas} };
return \@data;
}
sub return_wiki_array_ref {
my ( $self, %options ) = @_;
my @data =
map { $self->_html2wiki($_); } @{ $global{ ident $self}{datas} };
return \@data;
}
sub _html2ubb {
my ( $self, $text ) = @_;
$text =~ s/<span(\s)class='keyword'>/[color=blue]/ig;
$text =~ s/<span(\s)class='function'>/[color=olive]/ig;
$text =~ s/<span(\s)class='comment'>/[color=seagreen]/ig;
$text =~ s/<span(\s)class='value'>/[color=purple]/ig;
$text =~ s/<span(\s)class='identifier'>/[color=magenta]/ig;
$text =~ s/<span(\s)class='exten'>/[color=red]/ig;
$text =~ s/<\/span>/[\/color]/ig;
return $text;
}
sub _html2wiki {
my ( $self, $text ) = @_;
$text =~ s/<span(\s)class='keyword'>/~~blue:/ig;
$text =~ s/<span(\s)class='function'>/~~olive:/ig;
$text =~ s/<span(\s)class='comment'>/~~seagreen:/ig;
$text =~ s/<span(\s)class='value'>/~~purple:/ig;
$text =~ s/<span(\s)class='identifier'>/~~magenta:/ig;
$text =~ s/<span(\s)class='exten'>/~~red:/ig;
$text =~ s/<\/span>/~~/ig;
$text =~ s/\[/\[\[/ig;
return $text;
}
sub DESTROY {
my ($self) = @_;
delete $global{ ident $self};
return;
}
sub commands {
return qw/
AbsoluteTimeout
AddQueueMember
ADSIProg
AgentCallbackLogin
AgentLogin
AgentMonitorOutgoing
AGI
AlarmReceiver
ALSAMonitor
AMD
Answer
AppendCDRUserField
Authenticate
BackGround
BackgroundDetect
Bridge
Busy
CallingPres
ChangeMonitor
ChanIsAvail
ChannelRedirect
ChanSpy
CheckGroup
ClearHash
Congestion
ContinueWhile
ControlPlayback
DAHDIBarge
DAHDIRAS
DAHDIScan
DAHDISendKeypadFacility
DBdel
DBdeltree
DBQuery
DBRewrite
DeadAGI
Dial
Dictate
DigitTimeout
Directory
DISA
DTMFToText
DUNDiLookup
EAGI
Echo
EndWhile
EnumLookup
Exec
ExecIf
ExecIfTime
ExitWhile
ExtenSpy
ExternIVR
Festival
Flash
Flite
ForkCDR
GetCPEID
GetGroupCount
GetGroupMatchCount
Gosub
GosubIf
Goto
GotoIf
GotoIfTime
Hangup
HasNewVoicemail
HasVoicemail
ICES
ImportVar
JabberSend
JabberStatus
KeepAlive
Log
LookupBlacklist
LookupCIDName
Macro
MacroExclusive
MacroExit
MailboxExists
MeetMe
MeetMeAdmin
MeetMeChannelAdmin
MeetMeCount
Milliwatt
MiniVM
MixMonitor
Monitor
MP3Player
MSet
MusicOnHold
MYSQL
Asterisk cmg NBScat
NoCDR
NoOp
ODBCFinish
Page
Park
ParkAndAnnounce
ParkedCall
PauseQueueMember
Perl
Pickup
PickUP
PickupChan
Playback
Playtones
PPPD
PrivacyManager
Proceeding
Progress
Queue
Random
Read
ReadExten
ReadFile
RealTime
Record
RemoveQueueMember
ResetCDR
ResponseTimeout
RetryDial
Return
Ringing
Rpt
SayAlpha
SayDigits
SayNumber
SayPhonetic
SayUnixTime
SendDTMF
SendImage
SendText
SendURL
Set
SetAccount
SetAMAflags
SetCallerID
SetCallerPres
SetCDRUserField
SetGlobalVar
SetMusicOnHold
SIPAddHeader
SIPCallPickup
SIPGetHeader
SIPdtmfMode
SMS
SoftHangup
SrxEchoCan
SrxDeflect
SrxMWI
StackPop
Steal
StopMonitor
StopMixMonitor
StopPlaytones
System
TestClient
TestServer
Transfer
TrySystem
TXTCIDName
UnpauseQueueMember
UserEvent
VMAuthenticate
VoiceMail
VoiceMailMain
Wait
WaitExten
WaitForRing
WaitMusicOnHold
WaitUntil
While
Zapateller
/;
}
sub functions {
return qw/
AGENT
ARRAY
( run in 1.805 second using v1.01-cache-2.11-cpan-39bf76dae61 )