mirror of https://github.com/jkjoy/sunpeiwen.git
63 lines
1.2 KiB
JavaScript
63 lines
1.2 KiB
JavaScript
|
/*
|
||
|
Language: Diff
|
||
|
Description: Unified and context diff
|
||
|
Author: Vasily Polovnyov <vast@whiteants.net>
|
||
|
Website: https://www.gnu.org/software/diffutils/
|
||
|
Category: common
|
||
|
*/
|
||
|
|
||
|
/** @type LanguageFn */
|
||
|
function diff(hljs) {
|
||
|
const regex = hljs.regex;
|
||
|
return {
|
||
|
name: 'Diff',
|
||
|
aliases: [ 'patch' ],
|
||
|
contains: [
|
||
|
{
|
||
|
className: 'meta',
|
||
|
relevance: 10,
|
||
|
match: regex.either(
|
||
|
/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,
|
||
|
/^\*\*\* +\d+,\d+ +\*\*\*\*$/,
|
||
|
/^--- +\d+,\d+ +----$/
|
||
|
)
|
||
|
},
|
||
|
{
|
||
|
className: 'comment',
|
||
|
variants: [
|
||
|
{
|
||
|
begin: regex.either(
|
||
|
/Index: /,
|
||
|
/^index/,
|
||
|
/={3,}/,
|
||
|
/^-{3}/,
|
||
|
/^\*{3} /,
|
||
|
/^\+{3}/,
|
||
|
/^diff --git/
|
||
|
),
|
||
|
end: /$/
|
||
|
},
|
||
|
{ match: /^\*{15}$/ }
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
className: 'addition',
|
||
|
begin: /^\+/,
|
||
|
end: /$/
|
||
|
},
|
||
|
{
|
||
|
className: 'deletion',
|
||
|
begin: /^-/,
|
||
|
end: /$/
|
||
|
},
|
||
|
{
|
||
|
className: 'addition',
|
||
|
begin: /^!/,
|
||
|
end: /$/
|
||
|
}
|
||
|
]
|
||
|
};
|
||
|
}
|
||
|
|
||
|
export { diff as default };
|