apache.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*
  2. Language: Apache
  3. Author: Ruslan Keba <[email protected]>
  4. Contributors: Ivan Sagalaev <[email protected]>
  5. Website: http://rukeba.com/
  6. Description: language definition for Apache configuration files (httpd.conf & .htaccess)
  7. Category: common, config
  8. */
  9. function(hljs) {
  10. var NUMBER = {className: 'number', begin: '[\\$%]\\d+'};
  11. return {
  12. aliases: ['apacheconf'],
  13. case_insensitive: true,
  14. contains: [
  15. hljs.HASH_COMMENT_MODE,
  16. {className: 'section', begin: '</?', end: '>'},
  17. {
  18. className: 'attribute',
  19. begin: /\w+/,
  20. relevance: 0,
  21. // keywords aren’t needed for highlighting per se, they only boost relevance
  22. // for a very generally defined mode (starts with a word, ends with line-end
  23. keywords: {
  24. nomarkup:
  25. 'order deny allow setenv rewriterule rewriteengine rewritecond documentroot ' +
  26. 'sethandler errordocument loadmodule options header listen serverroot ' +
  27. 'servername'
  28. },
  29. starts: {
  30. end: /$/,
  31. relevance: 0,
  32. keywords: {
  33. literal: 'on off all'
  34. },
  35. contains: [
  36. {
  37. className: 'meta',
  38. begin: '\\s\\[', end: '\\]$'
  39. },
  40. {
  41. className: 'variable',
  42. begin: '[\\$%]\\{', end: '\\}',
  43. contains: ['self', NUMBER]
  44. },
  45. NUMBER,
  46. hljs.QUOTE_STRING_MODE
  47. ]
  48. }
  49. }
  50. ],
  51. illegal: /\S/
  52. };
  53. }