research-copilot 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +190 -0
  3. package/app/build/icon.icns +0 -0
  4. package/app/build/icon.ico +0 -0
  5. package/app/build/icon.png +0 -0
  6. package/app/out/main/index.mjs +6719 -0
  7. package/app/out/preload/index.js +141 -0
  8. package/app/out/renderer/assets/Inter-Variable-Latin-8kRkwJBP.woff2 +0 -0
  9. package/app/out/renderer/assets/Inter-Variable-LatinExt-B_-bZUTo.woff2 +0 -0
  10. package/app/out/renderer/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  11. package/app/out/renderer/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  12. package/app/out/renderer/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  13. package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  14. package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  15. package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  16. package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  17. package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  18. package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  19. package/app/out/renderer/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  20. package/app/out/renderer/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  21. package/app/out/renderer/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  22. package/app/out/renderer/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  23. package/app/out/renderer/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  24. package/app/out/renderer/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  25. package/app/out/renderer/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  26. package/app/out/renderer/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  27. package/app/out/renderer/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  28. package/app/out/renderer/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  29. package/app/out/renderer/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  30. package/app/out/renderer/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  31. package/app/out/renderer/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  32. package/app/out/renderer/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  33. package/app/out/renderer/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  34. package/app/out/renderer/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  35. package/app/out/renderer/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  36. package/app/out/renderer/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  37. package/app/out/renderer/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  38. package/app/out/renderer/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  39. package/app/out/renderer/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  40. package/app/out/renderer/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  41. package/app/out/renderer/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  42. package/app/out/renderer/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  43. package/app/out/renderer/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  44. package/app/out/renderer/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  45. package/app/out/renderer/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  46. package/app/out/renderer/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  47. package/app/out/renderer/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  48. package/app/out/renderer/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  49. package/app/out/renderer/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  50. package/app/out/renderer/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  51. package/app/out/renderer/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  52. package/app/out/renderer/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  53. package/app/out/renderer/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  54. package/app/out/renderer/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  55. package/app/out/renderer/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  56. package/app/out/renderer/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  57. package/app/out/renderer/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  58. package/app/out/renderer/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  59. package/app/out/renderer/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  60. package/app/out/renderer/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  61. package/app/out/renderer/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  62. package/app/out/renderer/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  63. package/app/out/renderer/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  64. package/app/out/renderer/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  65. package/app/out/renderer/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  66. package/app/out/renderer/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  67. package/app/out/renderer/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  68. package/app/out/renderer/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  69. package/app/out/renderer/assets/MilkdownMarkdownEditor-bLPxrCVb.js +89821 -0
  70. package/app/out/renderer/assets/MilkdownMarkdownEditor-tTNRIB2K.css +2555 -0
  71. package/app/out/renderer/assets/Tableau10-BqnYsPR6.js +9 -0
  72. package/app/out/renderer/assets/apl-fqmucPXA.js +140 -0
  73. package/app/out/renderer/assets/arc-J47ePHZ2.js +132 -0
  74. package/app/out/renderer/assets/array-DgktLKBx.js +6 -0
  75. package/app/out/renderer/assets/asciiarmor-DucZyvP0.js +56 -0
  76. package/app/out/renderer/assets/asn1-BnOEsgAm.js +144 -0
  77. package/app/out/renderer/assets/asterisk-QAlztEwS.js +345 -0
  78. package/app/out/renderer/assets/blockDiagram-c4efeb88-5uRQXgQJ.js +1817 -0
  79. package/app/out/renderer/assets/brainfuck-DZVCuF_t.js +53 -0
  80. package/app/out/renderer/assets/c4Diagram-c83219d4-C4iCTPEL.js +2464 -0
  81. package/app/out/renderer/assets/channel-ZAmhHE3g.js +7 -0
  82. package/app/out/renderer/assets/classDiagram-beda092f-7NOZxq_W.js +357 -0
  83. package/app/out/renderer/assets/classDiagram-v2-2358418a-5fPT-cUH.js +291 -0
  84. package/app/out/renderer/assets/clike-xqXYL6ge.js +805 -0
  85. package/app/out/renderer/assets/clojure-BhXMqnxz.js +849 -0
  86. package/app/out/renderer/assets/clone-CsnzsYXQ.js +8 -0
  87. package/app/out/renderer/assets/cmake-BGaNd9E7.js +71 -0
  88. package/app/out/renderer/assets/cobol-4yqQntpt.js +120 -0
  89. package/app/out/renderer/assets/coffeescript-D2dXvhEc.js +308 -0
  90. package/app/out/renderer/assets/commonlisp-CF_VNHQR.js +130 -0
  91. package/app/out/renderer/assets/createText-1719965b-Cji7KN4K.js +4904 -0
  92. package/app/out/renderer/assets/crystal-DyuLTqLs.js +398 -0
  93. package/app/out/renderer/assets/css-c-jst79C.js +1783 -0
  94. package/app/out/renderer/assets/cypher-Dlu_3r4V.js +121 -0
  95. package/app/out/renderer/assets/d-UURgV0Ux.js +179 -0
  96. package/app/out/renderer/assets/diff-B_Bi2Crb.js +25 -0
  97. package/app/out/renderer/assets/dockerfile-Bvk733Ga.js +201 -0
  98. package/app/out/renderer/assets/dtd-Dy74G54E.js +114 -0
  99. package/app/out/renderer/assets/dylan-TSb-Nfix.js +314 -0
  100. package/app/out/renderer/assets/ebnf-DAomQUbD.js +139 -0
  101. package/app/out/renderer/assets/ecl-B59qGGVg.js +178 -0
  102. package/app/out/renderer/assets/edges-96097737-CD0EvAZQ.js +1844 -0
  103. package/app/out/renderer/assets/eiffel-Dze7nlu3.js +134 -0
  104. package/app/out/renderer/assets/elm-DG7jkhNZ.js +176 -0
  105. package/app/out/renderer/assets/erDiagram-0228fc6a-DRYXBpi7.js +1321 -0
  106. package/app/out/renderer/assets/erlang-BO6gOnGA.js +674 -0
  107. package/app/out/renderer/assets/factor-CMxFHDqz.js +65 -0
  108. package/app/out/renderer/assets/fcl-CDDUNjTj.js +141 -0
  109. package/app/out/renderer/assets/flowDb-c6c81e3f-CuoIN-Cy.js +1713 -0
  110. package/app/out/renderer/assets/flowDiagram-50d868cf-CPWPLOml.js +1272 -0
  111. package/app/out/renderer/assets/flowDiagram-v2-4f6560a1-C_R12s4S.js +33 -0
  112. package/app/out/renderer/assets/flowchart-elk-definition-6af322e1-BdKUSFpi.js +92921 -0
  113. package/app/out/renderer/assets/forth-B9D2JCeE.js +116 -0
  114. package/app/out/renderer/assets/fortran-CAG2BFbe.js +467 -0
  115. package/app/out/renderer/assets/ganttDiagram-a2739b55-ygqT5HlG.js +3399 -0
  116. package/app/out/renderer/assets/gas-d3KEcW3x.js +294 -0
  117. package/app/out/renderer/assets/gherkin-DhZlEZiy.js +115 -0
  118. package/app/out/renderer/assets/gitGraphDiagram-82fe8481-D97GT4iA.js +1791 -0
  119. package/app/out/renderer/assets/graph-DpC13d95.js +1237 -0
  120. package/app/out/renderer/assets/groovy-CpwJiBl7.js +223 -0
  121. package/app/out/renderer/assets/haskell-BlGBCCe3.js +459 -0
  122. package/app/out/renderer/assets/haxe-7MlzfeYV.js +514 -0
  123. package/app/out/renderer/assets/http-BqypyemW.js +79 -0
  124. package/app/out/renderer/assets/idl-4HIGJlDI.js +985 -0
  125. package/app/out/renderer/assets/index-4-ziknCv.js +292 -0
  126. package/app/out/renderer/assets/index-5325376f-Bbs7Fbqr.js +663 -0
  127. package/app/out/renderer/assets/index-B2jip-rk.js +2489 -0
  128. package/app/out/renderer/assets/index-BKTVfokE.js +312 -0
  129. package/app/out/renderer/assets/index-BiJbFgVG.js +118 -0
  130. package/app/out/renderer/assets/index-Bn433Fat.js +83 -0
  131. package/app/out/renderer/assets/index-BqDyyRCx.js +39679 -0
  132. package/app/out/renderer/assets/index-BzFMeMPn.js +158 -0
  133. package/app/out/renderer/assets/index-C-_uCjZJ.css +2701 -0
  134. package/app/out/renderer/assets/index-C1ithNW1.js +1765 -0
  135. package/app/out/renderer/assets/index-CAJkRYkO.js +407 -0
  136. package/app/out/renderer/assets/index-CleO0-yj.js +690 -0
  137. package/app/out/renderer/assets/index-Cq4MH3sY.js +1020 -0
  138. package/app/out/renderer/assets/index-CtA0Xj22.js +705 -0
  139. package/app/out/renderer/assets/index-CvAZkqBZ.js +83 -0
  140. package/app/out/renderer/assets/index-D3UDN-5c.js +152 -0
  141. package/app/out/renderer/assets/index-D4F9R5ao.js +179 -0
  142. package/app/out/renderer/assets/index-D6RguhZ5.js +328 -0
  143. package/app/out/renderer/assets/index-DnEowqXv.js +386 -0
  144. package/app/out/renderer/assets/index-K8c8Mqdy.js +98 -0
  145. package/app/out/renderer/assets/index-Kh14gO6K.js +62 -0
  146. package/app/out/renderer/assets/index-WFd2jRnA.js +333 -0
  147. package/app/out/renderer/assets/index-WgMfkRFp.js +313 -0
  148. package/app/out/renderer/assets/index-Y4lKyF6t.js +1042 -0
  149. package/app/out/renderer/assets/index-fx307_f1.js +643 -0
  150. package/app/out/renderer/assets/infoDiagram-8eee0895-ptaVSwzq.js +511 -0
  151. package/app/out/renderer/assets/init-ZxktEp_H.js +16 -0
  152. package/app/out/renderer/assets/javascript-C3MnDRiU.js +994 -0
  153. package/app/out/renderer/assets/journeyDiagram-c64418c1-aloEGOQp.js +1184 -0
  154. package/app/out/renderer/assets/julia-Bs6JJhYG.js +407 -0
  155. package/app/out/renderer/assets/layout-ZeuHE_aY.js +2217 -0
  156. package/app/out/renderer/assets/line-CAgaGl-S.js +45 -0
  157. package/app/out/renderer/assets/linear-DIg7lTe1.js +539 -0
  158. package/app/out/renderer/assets/livescript-DmzgM3Yt.js +296 -0
  159. package/app/out/renderer/assets/lua-8cJgIlqe.js +256 -0
  160. package/app/out/renderer/assets/mathematica-DNLOL9PQ.js +110 -0
  161. package/app/out/renderer/assets/mbox-Ga7d4MMN.js +117 -0
  162. package/app/out/renderer/assets/mindmap-definition-8da855dc-B8XVoUxz.js +36054 -0
  163. package/app/out/renderer/assets/mirc-Dma3B8rS.js +107 -0
  164. package/app/out/renderer/assets/mllike-DHn7xckP.js +334 -0
  165. package/app/out/renderer/assets/modelica-0d55jYY0.js +147 -0
  166. package/app/out/renderer/assets/mscgen-DdqZYINH.js +135 -0
  167. package/app/out/renderer/assets/mumps-Btr8VblO.js +93 -0
  168. package/app/out/renderer/assets/nginx-DTDtBDVN.js +141 -0
  169. package/app/out/renderer/assets/nsis-3zG7tgur.js +62 -0
  170. package/app/out/renderer/assets/ntriples-CvgOYMpL.js +153 -0
  171. package/app/out/renderer/assets/octave-DYBj3-tl.js +200 -0
  172. package/app/out/renderer/assets/ordinal-DSZU4PqD.js +76 -0
  173. package/app/out/renderer/assets/oz-R_e8WMIi.js +231 -0
  174. package/app/out/renderer/assets/pascal-GD8iposT.js +105 -0
  175. package/app/out/renderer/assets/path-Cp2qmpkd.js +109 -0
  176. package/app/out/renderer/assets/perl-DL9mHpoi.js +1105 -0
  177. package/app/out/renderer/assets/pieDiagram-a8764435-DlwoeBU2.js +770 -0
  178. package/app/out/renderer/assets/pig-C_4T4YIV.js +101 -0
  179. package/app/out/renderer/assets/powershell-B0suO7Vd.js +328 -0
  180. package/app/out/renderer/assets/properties-BR-vP1aU.js +58 -0
  181. package/app/out/renderer/assets/protobuf-BxgpyhoW.js +77 -0
  182. package/app/out/renderer/assets/pug-By0kVCfm.js +405 -0
  183. package/app/out/renderer/assets/puppet-Bdao66PW.js +137 -0
  184. package/app/out/renderer/assets/python-CvWbmiX4.js +427 -0
  185. package/app/out/renderer/assets/q-CrbCVq4a.js +131 -0
  186. package/app/out/renderer/assets/quadrantDiagram-1e28029f-BaSi1XB4.js +1200 -0
  187. package/app/out/renderer/assets/r-V7nswm59.js +170 -0
  188. package/app/out/renderer/assets/requirementDiagram-08caed73-D3EFyegZ.js +1092 -0
  189. package/app/out/renderer/assets/rpm-C-DLY-If.js +109 -0
  190. package/app/out/renderer/assets/ruby-JDKLJNK0.js +330 -0
  191. package/app/out/renderer/assets/sankeyDiagram-a04cb91d-Cv44AsnM.js +1174 -0
  192. package/app/out/renderer/assets/sas-D2UG-yhZ.js +207 -0
  193. package/app/out/renderer/assets/scheme-BKzrkGJD.js +222 -0
  194. package/app/out/renderer/assets/sequenceDiagram-c5b8d532-CuUBu-x4.js +3337 -0
  195. package/app/out/renderer/assets/shell-BlsXDxCn.js +222 -0
  196. package/app/out/renderer/assets/sieve-CjwBwOY5.js +135 -0
  197. package/app/out/renderer/assets/simple-mode-DMneyfDu.js +130 -0
  198. package/app/out/renderer/assets/smalltalk-BOIGQuhN.js +121 -0
  199. package/app/out/renderer/assets/solr-CwD7U71z.js +69 -0
  200. package/app/out/renderer/assets/sparql-DYskk2vE.js +249 -0
  201. package/app/out/renderer/assets/spreadsheet-Bgtt3oLP.js +87 -0
  202. package/app/out/renderer/assets/sql-BSrOzCRI.js +354 -0
  203. package/app/out/renderer/assets/stateDiagram-1ecb1508-BOU34Zp4.js +454 -0
  204. package/app/out/renderer/assets/stateDiagram-v2-c2b004d7-BgRoffou.js +326 -0
  205. package/app/out/renderer/assets/stex-B6LNC55o.js +231 -0
  206. package/app/out/renderer/assets/styles-b4e223ce-BMr9TPuj.js +1483 -0
  207. package/app/out/renderer/assets/styles-ca3715f6-DgbNw99p.js +1363 -0
  208. package/app/out/renderer/assets/styles-d45a18b0-DtRYKYKf.js +574 -0
  209. package/app/out/renderer/assets/stylus-BkS-boTH.js +565 -0
  210. package/app/out/renderer/assets/svgDrawCommon-b86b1483-Bein03PD.js +100 -0
  211. package/app/out/renderer/assets/swift-FRZi1uvB.js +291 -0
  212. package/app/out/renderer/assets/tcl-CUcaCdmq.js +114 -0
  213. package/app/out/renderer/assets/textile-BnFpjsrl.js +414 -0
  214. package/app/out/renderer/assets/tiddlywiki-CjprD-Qp.js +218 -0
  215. package/app/out/renderer/assets/tiki-B4EPSQ1G.js +265 -0
  216. package/app/out/renderer/assets/timeline-definition-faaaa080-BlWpLE_4.js +1212 -0
  217. package/app/out/renderer/assets/toml-BOuWGMcf.js +76 -0
  218. package/app/out/renderer/assets/troff-E1bJ0PPL.js +61 -0
  219. package/app/out/renderer/assets/ttcn-cfg-Dc39-fIP.js +133 -0
  220. package/app/out/renderer/assets/ttcn-tKd4HLu4.js +192 -0
  221. package/app/out/renderer/assets/turtle-Dq7-1WAf.js +124 -0
  222. package/app/out/renderer/assets/vb-Dp90gtsv.js +196 -0
  223. package/app/out/renderer/assets/vbscript-CI6_mxxU.js +479 -0
  224. package/app/out/renderer/assets/velocity-BwIZK1TH.js +149 -0
  225. package/app/out/renderer/assets/verilog-DDCYnHN8.js +430 -0
  226. package/app/out/renderer/assets/vhdl-DCkMIyT9.js +158 -0
  227. package/app/out/renderer/assets/webidl-BTLTThCm.js +204 -0
  228. package/app/out/renderer/assets/xquery-BgiOC5Ce.js +525 -0
  229. package/app/out/renderer/assets/xychartDiagram-f5964ef8-Bhga-YXm.js +1799 -0
  230. package/app/out/renderer/assets/yacas-b5lAVEIl.js +130 -0
  231. package/app/out/renderer/assets/z80-BZV19vqv.js +93 -0
  232. package/app/out/renderer/index.html +13 -0
  233. package/app/out/skills/community-builtin/README.md +29 -0
  234. package/app/out/skills/community-builtin/document-docx/SKILL.md +44 -0
  235. package/app/out/skills/community-builtin/document-docx/scripts/docx-to-markdown.sh +20 -0
  236. package/app/out/skills/community-builtin/document-docx/scripts/extract-docx-text.sh +28 -0
  237. package/app/out/skills/community-builtin/document-docx/scripts/init-docx-template.sh +32 -0
  238. package/app/out/skills/community-builtin/document-docx/scripts/setup-docx-tools.sh +10 -0
  239. package/app/out/skills/community-builtin/markitdown/SKILL.md +105 -0
  240. package/app/out/skills/community-builtin/markitdown/scripts/batch-convert.sh +40 -0
  241. package/app/out/skills/community-builtin/markitdown/scripts/convert-file.sh +24 -0
  242. package/app/out/skills/community-builtin/markitdown/scripts/setup-markitdown.sh +10 -0
  243. package/app/out/skills/community-builtin/repo-quick-audit/SKILL.md +27 -0
  244. package/app/out/skills/community-builtin/repo-quick-audit/scripts/audit-basics.sh +19 -0
  245. package/app/out/skills/research-pilot-default-project-skills/README.md +23 -0
  246. package/app/out/skills/research-pilot-default-project-skills/citation-management/SKILL.md +39 -0
  247. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/doi-to-bibtex.sh +25 -0
  248. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/normalize-bibtex-keys.sh +51 -0
  249. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/setup-citation-tools.sh +10 -0
  250. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/validate-bib.sh +31 -0
  251. package/app/out/skills/research-pilot-default-project-skills/matplotlib/SKILL.md +34 -0
  252. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/api_reference.md +412 -0
  253. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/common_issues.md +563 -0
  254. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/plot_types.md +476 -0
  255. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/styling_guide.md +589 -0
  256. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/subagent_quickstart.md +30 -0
  257. package/app/out/skills/research-pilot-default-project-skills/matplotlib/scripts/plot_template.py +401 -0
  258. package/app/out/skills/research-pilot-default-project-skills/matplotlib/scripts/style_configurator.py +409 -0
  259. package/app/out/skills/research-pilot-default-project-skills/research-grants/SKILL.md +38 -0
  260. package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/check-grant-compliance.sh +40 -0
  261. package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/grant-summary-card.sh +32 -0
  262. package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/init-grant-structure.sh +70 -0
  263. package/app/package.json +77 -0
  264. package/bin/cli.mjs +56 -0
  265. package/lib/README.md +145 -0
  266. package/lib/skills/_generated.ts +13 -0
  267. package/lib/skills/builtin/brainstorming-research-ideas/SKILL.md +280 -0
  268. package/lib/skills/builtin/coding/SKILL.md +114 -0
  269. package/lib/skills/builtin/creative-thinking-for-research/SKILL.md +273 -0
  270. package/lib/skills/builtin/matplotlib/SKILL.md +361 -0
  271. package/lib/skills/builtin/matplotlib/references/api_reference.md +412 -0
  272. package/lib/skills/builtin/matplotlib/references/common_issues.md +563 -0
  273. package/lib/skills/builtin/matplotlib/references/plot_types.md +476 -0
  274. package/lib/skills/builtin/matplotlib/references/styling_guide.md +589 -0
  275. package/lib/skills/builtin/matplotlib/scripts/plot_template.py +401 -0
  276. package/lib/skills/builtin/matplotlib/scripts/style_configurator.py +409 -0
  277. package/lib/skills/builtin/paper-writing/SKILL.md +554 -0
  278. package/lib/skills/builtin/paper-writing/references/checklists.md +524 -0
  279. package/lib/skills/builtin/paper-writing/references/citation-workflow.md +562 -0
  280. package/lib/skills/builtin/paper-writing/references/reviewer-guidelines.md +462 -0
  281. package/lib/skills/builtin/paper-writing/references/sources.md +189 -0
  282. package/lib/skills/builtin/paper-writing/references/systems-conferences.md +260 -0
  283. package/lib/skills/builtin/paper-writing/references/writing-guide.md +476 -0
  284. package/lib/skills/builtin/paper-writing/templates/README.md +408 -0
  285. package/lib/skills/builtin/paper-writing/templates/aaai2026/README.md +534 -0
  286. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026-unified-supp.tex +144 -0
  287. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026-unified-template.tex +952 -0
  288. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.bib +111 -0
  289. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.bst +1493 -0
  290. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.sty +315 -0
  291. package/lib/skills/builtin/paper-writing/templates/acl/README.md +50 -0
  292. package/lib/skills/builtin/paper-writing/templates/acl/acl.sty +312 -0
  293. package/lib/skills/builtin/paper-writing/templates/acl/acl_latex.tex +377 -0
  294. package/lib/skills/builtin/paper-writing/templates/acl/acl_lualatex.tex +101 -0
  295. package/lib/skills/builtin/paper-writing/templates/acl/acl_natbib.bst +1940 -0
  296. package/lib/skills/builtin/paper-writing/templates/acl/anthology.bib.txt +26 -0
  297. package/lib/skills/builtin/paper-writing/templates/acl/custom.bib +70 -0
  298. package/lib/skills/builtin/paper-writing/templates/acl/formatting.md +326 -0
  299. package/lib/skills/builtin/paper-writing/templates/asplos2027/main.tex +459 -0
  300. package/lib/skills/builtin/paper-writing/templates/asplos2027/references.bib +135 -0
  301. package/lib/skills/builtin/paper-writing/templates/colm2025/README.md +3 -0
  302. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.bib +11 -0
  303. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.bst +1440 -0
  304. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.pdf +0 -0
  305. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.sty +218 -0
  306. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.tex +305 -0
  307. package/lib/skills/builtin/paper-writing/templates/colm2025/fancyhdr.sty +485 -0
  308. package/lib/skills/builtin/paper-writing/templates/colm2025/math_commands.tex +508 -0
  309. package/lib/skills/builtin/paper-writing/templates/colm2025/natbib.sty +1246 -0
  310. package/lib/skills/builtin/paper-writing/templates/iclr2026/fancyhdr.sty +485 -0
  311. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.bib +24 -0
  312. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.bst +1440 -0
  313. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.pdf +0 -0
  314. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.sty +246 -0
  315. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.tex +414 -0
  316. package/lib/skills/builtin/paper-writing/templates/iclr2026/math_commands.tex +508 -0
  317. package/lib/skills/builtin/paper-writing/templates/iclr2026/natbib.sty +1246 -0
  318. package/lib/skills/builtin/paper-writing/templates/icml2026/algorithm.sty +79 -0
  319. package/lib/skills/builtin/paper-writing/templates/icml2026/algorithmic.sty +201 -0
  320. package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.bib +75 -0
  321. package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.pdf +0 -0
  322. package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.tex +662 -0
  323. package/lib/skills/builtin/paper-writing/templates/icml2026/fancyhdr.sty +864 -0
  324. package/lib/skills/builtin/paper-writing/templates/icml2026/icml2026.bst +1443 -0
  325. package/lib/skills/builtin/paper-writing/templates/icml2026/icml2026.sty +767 -0
  326. package/lib/skills/builtin/paper-writing/templates/icml2026/icml_numpapers.pdf +0 -0
  327. package/lib/skills/builtin/paper-writing/templates/neurips2025/Makefile +36 -0
  328. package/lib/skills/builtin/paper-writing/templates/neurips2025/extra_pkgs.tex +53 -0
  329. package/lib/skills/builtin/paper-writing/templates/neurips2025/main.tex +38 -0
  330. package/lib/skills/builtin/paper-writing/templates/neurips2025/neurips.sty +382 -0
  331. package/lib/skills/builtin/paper-writing/templates/nsdi2027/main.tex +426 -0
  332. package/lib/skills/builtin/paper-writing/templates/nsdi2027/references.bib +151 -0
  333. package/lib/skills/builtin/paper-writing/templates/nsdi2027/usenix-2020-09.sty +83 -0
  334. package/lib/skills/builtin/paper-writing/templates/osdi2026/main.tex +429 -0
  335. package/lib/skills/builtin/paper-writing/templates/osdi2026/references.bib +150 -0
  336. package/lib/skills/builtin/paper-writing/templates/osdi2026/usenix-2020-09.sty +83 -0
  337. package/lib/skills/builtin/paper-writing/templates/sosp2026/main.tex +532 -0
  338. package/lib/skills/builtin/paper-writing/templates/sosp2026/references.bib +148 -0
  339. package/lib/skills/builtin/research-grants/SKILL.md +958 -0
  340. package/lib/skills/builtin/research-grants/assets/budget_justification_template.md +453 -0
  341. package/lib/skills/builtin/research-grants/assets/nih_specific_aims_template.md +166 -0
  342. package/lib/skills/builtin/research-grants/assets/nsf_project_summary_template.md +92 -0
  343. package/lib/skills/builtin/research-grants/references/README.md +285 -0
  344. package/lib/skills/builtin/research-grants/references/broader_impacts.md +392 -0
  345. package/lib/skills/builtin/research-grants/references/darpa_guidelines.md +636 -0
  346. package/lib/skills/builtin/research-grants/references/doe_guidelines.md +586 -0
  347. package/lib/skills/builtin/research-grants/references/nih_guidelines.md +851 -0
  348. package/lib/skills/builtin/research-grants/references/nsf_guidelines.md +570 -0
  349. package/lib/skills/builtin/research-grants/references/nstc_guidelines.md +733 -0
  350. package/lib/skills/builtin/research-grants/references/specific_aims_guide.md +458 -0
  351. package/lib/skills/builtin/rewrite-humanize/SKILL.md +116 -0
  352. package/lib/skills/builtin/rewrite-humanize/references/cs-venue-tone.md +57 -0
  353. package/lib/skills/builtin/rewrite-humanize/references/lexicon.md +50 -0
  354. package/lib/skills/builtin/scholar-evaluation/SKILL.md +300 -0
  355. package/lib/skills/builtin/scholar-evaluation/references/evaluation_framework.md +663 -0
  356. package/lib/skills/builtin/scholar-evaluation/scripts/calculate_scores.py +379 -0
  357. package/lib/skills/builtin/scientific-schematics/SKILL.md +603 -0
  358. package/lib/skills/builtin/scientific-schematics/references/QUICK_REFERENCE.md +182 -0
  359. package/lib/skills/builtin/scientific-schematics/references/README.md +292 -0
  360. package/lib/skills/builtin/scientific-schematics/references/best_practices.md +560 -0
  361. package/lib/skills/builtin/scientific-schematics/scripts/__pycache__/generate_schematic.cpython-312.pyc +0 -0
  362. package/lib/skills/builtin/scientific-schematics/scripts/__pycache__/generate_schematic_ai.cpython-312.pyc +0 -0
  363. package/lib/skills/builtin/scientific-schematics/scripts/example_usage.sh +85 -0
  364. package/lib/skills/builtin/scientific-schematics/scripts/generate_schematic.py +141 -0
  365. package/lib/skills/builtin/scientific-schematics/scripts/generate_schematic_ai.py +910 -0
  366. package/lib/skills/builtin/scientific-visualization/SKILL.md +749 -0
  367. package/lib/skills/builtin/scientific-visualization/assets/color_palettes.py +197 -0
  368. package/lib/skills/builtin/scientific-visualization/assets/nature.mplstyle +63 -0
  369. package/lib/skills/builtin/scientific-visualization/assets/presentation.mplstyle +61 -0
  370. package/lib/skills/builtin/scientific-visualization/assets/publication.mplstyle +68 -0
  371. package/lib/skills/builtin/scientific-visualization/references/color_palettes.md +348 -0
  372. package/lib/skills/builtin/scientific-visualization/references/journal_requirements.md +320 -0
  373. package/lib/skills/builtin/scientific-visualization/references/matplotlib_examples.md +620 -0
  374. package/lib/skills/builtin/scientific-visualization/references/publication_guidelines.md +205 -0
  375. package/lib/skills/builtin/scientific-visualization/scripts/figure_export.py +343 -0
  376. package/lib/skills/builtin/scientific-visualization/scripts/style_presets.py +416 -0
  377. package/lib/skills/builtin/scientific-writing/SKILL.md +745 -0
  378. package/lib/skills/builtin/scientific-writing/assets/REPORT_FORMATTING_GUIDE.md +574 -0
  379. package/lib/skills/builtin/scientific-writing/assets/scientific_report.sty +606 -0
  380. package/lib/skills/builtin/scientific-writing/assets/scientific_report_template.tex +449 -0
  381. package/lib/skills/builtin/scientific-writing/references/citation_styles.md +720 -0
  382. package/lib/skills/builtin/scientific-writing/references/figures_tables.md +806 -0
  383. package/lib/skills/builtin/scientific-writing/references/imrad_structure.md +686 -0
  384. package/lib/skills/builtin/scientific-writing/references/professional_report_formatting.md +664 -0
  385. package/lib/skills/builtin/scientific-writing/references/reporting_guidelines.md +748 -0
  386. package/lib/skills/builtin/scientific-writing/references/writing_principles.md +824 -0
  387. package/lib/skills/builtin/seaborn/SKILL.md +674 -0
  388. package/lib/skills/builtin/seaborn/references/examples.md +822 -0
  389. package/lib/skills/builtin/seaborn/references/function_reference.md +770 -0
  390. package/lib/skills/builtin/seaborn/references/objects_interface.md +964 -0
  391. package/lib/skills/data-analysis/SKILL.md +285 -0
  392. package/lib/skills/generate-skill-content.mjs +58 -0
  393. package/lib/skills/index.ts +34 -0
  394. package/lib/skills/loader.ts +452 -0
  395. package/package.json +62 -0
@@ -0,0 +1,414 @@
1
+ var TOKEN_STYLES = {
2
+ addition: "inserted",
3
+ attributes: "propertyName",
4
+ bold: "strong",
5
+ cite: "keyword",
6
+ code: "monospace",
7
+ definitionList: "list",
8
+ deletion: "deleted",
9
+ div: "punctuation",
10
+ em: "emphasis",
11
+ footnote: "variable",
12
+ footCite: "qualifier",
13
+ header: "heading",
14
+ html: "comment",
15
+ image: "atom",
16
+ italic: "emphasis",
17
+ link: "link",
18
+ linkDefinition: "link",
19
+ list1: "list",
20
+ list2: "list.special",
21
+ list3: "list",
22
+ notextile: "string.special",
23
+ pre: "operator",
24
+ p: "content",
25
+ quote: "bracket",
26
+ span: "quote",
27
+ specialChar: "character",
28
+ strong: "strong",
29
+ sub: "content.special",
30
+ sup: "content.special",
31
+ table: "variableName.special",
32
+ tableHeading: "operator"
33
+ };
34
+ function startNewLine(stream, state) {
35
+ state.mode = Modes.newLayout;
36
+ state.tableHeading = false;
37
+ if (state.layoutType === "definitionList" && state.spanningLayout && stream.match(RE("definitionListEnd"), false))
38
+ state.spanningLayout = false;
39
+ }
40
+ function handlePhraseModifier(stream, state, ch) {
41
+ if (ch === "_") {
42
+ if (stream.eat("_"))
43
+ return togglePhraseModifier(stream, state, "italic", /__/, 2);
44
+ else
45
+ return togglePhraseModifier(stream, state, "em", /_/, 1);
46
+ }
47
+ if (ch === "*") {
48
+ if (stream.eat("*")) {
49
+ return togglePhraseModifier(stream, state, "bold", /\*\*/, 2);
50
+ }
51
+ return togglePhraseModifier(stream, state, "strong", /\*/, 1);
52
+ }
53
+ if (ch === "[") {
54
+ if (stream.match(/\d+\]/)) state.footCite = true;
55
+ return tokenStyles(state);
56
+ }
57
+ if (ch === "(") {
58
+ var spec = stream.match(/^(r|tm|c)\)/);
59
+ if (spec)
60
+ return TOKEN_STYLES.specialChar;
61
+ }
62
+ if (ch === "<" && stream.match(/(\w+)[^>]+>[^<]+<\/\1>/))
63
+ return TOKEN_STYLES.html;
64
+ if (ch === "?" && stream.eat("?"))
65
+ return togglePhraseModifier(stream, state, "cite", /\?\?/, 2);
66
+ if (ch === "=" && stream.eat("="))
67
+ return togglePhraseModifier(stream, state, "notextile", /==/, 2);
68
+ if (ch === "-" && !stream.eat("-"))
69
+ return togglePhraseModifier(stream, state, "deletion", /-/, 1);
70
+ if (ch === "+")
71
+ return togglePhraseModifier(stream, state, "addition", /\+/, 1);
72
+ if (ch === "~")
73
+ return togglePhraseModifier(stream, state, "sub", /~/, 1);
74
+ if (ch === "^")
75
+ return togglePhraseModifier(stream, state, "sup", /\^/, 1);
76
+ if (ch === "%")
77
+ return togglePhraseModifier(stream, state, "span", /%/, 1);
78
+ if (ch === "@")
79
+ return togglePhraseModifier(stream, state, "code", /@/, 1);
80
+ if (ch === "!") {
81
+ var type = togglePhraseModifier(stream, state, "image", /(?:\([^\)]+\))?!/, 1);
82
+ stream.match(/^:\S+/);
83
+ return type;
84
+ }
85
+ return tokenStyles(state);
86
+ }
87
+ function togglePhraseModifier(stream, state, phraseModifier, closeRE, openSize) {
88
+ var charBefore = stream.pos > openSize ? stream.string.charAt(stream.pos - openSize - 1) : null;
89
+ var charAfter = stream.peek();
90
+ if (state[phraseModifier]) {
91
+ if ((!charAfter || /\W/.test(charAfter)) && charBefore && /\S/.test(charBefore)) {
92
+ var type = tokenStyles(state);
93
+ state[phraseModifier] = false;
94
+ return type;
95
+ }
96
+ } else if ((!charBefore || /\W/.test(charBefore)) && charAfter && /\S/.test(charAfter) && stream.match(new RegExp("^.*\\S" + closeRE.source + "(?:\\W|$)"), false)) {
97
+ state[phraseModifier] = true;
98
+ state.mode = Modes.attributes;
99
+ }
100
+ return tokenStyles(state);
101
+ }
102
+ function tokenStyles(state) {
103
+ var disabled = textileDisabled(state);
104
+ if (disabled) return disabled;
105
+ var styles = [];
106
+ if (state.layoutType) styles.push(TOKEN_STYLES[state.layoutType]);
107
+ styles = styles.concat(activeStyles(
108
+ state,
109
+ "addition",
110
+ "bold",
111
+ "cite",
112
+ "code",
113
+ "deletion",
114
+ "em",
115
+ "footCite",
116
+ "image",
117
+ "italic",
118
+ "link",
119
+ "span",
120
+ "strong",
121
+ "sub",
122
+ "sup",
123
+ "table",
124
+ "tableHeading"
125
+ ));
126
+ if (state.layoutType === "header")
127
+ styles.push(TOKEN_STYLES.header + "-" + state.header);
128
+ return styles.length ? styles.join(" ") : null;
129
+ }
130
+ function textileDisabled(state) {
131
+ var type = state.layoutType;
132
+ switch (type) {
133
+ case "notextile":
134
+ case "code":
135
+ case "pre":
136
+ return TOKEN_STYLES[type];
137
+ default:
138
+ if (state.notextile)
139
+ return TOKEN_STYLES.notextile + (type ? " " + TOKEN_STYLES[type] : "");
140
+ return null;
141
+ }
142
+ }
143
+ function activeStyles(state) {
144
+ var styles = [];
145
+ for (var i = 1; i < arguments.length; ++i) {
146
+ if (state[arguments[i]])
147
+ styles.push(TOKEN_STYLES[arguments[i]]);
148
+ }
149
+ return styles;
150
+ }
151
+ function blankLine(state) {
152
+ var spanningLayout = state.spanningLayout, type = state.layoutType;
153
+ for (var key in state) if (state.hasOwnProperty(key))
154
+ delete state[key];
155
+ state.mode = Modes.newLayout;
156
+ if (spanningLayout) {
157
+ state.layoutType = type;
158
+ state.spanningLayout = true;
159
+ }
160
+ }
161
+ var REs = {
162
+ cache: {},
163
+ single: {
164
+ bc: "bc",
165
+ bq: "bq",
166
+ definitionList: /- .*?:=+/,
167
+ definitionListEnd: /.*=:\s*$/,
168
+ div: "div",
169
+ drawTable: /\|.*\|/,
170
+ foot: /fn\d+/,
171
+ header: /h[1-6]/,
172
+ html: /\s*<(?:\/)?(\w+)(?:[^>]+)?>(?:[^<]+<\/\1>)?/,
173
+ link: /[^"]+":\S/,
174
+ linkDefinition: /\[[^\s\]]+\]\S+/,
175
+ list: /(?:#+|\*+)/,
176
+ notextile: "notextile",
177
+ para: "p",
178
+ pre: "pre",
179
+ table: "table",
180
+ tableCellAttributes: /[\/\\]\d+/,
181
+ tableHeading: /\|_\./,
182
+ tableText: /[^"_\*\[\(\?\+~\^%@|-]+/,
183
+ text: /[^!"_=\*\[\(<\?\+~\^%@-]+/
184
+ },
185
+ attributes: {
186
+ align: /(?:<>|<|>|=)/,
187
+ selector: /\([^\(][^\)]+\)/,
188
+ lang: /\[[^\[\]]+\]/,
189
+ pad: /(?:\(+|\)+){1,2}/,
190
+ css: /\{[^\}]+\}/
191
+ },
192
+ createRe: function(name) {
193
+ switch (name) {
194
+ case "drawTable":
195
+ return REs.makeRe("^", REs.single.drawTable, "$");
196
+ case "html":
197
+ return REs.makeRe("^", REs.single.html, "(?:", REs.single.html, ")*", "$");
198
+ case "linkDefinition":
199
+ return REs.makeRe("^", REs.single.linkDefinition, "$");
200
+ case "listLayout":
201
+ return REs.makeRe("^", REs.single.list, RE("allAttributes"), "*\\s+");
202
+ case "tableCellAttributes":
203
+ return REs.makeRe("^", REs.choiceRe(
204
+ REs.single.tableCellAttributes,
205
+ RE("allAttributes")
206
+ ), "+\\.");
207
+ case "type":
208
+ return REs.makeRe("^", RE("allTypes"));
209
+ case "typeLayout":
210
+ return REs.makeRe(
211
+ "^",
212
+ RE("allTypes"),
213
+ RE("allAttributes"),
214
+ "*\\.\\.?",
215
+ "(\\s+|$)"
216
+ );
217
+ case "attributes":
218
+ return REs.makeRe("^", RE("allAttributes"), "+");
219
+ case "allTypes":
220
+ return REs.choiceRe(
221
+ REs.single.div,
222
+ REs.single.foot,
223
+ REs.single.header,
224
+ REs.single.bc,
225
+ REs.single.bq,
226
+ REs.single.notextile,
227
+ REs.single.pre,
228
+ REs.single.table,
229
+ REs.single.para
230
+ );
231
+ case "allAttributes":
232
+ return REs.choiceRe(
233
+ REs.attributes.selector,
234
+ REs.attributes.css,
235
+ REs.attributes.lang,
236
+ REs.attributes.align,
237
+ REs.attributes.pad
238
+ );
239
+ default:
240
+ return REs.makeRe("^", REs.single[name]);
241
+ }
242
+ },
243
+ makeRe: function() {
244
+ var pattern = "";
245
+ for (var i = 0; i < arguments.length; ++i) {
246
+ var arg = arguments[i];
247
+ pattern += typeof arg === "string" ? arg : arg.source;
248
+ }
249
+ return new RegExp(pattern);
250
+ },
251
+ choiceRe: function() {
252
+ var parts = [arguments[0]];
253
+ for (var i = 1; i < arguments.length; ++i) {
254
+ parts[i * 2 - 1] = "|";
255
+ parts[i * 2] = arguments[i];
256
+ }
257
+ parts.unshift("(?:");
258
+ parts.push(")");
259
+ return REs.makeRe.apply(null, parts);
260
+ }
261
+ };
262
+ function RE(name) {
263
+ return REs.cache[name] || (REs.cache[name] = REs.createRe(name));
264
+ }
265
+ var Modes = {
266
+ newLayout: function(stream, state) {
267
+ if (stream.match(RE("typeLayout"), false)) {
268
+ state.spanningLayout = false;
269
+ return (state.mode = Modes.blockType)(stream, state);
270
+ }
271
+ var newMode;
272
+ if (!textileDisabled(state)) {
273
+ if (stream.match(RE("listLayout"), false))
274
+ newMode = Modes.list;
275
+ else if (stream.match(RE("drawTable"), false))
276
+ newMode = Modes.table;
277
+ else if (stream.match(RE("linkDefinition"), false))
278
+ newMode = Modes.linkDefinition;
279
+ else if (stream.match(RE("definitionList")))
280
+ newMode = Modes.definitionList;
281
+ else if (stream.match(RE("html"), false))
282
+ newMode = Modes.html;
283
+ }
284
+ return (state.mode = newMode || Modes.text)(stream, state);
285
+ },
286
+ blockType: function(stream, state) {
287
+ var match, type;
288
+ state.layoutType = null;
289
+ if (match = stream.match(RE("type")))
290
+ type = match[0];
291
+ else
292
+ return (state.mode = Modes.text)(stream, state);
293
+ if (match = type.match(RE("header"))) {
294
+ state.layoutType = "header";
295
+ state.header = parseInt(match[0][1]);
296
+ } else if (type.match(RE("bq"))) {
297
+ state.layoutType = "quote";
298
+ } else if (type.match(RE("bc"))) {
299
+ state.layoutType = "code";
300
+ } else if (type.match(RE("foot"))) {
301
+ state.layoutType = "footnote";
302
+ } else if (type.match(RE("notextile"))) {
303
+ state.layoutType = "notextile";
304
+ } else if (type.match(RE("pre"))) {
305
+ state.layoutType = "pre";
306
+ } else if (type.match(RE("div"))) {
307
+ state.layoutType = "div";
308
+ } else if (type.match(RE("table"))) {
309
+ state.layoutType = "table";
310
+ }
311
+ state.mode = Modes.attributes;
312
+ return tokenStyles(state);
313
+ },
314
+ text: function(stream, state) {
315
+ if (stream.match(RE("text"))) return tokenStyles(state);
316
+ var ch = stream.next();
317
+ if (ch === '"')
318
+ return (state.mode = Modes.link)(stream, state);
319
+ return handlePhraseModifier(stream, state, ch);
320
+ },
321
+ attributes: function(stream, state) {
322
+ state.mode = Modes.layoutLength;
323
+ if (stream.match(RE("attributes")))
324
+ return TOKEN_STYLES.attributes;
325
+ else
326
+ return tokenStyles(state);
327
+ },
328
+ layoutLength: function(stream, state) {
329
+ if (stream.eat(".") && stream.eat("."))
330
+ state.spanningLayout = true;
331
+ state.mode = Modes.text;
332
+ return tokenStyles(state);
333
+ },
334
+ list: function(stream, state) {
335
+ var match = stream.match(RE("list"));
336
+ state.listDepth = match[0].length;
337
+ var listMod = (state.listDepth - 1) % 3;
338
+ if (!listMod)
339
+ state.layoutType = "list1";
340
+ else if (listMod === 1)
341
+ state.layoutType = "list2";
342
+ else
343
+ state.layoutType = "list3";
344
+ state.mode = Modes.attributes;
345
+ return tokenStyles(state);
346
+ },
347
+ link: function(stream, state) {
348
+ state.mode = Modes.text;
349
+ if (stream.match(RE("link"))) {
350
+ stream.match(/\S+/);
351
+ return TOKEN_STYLES.link;
352
+ }
353
+ return tokenStyles(state);
354
+ },
355
+ linkDefinition: function(stream) {
356
+ stream.skipToEnd();
357
+ return TOKEN_STYLES.linkDefinition;
358
+ },
359
+ definitionList: function(stream, state) {
360
+ stream.match(RE("definitionList"));
361
+ state.layoutType = "definitionList";
362
+ if (stream.match(/\s*$/))
363
+ state.spanningLayout = true;
364
+ else
365
+ state.mode = Modes.attributes;
366
+ return tokenStyles(state);
367
+ },
368
+ html: function(stream) {
369
+ stream.skipToEnd();
370
+ return TOKEN_STYLES.html;
371
+ },
372
+ table: function(stream, state) {
373
+ state.layoutType = "table";
374
+ return (state.mode = Modes.tableCell)(stream, state);
375
+ },
376
+ tableCell: function(stream, state) {
377
+ if (stream.match(RE("tableHeading")))
378
+ state.tableHeading = true;
379
+ else
380
+ stream.eat("|");
381
+ state.mode = Modes.tableCellAttributes;
382
+ return tokenStyles(state);
383
+ },
384
+ tableCellAttributes: function(stream, state) {
385
+ state.mode = Modes.tableText;
386
+ if (stream.match(RE("tableCellAttributes")))
387
+ return TOKEN_STYLES.attributes;
388
+ else
389
+ return tokenStyles(state);
390
+ },
391
+ tableText: function(stream, state) {
392
+ if (stream.match(RE("tableText")))
393
+ return tokenStyles(state);
394
+ if (stream.peek() === "|") {
395
+ state.mode = Modes.tableCell;
396
+ return tokenStyles(state);
397
+ }
398
+ return handlePhraseModifier(stream, state, stream.next());
399
+ }
400
+ };
401
+ const textile = {
402
+ name: "textile",
403
+ startState: function() {
404
+ return { mode: Modes.newLayout };
405
+ },
406
+ token: function(stream, state) {
407
+ if (stream.sol()) startNewLine(stream, state);
408
+ return state.mode(stream, state);
409
+ },
410
+ blankLine
411
+ };
412
+ export {
413
+ textile
414
+ };
@@ -0,0 +1,218 @@
1
+ var textwords = {};
2
+ var keywords = {
3
+ "allTags": true,
4
+ "closeAll": true,
5
+ "list": true,
6
+ "newJournal": true,
7
+ "newTiddler": true,
8
+ "permaview": true,
9
+ "saveChanges": true,
10
+ "search": true,
11
+ "slider": true,
12
+ "tabs": true,
13
+ "tag": true,
14
+ "tagging": true,
15
+ "tags": true,
16
+ "tiddler": true,
17
+ "timeline": true,
18
+ "today": true,
19
+ "version": true,
20
+ "option": true,
21
+ "with": true,
22
+ "filter": true
23
+ };
24
+ var isSpaceName = /[\w_\-]/i, reHR = /^\-\-\-\-+$/, reWikiCommentStart = /^\/\*\*\*$/, reWikiCommentStop = /^\*\*\*\/$/, reBlockQuote = /^<<<$/, reJsCodeStart = /^\/\/\{\{\{$/, reJsCodeStop = /^\/\/\}\}\}$/, reXmlCodeStart = /^<!--\{\{\{-->$/, reXmlCodeStop = /^<!--\}\}\}-->$/, reCodeBlockStart = /^\{\{\{$/, reCodeBlockStop = /^\}\}\}$/, reUntilCodeStop = /.*?\}\}\}/;
25
+ function chain(stream, state, f) {
26
+ state.tokenize = f;
27
+ return f(stream, state);
28
+ }
29
+ function tokenBase(stream, state) {
30
+ var sol = stream.sol(), ch = stream.peek();
31
+ state.block = false;
32
+ if (sol && /[<\/\*{}\-]/.test(ch)) {
33
+ if (stream.match(reCodeBlockStart)) {
34
+ state.block = true;
35
+ return chain(stream, state, twTokenCode);
36
+ }
37
+ if (stream.match(reBlockQuote))
38
+ return "quote";
39
+ if (stream.match(reWikiCommentStart) || stream.match(reWikiCommentStop))
40
+ return "comment";
41
+ if (stream.match(reJsCodeStart) || stream.match(reJsCodeStop) || stream.match(reXmlCodeStart) || stream.match(reXmlCodeStop))
42
+ return "comment";
43
+ if (stream.match(reHR))
44
+ return "contentSeparator";
45
+ }
46
+ stream.next();
47
+ if (sol && /[\/\*!#;:>|]/.test(ch)) {
48
+ if (ch == "!") {
49
+ stream.skipToEnd();
50
+ return "header";
51
+ }
52
+ if (ch == "*") {
53
+ stream.eatWhile("*");
54
+ return "comment";
55
+ }
56
+ if (ch == "#") {
57
+ stream.eatWhile("#");
58
+ return "comment";
59
+ }
60
+ if (ch == ";") {
61
+ stream.eatWhile(";");
62
+ return "comment";
63
+ }
64
+ if (ch == ":") {
65
+ stream.eatWhile(":");
66
+ return "comment";
67
+ }
68
+ if (ch == ">") {
69
+ stream.eatWhile(">");
70
+ return "quote";
71
+ }
72
+ if (ch == "|")
73
+ return "header";
74
+ }
75
+ if (ch == "{" && stream.match("{{"))
76
+ return chain(stream, state, twTokenCode);
77
+ if (/[hf]/i.test(ch) && /[ti]/i.test(stream.peek()) && stream.match(/\b(ttps?|tp|ile):\/\/[\-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$]/i))
78
+ return "link";
79
+ if (ch == '"')
80
+ return "string";
81
+ if (ch == "~")
82
+ return "brace";
83
+ if (/[\[\]]/.test(ch) && stream.match(ch))
84
+ return "brace";
85
+ if (ch == "@") {
86
+ stream.eatWhile(isSpaceName);
87
+ return "link";
88
+ }
89
+ if (/\d/.test(ch)) {
90
+ stream.eatWhile(/\d/);
91
+ return "number";
92
+ }
93
+ if (ch == "/") {
94
+ if (stream.eat("%")) {
95
+ return chain(stream, state, twTokenComment);
96
+ } else if (stream.eat("/")) {
97
+ return chain(stream, state, twTokenEm);
98
+ }
99
+ }
100
+ if (ch == "_" && stream.eat("_"))
101
+ return chain(stream, state, twTokenUnderline);
102
+ if (ch == "-" && stream.eat("-")) {
103
+ if (stream.peek() != " ")
104
+ return chain(stream, state, twTokenStrike);
105
+ if (stream.peek() == " ")
106
+ return "brace";
107
+ }
108
+ if (ch == "'" && stream.eat("'"))
109
+ return chain(stream, state, twTokenStrong);
110
+ if (ch == "<" && stream.eat("<"))
111
+ return chain(stream, state, twTokenMacro);
112
+ stream.eatWhile(/[\w\$_]/);
113
+ return textwords.propertyIsEnumerable(stream.current()) ? "keyword" : null;
114
+ }
115
+ function twTokenComment(stream, state) {
116
+ var maybeEnd = false, ch;
117
+ while (ch = stream.next()) {
118
+ if (ch == "/" && maybeEnd) {
119
+ state.tokenize = tokenBase;
120
+ break;
121
+ }
122
+ maybeEnd = ch == "%";
123
+ }
124
+ return "comment";
125
+ }
126
+ function twTokenStrong(stream, state) {
127
+ var maybeEnd = false, ch;
128
+ while (ch = stream.next()) {
129
+ if (ch == "'" && maybeEnd) {
130
+ state.tokenize = tokenBase;
131
+ break;
132
+ }
133
+ maybeEnd = ch == "'";
134
+ }
135
+ return "strong";
136
+ }
137
+ function twTokenCode(stream, state) {
138
+ var sb = state.block;
139
+ if (sb && stream.current()) {
140
+ return "comment";
141
+ }
142
+ if (!sb && stream.match(reUntilCodeStop)) {
143
+ state.tokenize = tokenBase;
144
+ return "comment";
145
+ }
146
+ if (sb && stream.sol() && stream.match(reCodeBlockStop)) {
147
+ state.tokenize = tokenBase;
148
+ return "comment";
149
+ }
150
+ stream.next();
151
+ return "comment";
152
+ }
153
+ function twTokenEm(stream, state) {
154
+ var maybeEnd = false, ch;
155
+ while (ch = stream.next()) {
156
+ if (ch == "/" && maybeEnd) {
157
+ state.tokenize = tokenBase;
158
+ break;
159
+ }
160
+ maybeEnd = ch == "/";
161
+ }
162
+ return "emphasis";
163
+ }
164
+ function twTokenUnderline(stream, state) {
165
+ var maybeEnd = false, ch;
166
+ while (ch = stream.next()) {
167
+ if (ch == "_" && maybeEnd) {
168
+ state.tokenize = tokenBase;
169
+ break;
170
+ }
171
+ maybeEnd = ch == "_";
172
+ }
173
+ return "link";
174
+ }
175
+ function twTokenStrike(stream, state) {
176
+ var maybeEnd = false, ch;
177
+ while (ch = stream.next()) {
178
+ if (ch == "-" && maybeEnd) {
179
+ state.tokenize = tokenBase;
180
+ break;
181
+ }
182
+ maybeEnd = ch == "-";
183
+ }
184
+ return "deleted";
185
+ }
186
+ function twTokenMacro(stream, state) {
187
+ if (stream.current() == "<<") {
188
+ return "meta";
189
+ }
190
+ var ch = stream.next();
191
+ if (!ch) {
192
+ state.tokenize = tokenBase;
193
+ return null;
194
+ }
195
+ if (ch == ">") {
196
+ if (stream.peek() == ">") {
197
+ stream.next();
198
+ state.tokenize = tokenBase;
199
+ return "meta";
200
+ }
201
+ }
202
+ stream.eatWhile(/[\w\$_]/);
203
+ return keywords.propertyIsEnumerable(stream.current()) ? "keyword" : null;
204
+ }
205
+ const tiddlyWiki = {
206
+ name: "tiddlywiki",
207
+ startState: function() {
208
+ return { tokenize: tokenBase };
209
+ },
210
+ token: function(stream, state) {
211
+ if (stream.eatSpace()) return null;
212
+ var style = state.tokenize(stream, state);
213
+ return style;
214
+ }
215
+ };
216
+ export {
217
+ tiddlyWiki
218
+ };