source:
node_modules/highlight.js/lib/languages/dns.js@
cfc16a3
Last change on this file since cfc16a3 was d24f17c, checked in by , 15 months ago | |
---|---|
|
|
File size: 2.1 KB |
Rev | Line | |
---|---|---|
[d24f17c] | 1 | /* |
2 | Language: DNS Zone | |
3 | Author: Tim Schumacher <tim@datenknoten.me> | |
4 | Category: config | |
5 | Website: https://en.wikipedia.org/wiki/Zone_file | |
6 | */ | |
7 | ||
8 | /** @type LanguageFn */ | |
9 | function dns(hljs) { | |
10 | return { | |
11 | name: 'DNS Zone', | |
12 | aliases: [ | |
13 | 'bind', | |
14 | 'zone' | |
15 | ], | |
16 | keywords: { | |
17 | keyword: | |
18 | 'IN A AAAA AFSDB APL CAA CDNSKEY CDS CERT CNAME DHCID DLV DNAME DNSKEY DS HIP IPSECKEY KEY KX ' + | |
19 | 'LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RRSIG RP SIG SOA SRV SSHFP TA TKEY TLSA TSIG TXT' | |
20 | }, | |
21 | contains: [ | |
22 | hljs.COMMENT(';', '$', { | |
23 | relevance: 0 | |
24 | }), | |
25 | { | |
26 | className: 'meta', | |
27 | begin: /^\$(TTL|GENERATE|INCLUDE|ORIGIN)\b/ | |
28 | }, | |
29 | // IPv6 | |
30 | { | |
31 | className: 'number', | |
32 | begin: '((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))\\b' | |
33 | }, | |
34 | // IPv4 | |
35 | { | |
36 | className: 'number', | |
37 | begin: '((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\b' | |
38 | }, | |
39 | hljs.inherit(hljs.NUMBER_MODE, { | |
40 | begin: /\b\d+[dhwm]?/ | |
41 | }) | |
42 | ] | |
43 | }; | |
44 | } | |
45 | ||
46 | module.exports = dns; |
Note:
See TracBrowser
for help on using the repository browser.