;; asterisk mode ;; too many members for the default specpdlsize ;; still missing some options, processed via ;; #!/bin/sh ;; cat $1 | awk '{ print $1 }' | tr -d ";" | grep = | cut -f1 -d= | sort -u | while read x; do echo -n "\"$x\" "; done (setq max-specpdl-size 6000) (define-generic-mode 'asterisk-mode ;; comments '(";") ;; keywords '("AbsoluteTimeout" "AddQueueMember" "ADSIProg" "AgentCallbackLogin" "AgentLogin" "AgentMonitorOutgoing" "AGI" "Answer" "AppendCDRUserField" "Authenticate" "BackGround" "Busy" "CallingPres" "ChangeMonitor" "ChanIsAvail" "Congestion" "Cut" "DateTime" "DBdel" "DBdeltree" "DBget" "DBput" "DeadAGI" "Dial" "DigitTimeout" "Directory" "DISA" "EAGI" "Echo" "EnumLookup" "Eval" "Festival" "Flash" "GetCPEID" "Goto" "GotoIf" "GotoIfTime" "Hangup" "HasNewVoicemail" "ICES" "LookupBlacklist" "LookupCIDName" "Macro" "MailboxExists" "MeetMe" "MeetMeCount" "Milliwatt" "Monitor" "MP3Player" "MusicOnHold" "NBScat" "NoCDR" "NoOp" "ParkAndAnnounce" "ParkedCall" "Playback" "Playtones" "Prefix" "PrivacyManager" "Queue" "Random" "Read" "Record" "RemoveQueueMember" "ResetCDR" "ResponseTimeout" "Ringing" "SayDigits" "SayNumber" "SayUnixTime" "SendDTMF" "SendImage" "SendURL" "SetAccount" "SetCallerID" "SetCDRUserField" "SetCIDName" "SetCIDNum" "SetGlobalVar" "SetLanguage" "SetMusicOnHold" "SetVar" "SIPDtmfMode" "SoftHangup" "StopMonitor" "StopPlaytones" "StripLSD" "StripMSD" "SubString" "Suffix" "System" "Transfer" "VoiceMail" "Voicemail" "VoiceMail2" "VoiceMailMain" "VoicemailMain" "VoiceMailMain2" "Wait" "WaitExten" "WaitForRing" "WaitMusicOnHold" "Zapateller" "ZapBarge" "ZapRAS" "ZapScan" "accelerate" "accountcode" "ackcall" "adsi" "adsifdn" "adsisec" "adsiver" "allow" "altserver" "amaflags" "amplitude" "attach" "auth" "authdebug" "autoanswer" "autofallthrough" "autokill" "autoload" "autologoff" "bandwidth" "bindaddr" "bindport" "busycount" "busydetect" "cacert" "cachedir" "cadence" "callerid" "callgroup" "callprogress" "callreturn" "callwaiting" "callwaitingcallerid" "cancallforward" "canreinvite" "central" "central24" "charset" "checkmwi" "cidsignalling" "cidstart" "cmdmode" "codec" "promiscredir" "context" "country" "createlink" "custom_beep" "dateformat" "dbname" "dbsecret" "defaultexpirey" "defaultip" "delayreject" "deny" "department" "device" "dialtype" "directoryintro" "disallow" "dring1" "dring1context" "dring2" "dring2context" "driver" "dropcount" "dsn" "dtmfmode" "eastern" "echocancel" "echocancelwhenbridged" "echotraining" "email" "emailbody" "emailsubject" "entityid" "extension" "externip" "externnotify" "externpass" "faxdetect" "festivalcommand" "flags" "format" "frequency" "fromdomain" "fromstring" "fromuser" "functcomplete" "group" "hangtime" "hidecallerid" "host" "hostname" "iaxcompat" "idamplitude" "idfrequency" "idledial" "idleext" "idtalkover" "idtime" "immediate" "incominglimit" "incomingmsn" "inkeys" "input_device" "insecure" "jitterbuffer" "jitterbuffers" "jittershrinkrate" "language" "linelabel" "localcert" "locality" "localnet" "loguniqueid" "mailbox" "mailboxdetail" "mailcmd" "mask" "maxconnections" "maxexcessbuffer" "maxexpirey" "maxgreet" "maxjitterbuffer" "maxlogins" "maxmessage" "maxsilence" "minexcessbuffer" "minidle" "minmessage" "minunused" "mode" "msn" "musicclass" "musiconhold" "nat" "notifymimetype" "notransfer" "nsf" "organization" "outgoinglimit" "outgoingmsn" "outkey" "output_device" "overlapdial" "pagerfromstring" "pass" "password" "pbxskip" "pedantic" "peercontext" "permit" "phone" "pickupgroup" "politeid" "port" "pridialplan" "prilocaldialplan" "privatekey" "progressinband" "progzone" "promiscredir" "pulsedial" "qualify" "realm" "recordagentcalls" "recordformat" "recordhistory" "regcontext" "regexten" "register" "relaxdtmf" "remotemon" "remotetx" "restrictcid" "retrydelay" "retrylimit" "rtpchecksums" "rtpend" "rtpholdtimeout" "rtpstart" "rtptimeout" "rxgain" "rxwink" "savecallsin" "secret" "secretpath" "sendani" "sendvoicemail" "server" "serveremail" "serverport" "servicepoint" "setvar" "signalling" "silencesupression" "silencethreshold" "singlepath" "skipms" "slowsequence" "source" "speed" "srvlookup" "stateprov" "static" "storehistory" "stripmsd" "switchtype" "template" "threewaycalling" "timeout" "timezone" "tos" "totime" "transfer" "trunk" "trunkfreq" "trustrpid" "ttl" "txgain" "type" "unlinkedct" "updatecdr" "urlprefix" "usecache" "usecallerid" "usecallingpres" "usedirectory" "usedistinctiveringdetection" "user" "useragent" "usereqphone" "username" "version" "videosupport" "wcardep" "wrapuptime" "writeprotect" ) ;; extra stuff to colorize '(("\[.*\]" . 'font-lock-builtin-face)) ;; files '("adsi.conf$" "cdr_pgsql.conf$" "logger.conf$" "musiconhold.conf$" "rpt.conf$" "zapata.conf$" "adtranvofr.conf$" "enum.conf$" "manager.conf$" "oss.conf$" "rtp.conf$" "agents.conf$" "extensions.conf$" "extconfig.conf$" "meetme.conf$" "parking.conf$" "sip.conf$" "alsa.conf$" "festival.conf$" "mgcp.conf$" "phone.conf$" "skinny.conf$" "asterisk.conf$" "iax.conf$" "modem.conf$" "privacy.conf$" "voicemail.conf$" "cdr_odbc.conf$" "indications.conf$" "modules.conf$" "queues.conf$" "vpb.conf$") nil "Mode for editing asterisk config files")