You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.2 KiB
52 lines
1.2 KiB
4 years ago
|
/*
|
||
|
Language: HTTP
|
||
|
Description: HTTP request and response headers with automatic body highlighting
|
||
|
Author: Ivan Sagalaev <maniac@softwaremaniacs.org>
|
||
|
Category: common, protocols
|
||
|
Website: https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview
|
||
|
*/
|
||
|
|
||
|
function http(hljs) {
|
||
|
var VERSION = 'HTTP/[0-9\\.]+';
|
||
|
return {
|
||
|
name: 'HTTP',
|
||
|
aliases: ['https'],
|
||
|
illegal: '\\S',
|
||
|
contains: [
|
||
|
{
|
||
|
begin: '^' + VERSION, end: '$',
|
||
|
contains: [{className: 'number', begin: '\\b\\d{3}\\b'}]
|
||
|
},
|
||
|
{
|
||
|
begin: '^[A-Z]+ (.*?) ' + VERSION + '$', returnBegin: true, end: '$',
|
||
|
contains: [
|
||
|
{
|
||
|
className: 'string',
|
||
|
begin: ' ', end: ' ',
|
||
|
excludeBegin: true, excludeEnd: true
|
||
|
},
|
||
|
{
|
||
|
begin: VERSION
|
||
|
},
|
||
|
{
|
||
|
className: 'keyword',
|
||
|
begin: '[A-Z]+'
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
className: 'attribute',
|
||
|
begin: '^\\w', end: ': ', excludeEnd: true,
|
||
|
illegal: '\\n|\\s|=',
|
||
|
starts: {end: '$', relevance: 0}
|
||
|
},
|
||
|
{
|
||
|
begin: '\\n\\n',
|
||
|
starts: {subLanguage: [], endsWithParent: true}
|
||
|
}
|
||
|
]
|
||
|
};
|
||
|
}
|
||
|
|
||
|
module.exports = http;
|