dyndoc-ruby 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (466) hide show
  1. checksums.yaml +4 -4
  2. data/bin/dyn-init.rb +9 -0
  3. data/share/demo/first.dyn +38 -0
  4. data/share/demo/second.dyn +87 -0
  5. data/share/demo/simple.dyn +10 -0
  6. data/share/demo/simple_lib.dyn +2 -0
  7. data/share/demo/simple_lib2.dyn +2 -0
  8. data/share/demo/testBeamer.dyn +77 -0
  9. data/share/demo/testBeamer_lib.dyn +7 -0
  10. data/share/demo/test_atom.dyn +79 -0
  11. data/share/etc/alias +3 -0
  12. data/share/etc/dyndoc_library_path +1 -0
  13. data/share/etc/helpers +1 -0
  14. data/share/etc/pandoc/README.INSTALL +1 -0
  15. data/share/etc/pandoc/config.rb +4 -0
  16. data/share/etc/pandoc/extra/reveal.js-3.0.0/CONTRIBUTING.md +19 -0
  17. data/share/etc/pandoc/extra/reveal.js-3.0.0/Gruntfile.js +174 -0
  18. data/share/etc/pandoc/extra/reveal.js-3.0.0/LICENSE +19 -0
  19. data/share/etc/pandoc/extra/reveal.js-3.0.0/README.md +950 -0
  20. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/print/paper.css +202 -0
  21. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/print/pdf.css +157 -0
  22. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/reveal.css +1141 -0
  23. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/reveal.min.css +1141 -0
  24. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/reveal.scss +1316 -0
  25. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/README.md +25 -0
  26. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/beige.css +265 -0
  27. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/black.css +261 -0
  28. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/blood.css +291 -0
  29. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/default.css +268 -0
  30. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/league.css +267 -0
  31. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/moon.css +265 -0
  32. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/night.css +259 -0
  33. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/serif.css +261 -0
  34. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/simple.css +261 -0
  35. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/sky.css +268 -0
  36. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/solarized.css +265 -0
  37. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/beige.scss +39 -0
  38. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/black.scss +49 -0
  39. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/blood.scss +91 -0
  40. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/league.scss +34 -0
  41. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/moon.scss +57 -0
  42. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/night.scss +35 -0
  43. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/serif.scss +35 -0
  44. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/simple.scss +38 -0
  45. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/sky.scss +46 -0
  46. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/solarized.scss +63 -0
  47. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/source/white.scss +49 -0
  48. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/template/mixins.scss +29 -0
  49. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/template/settings.scss +43 -0
  50. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/template/theme.scss +339 -0
  51. data/share/etc/pandoc/extra/reveal.js-3.0.0/css/theme/white.css +261 -0
  52. data/share/etc/pandoc/extra/reveal.js-3.0.0/index.html +408 -0
  53. data/share/etc/pandoc/extra/reveal.js-3.0.0/js/reveal.js +4276 -0
  54. data/share/etc/pandoc/extra/reveal.js-3.0.0/js/reveal.min.js +4276 -0
  55. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/css/zenburn.css +117 -0
  56. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/league-gothic/LICENSE +2 -0
  57. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/league-gothic/league-gothic.css +10 -0
  58. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/league-gothic/league-gothic.eot +0 -0
  59. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/league-gothic/league-gothic.ttf +0 -0
  60. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/league-gothic/league-gothic.woff +0 -0
  61. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/LICENSE +45 -0
  62. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-italic.eot +0 -0
  63. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-italic.ttf +0 -0
  64. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-italic.woff +0 -0
  65. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-regular.eot +0 -0
  66. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-regular.ttf +0 -0
  67. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-regular.woff +0 -0
  68. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-semibold.eot +0 -0
  69. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-semibold.ttf +0 -0
  70. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-semibold.woff +0 -0
  71. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-semibolditalic.eot +0 -0
  72. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-semibolditalic.ttf +0 -0
  73. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro-semibolditalic.woff +0 -0
  74. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/font/source-sans-pro/source-sans-pro.css +39 -0
  75. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/js/classList.js +2 -0
  76. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/js/head.min.js +8 -0
  77. data/share/etc/pandoc/extra/reveal.js-3.0.0/lib/js/html5shiv.js +7 -0
  78. data/share/etc/pandoc/extra/reveal.js-3.0.0/package.json +48 -0
  79. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/highlight/highlight.js +30 -0
  80. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/leap/leap.js +159 -0
  81. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/markdown/example.html +129 -0
  82. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/markdown/example.md +31 -0
  83. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/markdown/markdown.js +393 -0
  84. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/markdown/marked.js +37 -0
  85. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/math/math.js +64 -0
  86. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/multiplex/client.js +13 -0
  87. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/multiplex/index.js +56 -0
  88. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/multiplex/master.js +51 -0
  89. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/notes-server/client.js +60 -0
  90. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/notes-server/index.js +66 -0
  91. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/notes-server/notes.html +396 -0
  92. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/notes/notes.html +406 -0
  93. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/notes/notes.js +122 -0
  94. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/print-pdf/print-pdf.js +48 -0
  95. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/remotes/remotes.js +39 -0
  96. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/search/search.js +196 -0
  97. data/share/etc/pandoc/extra/reveal.js-3.0.0/plugin/zoom-js/zoom.js +278 -0
  98. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/examples/assets/image1.png +0 -0
  99. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/examples/assets/image2.png +0 -0
  100. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/examples/barebones.html +41 -0
  101. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/examples/embedded-media.html +49 -0
  102. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/examples/math.html +185 -0
  103. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/examples/slide-backgrounds.html +144 -0
  104. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/qunit-1.12.0.css +244 -0
  105. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/qunit-1.12.0.js +2212 -0
  106. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-markdown-element-attributes.html +134 -0
  107. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-markdown-element-attributes.js +46 -0
  108. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-markdown-slide-attributes.html +128 -0
  109. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-markdown-slide-attributes.js +47 -0
  110. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-markdown.html +52 -0
  111. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-markdown.js +15 -0
  112. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-pdf.html +83 -0
  113. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test-pdf.js +15 -0
  114. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test.html +82 -0
  115. data/share/etc/pandoc/extra/reveal.js-3.0.0/test/test.js +572 -0
  116. data/share/etc/pandoc/extra/reveal.js-3.1.0/CONTRIBUTING.md +23 -0
  117. data/share/etc/pandoc/extra/reveal.js-3.1.0/Gruntfile.js +170 -0
  118. data/share/etc/pandoc/extra/reveal.js-3.1.0/LICENSE +19 -0
  119. data/share/etc/pandoc/extra/reveal.js-3.1.0/README.md +1050 -0
  120. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/print/paper.css +202 -0
  121. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/print/pdf.css +157 -0
  122. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/reveal.css +1175 -0
  123. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/reveal.scss +1319 -0
  124. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/README.md +23 -0
  125. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/beige.css +271 -0
  126. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/black.css +267 -0
  127. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/blood.css +285 -0
  128. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/league.css +273 -0
  129. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/moon.css +271 -0
  130. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/night.css +265 -0
  131. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/serif.css +267 -0
  132. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/simple.css +267 -0
  133. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/sky.css +274 -0
  134. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/solarized.css +271 -0
  135. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/beige.scss +39 -0
  136. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/black.scss +49 -0
  137. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/blood.scss +79 -0
  138. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/league.scss +34 -0
  139. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/moon.scss +57 -0
  140. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/night.scss +35 -0
  141. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/serif.scss +35 -0
  142. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/simple.scss +38 -0
  143. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/sky.scss +46 -0
  144. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/solarized.scss +63 -0
  145. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/source/white.scss +49 -0
  146. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/template/mixins.scss +29 -0
  147. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/template/settings.scss +43 -0
  148. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/template/theme.scss +349 -0
  149. data/share/etc/pandoc/extra/reveal.js-3.1.0/css/theme/white.css +267 -0
  150. data/share/etc/pandoc/extra/reveal.js-3.1.0/index.html +411 -0
  151. data/share/etc/pandoc/extra/reveal.js-3.1.0/js/reveal.js +4508 -0
  152. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/css/zenburn.css +117 -0
  153. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/league-gothic/LICENSE +2 -0
  154. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/league-gothic/league-gothic.css +10 -0
  155. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/league-gothic/league-gothic.eot +0 -0
  156. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/league-gothic/league-gothic.ttf +0 -0
  157. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/league-gothic/league-gothic.woff +0 -0
  158. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/LICENSE +45 -0
  159. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-italic.eot +0 -0
  160. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-italic.ttf +0 -0
  161. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-italic.woff +0 -0
  162. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-regular.eot +0 -0
  163. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-regular.ttf +0 -0
  164. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-regular.woff +0 -0
  165. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-semibold.eot +0 -0
  166. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-semibold.ttf +0 -0
  167. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-semibold.woff +0 -0
  168. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-semibolditalic.eot +0 -0
  169. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-semibolditalic.ttf +0 -0
  170. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro-semibolditalic.woff +0 -0
  171. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/font/source-sans-pro/source-sans-pro.css +39 -0
  172. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/js/classList.js +2 -0
  173. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/js/head.min.js +8 -0
  174. data/share/etc/pandoc/extra/reveal.js-3.1.0/lib/js/html5shiv.js +7 -0
  175. data/share/etc/pandoc/extra/reveal.js-3.1.0/package.json +49 -0
  176. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/highlight/highlight.js +30 -0
  177. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/leap/leap.js +159 -0
  178. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/markdown/example.html +129 -0
  179. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/markdown/example.md +31 -0
  180. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/markdown/markdown.js +393 -0
  181. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/markdown/marked.js +6 -0
  182. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/math/math.js +64 -0
  183. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/multiplex/client.js +13 -0
  184. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/multiplex/index.js +56 -0
  185. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/multiplex/master.js +51 -0
  186. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/notes-server/client.js +60 -0
  187. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/notes-server/index.js +66 -0
  188. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/notes-server/notes.html +396 -0
  189. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/notes/notes.html +406 -0
  190. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/notes/notes.js +122 -0
  191. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/print-pdf/print-pdf.js +48 -0
  192. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/remotes/remotes.js +39 -0
  193. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/search/search.js +196 -0
  194. data/share/etc/pandoc/extra/reveal.js-3.1.0/plugin/zoom-js/zoom.js +278 -0
  195. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/examples/assets/image1.png +0 -0
  196. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/examples/assets/image2.png +0 -0
  197. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/examples/barebones.html +41 -0
  198. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/examples/embedded-media.html +49 -0
  199. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/examples/math.html +185 -0
  200. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/examples/slide-backgrounds.html +144 -0
  201. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/examples/slide-transitions.html +101 -0
  202. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/qunit-1.12.0.css +244 -0
  203. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/qunit-1.12.0.js +2212 -0
  204. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-markdown-element-attributes.html +134 -0
  205. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-markdown-element-attributes.js +46 -0
  206. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-markdown-slide-attributes.html +128 -0
  207. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-markdown-slide-attributes.js +47 -0
  208. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-markdown.html +52 -0
  209. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-markdown.js +15 -0
  210. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-pdf.html +83 -0
  211. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test-pdf.js +15 -0
  212. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test.html +85 -0
  213. data/share/etc/pandoc/extra/reveal.js-3.1.0/test/test.js +589 -0
  214. data/share/etc/pandoc/extra/s5-ui/default/blank.gif +0 -0
  215. data/share/etc/pandoc/extra/s5-ui/default/bodybg.gif +0 -0
  216. data/share/etc/pandoc/extra/s5-ui/default/framing.css +23 -0
  217. data/share/etc/pandoc/extra/s5-ui/default/iepngfix.htc +42 -0
  218. data/share/etc/pandoc/extra/s5-ui/default/opera.css +7 -0
  219. data/share/etc/pandoc/extra/s5-ui/default/outline.css +15 -0
  220. data/share/etc/pandoc/extra/s5-ui/default/pretty.css +86 -0
  221. data/share/etc/pandoc/extra/s5-ui/default/print.css +1 -0
  222. data/share/etc/pandoc/extra/s5-ui/default/s5-core.css +9 -0
  223. data/share/etc/pandoc/extra/s5-ui/default/slides.css +3 -0
  224. data/share/etc/pandoc/extra/s5-ui/default/slides.js +553 -0
  225. data/share/etc/uv/render/README +1 -0
  226. data/share/etc/uv/render/latex/-h.yaml +1 -0
  227. data/share/etc/uv/render/latex/active4d.render +136 -0
  228. data/share/etc/uv/render/latex/all_hallows_eve.render +100 -0
  229. data/share/etc/uv/render/latex/amy.render +175 -0
  230. data/share/etc/uv/render/latex/blackboard.render +115 -0
  231. data/share/etc/uv/render/latex/brilliance_black.render +556 -0
  232. data/share/etc/uv/render/latex/brilliance_dull.render +565 -0
  233. data/share/etc/uv/render/latex/cobalt.render +166 -0
  234. data/share/etc/uv/render/latex/dawn.render +130 -0
  235. data/share/etc/uv/render/latex/eiffel.render +136 -0
  236. data/share/etc/uv/render/latex/espresso_libre.render +127 -0
  237. data/share/etc/uv/render/latex/idle.render +97 -0
  238. data/share/etc/uv/render/latex/iplastic.render +103 -0
  239. data/share/etc/uv/render/latex/lazy.render +100 -0
  240. data/share/etc/uv/render/latex/mac_classic.render +139 -0
  241. data/share/etc/uv/render/latex/magicwb_amiga.render +121 -0
  242. data/share/etc/uv/render/latex/pastels_on_dark.render +208 -0
  243. data/share/etc/uv/render/latex/slush_poppies.render +127 -0
  244. data/share/etc/uv/render/latex/solarized.render +495 -0
  245. data/share/etc/uv/render/latex/spacecadet.render +85 -0
  246. data/share/etc/uv/render/latex/sunburst.render +190 -0
  247. data/share/etc/uv/render/latex/twilight.render +157 -0
  248. data/share/etc/uv/render/latex/zenburnesque.render +130 -0
  249. data/share/etc/uv/render/old/txt2tags.render +131 -0
  250. data/share/etc/uv/render/theme2latexrender +123 -0
  251. data/share/etc/uv/render/theme2xhtmlrender +157 -0
  252. data/share/etc/uv/render/tmTheme/solarized.tmTheme +1875 -0
  253. data/share/etc/uv/render/xhtml/active4d.render +140 -0
  254. data/share/etc/uv/render/xhtml/all_hallows_eve.render +104 -0
  255. data/share/etc/uv/render/xhtml/amy.render +179 -0
  256. data/share/etc/uv/render/xhtml/blackboard.render +119 -0
  257. data/share/etc/uv/render/xhtml/brilliance_black.render +560 -0
  258. data/share/etc/uv/render/xhtml/brilliance_dull.render +569 -0
  259. data/share/etc/uv/render/xhtml/cobalt.render +170 -0
  260. data/share/etc/uv/render/xhtml/dawn.render +134 -0
  261. data/share/etc/uv/render/xhtml/eiffel.render +140 -0
  262. data/share/etc/uv/render/xhtml/espresso_libre.render +131 -0
  263. data/share/etc/uv/render/xhtml/files/css/active4d.css +114 -0
  264. data/share/etc/uv/render/xhtml/files/css/all_hallows_eve.css +72 -0
  265. data/share/etc/uv/render/xhtml/files/css/amy.css +147 -0
  266. data/share/etc/uv/render/xhtml/files/css/blackboard.css +88 -0
  267. data/share/etc/uv/render/xhtml/files/css/brilliance_black.css +605 -0
  268. data/share/etc/uv/render/xhtml/files/css/brilliance_dull.css +599 -0
  269. data/share/etc/uv/render/xhtml/files/css/cobalt.css +149 -0
  270. data/share/etc/uv/render/xhtml/files/css/dawn.css +121 -0
  271. data/share/etc/uv/render/xhtml/files/css/eiffel.css +121 -0
  272. data/share/etc/uv/render/xhtml/files/css/espresso_libre.css +109 -0
  273. data/share/etc/uv/render/xhtml/files/css/idle.css +62 -0
  274. data/share/etc/uv/render/xhtml/files/css/iplastic.css +80 -0
  275. data/share/etc/uv/render/xhtml/files/css/lazy.css +73 -0
  276. data/share/etc/uv/render/xhtml/files/css/mac_classic.css +123 -0
  277. data/share/etc/uv/render/xhtml/files/css/magicwb_amiga.css +104 -0
  278. data/share/etc/uv/render/xhtml/files/css/pastels_on_dark.css +188 -0
  279. data/share/etc/uv/render/xhtml/files/css/slush_poppies.css +85 -0
  280. data/share/etc/uv/render/xhtml/files/css/solarized.css +478 -0
  281. data/share/etc/uv/render/xhtml/files/css/spacecadet.css +51 -0
  282. data/share/etc/uv/render/xhtml/files/css/sunburst.css +180 -0
  283. data/share/etc/uv/render/xhtml/files/css/twilight.css +137 -0
  284. data/share/etc/uv/render/xhtml/files/css/zenburnesque.css +91 -0
  285. data/share/etc/uv/render/xhtml/idle.render +101 -0
  286. data/share/etc/uv/render/xhtml/iplastic.render +107 -0
  287. data/share/etc/uv/render/xhtml/lazy.render +104 -0
  288. data/share/etc/uv/render/xhtml/mac_classic.render +143 -0
  289. data/share/etc/uv/render/xhtml/magicwb_amiga.render +125 -0
  290. data/share/etc/uv/render/xhtml/pastels_on_dark.render +212 -0
  291. data/share/etc/uv/render/xhtml/slush_poppies.render +131 -0
  292. data/share/etc/uv/render/xhtml/solarized.render +503 -0
  293. data/share/etc/uv/render/xhtml/spacecadet.render +89 -0
  294. data/share/etc/uv/render/xhtml/sunburst.render +194 -0
  295. data/share/etc/uv/render/xhtml/twilight.render +161 -0
  296. data/share/etc/uv/render/xhtml/zenburnesque.render +134 -0
  297. data/share/etc/uv/syntax/broken/markdown.syntax +519 -0
  298. data/share/etc/uv/syntax/broken/php.syntax +1253 -0
  299. data/share/etc/uv/syntax/buggy/nemerle.syntax +74 -0
  300. data/share/etc/uv/syntax/dyndoc.syntax +237 -0
  301. data/share/etc/uv/syntax/old/YAML.yaml +160 -0
  302. data/share/etc/uv/syntax/old/txt2tags.yaml +139 -0
  303. data/share/etc/uv/syntax/r.syntax +81 -0
  304. data/share/etc/uv/syntax/ruby.syntax +1035 -0
  305. data/share/etc/uv/syntax/source.actionscript.syntax +97 -0
  306. data/share/etc/uv/syntax/source.active4d.library.syntax +21 -0
  307. data/share/etc/uv/syntax/source.active4d.syntax +276 -0
  308. data/share/etc/uv/syntax/source.ada.syntax +33 -0
  309. data/share/etc/uv/syntax/source.antlr.syntax +151 -0
  310. data/share/etc/uv/syntax/source.apache-config.mod_perl.syntax +50 -0
  311. data/share/etc/uv/syntax/source.apache-config.syntax +191 -0
  312. data/share/etc/uv/syntax/source.applescript.syntax +384 -0
  313. data/share/etc/uv/syntax/source.asp.syntax +70 -0
  314. data/share/etc/uv/syntax/source.asp.vb.net.syntax +129 -0
  315. data/share/etc/uv/syntax/source.c++.qt.syntax +26 -0
  316. data/share/etc/uv/syntax/source.c++.syntax +186 -0
  317. data/share/etc/uv/syntax/source.c-sharp.syntax +59 -0
  318. data/share/etc/uv/syntax/source.c.ragel.syntax +201 -0
  319. data/share/etc/uv/syntax/source.c.syntax +414 -0
  320. data/share/etc/uv/syntax/source.camlp4.ocaml.syntax +36 -0
  321. data/share/etc/uv/syntax/source.cm.syntax +32 -0
  322. data/share/etc/uv/syntax/source.coffee.syntax +216 -0
  323. data/share/etc/uv/syntax/source.context-free.syntax +176 -0
  324. data/share/etc/uv/syntax/source.css.beta.syntax +1925 -0
  325. data/share/etc/uv/syntax/source.css.syntax +195 -0
  326. data/share/etc/uv/syntax/source.d.syntax +142 -0
  327. data/share/etc/uv/syntax/source.diff.syntax +81 -0
  328. data/share/etc/uv/syntax/source.dot.syntax +47 -0
  329. data/share/etc/uv/syntax/source.dylan.syntax +62 -0
  330. data/share/etc/uv/syntax/source.eiffel.syntax +78 -0
  331. data/share/etc/uv/syntax/source.erlang.syntax +922 -0
  332. data/share/etc/uv/syntax/source.fortran.syntax +141 -0
  333. data/share/etc/uv/syntax/source.fscript.syntax +80 -0
  334. data/share/etc/uv/syntax/source.fxscript.syntax +142 -0
  335. data/share/etc/uv/syntax/source.gri.syntax +83 -0
  336. data/share/etc/uv/syntax/source.groovy.groovy.syntax +191 -0
  337. data/share/etc/uv/syntax/source.haskell.syntax +88 -0
  338. data/share/etc/uv/syntax/source.icalendar.syntax +32 -0
  339. data/share/etc/uv/syntax/source.inform.syntax +48 -0
  340. data/share/etc/uv/syntax/source.ini.syntax +55 -0
  341. data/share/etc/uv/syntax/source.io.syntax +81 -0
  342. data/share/etc/uv/syntax/source.java-props.syntax +20 -0
  343. data/share/etc/uv/syntax/source.java.syntax +211 -0
  344. data/share/etc/uv/syntax/source.js.greasemonkey.syntax +34 -0
  345. data/share/etc/uv/syntax/source.js.jquery.syntax +114 -0
  346. data/share/etc/uv/syntax/source.js.mootools.syntax +572 -0
  347. data/share/etc/uv/syntax/source.js.prototype.bracketed.syntax +140 -0
  348. data/share/etc/uv/syntax/source.js.prototype.syntax +72 -0
  349. data/share/etc/uv/syntax/source.js.syntax +256 -0
  350. data/share/etc/uv/syntax/source.js.yui.syntax +176 -0
  351. data/share/etc/uv/syntax/source.json.syntax +136 -0
  352. data/share/etc/uv/syntax/source.lex.syntax +219 -0
  353. data/share/etc/uv/syntax/source.lighttpd-config.syntax +54 -0
  354. data/share/etc/uv/syntax/source.lilypond.syntax +492 -0
  355. data/share/etc/uv/syntax/source.lisp.syntax +61 -0
  356. data/share/etc/uv/syntax/source.logo.syntax +29 -0
  357. data/share/etc/uv/syntax/source.logtalk.syntax +152 -0
  358. data/share/etc/uv/syntax/source.lua.syntax +86 -0
  359. data/share/etc/uv/syntax/source.makefile.syntax +36 -0
  360. data/share/etc/uv/syntax/source.matlab.syntax +142 -0
  361. data/share/etc/uv/syntax/source.mel.syntax +92 -0
  362. data/share/etc/uv/syntax/source.mips.syntax +66 -0
  363. data/share/etc/uv/syntax/source.ml.syntax +121 -0
  364. data/share/etc/uv/syntax/source.modula-3.syntax +47 -0
  365. data/share/etc/uv/syntax/source.nant-build.syntax +53 -0
  366. data/share/etc/uv/syntax/source.objc++.syntax +18 -0
  367. data/share/etc/uv/syntax/source.objc.syntax +233 -0
  368. data/share/etc/uv/syntax/source.ocaml.syntax +764 -0
  369. data/share/etc/uv/syntax/source.ocamllex.syntax +167 -0
  370. data/share/etc/uv/syntax/source.ocamlyacc.syntax +184 -0
  371. data/share/etc/uv/syntax/source.open-gl.syntax +14 -0
  372. data/share/etc/uv/syntax/source.pascal.syntax +77 -0
  373. data/share/etc/uv/syntax/source.pascal.vectorscript.syntax +57 -0
  374. data/share/etc/uv/syntax/source.perl.syntax +1113 -0
  375. data/share/etc/uv/syntax/source.php.cake.syntax +55 -0
  376. data/share/etc/uv/syntax/source.plist.tm-grammar.syntax +708 -0
  377. data/share/etc/uv/syntax/source.postscript.syntax +114 -0
  378. data/share/etc/uv/syntax/source.processing.syntax +106 -0
  379. data/share/etc/uv/syntax/source.prolog.syntax +40 -0
  380. data/share/etc/uv/syntax/source.python.django.syntax +21 -0
  381. data/share/etc/uv/syntax/source.python.syntax +868 -0
  382. data/share/etc/uv/syntax/source.qmake.syntax +114 -0
  383. data/share/etc/uv/syntax/source.quake-config.syntax +32 -0
  384. data/share/etc/uv/syntax/source.r-console.syntax +16 -0
  385. data/share/etc/uv/syntax/source.r.syntax +81 -0
  386. data/share/etc/uv/syntax/source.regexp.oniguruma.syntax +107 -0
  387. data/share/etc/uv/syntax/source.regexp.python.syntax +109 -0
  388. data/share/etc/uv/syntax/source.regexp.syntax +50 -0
  389. data/share/etc/uv/syntax/source.remind.syntax +253 -0
  390. data/share/etc/uv/syntax/source.rez.syntax +80 -0
  391. data/share/etc/uv/syntax/source.ruby.experimental.syntax +145 -0
  392. data/share/etc/uv/syntax/source.ruby.rails.syntax +88 -0
  393. data/share/etc/uv/syntax/source.ruby.syntax +1035 -0
  394. data/share/etc/uv/syntax/source.s5.syntax +69 -0
  395. data/share/etc/uv/syntax/source.sass.syntax +45 -0
  396. data/share/etc/uv/syntax/source.scheme.syntax +347 -0
  397. data/share/etc/uv/syntax/source.scilab.syntax +41 -0
  398. data/share/etc/uv/syntax/source.scss.syntax +527 -0
  399. data/share/etc/uv/syntax/source.shell.syntax +384 -0
  400. data/share/etc/uv/syntax/source.slate.syntax +149 -0
  401. data/share/etc/uv/syntax/source.smarty.syntax +63 -0
  402. data/share/etc/uv/syntax/source.sql.ruby.syntax +18 -0
  403. data/share/etc/uv/syntax/source.sql.syntax +237 -0
  404. data/share/etc/uv/syntax/source.ssh-config.syntax +33 -0
  405. data/share/etc/uv/syntax/source.strings.syntax +39 -0
  406. data/share/etc/uv/syntax/source.swig.syntax +57 -0
  407. data/share/etc/uv/syntax/source.tcl.macports.syntax +163 -0
  408. data/share/etc/uv/syntax/source.tcl.syntax +152 -0
  409. data/share/etc/uv/syntax/source.yaml.syntax +160 -0
  410. data/share/etc/uv/syntax/text.active4d-ini.syntax +50 -0
  411. data/share/etc/uv/syntax/text.bbcode.syntax +287 -0
  412. data/share/etc/uv/syntax/text.bibtex.syntax +151 -0
  413. data/share/etc/uv/syntax/text.blog.html.syntax +41 -0
  414. data/share/etc/uv/syntax/text.blog.markdown.syntax +42 -0
  415. data/share/etc/uv/syntax/text.blog.syntax +27 -0
  416. data/share/etc/uv/syntax/text.blog.textile.syntax +27 -0
  417. data/share/etc/uv/syntax/text.dyndoc.syntax +237 -0
  418. data/share/etc/uv/syntax/text.gtdalt.syntax +143 -0
  419. data/share/etc/uv/syntax/text.haml.syntax +88 -0
  420. data/share/etc/uv/syntax/text.html.asp.net.syntax +424 -0
  421. data/share/etc/uv/syntax/text.html.asp.syntax +27 -0
  422. data/share/etc/uv/syntax/text.html.basic.syntax +362 -0
  423. data/share/etc/uv/syntax/text.html.cfm.syntax +119 -0
  424. data/share/etc/uv/syntax/text.html.django.syntax +36 -0
  425. data/share/etc/uv/syntax/text.html.dokuwiki.syntax +204 -0
  426. data/share/etc/uv/syntax/text.html.doxygen.syntax +43 -0
  427. data/share/etc/uv/syntax/text.html.markdown.multimarkdown.syntax +39 -0
  428. data/share/etc/uv/syntax/text.html.mason.syntax +119 -0
  429. data/share/etc/uv/syntax/text.html.mediawiki.syntax +567 -0
  430. data/share/etc/uv/syntax/text.html.mt.syntax +162 -0
  431. data/share/etc/uv/syntax/text.html.ruby.syntax +40 -0
  432. data/share/etc/uv/syntax/text.html.strict.active4d.syntax +311 -0
  433. data/share/etc/uv/syntax/text.html.tcl.syntax +26 -0
  434. data/share/etc/uv/syntax/text.html.textile.syntax +215 -0
  435. data/share/etc/uv/syntax/text.html.tt.syntax +121 -0
  436. data/share/etc/uv/syntax/text.html.twiki.syntax +241 -0
  437. data/share/etc/uv/syntax/text.html.xhtml.1-strict.syntax +4027 -0
  438. data/share/etc/uv/syntax/text.log.latex.syntax +50 -0
  439. data/share/etc/uv/syntax/text.mail.markdown.syntax +118 -0
  440. data/share/etc/uv/syntax/text.man.syntax +17 -0
  441. data/share/etc/uv/syntax/text.moinmoin.syntax +189 -0
  442. data/share/etc/uv/syntax/text.plain.gtd.syntax +22 -0
  443. data/share/etc/uv/syntax/text.plain.release-notes.syntax +46 -0
  444. data/share/etc/uv/syntax/text.plain.syntax +32 -0
  445. data/share/etc/uv/syntax/text.plist.syntax +635 -0
  446. data/share/etc/uv/syntax/text.pmwiki.syntax +113 -0
  447. data/share/etc/uv/syntax/text.restructuredtext.syntax +250 -0
  448. data/share/etc/uv/syntax/text.setext.syntax +147 -0
  449. data/share/etc/uv/syntax/text.subversion-commit.syntax +36 -0
  450. data/share/etc/uv/syntax/text.tabular.csv.syntax +68 -0
  451. data/share/etc/uv/syntax/text.tabular.tsv.syntax +50 -0
  452. data/share/etc/uv/syntax/text.tex.latex.beamer.syntax +41 -0
  453. data/share/etc/uv/syntax/text.tex.latex.haskell.syntax +24 -0
  454. data/share/etc/uv/syntax/text.tex.latex.memoir.syntax +64 -0
  455. data/share/etc/uv/syntax/text.tex.latex.rd.syntax +91 -0
  456. data/share/etc/uv/syntax/text.tex.latex.sweave.syntax +84 -0
  457. data/share/etc/uv/syntax/text.tex.latex.syntax +566 -0
  458. data/share/etc/uv/syntax/text.tex.math.syntax +49 -0
  459. data/share/etc/uv/syntax/text.tex.syntax +86 -0
  460. data/share/etc/uv/syntax/text.txt2tags.syntax +79 -0
  461. data/share/etc/uv/syntax/text.xml.apple-dist.syntax +77 -0
  462. data/share/etc/uv/syntax/text.xml.strict.syntax +92 -0
  463. data/share/etc/uv/syntax/text.xml.syntax +180 -0
  464. data/share/etc/uv/syntax/text.xml.xsl.syntax +60 -0
  465. data/share/etc/uv/uv.rb +161 -0
  466. metadata +465 -1
@@ -0,0 +1,139 @@
1
+ ---
2
+ name: TXT2TAGS
3
+ fileTypes:
4
+ - t2t
5
+ scopeName: source.t2t
6
+ foldingStartMarker: ^[^#]\s*.*:(\s*\[?| &.+)?$
7
+ expressions:
8
+ patt_img : '(\[)([\w_,.+%$#@!?+~/-]+\.(png|PNG|jpe?g|JPE?G|gif|GIF|eps|EPS|bmp|BMP))(\])'
9
+ proto : '(https?|ftp|news|telnet|gopher|wais)://'
10
+ guess : '(www[23]?|ftp)\.'
11
+ login : 'A-Za-z0-9_.-'
12
+ pass : '[^ @]*'
13
+ chars : 'A-Za-z0-9%._/~:,=$@&+-'
14
+ anchor : 'A-Za-z0-9%._-'
15
+ form : 'A-Za-z0-9/%&=+;.,$@*_-'
16
+ punct : '.,;:!?'
17
+ patt_url_login : '([(?#login)]+(:(?#pass))?@)?'
18
+ retxt_url : '\b((?#proto)(?#patt_url_login)|(?#guess))[(?#chars)]+\b/*(\?[(?#form)]+)?(#[(?#anchor)]*)?'
19
+ retxt_url_local : '[(?#chars)]+|[(?#chars)]*(#[(?#anchor)]*)'
20
+ patt_email : '\b[(?#login)]+@([A-Za-z0-9_-]+\.)+[A-Za-z]{2,4}\b(\?[(?#form)]+)?'
21
+ patterns:
22
+ - contentName: markup.other.paragraph
23
+ begin: ^\s*^ *(?!```|"""|%|\t|\+|=|-|:|\s)
24
+ end: ([\n\r])(\s*[\n\r]|\t|"""(?!")|```(?!`)|=|-)
25
+ endCaptures:
26
+ "1": { name: line.blank }
27
+ - contentName: markup.raw.verbatim.block
28
+ begin: ^(```)([ \t]*[\n\r])
29
+ end: ^(```)([ \t]*[\n\r])
30
+ captures:
31
+ "1": { name: keyword.other.marker.verbatim }
32
+ "2": { name: line.blank }
33
+ - contentName: markup.raw.block
34
+ begin: ^(""")\s*$
35
+ end: ^(""")\s*$
36
+ captures:
37
+ "1": { name: keyword.other.marker.raw }
38
+ - name: comment.block
39
+ begin: ^%%%\s*$
40
+ end: ^%%%\s*$
41
+ - match: ^(\t+)(.+?\n)
42
+ captures:
43
+ "1": { name: keyword.other.marker.quote }
44
+ "2": { name: markup.quote.line }
45
+ - match: ((?<!`)```)(?!.*```)([^\n\r]+)([\n\r]\s*[\n\r])
46
+ captures:
47
+ "1": { name: keyword.other.marker.verbatim }
48
+ "2": { name: markup.raw.verbatim.line }
49
+ "3": { name: line.blank }
50
+ - name: markup.raw.raw.line
51
+ match: ^""" (?=\S)
52
+ - match: ((?<!`)``(?!`))(.+?)((?<!`)``(?!`))
53
+ captures:
54
+ "1": { name: keyword.other.marker.verbatim }
55
+ "2": { name: markup.raw.verbatim }
56
+ "3": { name: keyword.other.marker.verbatim }
57
+ - match: ((?<!")""(?!\s))(.+?)((?<!\s)""(?!"))
58
+ captures:
59
+ "1": { name: keyword.other.marker.raw }
60
+ "2": { name: markup.raw.raw }
61
+ "3": { name: keyword.other.marker.raw }
62
+ - match: (?<!\*)(\*\*)(?!\*)([^\n\r]+)(?<!\*)(\*\*)(?!\*)
63
+ captures:
64
+ "1": { name: keyword.other.marker.bold }
65
+ "2": { name: markup.bold }
66
+ "3": { name: keyword.other.marker.bold }
67
+ - match: (?<!/)(//)(?!/)([^\n\r]+)(?<!/)(//)(?!/)
68
+ captures:
69
+ "1": { name: keyword.other.marker.italic }
70
+ "2": { name: markup.italic }
71
+ "3": { name: keyword.other.marker.italic }
72
+ - match: (?<!_)(__)(?!_)([^\n\r]+)(?<!_)(__)(?!_)
73
+ captures:
74
+ "1": { name: keyword.other.marker.underline }
75
+ "2": { name: markup.underline }
76
+ "3": { name: keyword.other.marker.underline }
77
+ - match: ^( *-)( (?=[^ ]).*?[\n\t])
78
+ captures:
79
+ "1": { name: keyword.other.marker.list.unnumbered }
80
+ "2": { name: markup.list.unnumbered }
81
+ - match: ^( *\+) (?=[^ ])(.*?)[\n\t]
82
+ captures:
83
+ "1": { name: keyword.other.marker.list.numbered }
84
+ "2": { name: markup.list.numbered }
85
+ - match: ^( *\:) ([^\s].*?)$
86
+ captures:
87
+ "1": { name: keyword.other.marker.list.definition }
88
+ "2": { name: markup.list.definition.name }
89
+ - name: line.list.close
90
+ match: ^( *)([-+:])\s*$
91
+ - match: ^\s*([_-]{20,})\s*?$
92
+ captures:
93
+ "1": { name: markup.other.bar.thin }
94
+ - match: ^\s*(={20,})\s*?$
95
+ captures:
96
+ "1": { name: markup.other.bar.thick }
97
+ - name: line.table
98
+ match: ^ *\|\|?
99
+ - name: line.blank
100
+ match: (^[ \t]*[\n\r])+
101
+ - name: comment.line
102
+ match: ^%\s*.*?\n
103
+ - match: ^([\t ]*?)(=+(?!=))([^\n\r]+)((?<!=)\2)([\t ]*[\n\r])
104
+ captures:
105
+ "1": { name: other.filler }
106
+ "2": { name: keyword.other.marker.heading.plain }
107
+ "3": { name: markup.heading.plain }
108
+ "4": { name: keyword.other.marker.heading.plain }
109
+ "5": { name: other.filler }
110
+ - match: ^\s*(\++(?!\+))([^\n\r]+)((?<!\+)\1)$
111
+ captures:
112
+ "1": { name: keyword.other.marker.heading.numbered }
113
+ "2": { name: markup.heading.numbered }
114
+ "3": { name: keyword.other.marker.heading.numbered }
115
+ - name: markup.other.email
116
+ match: '(?#patt_email)'
117
+ preprocess: true
118
+ - name: markup.other.link
119
+ match: (?#retxt_url)
120
+ preprocess: true
121
+ - name: meta.link.complex
122
+ match: '(?<open>\[)(?<label>(?#patt_img)|[^]]+)(?<middle> )(?<link>(?#retxt_url)|(?#patt_email)|(?#retxt_url_local))(?<close>\])'
123
+ preprocess: true
124
+ namedCaptures:
125
+ "open" : { name: keyword.other.marker.link }
126
+ "label" : { name: variable.link.label }
127
+ "middle": { name: keyword.other.marker.link }
128
+ "close" : { name: keyword.other.marker.link }
129
+ - match: (?#patt_img)
130
+ preprocess: true
131
+ captures:
132
+ "1": { name: keyword.other.marker.img }
133
+ "2": { name: markup.other.img }
134
+ "4": { name: keyword.other.marker.img }
135
+ - name: markup.other.special
136
+ match: '^%!\s*'
137
+ preprocess: true
138
+ foldingStopMarker: ^\s*$|^\s*\}|^\s*\]|^\s*\)
139
+ keyEquivalent: ^~Y
@@ -0,0 +1,81 @@
1
+ ---
2
+ name: R
3
+ fileTypes:
4
+ - R
5
+ - r
6
+ - s
7
+ - S
8
+ - Rprofile
9
+ scopeName: source.r
10
+ uuid: B2E6B78D-6E70-11D9-A369-000D93B3A10E
11
+ foldingStartMarker: (\(\s*$|\{\s*$)
12
+ patterns:
13
+ - name: comment.line.number-sign.r
14
+ captures:
15
+ "1":
16
+ name: punctuation.definition.comment.r
17
+ match: (#).*$\n?
18
+ - name: storage.type.r
19
+ match: \b(logical|numeric|character|complex|matrix|array|data\.frame|list|factor)(?=\s*\()
20
+ - name: keyword.control.r
21
+ match: \b(function|if|break|next|repeat|else|for|return|switch|while|in|invisible)\b
22
+ - name: constant.numeric.r
23
+ match: \b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?\b
24
+ - name: constant.language.r
25
+ match: \b(TRUE|FALSE|NULL|NA|Inf|NaN)\b
26
+ - name: support.constant.misc.r
27
+ match: \b(pi|letters|LETTERS|month\.abb|month\.name)\b
28
+ - name: keyword.operator.arithmetic.r
29
+ match: (\-|\+|\*|\/|%\/%|%%|%\*%|%in%|%o%|%x%|\^)
30
+ - name: keyword.operator.assignment.r
31
+ match: (=|<-|<<-|->|->>)
32
+ - name: keyword.operator.comparison.r
33
+ match: (==|!=|<>|<|>|<=|>=)
34
+ - name: keyword.operator.logical.r
35
+ match: (!|&{1,2}|[|]{1,2})
36
+ - name: keyword.other.r
37
+ match: (\.\.\.|\$|:|\~)
38
+ - name: string.quoted.double.r
39
+ endCaptures:
40
+ "0":
41
+ name: punctuation.definition.string.end.r
42
+ begin: "\""
43
+ beginCaptures:
44
+ "0":
45
+ name: punctuation.definition.string.begin.r
46
+ end: "\""
47
+ patterns:
48
+ - name: constant.character.escape.r
49
+ match: \\.
50
+ - name: string.quoted.single.r
51
+ endCaptures:
52
+ "0":
53
+ name: punctuation.definition.string.end.r
54
+ begin: "'"
55
+ beginCaptures:
56
+ "0":
57
+ name: punctuation.definition.string.begin.r
58
+ end: "'"
59
+ patterns:
60
+ - name: constant.character.escape.r
61
+ match: \\.
62
+ - name: meta.function.r
63
+ captures:
64
+ "1":
65
+ name: entity.name.function.r
66
+ "2":
67
+ name: keyword.operator.assignment.r
68
+ "3":
69
+ name: keyword.control.r
70
+ match: ([a-zA-Z._][a-zA-Z0-9._]*)\s*(<-)\s*(function)
71
+ - match: ([a-zA-Z._][a-zA-Z0-9._]*)\s*\(
72
+ - captures:
73
+ "1":
74
+ name: variable.parameter.r
75
+ "2":
76
+ name: keyword.operator.assignment.r
77
+ match: ([a-zA-Z._][a-zA-Z0-9._]*)\s*(=)(?=[^=])
78
+ - name: variable.other.r
79
+ match: \b([a-zA-Z._][a-zA-Z0-9._]*)\b
80
+ foldingStopMarker: (^\s*\)|^\s*\})
81
+ keyEquivalent: ^~R
@@ -0,0 +1,1035 @@
1
+ ---
2
+ name: Ruby
3
+ fileTypes:
4
+ - rb
5
+ - rbx
6
+ - rjs
7
+ - Rakefile
8
+ - rake
9
+ - cgi
10
+ - fcgi
11
+ - gemspec
12
+ firstLineMatch: ^#!/.*\bruby\b
13
+ scopeName: source.ruby
14
+ repository:
15
+ nest_brackets:
16
+ captures:
17
+ "0":
18
+ name: punctuation.section.scope.ruby
19
+ begin: \[
20
+ end: \]
21
+ patterns:
22
+ - include: "#nest_brackets"
23
+ interpolated_ruby:
24
+ patterns:
25
+ - name: source.ruby.embedded.source
26
+ captures:
27
+ "0":
28
+ name: punctuation.section.embedded.ruby
29
+ "1":
30
+ name: source.ruby.embedded.source.empty
31
+ match: "#\\{(\\})"
32
+ - name: source.ruby.embedded.source
33
+ captures:
34
+ "0":
35
+ name: punctuation.section.embedded.ruby
36
+ begin: "#\\{"
37
+ end: \}
38
+ patterns:
39
+ - include: "#nest_curly_and_self"
40
+ - include: $self
41
+ - name: variable.other.readwrite.instance.ruby
42
+ captures:
43
+ "1":
44
+ name: punctuation.definition.variable.ruby
45
+ match: (#@)[a-zA-Z_]\w*
46
+ - name: variable.other.readwrite.class.ruby
47
+ captures:
48
+ "1":
49
+ name: punctuation.definition.variable.ruby
50
+ match: (#@@)[a-zA-Z_]\w*
51
+ - name: variable.other.readwrite.global.ruby
52
+ captures:
53
+ "1":
54
+ name: punctuation.definition.variable.ruby
55
+ match: (#\$)[a-zA-Z_]\w*
56
+ escaped_char:
57
+ name: constant.character.escape.ruby
58
+ match: \\(?:0\d{1,2}|x[\da-fA-F]{1,2}|.)
59
+ regex_sub:
60
+ patterns:
61
+ - include: "#interpolated_ruby"
62
+ - include: "#escaped_char"
63
+ - name: string.regexp.arbitrary-repitition.ruby
64
+ captures:
65
+ "1":
66
+ name: punctuation.definition.arbitrary-repitition.ruby
67
+ "3":
68
+ name: punctuation.definition.arbitrary-repitition.ruby
69
+ match: (\{)\d+(,\d+)?(\})
70
+ - name: string.regexp.character-class.ruby
71
+ captures:
72
+ "0":
73
+ name: punctuation.definition.character-class.ruby
74
+ begin: \[(?:\^?\])?
75
+ end: \]
76
+ patterns:
77
+ - include: "#escaped_char"
78
+ - name: string.regexp.group.ruby
79
+ captures:
80
+ "0":
81
+ name: punctuation.definition.group.ruby
82
+ begin: \(
83
+ end: \)
84
+ patterns:
85
+ - include: "#regex_sub"
86
+ - name: comment.line.number-sign.ruby
87
+ captures:
88
+ "1":
89
+ name: punctuation.definition.comment.ruby
90
+ match: (?<=^|\s)(#)\s[[a-zA-Z0-9,. \t?!-][^\x00-\x7F]]*$
91
+ comment: We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.
92
+ heredoc:
93
+ begin: ^<<-?\w+
94
+ end: $
95
+ patterns:
96
+ - include: $base
97
+ nest_parens_r:
98
+ captures:
99
+ "0":
100
+ name: punctuation.section.scope.ruby
101
+ begin: \(
102
+ end: \)
103
+ patterns:
104
+ - include: "#regex_sub"
105
+ - include: "#nest_parens_r"
106
+ nest_curly_r:
107
+ captures:
108
+ "0":
109
+ name: punctuation.section.scope.ruby
110
+ begin: \{
111
+ end: \}
112
+ patterns:
113
+ - include: "#regex_sub"
114
+ - include: "#nest_curly_r"
115
+ nest_parens_i:
116
+ captures:
117
+ "0":
118
+ name: punctuation.section.scope.ruby
119
+ begin: \(
120
+ end: \)
121
+ patterns:
122
+ - include: "#interpolated_ruby"
123
+ - include: "#escaped_char"
124
+ - include: "#nest_parens_i"
125
+ nest_ltgt_r:
126
+ captures:
127
+ "0":
128
+ name: punctuation.section.scope.ruby
129
+ begin: \<
130
+ end: \>
131
+ patterns:
132
+ - include: "#regex_sub"
133
+ - include: "#nest_ltgt_r"
134
+ nest_curly_i:
135
+ captures:
136
+ "0":
137
+ name: punctuation.section.scope.ruby
138
+ begin: \{
139
+ end: \}
140
+ patterns:
141
+ - include: "#interpolated_ruby"
142
+ - include: "#escaped_char"
143
+ - include: "#nest_curly_i"
144
+ nest_ltgt_i:
145
+ captures:
146
+ "0":
147
+ name: punctuation.section.scope.ruby
148
+ begin: \<
149
+ end: \>
150
+ patterns:
151
+ - include: "#interpolated_ruby"
152
+ - include: "#escaped_char"
153
+ - include: "#nest_ltgt_i"
154
+ nest_ltgt:
155
+ captures:
156
+ "0":
157
+ name: punctuation.section.scope.ruby
158
+ begin: \<
159
+ end: \>
160
+ patterns:
161
+ - include: "#nest_ltgt"
162
+ nest_curly_and_self:
163
+ patterns:
164
+ - captures:
165
+ "0":
166
+ name: punctuation.section.scope.ruby
167
+ begin: \{
168
+ end: \}
169
+ patterns:
170
+ - include: "#nest_curly_and_self"
171
+ - include: $self
172
+ nest_parens:
173
+ captures:
174
+ "0":
175
+ name: punctuation.section.scope.ruby
176
+ begin: \(
177
+ end: \)
178
+ patterns:
179
+ - include: "#nest_parens"
180
+ nest_brackets_r:
181
+ captures:
182
+ "0":
183
+ name: punctuation.section.scope.ruby
184
+ begin: \[
185
+ end: \]
186
+ patterns:
187
+ - include: "#regex_sub"
188
+ - include: "#nest_brackets_r"
189
+ nest_curly:
190
+ captures:
191
+ "0":
192
+ name: punctuation.section.scope.ruby
193
+ begin: \{
194
+ end: \}
195
+ patterns:
196
+ - include: "#nest_curly"
197
+ nest_brackets_i:
198
+ captures:
199
+ "0":
200
+ name: punctuation.section.scope.ruby
201
+ begin: \[
202
+ end: \]
203
+ patterns:
204
+ - include: "#interpolated_ruby"
205
+ - include: "#escaped_char"
206
+ - include: "#nest_brackets_i"
207
+ uuid: E00B62AC-6B1C-11D9-9B1F-000D93589AF6
208
+ foldingStartMarker: "(?x)^\n\
209
+ \t (\\s*+\n\
210
+ \t (module|class|def\n\
211
+ \t |unless|if\n\
212
+ \t |case\n\
213
+ \t |begin\n\
214
+ \t |for|while|until\n\
215
+ \t\t\t |^=begin\n\
216
+ \t |( \"(\\\\.|[^\"])*+\" # eat a double quoted string\n\
217
+ \t | '(\\\\.|[^'])*+' # eat a single quoted string\n\
218
+ \t | [^#\"'] # eat all but comments and strings\n\
219
+ \t )*\n\
220
+ \t ( \\s (do|begin|case)\n\
221
+ \t | (?<!\\$)[-+=&|*/~%^<>~] \\s*+ (if|unless)\n\
222
+ \t )\n\
223
+ \t )\\b\n\
224
+ \t (?! [^;]*+ ; .*? \\bend\\b )\n\
225
+ \t |( \"(\\\\.|[^\"])*+\" # eat a double quoted string\n\
226
+ \t | '(\\\\.|[^'])*+' # eat a single quoted string\n\
227
+ \t | [^#\"'] # eat all but comments and strings\n\
228
+ \t )*\n\
229
+ \t ( \\{ (?! [^}]*+ \\} )\n\
230
+ \t | \\[ (?! [^\\]]*+ \\] )\n\
231
+ \t )\n\
232
+ \t ).*$\n\
233
+ \t| [#] .*? \\(fold\\) \\s*+ $ # Sune\xE2\x80\x99s special marker\n\
234
+ \t"
235
+ patterns:
236
+ - name: meta.class.ruby
237
+ captures:
238
+ "6":
239
+ name: variable.other.object.ruby
240
+ "7":
241
+ name: punctuation.definition.variable.ruby
242
+ "1":
243
+ name: keyword.control.class.ruby
244
+ "2":
245
+ name: entity.name.type.class.ruby
246
+ "4":
247
+ name: entity.other.inherited-class.ruby
248
+ "5":
249
+ name: punctuation.separator.inheritance.ruby
250
+ match: ^\s*(class)\s+(([.a-zA-Z0-9_:]+(\s*(<)\s*[.a-zA-Z0-9_:]+)?)|((<<)\s*[.a-zA-Z0-9_:]+))
251
+ - name: meta.module.ruby
252
+ captures:
253
+ "6":
254
+ name: punctuation.separator.inheritance.ruby
255
+ "7":
256
+ name: entity.other.inherited-class.module.third.ruby
257
+ "8":
258
+ name: punctuation.separator.inheritance.ruby
259
+ "1":
260
+ name: keyword.control.module.ruby
261
+ "2":
262
+ name: entity.name.type.module.ruby
263
+ "3":
264
+ name: entity.other.inherited-class.module.first.ruby
265
+ "4":
266
+ name: punctuation.separator.inheritance.ruby
267
+ "5":
268
+ name: entity.other.inherited-class.module.second.ruby
269
+ match: ^\s*(module)\s+(([A-Z]\w*(::))?([A-Z]\w*(::))?([A-Z]\w*(::))*[A-Z]\w*)
270
+ - name: invalid.deprecated.ruby
271
+ match: (?<!\.)\belse(\s)+if\b
272
+ comment: "else if is a common mistake carried over from other languages. it works if you put in a second end, but it\xE2\x80\x99s never what you want."
273
+ - name: keyword.control.ruby
274
+ match: (?<!\.)\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\b(?![?!])
275
+ comment: everything being a reserved word, not a value and needing a 'end' is a..
276
+ - name: keyword.control.ruby.start-block
277
+ match: (?<!\.)\bdo\b\s*
278
+ comment: contextual smart pair support for block parameters
279
+ - name: meta.syntax.ruby.start-block
280
+ match: (?<=\{)(\s+)
281
+ comment: contextual smart pair support
282
+ - name: keyword.operator.logical.ruby
283
+ match: (?<!\.)\b(and|not|or)\b
284
+ comment: " as above, just doesn't need a 'end' and does a logic operation"
285
+ - name: keyword.control.pseudo-method.ruby
286
+ match: (?<!\.)\b(alias|alias_method|break|next|redo|retry|return|super|undef|yield)\b(?![?!])|\bdefined\?|\bblock_given\?
287
+ comment: " just as above but being not a logical operation"
288
+ - name: constant.language.ruby
289
+ match: \b(nil|true|false)\b(?![?!])
290
+ - name: variable.language.ruby
291
+ match: \b(__(FILE|LINE)__|self)\b(?![?!])
292
+ - name: keyword.other.special-method.ruby
293
+ match: \b(initialize|new|loop|include|extend|raise|attr_reader|attr_writer|attr_accessor|attr|catch|throw|private|module_function|public|protected)\b(?![?!])
294
+ comment: " everything being a method but having a special function is a.."
295
+ - name: meta.require.ruby
296
+ captures:
297
+ "1":
298
+ name: keyword.other.special-method.ruby
299
+ begin: \b(require)\b
300
+ end: $|(?=#)
301
+ patterns:
302
+ - include: $base
303
+ - name: variable.other.readwrite.instance.ruby
304
+ captures:
305
+ "1":
306
+ name: punctuation.definition.variable.ruby
307
+ match: (@)[a-zA-Z_]\w*
308
+ - name: variable.other.readwrite.class.ruby
309
+ captures:
310
+ "1":
311
+ name: punctuation.definition.variable.ruby
312
+ match: (@@)[a-zA-Z_]\w*
313
+ - name: variable.other.readwrite.global.ruby
314
+ captures:
315
+ "1":
316
+ name: punctuation.definition.variable.ruby
317
+ match: (\$)[a-zA-Z_]\w*
318
+ - name: variable.other.readwrite.global.pre-defined.ruby
319
+ captures:
320
+ "1":
321
+ name: punctuation.definition.variable.ruby
322
+ match: (\$)(!|@|&|`|'|\+|\d|~|=|/|\\|,|;|\.|<|>|_|\*|\$|\?|:|"|-[0adFiIlpv])
323
+ - name: support.class.ruby
324
+ match: \b[A-Z][a-z]\w*(?=((\.|::)[A-Za-z]|\[))
325
+ - name: meta.environment-variable.ruby
326
+ begin: \b(ENV)\[
327
+ beginCaptures:
328
+ "1":
329
+ name: variable.other.constant.ruby
330
+ end: \]
331
+ patterns:
332
+ - include: $self
333
+ - name: variable.other.constant.ruby
334
+ match: \b[A-Z]\w*\b
335
+ - name: meta.function.method.with-arguments.ruby
336
+ endCaptures:
337
+ "0":
338
+ name: punctuation.definition.parameters.ruby
339
+ begin: (?<=^|\s)\b(def)\b\s+((?>[a-zA-Z_]\w*(?>\.|::))?(?>[a-zA-Z_]\w*(?>[?!]|=(?!>))?|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\]=?))\s*(\()
340
+ contentName: variable.parameter.function.ruby
341
+ beginCaptures:
342
+ "1":
343
+ name: keyword.control.def.ruby
344
+ "2":
345
+ name: entity.name.function.ruby
346
+ "3":
347
+ name: punctuation.definition.parameters.ruby
348
+ end: \)
349
+ patterns:
350
+ - include: $base
351
+ comment: " the method pattern comes from the symbol pattern, see there for a explaination"
352
+ - name: meta.function.method.without-arguments.ruby
353
+ captures:
354
+ "1":
355
+ name: keyword.control.def.ruby
356
+ "3":
357
+ name: entity.name.function.ruby
358
+ match: (?<=^|\s)(def)\b(\s+((?>[a-zA-Z_]\w*(?>\.|::))?(?>[a-zA-Z_]\w*(?>[?!]|=(?!>))?|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\]=?)))?
359
+ comment: " the optional name is just to catch the def also without a method-name"
360
+ - name: constant.numeric.ruby
361
+ match: \b(0[xX]\h(?>_?\h)*|\d(?>_?\d)*(\.(?![^[:space:][:digit:]])(?>_?\d)*)?([eE][-+]?\d(?>_?\d)*)?|0[bB][01]+)\b
362
+ - name: constant.other.symbol.single-quoted.ruby
363
+ captures:
364
+ "0":
365
+ name: punctuation.definition.constant.ruby
366
+ begin: ":'"
367
+ end: "'"
368
+ patterns:
369
+ - name: constant.character.escape.ruby
370
+ match: \\['\\]
371
+ - name: constant.other.symbol.double-quoted.ruby
372
+ captures:
373
+ "0":
374
+ name: punctuation.definition.constant.ruby
375
+ begin: ":\""
376
+ end: "\""
377
+ patterns:
378
+ - include: "#interpolated_ruby"
379
+ - include: "#escaped_char"
380
+ - name: string.quoted.single.ruby
381
+ endCaptures:
382
+ "0":
383
+ name: punctuation.definition.string.end.ruby
384
+ begin: "'"
385
+ beginCaptures:
386
+ "0":
387
+ name: punctuation.definition.string.begin.ruby
388
+ end: "'"
389
+ patterns:
390
+ - name: constant.character.escape.ruby
391
+ match: \\'|\\\\
392
+ comment: single quoted string (does not allow interpolation)
393
+ - name: string.quoted.double.ruby
394
+ endCaptures:
395
+ "0":
396
+ name: punctuation.definition.string.end.ruby
397
+ begin: "\""
398
+ beginCaptures:
399
+ "0":
400
+ name: punctuation.definition.string.begin.ruby
401
+ end: "\""
402
+ patterns:
403
+ - include: "#interpolated_ruby"
404
+ - include: "#escaped_char"
405
+ comment: double quoted string (allows for interpolation)
406
+ - name: string.interpolated.ruby
407
+ endCaptures:
408
+ "0":
409
+ name: punctuation.definition.string.end.ruby
410
+ begin: "`"
411
+ beginCaptures:
412
+ "0":
413
+ name: punctuation.definition.string.begin.ruby
414
+ end: "`"
415
+ patterns:
416
+ - include: "#interpolated_ruby"
417
+ - include: "#escaped_char"
418
+ comment: execute string (allows for interpolation)
419
+ - name: string.interpolated.ruby
420
+ endCaptures:
421
+ "0":
422
+ name: punctuation.definition.string.end.ruby
423
+ begin: "%x\\{"
424
+ beginCaptures:
425
+ "0":
426
+ name: punctuation.definition.string.begin.ruby
427
+ end: \}
428
+ patterns:
429
+ - include: "#interpolated_ruby"
430
+ - include: "#escaped_char"
431
+ - include: "#nest_curly_i"
432
+ comment: execute string (allow for interpolation)
433
+ - name: string.interpolated.ruby
434
+ endCaptures:
435
+ "0":
436
+ name: punctuation.definition.string.end.ruby
437
+ begin: "%x\\["
438
+ beginCaptures:
439
+ "0":
440
+ name: punctuation.definition.string.begin.ruby
441
+ end: \]
442
+ patterns:
443
+ - include: "#interpolated_ruby"
444
+ - include: "#escaped_char"
445
+ - include: "#nest_brackets_i"
446
+ comment: execute string (allow for interpolation)
447
+ - name: string.interpolated.ruby
448
+ endCaptures:
449
+ "0":
450
+ name: punctuation.definition.string.end.ruby
451
+ begin: "%x\\<"
452
+ beginCaptures:
453
+ "0":
454
+ name: punctuation.definition.string.begin.ruby
455
+ end: \>
456
+ patterns:
457
+ - include: "#interpolated_ruby"
458
+ - include: "#escaped_char"
459
+ - include: "#nest_ltgt_i"
460
+ comment: execute string (allow for interpolation)
461
+ - name: string.interpolated.ruby
462
+ endCaptures:
463
+ "0":
464
+ name: punctuation.definition.string.end.ruby
465
+ begin: "%x\\("
466
+ beginCaptures:
467
+ "0":
468
+ name: punctuation.definition.string.begin.ruby
469
+ end: \)
470
+ patterns:
471
+ - include: "#interpolated_ruby"
472
+ - include: "#escaped_char"
473
+ - include: "#nest_parens_i"
474
+ comment: execute string (allow for interpolation)
475
+ - name: string.interpolated.ruby
476
+ endCaptures:
477
+ "0":
478
+ name: punctuation.definition.string.end.ruby
479
+ begin: "%x([^\\w])"
480
+ beginCaptures:
481
+ "0":
482
+ name: punctuation.definition.string.begin.ruby
483
+ end: \1
484
+ patterns:
485
+ - include: "#interpolated_ruby"
486
+ - include: "#escaped_char"
487
+ comment: execute string (allow for interpolation)
488
+ - captures:
489
+ "1":
490
+ name: string.regexp.classic.ruby
491
+ "2":
492
+ name: punctuation.definition.string.ruby
493
+ begin: "(?x)\n\
494
+ \t\t\t (?:\n\
495
+ \t\t\t ^ # beginning of line\n\
496
+ \t\t\t | (?<= # or look-behind on:\n\
497
+ \t\t\t [=>~(?:\\[,|&]\n\
498
+ \t\t\t | (?:\\s|;)when\\s\n\
499
+ \t\t\t | (?:\\s|;)or\\s\n\
500
+ \t\t\t | (?:\\s|;)and\\s\n\
501
+ \t\t\t | (?:\\s|;|\\.)index\\s\n\
502
+ \t\t\t | (?:\\s|;|\\.)scan\\s\n\
503
+ \t\t\t | (?:\\s|;|\\.)sub\\s\n\
504
+ \t\t\t | (?:\\s|l|\\.)sub!\\s\n\
505
+ \t\t\t | (?:\\s|;|\\.)gsub\\s\n\
506
+ \t\t\t | (?:\\s|;|\\.)gsub!\\s\n\
507
+ \t\t\t | (?:\\s|;|\\.)match\\s\n\
508
+ \t\t\t | (?:\\s|;)if\\s\n\
509
+ \t\t\t | (?:\\s|;)elsif\\s\n\
510
+ \t\t\t | (?:\\s|;)while\\s\n\
511
+ \t\t\t | (?:\\s|;)unless\\s\n\
512
+ \t\t\t )\n\
513
+ \t\t\t | (?<= # or a look-behind with line anchor:\n\
514
+ \t\t\t ^when\\s # duplication necessary due to limits of regex\n\
515
+ \t\t\t | ^index\\s\n\
516
+ \t\t\t | ^scan\\s\n\
517
+ \t\t\t | ^sub\\s\n\
518
+ \t\t\t | ^gsub\\s\n\
519
+ \t\t\t | ^sub!\\s\n\
520
+ \t\t\t | ^gsub!\\s\n\
521
+ \t\t\t | ^match\\s\n\
522
+ \t\t\t | ^if\\s\n\
523
+ \t\t\t | ^elsif\\s\n\
524
+ \t\t\t | ^while\\s\n\
525
+ \t\t\t | ^unless\\s\n\
526
+ \t\t\t )\n\
527
+ \t\t\t )\n\
528
+ \t\t\t \\s*((/))(?![*+{}?])\n\
529
+ \t\t\t"
530
+ contentName: string.regexp.classic.ruby
531
+ end: ((/[eimnosux]*))
532
+ patterns:
533
+ - include: "#regex_sub"
534
+ comment: "regular expressions (normal)\n\
535
+ \t\t\twe only start a regexp if the character before it (excluding whitespace)\n\
536
+ \t\t\tis what we think is before a regexp\n\
537
+ \t\t\t"
538
+ - name: string.regexp.mod-r.ruby
539
+ endCaptures:
540
+ "0":
541
+ name: punctuation.definition.string.end.ruby
542
+ begin: "%r\\{"
543
+ beginCaptures:
544
+ "0":
545
+ name: punctuation.definition.string.begin.ruby
546
+ end: \}[eimnosux]*
547
+ patterns:
548
+ - include: "#regex_sub"
549
+ - include: "#nest_curly_r"
550
+ comment: regular expressions (literal)
551
+ - name: string.regexp.mod-r.ruby
552
+ endCaptures:
553
+ "0":
554
+ name: punctuation.definition.string.end.ruby
555
+ begin: "%r\\["
556
+ beginCaptures:
557
+ "0":
558
+ name: punctuation.definition.string.begin.ruby
559
+ end: \][eimnosux]*
560
+ patterns:
561
+ - include: "#regex_sub"
562
+ - include: "#nest_brackets_r"
563
+ comment: regular expressions (literal)
564
+ - name: string.regexp.mod-r.ruby
565
+ endCaptures:
566
+ "0":
567
+ name: punctuation.definition.string.end.ruby
568
+ begin: "%r\\("
569
+ beginCaptures:
570
+ "0":
571
+ name: punctuation.definition.string.begin.ruby
572
+ end: \)[eimnosux]*
573
+ patterns:
574
+ - include: "#regex_sub"
575
+ - include: "#nest_parens_r"
576
+ comment: regular expressions (literal)
577
+ - name: string.regexp.mod-r.ruby
578
+ endCaptures:
579
+ "0":
580
+ name: punctuation.definition.string.end.ruby
581
+ begin: "%r\\<"
582
+ beginCaptures:
583
+ "0":
584
+ name: punctuation.definition.string.begin.ruby
585
+ end: \>[eimnosux]*
586
+ patterns:
587
+ - include: "#regex_sub"
588
+ - include: "#nest_ltgt_r"
589
+ comment: regular expressions (literal)
590
+ - name: string.regexp.mod-r.ruby
591
+ endCaptures:
592
+ "0":
593
+ name: punctuation.definition.string.end.ruby
594
+ begin: "%r([^\\w])"
595
+ beginCaptures:
596
+ "0":
597
+ name: punctuation.definition.string.begin.ruby
598
+ end: \1[eimnosux]*
599
+ patterns:
600
+ - include: "#regex_sub"
601
+ comment: regular expressions (literal)
602
+ - name: string.quoted.other.literal.upper.ruby
603
+ endCaptures:
604
+ "0":
605
+ name: punctuation.definition.string.end.ruby
606
+ begin: "%[QWSR]?\\("
607
+ beginCaptures:
608
+ "0":
609
+ name: punctuation.definition.string.begin.ruby
610
+ end: \)
611
+ patterns:
612
+ - include: "#interpolated_ruby"
613
+ - include: "#escaped_char"
614
+ - include: "#nest_parens_i"
615
+ comment: literal capable of interpolation ()
616
+ - name: string.quoted.other.literal.upper.ruby
617
+ endCaptures:
618
+ "0":
619
+ name: punctuation.definition.string.end.ruby
620
+ begin: "%[QWSR]?\\["
621
+ beginCaptures:
622
+ "0":
623
+ name: punctuation.definition.string.begin.ruby
624
+ end: \]
625
+ patterns:
626
+ - include: "#interpolated_ruby"
627
+ - include: "#escaped_char"
628
+ - include: "#nest_brackets_i"
629
+ comment: literal capable of interpolation []
630
+ - name: string.quoted.other.literal.upper.ruby
631
+ endCaptures:
632
+ "0":
633
+ name: punctuation.definition.string.end.ruby
634
+ begin: "%[QWSR]?\\<"
635
+ beginCaptures:
636
+ "0":
637
+ name: punctuation.definition.string.begin.ruby
638
+ end: \>
639
+ patterns:
640
+ - include: "#interpolated_ruby"
641
+ - include: "#escaped_char"
642
+ - include: "#nest_ltgt_i"
643
+ comment: literal capable of interpolation <>
644
+ - name: string.quoted.double.ruby.mod
645
+ endCaptures:
646
+ "0":
647
+ name: punctuation.definition.string.end.ruby
648
+ begin: "%[QWSR]?\\{"
649
+ beginCaptures:
650
+ "0":
651
+ name: punctuation.definition.string.begin.ruby
652
+ end: \}
653
+ patterns:
654
+ - include: "#interpolated_ruby"
655
+ - include: "#escaped_char"
656
+ - include: "#nest_curly_i"
657
+ comment: literal capable of interpolation -- {}
658
+ - name: string.quoted.other.literal.upper.ruby
659
+ endCaptures:
660
+ "0":
661
+ name: punctuation.definition.string.end.ruby
662
+ begin: "%[QWSR]([^\\w])"
663
+ beginCaptures:
664
+ "0":
665
+ name: punctuation.definition.string.begin.ruby
666
+ end: \1
667
+ patterns:
668
+ - include: "#interpolated_ruby"
669
+ - include: "#escaped_char"
670
+ comment: literal capable of interpolation -- wildcard
671
+ - name: string.quoted.other.literal.other.ruby
672
+ endCaptures:
673
+ "0":
674
+ name: punctuation.definition.string.end.ruby
675
+ begin: "%([^\\w\\s=])"
676
+ beginCaptures:
677
+ "0":
678
+ name: punctuation.definition.string.begin.ruby
679
+ end: \1
680
+ patterns:
681
+ - include: "#interpolated_ruby"
682
+ - include: "#escaped_char"
683
+ comment: literal capable of interpolation -- wildcard
684
+ - name: string.quoted.other.literal.lower.ruby
685
+ endCaptures:
686
+ "0":
687
+ name: punctuation.definition.string.end.ruby
688
+ begin: "%[qws]\\("
689
+ beginCaptures:
690
+ "0":
691
+ name: punctuation.definition.string.begin.ruby
692
+ end: \)
693
+ patterns:
694
+ - name: constant.character.escape.ruby
695
+ match: \\\)|\\\\
696
+ - include: "#nest_parens"
697
+ comment: literal incapable of interpolation -- ()
698
+ - name: string.quoted.other.literal.lower.ruby
699
+ endCaptures:
700
+ "0":
701
+ name: punctuation.definition.string.end.ruby
702
+ begin: "%[qws]\\<"
703
+ beginCaptures:
704
+ "0":
705
+ name: punctuation.definition.string.begin.ruby
706
+ end: \>
707
+ patterns:
708
+ - name: constant.character.escape.ruby
709
+ match: \\\>|\\\\
710
+ - include: "#nest_ltgt"
711
+ comment: literal incapable of interpolation -- <>
712
+ - name: string.quoted.other.literal.lower.ruby
713
+ endCaptures:
714
+ "0":
715
+ name: punctuation.definition.string.end.ruby
716
+ begin: "%[qws]\\["
717
+ beginCaptures:
718
+ "0":
719
+ name: punctuation.definition.string.begin.ruby
720
+ end: \]
721
+ patterns:
722
+ - name: constant.character.escape.ruby
723
+ match: \\\]|\\\\
724
+ - include: "#nest_brackets"
725
+ comment: literal incapable of interpolation -- []
726
+ - name: string.quoted.other.literal.lower.ruby
727
+ endCaptures:
728
+ "0":
729
+ name: punctuation.definition.string.end.ruby
730
+ begin: "%[qws]\\{"
731
+ beginCaptures:
732
+ "0":
733
+ name: punctuation.definition.string.begin.ruby
734
+ end: \}
735
+ patterns:
736
+ - name: constant.character.escape.ruby
737
+ match: \\\}|\\\\
738
+ - include: "#nest_curly"
739
+ comment: literal incapable of interpolation -- {}
740
+ - name: string.quoted.other.literal.lower.ruby
741
+ endCaptures:
742
+ "0":
743
+ name: punctuation.definition.string.end.ruby
744
+ begin: "%[qws]([^\\w])"
745
+ beginCaptures:
746
+ "0":
747
+ name: punctuation.definition.string.begin.ruby
748
+ end: \1
749
+ patterns:
750
+ - match: \\.
751
+ comment: Cant be named because its not neccesarily an escape.
752
+ comment: literal incapable of interpolation -- wildcard
753
+ - name: constant.other.symbol.ruby
754
+ captures:
755
+ "1":
756
+ name: punctuation.definition.constant.ruby
757
+ match: (?<!:)(:)(?>[a-zA-Z_]\w*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<[<=]?|<=>|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\]=?|@@?[a-zA-Z_]\w*)
758
+ comment: symbols
759
+ - name: comment.block.documentation.ruby
760
+ captures:
761
+ "0":
762
+ name: punctuation.definition.comment.ruby
763
+ begin: ^=begin
764
+ end: ^=end
765
+ comment: multiline comments
766
+ - name: comment.line.number-sign.ruby
767
+ captures:
768
+ "1":
769
+ name: punctuation.definition.comment.ruby
770
+ match: (?:^[ \t]+)?(#).*$\n?
771
+ - name: constant.numeric.ruby
772
+ match: (?<!\w)\?(\\(x\h{1,2}(?!\h)\b|0[0-7]{0,2}(?![0-7])\b|[^x0MC])|(\\[MC]-)+\w|[^\s\\])
773
+ comment: "\n\
774
+ \t\t\tmatches questionmark-letters.\n\n\
775
+ \t\t\texamples (1st alternation = hex):\n\
776
+ \t\t\t?\\x1 ?\\x61\n\n\
777
+ \t\t\texamples (2nd alternation = octal):\n\
778
+ \t\t\t?\\0 ?\\07 ?\\017\n\n\
779
+ \t\t\texamples (3rd alternation = escaped):\n\
780
+ \t\t\t?\\n ?\\b\n\n\
781
+ \t\t\texamples (4th alternation = meta-ctrl):\n\
782
+ \t\t\t?\\C-a ?\\M-a ?\\C-\\M-\\C-\\M-a\n\n\
783
+ \t\t\texamples (4th alternation = normal):\n\
784
+ \t\t\t?a ?A ?0 \n\
785
+ \t\t\t?* ?\" ?( \n\
786
+ \t\t\t?. ?#\n\
787
+ \t\t\t\n\
788
+ \t\t\t\n\
789
+ \t\t\tthe negative lookbehind prevents against matching\n\
790
+ \t\t\tp(42.tainted?)\n\
791
+ \t\t\t"
792
+ - captures:
793
+ "0":
794
+ name: string.unquoted.program-block.ruby
795
+ begin: ^__END__\n
796
+ contentName: text.plain
797
+ end: (?=not)impossible
798
+ patterns:
799
+ - name: text.html.embedded.ruby
800
+ begin: (?=<?xml|<(?i:html\b)|!DOCTYPE (?i:html\b))
801
+ end: (?=not)impossible
802
+ patterns:
803
+ - include: text.html.basic
804
+ comment: __END__ marker
805
+ - name: string.unquoted.heredoc.ruby
806
+ endCaptures:
807
+ "0":
808
+ name: punctuation.definition.string.end.ruby
809
+ begin: (?>\=\s*<<(\w+))(?!\s+#\s*([Cc]|sh|[Jj]ava))
810
+ beginCaptures:
811
+ "0":
812
+ name: punctuation.definition.string.begin.ruby
813
+ end: ^\1$
814
+ patterns:
815
+ - include: "#heredoc"
816
+ - include: "#interpolated_ruby"
817
+ - include: "#escaped_char"
818
+ - name: string.unquoted.embedded.html.ruby
819
+ endCaptures:
820
+ "0":
821
+ name: punctuation.definition.string.end.ruby
822
+ begin: (?><<-HTML\b)
823
+ contentName: text.html.embedded.ruby
824
+ beginCaptures:
825
+ "0":
826
+ name: punctuation.definition.string.begin.ruby
827
+ end: \s*HTML$
828
+ patterns:
829
+ - include: "#heredoc"
830
+ - include: text.html.basic
831
+ - include: "#interpolated_ruby"
832
+ - include: "#escaped_char"
833
+ comment: heredoc with embedded HTML and indented terminator
834
+ - name: string.unquoted.embedded.ruby.ruby
835
+ endCaptures:
836
+ "0":
837
+ name: punctuation.definition.string.end.ruby
838
+ begin: (?><<-(["\\']?)(\w+_(?i:eval))\1)
839
+ beginCaptures:
840
+ "0":
841
+ name: punctuation.definition.string.begin.ruby
842
+ end: \s*\2$
843
+ patterns:
844
+ - include: "#heredoc"
845
+ - include: "#interpolated_ruby"
846
+ - include: source.ruby
847
+ - include: "#escaped_char"
848
+ comment: ruby code in heredoc, interpolated
849
+ - name: string.unquoted.heredoc.ruby
850
+ endCaptures:
851
+ "0":
852
+ name: punctuation.definition.string.end.ruby
853
+ begin: (?><<-(\w+))
854
+ beginCaptures:
855
+ "0":
856
+ name: punctuation.definition.string.begin.ruby
857
+ end: \s*\1$
858
+ patterns:
859
+ - include: "#heredoc"
860
+ - include: "#interpolated_ruby"
861
+ - include: "#escaped_char"
862
+ comment: heredoc with indented terminator
863
+ - name: string.unquoted.embedded.c.ruby
864
+ endCaptures:
865
+ "0":
866
+ name: punctuation.definition.string.end.ruby
867
+ begin: (?>\=\s*<<(\w+))(?=\s+#\s*[Cc](?!(\+\+|[Ss][Ss])))
868
+ beginCaptures:
869
+ "0":
870
+ name: punctuation.definition.string.begin.ruby
871
+ end: ^\1$
872
+ patterns:
873
+ - include: "#heredoc"
874
+ - include: source.c
875
+ - include: "#interpolated_ruby"
876
+ - include: "#escaped_char"
877
+ - name: string.unquoted.embedded.cplusplus.ruby
878
+ endCaptures:
879
+ "0":
880
+ name: punctuation.definition.string.end.ruby
881
+ begin: (?>\=\s*<<(\w+))(?=\s+#\s*[Cc]\+\+)
882
+ beginCaptures:
883
+ "0":
884
+ name: punctuation.definition.string.begin.ruby
885
+ end: ^\1$
886
+ patterns:
887
+ - include: "#heredoc"
888
+ - include: source.c++
889
+ - include: "#interpolated_ruby"
890
+ - include: "#escaped_char"
891
+ - name: string.unquoted.embedded.css.ruby
892
+ endCaptures:
893
+ "0":
894
+ name: punctuation.definition.string.end.ruby
895
+ begin: (?>\=\s*<<(\w+))(?=\s+#\s*[Cc][Ss][Ss])
896
+ beginCaptures:
897
+ "0":
898
+ name: punctuation.definition.string.begin.ruby
899
+ end: ^\1$
900
+ patterns:
901
+ - include: "#heredoc"
902
+ - include: source.css
903
+ - include: "#interpolated_ruby"
904
+ - include: "#escaped_char"
905
+ - name: string.unquoted.embedded.js.ruby
906
+ endCaptures:
907
+ "0":
908
+ name: punctuation.definition.string.end.ruby
909
+ begin: (?>\=\s*<<(\w+))(?=\s+#\s*[Jj]ava[Ss]cript)
910
+ beginCaptures:
911
+ "0":
912
+ name: punctuation.definition.string.begin.ruby
913
+ end: ^\1$
914
+ patterns:
915
+ - include: "#heredoc"
916
+ - include: source.js
917
+ - include: "#interpolated_ruby"
918
+ - include: "#escaped_char"
919
+ - name: string.unquoted.embedded.shell.ruby
920
+ endCaptures:
921
+ "0":
922
+ name: punctuation.definition.string.end.ruby
923
+ begin: (?>\=\s*<<(\w+))(?=\s+#\s*sh)
924
+ beginCaptures:
925
+ "0":
926
+ name: punctuation.definition.string.begin.ruby
927
+ end: ^\1$
928
+ patterns:
929
+ - include: "#heredoc"
930
+ - include: source.shell
931
+ - include: "#interpolated_ruby"
932
+ - include: "#escaped_char"
933
+ - name: meta.function-call.method.with-arguments.ruby
934
+ begin: (?<=[^\.])(?=(\.|::)[a-zA-Z][a-zA-Z0-9_!?=]*\()(\.|::)
935
+ beginCaptures:
936
+ "1":
937
+ name: punctuation.separator.method.ruby
938
+ end: (?<=[a-zA-Z0-9_!?=])(?=\()
939
+ patterns:
940
+ - comment: "made this way to eventually support including #known_function_names"
941
+ - name: entity.name.function.ruby
942
+ match: ([a-zA-Z][a-zA-Z0-9_!?=]*)(?=[^a-zA-Z0-9_!?])
943
+ - name: meta.function-call.method.without-arguments.ruby
944
+ begin: (?<=[^\.])(?=(\.|::)[a-zA-Z][a-zA-Z0-9_!?]*[^a-zA-Z0-9_!?])(\.|::)
945
+ beginCaptures:
946
+ "1":
947
+ name: punctuation.separator.method.ruby
948
+ end: (?<=[a-zA-Z0-9_!?])(?=[^a-zA-Z0-9_!?])
949
+ patterns:
950
+ - comment: "made this way to eventually support including #known_function_names"
951
+ - name: entity.name.function.ruby
952
+ match: ([a-zA-Z][a-zA-Z0-9_!?]*)(?=[^a-zA-Z0-9_!?])
953
+ - name: meta.function-call.ruby
954
+ begin: (?=[a-zA-Z][a-zA-Z0-9_!?]+\()
955
+ end: (?=\()
956
+ patterns:
957
+ - comment: "eventually include #known_function_names"
958
+ - name: entity.name.function.ruby
959
+ match: ([a-zA-Z0-9_!?]+)(?=\()
960
+ - captures:
961
+ "1":
962
+ name: punctuation.separator.variable.ruby
963
+ begin: (?<=\{|do|\{\s|do\s)(\|)
964
+ end: (\|)
965
+ patterns:
966
+ - name: variable.other.block.ruby
967
+ match: "[_a-zA-Z][_a-zA-Z0-9]*"
968
+ - name: punctuation.separator.variable.ruby
969
+ match: ","
970
+ - name: punctuation.separator.key-value
971
+ match: =>
972
+ - name: keyword.operator.unary.ruby
973
+ match: \+@|-@
974
+ - name: keyword.operator.assignment.augmented.ruby
975
+ match: <<=|%=|&=|\*=|\*\*=|\+=|\-=|\^=|\|{1,2}=|/=|<<
976
+ - name: keyword.operator.comparison.ruby
977
+ match: <=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \t])\?
978
+ - name: keyword.operator.logical.ruby
979
+ match: (?<=[ \t])!|\bnot\b|&&|\band\b|\|\||\bor\b|\^
980
+ - name: keyword.operator.arithmetic.ruby
981
+ match: (%|&|\*\*|\*|\+|\-|/)
982
+ - name: keyword.operator.assignment.ruby
983
+ match: "="
984
+ - name: keyword.operator.other.ruby
985
+ match: \||~|>>
986
+ - name: punctuation.separator.other.ruby
987
+ match: ":"
988
+ - name: punctuation.separator.statement.ruby
989
+ match: \;
990
+ - name: punctuation.separator.object.ruby
991
+ match: ","
992
+ - name: punctuation.separator.method.ruby
993
+ match: "\\.|::"
994
+ - name: punctuation.section.scope.ruby
995
+ match: \{|\}
996
+ - name: punctuation.section.array.ruby
997
+ match: \[|\]
998
+ - name: punctuation.section.function.ruby
999
+ match: \(|\)
1000
+ foldingStopMarker: "(?x)\n\
1001
+ \t\t( (^|;) \\s*+ end \\s*+ ([#].*)? $\n\
1002
+ \t\t| (^|;) \\s*+ end \\. .* $\n\
1003
+ \t\t| ^ \\s*+ [}\\]] \\s*+ ([#].*)? $\n\
1004
+ \t\t| [#] .*? \\(end\\) \\s*+ $ # Sune\xE2\x80\x99s special marker\n\
1005
+ \t\t| ^=end\n\
1006
+ \t\t)"
1007
+ keyEquivalent: ^~R
1008
+ comment: "\n\
1009
+ \tTODO: unresolved issues\n\n\
1010
+ \ttext:\n\
1011
+ \t\"p << end\n\
1012
+ \tprint me!\n\
1013
+ \tend\"\n\
1014
+ \tsymptoms:\n\
1015
+ \tnot recognized as a heredoc\n\
1016
+ \tsolution:\n\
1017
+ \tthere is no way to distinguish perfectly between the << operator and the start\n\
1018
+ \tof a heredoc. Currently, we require assignment to recognize a heredoc. More\n\
1019
+ \trefinement is possible.\n\
1020
+ \t\xE2\x80\xA2 Heredocs with indented terminators (<<-) are always distinguishable, however.\n\
1021
+ \t\xE2\x80\xA2 Nested heredocs are not really supportable at present\n\n\
1022
+ \ttext:\n\
1023
+ \tprint <<-'THERE' \n\
1024
+ \tThis is single quoted. \n\
1025
+ \tThe above used #{Time.now} \n\
1026
+ \tTHERE \n\
1027
+ \tsymtoms:\n\
1028
+ \tFrom Programming Ruby p306; should be a non-interpolated heredoc.\n\
1029
+ \t\n\
1030
+ \ttext:\n\
1031
+ \t\"a\\332a\"\n\
1032
+ \tsymptoms:\n\
1033
+ \t'\\332' is not recognized as slash3.. which should be octal 332.\n\
1034
+ \tsolution:\n\
1035
+ \tplain regexp.. should be easy.\n\n text:\n val?(a):p(b)\n val?'a':'b'\n symptoms:\n ':p' is recognized as a symbol.. its 2 things ':' and 'p'.\n :'b' has same problem.\n solution:\n ternary operator rule, precedence stuff, symbol rule.\n but also consider 'a.b?(:c)' ??\n"