codes.js 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. 'use strict'
  2. // This module is compiled away!
  3. //
  4. // micromark works based on character codes.
  5. // This module contains constants for the ASCII block and the replacement
  6. // character.
  7. // A couple of them are handled in a special way, such as the line endings
  8. // (CR, LF, and CR+LF, commonly known as end-of-line: EOLs), the tab (horizontal
  9. // tab) and its expansion based on what column it’s at (virtual space),
  10. // and the end-of-file (eof) character.
  11. // As values are preprocessed before handling them, the actual characters LF,
  12. // CR, HT, and NUL (which is present as the replacement character), are
  13. // guaranteed to not exist.
  14. //
  15. // Unicode basic latin block.
  16. var codes = {
  17. carriageReturn: -5,
  18. lineFeed: -4,
  19. carriageReturnLineFeed: -3,
  20. horizontalTab: -2,
  21. virtualSpace: -1,
  22. eof: null,
  23. nul: 0,
  24. soh: 1,
  25. stx: 2,
  26. etx: 3,
  27. eot: 4,
  28. enq: 5,
  29. ack: 6,
  30. bel: 7,
  31. bs: 8,
  32. ht: 9, // `\t`
  33. lf: 10, // `\n`
  34. vt: 11, // `\v`
  35. ff: 12, // `\f`
  36. cr: 13, // `\r`
  37. so: 14,
  38. si: 15,
  39. dle: 16,
  40. dc1: 17,
  41. dc2: 18,
  42. dc3: 19,
  43. dc4: 20,
  44. nak: 21,
  45. syn: 22,
  46. etb: 23,
  47. can: 24,
  48. em: 25,
  49. sub: 26,
  50. esc: 27,
  51. fs: 28,
  52. gs: 29,
  53. rs: 30,
  54. us: 31,
  55. space: 32,
  56. exclamationMark: 33, // `!`
  57. quotationMark: 34, // `"`
  58. numberSign: 35, // `#`
  59. dollarSign: 36, // `$`
  60. percentSign: 37, // `%`
  61. ampersand: 38, // `&`
  62. apostrophe: 39, // `'`
  63. leftParenthesis: 40, // `(`
  64. rightParenthesis: 41, // `)`
  65. asterisk: 42, // `*`
  66. plusSign: 43, // `+`
  67. comma: 44, // `,`
  68. dash: 45, // `-`
  69. dot: 46, // `.`
  70. slash: 47, // `/`
  71. digit0: 48, // `0`
  72. digit1: 49, // `1`
  73. digit2: 50, // `2`
  74. digit3: 51, // `3`
  75. digit4: 52, // `4`
  76. digit5: 53, // `5`
  77. digit6: 54, // `6`
  78. digit7: 55, // `7`
  79. digit8: 56, // `8`
  80. digit9: 57, // `9`
  81. colon: 58, // `:`
  82. semicolon: 59, // `;`
  83. lessThan: 60, // `<`
  84. equalsTo: 61, // `=`
  85. greaterThan: 62, // `>`
  86. questionMark: 63, // `?`
  87. atSign: 64, // `@`
  88. uppercaseA: 65, // `A`
  89. uppercaseB: 66, // `B`
  90. uppercaseC: 67, // `C`
  91. uppercaseD: 68, // `D`
  92. uppercaseE: 69, // `E`
  93. uppercaseF: 70, // `F`
  94. uppercaseG: 71, // `G`
  95. uppercaseH: 72, // `H`
  96. uppercaseI: 73, // `I`
  97. uppercaseJ: 74, // `J`
  98. uppercaseK: 75, // `K`
  99. uppercaseL: 76, // `L`
  100. uppercaseM: 77, // `M`
  101. uppercaseN: 78, // `N`
  102. uppercaseO: 79, // `O`
  103. uppercaseP: 80, // `P`
  104. uppercaseQ: 81, // `Q`
  105. uppercaseR: 82, // `R`
  106. uppercaseS: 83, // `S`
  107. uppercaseT: 84, // `T`
  108. uppercaseU: 85, // `U`
  109. uppercaseV: 86, // `V`
  110. uppercaseW: 87, // `W`
  111. uppercaseX: 88, // `X`
  112. uppercaseY: 89, // `Y`
  113. uppercaseZ: 90, // `Z`
  114. leftSquareBracket: 91, // `[`
  115. backslash: 92, // `\`
  116. rightSquareBracket: 93, // `]`
  117. caret: 94, // `^`
  118. underscore: 95, // `_`
  119. graveAccent: 96, // `` ` ``
  120. lowercaseA: 97, // `a`
  121. lowercaseB: 98, // `b`
  122. lowercaseC: 99, // `c`
  123. lowercaseD: 100, // `d`
  124. lowercaseE: 101, // `e`
  125. lowercaseF: 102, // `f`
  126. lowercaseG: 103, // `g`
  127. lowercaseH: 104, // `h`
  128. lowercaseI: 105, // `i`
  129. lowercaseJ: 106, // `j`
  130. lowercaseK: 107, // `k`
  131. lowercaseL: 108, // `l`
  132. lowercaseM: 109, // `m`
  133. lowercaseN: 110, // `n`
  134. lowercaseO: 111, // `o`
  135. lowercaseP: 112, // `p`
  136. lowercaseQ: 113, // `q`
  137. lowercaseR: 114, // `r`
  138. lowercaseS: 115, // `s`
  139. lowercaseT: 116, // `t`
  140. lowercaseU: 117, // `u`
  141. lowercaseV: 118, // `v`
  142. lowercaseW: 119, // `w`
  143. lowercaseX: 120, // `x`
  144. lowercaseY: 121, // `y`
  145. lowercaseZ: 122, // `z`
  146. leftCurlyBrace: 123, // `{`
  147. verticalBar: 124, // `|`
  148. rightCurlyBrace: 125, // `}`
  149. tilde: 126, // `~`
  150. del: 127,
  151. // Unicode Specials block.
  152. byteOrderMarker: 65279,
  153. // Unicode Specials block.
  154. replacementCharacter: 65533 // `�`
  155. }
  156. module.exports = codes