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.
67 lines
1.3 KiB
67 lines
1.3 KiB
/*
|
|
Language: dsconfig
|
|
Description: dsconfig batch configuration language for LDAP directory servers
|
|
Contributors: Jacob Childress <jacobc@gmail.com>
|
|
Category: enterprise, config
|
|
*/
|
|
|
|
/** @type LanguageFn */
|
|
function dsconfig(hljs) {
|
|
const QUOTED_PROPERTY = {
|
|
className: 'string',
|
|
begin: /"/,
|
|
end: /"/
|
|
};
|
|
const APOS_PROPERTY = {
|
|
className: 'string',
|
|
begin: /'/,
|
|
end: /'/
|
|
};
|
|
const UNQUOTED_PROPERTY = {
|
|
className: 'string',
|
|
begin: /[\w\-?]+:\w+/,
|
|
end: /\W/,
|
|
relevance: 0
|
|
};
|
|
const VALUELESS_PROPERTY = {
|
|
className: 'string',
|
|
begin: /\w+(\-\w+)*/,
|
|
end: /(?=\W)/,
|
|
relevance: 0
|
|
};
|
|
|
|
return {
|
|
keywords: 'dsconfig',
|
|
contains: [
|
|
{
|
|
className: 'keyword',
|
|
begin: '^dsconfig',
|
|
end: /\s/,
|
|
excludeEnd: true,
|
|
relevance: 10
|
|
},
|
|
{
|
|
className: 'built_in',
|
|
begin: /(list|create|get|set|delete)-(\w+)/,
|
|
end: /\s/,
|
|
excludeEnd: true,
|
|
illegal: '!@#$%^&*()',
|
|
relevance: 10
|
|
},
|
|
{
|
|
className: 'built_in',
|
|
begin: /--(\w+)/,
|
|
end: /\s/,
|
|
excludeEnd: true
|
|
},
|
|
QUOTED_PROPERTY,
|
|
APOS_PROPERTY,
|
|
UNQUOTED_PROPERTY,
|
|
VALUELESS_PROPERTY,
|
|
hljs.HASH_COMMENT_MODE
|
|
]
|
|
};
|
|
}
|
|
|
|
module.exports = dsconfig;
|