qwik2md 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 (335) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.travis.yml +4 -0
  4. data/Gemfile +4 -0
  5. data/README.md +36 -0
  6. data/Rakefile +10 -0
  7. data/bin/console +14 -0
  8. data/bin/setup +8 -0
  9. data/exe/qwik2md +17 -0
  10. data/lib/qwik2md/version.rb +3 -0
  11. data/lib/qwik2md.rb +39 -0
  12. data/qwik2md.gemspec +30 -0
  13. data/vendor/qwik/AUTHORS +10 -0
  14. data/vendor/qwik/COPYING +340 -0
  15. data/vendor/qwik/COPYRIGHT +346 -0
  16. data/vendor/qwik/lib/qwik/Makefile +63 -0
  17. data/vendor/qwik/lib/qwik/Rakefile +17 -0
  18. data/vendor/qwik/lib/qwik/act-aa.rb +83 -0
  19. data/vendor/qwik/lib/qwik/act-archive.rb +386 -0
  20. data/vendor/qwik/lib/qwik/act-attach.rb +304 -0
  21. data/vendor/qwik/lib/qwik/act-backup.rb +236 -0
  22. data/vendor/qwik/lib/qwik/act-basic.rb +325 -0
  23. data/vendor/qwik/lib/qwik/act-book.rb +161 -0
  24. data/vendor/qwik/lib/qwik/act-calc.rb +371 -0
  25. data/vendor/qwik/lib/qwik/act-charset.rb +251 -0
  26. data/vendor/qwik/lib/qwik/act-christel.rb +112 -0
  27. data/vendor/qwik/lib/qwik/act-chronology.rb +149 -0
  28. data/vendor/qwik/lib/qwik/act-code.rb +155 -0
  29. data/vendor/qwik/lib/qwik/act-comment.rb +554 -0
  30. data/vendor/qwik/lib/qwik/act-config.rb +49 -0
  31. data/vendor/qwik/lib/qwik/act-counter.rb +125 -0
  32. data/vendor/qwik/lib/qwik/act-day.rb +96 -0
  33. data/vendor/qwik/lib/qwik/act-describe.rb +135 -0
  34. data/vendor/qwik/lib/qwik/act-diary.rb +109 -0
  35. data/vendor/qwik/lib/qwik/act-edit.rb +317 -0
  36. data/vendor/qwik/lib/qwik/act-embed-html.rb +296 -0
  37. data/vendor/qwik/lib/qwik/act-emode.rb +150 -0
  38. data/vendor/qwik/lib/qwik/act-event.rb +187 -0
  39. data/vendor/qwik/lib/qwik/act-file.rb +303 -0
  40. data/vendor/qwik/lib/qwik/act-files.rb +771 -0
  41. data/vendor/qwik/lib/qwik/act-getpass.rb +295 -0
  42. data/vendor/qwik/lib/qwik/act-history.rb +136 -0
  43. data/vendor/qwik/lib/qwik/act-html.rb +204 -0
  44. data/vendor/qwik/lib/qwik/act-httpauth.rb +147 -0
  45. data/vendor/qwik/lib/qwik/act-include.rb +142 -0
  46. data/vendor/qwik/lib/qwik/act-interwiki.rb +189 -0
  47. data/vendor/qwik/lib/qwik/act-isearch.rb +109 -0
  48. data/vendor/qwik/lib/qwik/act-keywords.rb +137 -0
  49. data/vendor/qwik/lib/qwik/act-lang.rb +81 -0
  50. data/vendor/qwik/lib/qwik/act-license.rb +63 -0
  51. data/vendor/qwik/lib/qwik/act-list.rb +287 -0
  52. data/vendor/qwik/lib/qwik/act-login.rb +410 -0
  53. data/vendor/qwik/lib/qwik/act-logout.rb +60 -0
  54. data/vendor/qwik/lib/qwik/act-mail.rb +159 -0
  55. data/vendor/qwik/lib/qwik/act-map.rb +292 -0
  56. data/vendor/qwik/lib/qwik/act-md5.rb +42 -0
  57. data/vendor/qwik/lib/qwik/act-mdlb.rb +741 -0
  58. data/vendor/qwik/lib/qwik/act-media.rb +416 -0
  59. data/vendor/qwik/lib/qwik/act-member.rb +157 -0
  60. data/vendor/qwik/lib/qwik/act-menu.rb +142 -0
  61. data/vendor/qwik/lib/qwik/act-metadata.rb +323 -0
  62. data/vendor/qwik/lib/qwik/act-mlsubmitform.rb +49 -0
  63. data/vendor/qwik/lib/qwik/act-monitor.rb +167 -0
  64. data/vendor/qwik/lib/qwik/act-new.rb +418 -0
  65. data/vendor/qwik/lib/qwik/act-pagelist.rb +248 -0
  66. data/vendor/qwik/lib/qwik/act-password.rb +145 -0
  67. data/vendor/qwik/lib/qwik/act-plan.rb +210 -0
  68. data/vendor/qwik/lib/qwik/act-povray.rb +230 -0
  69. data/vendor/qwik/lib/qwik/act-presen.rb +380 -0
  70. data/vendor/qwik/lib/qwik/act-redirect.rb +133 -0
  71. data/vendor/qwik/lib/qwik/act-ring.rb +1071 -0
  72. data/vendor/qwik/lib/qwik/act-rrefs.rb +255 -0
  73. data/vendor/qwik/lib/qwik/act-ruby.rb +116 -0
  74. data/vendor/qwik/lib/qwik/act-sample.rb +170 -0
  75. data/vendor/qwik/lib/qwik/act-save.rb +295 -0
  76. data/vendor/qwik/lib/qwik/act-schedule.rb +374 -0
  77. data/vendor/qwik/lib/qwik/act-search.rb +180 -0
  78. data/vendor/qwik/lib/qwik/act-searchwords.rb +51 -0
  79. data/vendor/qwik/lib/qwik/act-sendpass.rb +83 -0
  80. data/vendor/qwik/lib/qwik/act-site.rb +89 -0
  81. data/vendor/qwik/lib/qwik/act-sitebackup.rb +419 -0
  82. data/vendor/qwik/lib/qwik/act-sitelog.rb +118 -0
  83. data/vendor/qwik/lib/qwik/act-smil.rb +299 -0
  84. data/vendor/qwik/lib/qwik/act-status.rb +220 -0
  85. data/vendor/qwik/lib/qwik/act-style.rb +608 -0
  86. data/vendor/qwik/lib/qwik/act-table.rb +263 -0
  87. data/vendor/qwik/lib/qwik/act-tableform.rb +241 -0
  88. data/vendor/qwik/lib/qwik/act-tag.rb +103 -0
  89. data/vendor/qwik/lib/qwik/act-text.rb +70 -0
  90. data/vendor/qwik/lib/qwik/act-textarea.rb +164 -0
  91. data/vendor/qwik/lib/qwik/act-theme.rb +346 -0
  92. data/vendor/qwik/lib/qwik/act-toc.rb +112 -0
  93. data/vendor/qwik/lib/qwik/act-typekey.rb +198 -0
  94. data/vendor/qwik/lib/qwik/act-under-const.rb +94 -0
  95. data/vendor/qwik/lib/qwik/act-webservice.rb +321 -0
  96. data/vendor/qwik/lib/qwik/act-wema.rb +558 -0
  97. data/vendor/qwik/lib/qwik/act-wysiwyg.rb +238 -0
  98. data/vendor/qwik/lib/qwik/action.rb +325 -0
  99. data/vendor/qwik/lib/qwik/autoreload.rb +98 -0
  100. data/vendor/qwik/lib/qwik/bench-bench.rb +28 -0
  101. data/vendor/qwik/lib/qwik/bench-emode.rb +47 -0
  102. data/vendor/qwik/lib/qwik/bench-format-xml.rb +70 -0
  103. data/vendor/qwik/lib/qwik/bench-large-table.rb +62 -0
  104. data/vendor/qwik/lib/qwik/bench-md5.rb +14 -0
  105. data/vendor/qwik/lib/qwik/bench-module-session.rb +19 -0
  106. data/vendor/qwik/lib/qwik/bench-page.rb +50 -0
  107. data/vendor/qwik/lib/qwik/bench-s-md5.rb +28 -0
  108. data/vendor/qwik/lib/qwik/bench-session.rb +25 -0
  109. data/vendor/qwik/lib/qwik/bench-textformat.rb +31 -0
  110. data/vendor/qwik/lib/qwik/catalog-factory.rb +91 -0
  111. data/vendor/qwik/lib/qwik/catalog-ja.rb +479 -0
  112. data/vendor/qwik/lib/qwik/catalog-ml-ja.rb +145 -0
  113. data/vendor/qwik/lib/qwik/check-act-monitor.rb +112 -0
  114. data/vendor/qwik/lib/qwik/check-act-monitor2.rb +46 -0
  115. data/vendor/qwik/lib/qwik/check-act-theme.rb +27 -0
  116. data/vendor/qwik/lib/qwik/check-event.rb +112 -0
  117. data/vendor/qwik/lib/qwik/check-event2.rb +55 -0
  118. data/vendor/qwik/lib/qwik/check-htree-rexml.rb +77 -0
  119. data/vendor/qwik/lib/qwik/check-htree.rb +51 -0
  120. data/vendor/qwik/lib/qwik/check-libxml.rb +135 -0
  121. data/vendor/qwik/lib/qwik/check-many-pages.rb +47 -0
  122. data/vendor/qwik/lib/qwik/check-monitor.rb +33 -0
  123. data/vendor/qwik/lib/qwik/check-observer.rb +67 -0
  124. data/vendor/qwik/lib/qwik/check-server.rb +61 -0
  125. data/vendor/qwik/lib/qwik/check-uuencode.rb +33 -0
  126. data/vendor/qwik/lib/qwik/check-webdav.rb +65 -0
  127. data/vendor/qwik/lib/qwik/check-xml-xpath.rb +27 -0
  128. data/vendor/qwik/lib/qwik/common-backtrace.rb +94 -0
  129. data/vendor/qwik/lib/qwik/common-basic.rb +111 -0
  130. data/vendor/qwik/lib/qwik/common-condition.rb +142 -0
  131. data/vendor/qwik/lib/qwik/common-error.rb +48 -0
  132. data/vendor/qwik/lib/qwik/common-gettext.rb +50 -0
  133. data/vendor/qwik/lib/qwik/common-javascript.rb +45 -0
  134. data/vendor/qwik/lib/qwik/common-notice.rb +132 -0
  135. data/vendor/qwik/lib/qwik/common-plain.rb +105 -0
  136. data/vendor/qwik/lib/qwik/common-plugin.rb +111 -0
  137. data/vendor/qwik/lib/qwik/common-res.rb +76 -0
  138. data/vendor/qwik/lib/qwik/common-resolve.rb +92 -0
  139. data/vendor/qwik/lib/qwik/common-send.rb +171 -0
  140. data/vendor/qwik/lib/qwik/common-session.rb +139 -0
  141. data/vendor/qwik/lib/qwik/common-surface.rb +261 -0
  142. data/vendor/qwik/lib/qwik/common-url.rb +90 -0
  143. data/vendor/qwik/lib/qwik/compat/Makefile +12 -0
  144. data/vendor/qwik/lib/qwik/compat/add_load_path.rb +1 -0
  145. data/vendor/qwik/lib/qwik/config.rb +299 -0
  146. data/vendor/qwik/lib/qwik/db-b-backup.rb +142 -0
  147. data/vendor/qwik/lib/qwik/db-backup.rb +184 -0
  148. data/vendor/qwik/lib/qwik/db-berkeley.rb +306 -0
  149. data/vendor/qwik/lib/qwik/db-filesystem.rb +305 -0
  150. data/vendor/qwik/lib/qwik/db-indexer.rb +154 -0
  151. data/vendor/qwik/lib/qwik/db-searchwords.rb +238 -0
  152. data/vendor/qwik/lib/qwik/description-ja.rb +267 -0
  153. data/vendor/qwik/lib/qwik/description.rb +256 -0
  154. data/vendor/qwik/lib/qwik/dev-add-copyright.rb +23 -0
  155. data/vendor/qwik/lib/qwik/dev-backup.rb +24 -0
  156. data/vendor/qwik/lib/qwik/dev-bench.rb +175 -0
  157. data/vendor/qwik/lib/qwik/dev-calctime.rb +52 -0
  158. data/vendor/qwik/lib/qwik/dev-css-compressor.rb +60 -0
  159. data/vendor/qwik/lib/qwik/dev-extract-catalog.rb +102 -0
  160. data/vendor/qwik/lib/qwik/dev-js-compressor.rb +73 -0
  161. data/vendor/qwik/lib/qwik/dev-release.rb +235 -0
  162. data/vendor/qwik/lib/qwik/dev-replace.rb +353 -0
  163. data/vendor/qwik/lib/qwik/dev-sendmail.rb +25 -0
  164. data/vendor/qwik/lib/qwik/farm.rb +283 -0
  165. data/vendor/qwik/lib/qwik/gettext.rb +56 -0
  166. data/vendor/qwik/lib/qwik/group-cond.rb +157 -0
  167. data/vendor/qwik/lib/qwik/group-config.rb +247 -0
  168. data/vendor/qwik/lib/qwik/group-confirm.rb +147 -0
  169. data/vendor/qwik/lib/qwik/group-db.rb +326 -0
  170. data/vendor/qwik/lib/qwik/group-mail.rb +195 -0
  171. data/vendor/qwik/lib/qwik/group-member.rb +307 -0
  172. data/vendor/qwik/lib/qwik/group-sendmail.rb +231 -0
  173. data/vendor/qwik/lib/qwik/group-site.rb +374 -0
  174. data/vendor/qwik/lib/qwik/group-sweep.rb +63 -0
  175. data/vendor/qwik/lib/qwik/group.rb +157 -0
  176. data/vendor/qwik/lib/qwik/helper.rb +6 -0
  177. data/vendor/qwik/lib/qwik/html-generator.rb +104 -0
  178. data/vendor/qwik/lib/qwik/html-to-wabisabi.rb +148 -0
  179. data/vendor/qwik/lib/qwik/htree-diff.rb +87 -0
  180. data/vendor/qwik/lib/qwik/htree-format-xml.rb +57 -0
  181. data/vendor/qwik/lib/qwik/htree-generator.rb +144 -0
  182. data/vendor/qwik/lib/qwik/htree-get.rb +251 -0
  183. data/vendor/qwik/lib/qwik/htree-html-generator.rb +179 -0
  184. data/vendor/qwik/lib/qwik/htree-template.rb +263 -0
  185. data/vendor/qwik/lib/qwik/htree-to-wabisabi.rb +171 -0
  186. data/vendor/qwik/lib/qwik/loadlib.rb +79 -0
  187. data/vendor/qwik/lib/qwik/logger.rb +115 -0
  188. data/vendor/qwik/lib/qwik/mail-body.rb +171 -0
  189. data/vendor/qwik/lib/qwik/mail-header.rb +474 -0
  190. data/vendor/qwik/lib/qwik/mail-multipart.rb +193 -0
  191. data/vendor/qwik/lib/qwik/mail-parse.rb +147 -0
  192. data/vendor/qwik/lib/qwik/mail.rb +341 -0
  193. data/vendor/qwik/lib/qwik/mailaddress.rb +83 -0
  194. data/vendor/qwik/lib/qwik/mdlb-model.rb +81 -0
  195. data/vendor/qwik/lib/qwik/mdlb-sample.rb +324 -0
  196. data/vendor/qwik/lib/qwik/ml-catalog-factory.rb +27 -0
  197. data/vendor/qwik/lib/qwik/ml-exception.rb +15 -0
  198. data/vendor/qwik/lib/qwik/ml-generator.rb +28 -0
  199. data/vendor/qwik/lib/qwik/ml-gettext.rb +137 -0
  200. data/vendor/qwik/lib/qwik/ml-logger.rb +82 -0
  201. data/vendor/qwik/lib/qwik/ml-memory.rb +65 -0
  202. data/vendor/qwik/lib/qwik/ml-msg-validator.rb +86 -0
  203. data/vendor/qwik/lib/qwik/ml-processor.rb +609 -0
  204. data/vendor/qwik/lib/qwik/ml-quickml-server.rb +122 -0
  205. data/vendor/qwik/lib/qwik/ml-sendmail.rb +0 -0
  206. data/vendor/qwik/lib/qwik/ml-server.rb +107 -0
  207. data/vendor/qwik/lib/qwik/ml-session.rb +348 -0
  208. data/vendor/qwik/lib/qwik/ml-sweeper.rb +101 -0
  209. data/vendor/qwik/lib/qwik/mock-logger.rb +65 -0
  210. data/vendor/qwik/lib/qwik/mock-sendmail.rb +78 -0
  211. data/vendor/qwik/lib/qwik/mock-socket.rb +82 -0
  212. data/vendor/qwik/lib/qwik/modulobe.rb +406 -0
  213. data/vendor/qwik/lib/qwik/mongrel-server.rb +72 -0
  214. data/vendor/qwik/lib/qwik/page-files.rb +249 -0
  215. data/vendor/qwik/lib/qwik/page-generate.rb +82 -0
  216. data/vendor/qwik/lib/qwik/page-get.rb +262 -0
  217. data/vendor/qwik/lib/qwik/page-images.rb +168 -0
  218. data/vendor/qwik/lib/qwik/page-put.rb +128 -0
  219. data/vendor/qwik/lib/qwik/page-rrefs.rb +154 -0
  220. data/vendor/qwik/lib/qwik/page-title.rb +0 -0
  221. data/vendor/qwik/lib/qwik/page-wikidb.rb +234 -0
  222. data/vendor/qwik/lib/qwik/page.rb +67 -0
  223. data/vendor/qwik/lib/qwik/pages.rb +444 -0
  224. data/vendor/qwik/lib/qwik/parse-plugin.rb +249 -0
  225. data/vendor/qwik/lib/qwik/parser-emode.rb +116 -0
  226. data/vendor/qwik/lib/qwik/parser-inline.rb +272 -0
  227. data/vendor/qwik/lib/qwik/parser.rb +349 -0
  228. data/vendor/qwik/lib/qwik/password.rb +183 -0
  229. data/vendor/qwik/lib/qwik/periodic.rb +79 -0
  230. data/vendor/qwik/lib/qwik/qp.rb +56 -0
  231. data/vendor/qwik/lib/qwik/qwik-service.rb +341 -0
  232. data/vendor/qwik/lib/qwik/qwik.rb +5 -0
  233. data/vendor/qwik/lib/qwik/qwikweb-adduser.rb +34 -0
  234. data/vendor/qwik/lib/qwik/qwikweb-catalog-validator.rb +110 -0
  235. data/vendor/qwik/lib/qwik/qwikweb-incgen.rb +28 -0
  236. data/vendor/qwik/lib/qwik/qwikweb-makesite.rb +41 -0
  237. data/vendor/qwik/lib/qwik/qwikweb-server.rb +44 -0
  238. data/vendor/qwik/lib/qwik/qwikweb-showpassword.rb +26 -0
  239. data/vendor/qwik/lib/qwik/qwikweb-watchlog.rb +67 -0
  240. data/vendor/qwik/lib/qwik/request-path.rb +304 -0
  241. data/vendor/qwik/lib/qwik/request-ua.rb +76 -0
  242. data/vendor/qwik/lib/qwik/request-webrick.rb +81 -0
  243. data/vendor/qwik/lib/qwik/request.rb +91 -0
  244. data/vendor/qwik/lib/qwik/resolve-tdiary.rb +292 -0
  245. data/vendor/qwik/lib/qwik/resolve.rb +121 -0
  246. data/vendor/qwik/lib/qwik/response.rb +228 -0
  247. data/vendor/qwik/lib/qwik/server-memory.rb +57 -0
  248. data/vendor/qwik/lib/qwik/server-webrick.rb +102 -0
  249. data/vendor/qwik/lib/qwik/server.rb +252 -0
  250. data/vendor/qwik/lib/qwik/site-config.rb +149 -0
  251. data/vendor/qwik/lib/qwik/site-db.rb +136 -0
  252. data/vendor/qwik/lib/qwik/site-event.rb +162 -0
  253. data/vendor/qwik/lib/qwik/site-files.rb +86 -0
  254. data/vendor/qwik/lib/qwik/site-group.rb +103 -0
  255. data/vendor/qwik/lib/qwik/site-index.rb +47 -0
  256. data/vendor/qwik/lib/qwik/site-log.rb +64 -0
  257. data/vendor/qwik/lib/qwik/site-member.rb +230 -0
  258. data/vendor/qwik/lib/qwik/site-monitor.rb +97 -0
  259. data/vendor/qwik/lib/qwik/site-pages.rb +62 -0
  260. data/vendor/qwik/lib/qwik/site-plan.rb +139 -0
  261. data/vendor/qwik/lib/qwik/site-report.rb +282 -0
  262. data/vendor/qwik/lib/qwik/site-resolve.rb +230 -0
  263. data/vendor/qwik/lib/qwik/site-rrefs.rb +18 -0
  264. data/vendor/qwik/lib/qwik/site-search.rb +180 -0
  265. data/vendor/qwik/lib/qwik/site-timeline.rb +153 -0
  266. data/vendor/qwik/lib/qwik/site-url.rb +189 -0
  267. data/vendor/qwik/lib/qwik/site.rb +76 -0
  268. data/vendor/qwik/lib/qwik/smil-time.rb +105 -0
  269. data/vendor/qwik/lib/qwik/smtp-session.rb +331 -0
  270. data/vendor/qwik/lib/qwik/template-generator.rb +149 -0
  271. data/vendor/qwik/lib/qwik/template.rb +85 -0
  272. data/vendor/qwik/lib/qwik/test-common.rb +10 -0
  273. data/vendor/qwik/lib/qwik/test-ml-info.rb +225 -0
  274. data/vendor/qwik/lib/qwik/test-module-ml.rb +142 -0
  275. data/vendor/qwik/lib/qwik/test-module-path.rb +110 -0
  276. data/vendor/qwik/lib/qwik/test-module-public.rb +70 -0
  277. data/vendor/qwik/lib/qwik/test-module-server.rb +98 -0
  278. data/vendor/qwik/lib/qwik/test-module-session.rb +264 -0
  279. data/vendor/qwik/lib/qwik/test-module-suite.rb +91 -0
  280. data/vendor/qwik/lib/qwik/test-ms-applemail.rb +59 -0
  281. data/vendor/qwik/lib/qwik/test-ms-attach.rb +174 -0
  282. data/vendor/qwik/lib/qwik/test-ms-basic.rb +40 -0
  283. data/vendor/qwik/lib/qwik/test-ms-close.rb +35 -0
  284. data/vendor/qwik/lib/qwik/test-ms-confirm.rb +75 -0
  285. data/vendor/qwik/lib/qwik/test-ms-ignore-spam.rb +57 -0
  286. data/vendor/qwik/lib/qwik/test-ms-japanese.rb +97 -0
  287. data/vendor/qwik/lib/qwik/test-ms-jfilename.rb +82 -0
  288. data/vendor/qwik/lib/qwik/test-ms-large.rb +58 -0
  289. data/vendor/qwik/lib/qwik/test-ms-member.rb +103 -0
  290. data/vendor/qwik/lib/qwik/test-ms-multipart.rb +84 -0
  291. data/vendor/qwik/lib/qwik/test-ms-org.rb +129 -0
  292. data/vendor/qwik/lib/qwik/test-ms-plan.rb +130 -0
  293. data/vendor/qwik/lib/qwik/test-ms-post.rb +53 -0
  294. data/vendor/qwik/lib/qwik/test-ms-quopri.rb +76 -0
  295. data/vendor/qwik/lib/qwik/test-sub-quopri.rb +45 -0
  296. data/vendor/qwik/lib/qwik/test-submit-base64.rb +59 -0
  297. data/vendor/qwik/lib/qwik/test-submit-forward.rb +61 -0
  298. data/vendor/qwik/lib/qwik/test-submit-html-mail.rb +52 -0
  299. data/vendor/qwik/lib/qwik/test-submit-japanese.rb +135 -0
  300. data/vendor/qwik/lib/qwik/test-submit-jfilename.rb +144 -0
  301. data/vendor/qwik/lib/qwik/test-submit-uuencode.rb +71 -0
  302. data/vendor/qwik/lib/qwik/test-suite-all.rb +8 -0
  303. data/vendor/qwik/lib/qwik/test-suite-basic.rb +9 -0
  304. data/vendor/qwik/lib/qwik/test-suite-ml.rb +9 -0
  305. data/vendor/qwik/lib/qwik/test-typekey.rb +64 -0
  306. data/vendor/qwik/lib/qwik/testunit.rb +45 -0
  307. data/vendor/qwik/lib/qwik/tokenizer-inline.rb +288 -0
  308. data/vendor/qwik/lib/qwik/tokenizer.rb +331 -0
  309. data/vendor/qwik/lib/qwik/typekey.rb +160 -0
  310. data/vendor/qwik/lib/qwik/util-basic.rb +135 -0
  311. data/vendor/qwik/lib/qwik/util-charset.rb +331 -0
  312. data/vendor/qwik/lib/qwik/util-css.rb +56 -0
  313. data/vendor/qwik/lib/qwik/util-csv-tokenizer.rb +113 -0
  314. data/vendor/qwik/lib/qwik/util-filename.rb +112 -0
  315. data/vendor/qwik/lib/qwik/util-pathname.rb +202 -0
  316. data/vendor/qwik/lib/qwik/util-pid.rb +58 -0
  317. data/vendor/qwik/lib/qwik/util-safe.rb +67 -0
  318. data/vendor/qwik/lib/qwik/util-sendmail.rb +273 -0
  319. data/vendor/qwik/lib/qwik/util-string.rb +202 -0
  320. data/vendor/qwik/lib/qwik/util-time.rb +125 -0
  321. data/vendor/qwik/lib/qwik/util-webrick.rb +176 -0
  322. data/vendor/qwik/lib/qwik/version.rb +11 -0
  323. data/vendor/qwik/lib/qwik/wabisabi-basic.rb +163 -0
  324. data/vendor/qwik/lib/qwik/wabisabi-diff.rb +130 -0
  325. data/vendor/qwik/lib/qwik/wabisabi-format-xml.rb +310 -0
  326. data/vendor/qwik/lib/qwik/wabisabi-generator.rb +262 -0
  327. data/vendor/qwik/lib/qwik/wabisabi-index.rb +174 -0
  328. data/vendor/qwik/lib/qwik/wabisabi-table.rb +212 -0
  329. data/vendor/qwik/lib/qwik/wabisabi-template.rb +295 -0
  330. data/vendor/qwik/lib/qwik/wabisabi-to-htree.rb +111 -0
  331. data/vendor/qwik/lib/qwik/wabisabi-to-wiki.rb +690 -0
  332. data/vendor/qwik/lib/qwik/wabisabi-traverse.rb +207 -0
  333. data/vendor/qwik/lib/qwik/wabisabi-validator.rb +116 -0
  334. data/vendor/qwik/lib/qwik/wabisabi.rb +5 -0
  335. metadata +492 -0
@@ -0,0 +1,380 @@
1
+ # -*- coding: shift_jis -*-
2
+ # Copyright (C) 2003-2006 Kouichirou Eto, All rights reserved.
3
+ # This is free software with ABSOLUTELY NO WARRANTY.
4
+ # You can redistribute it and/or modify it under the terms of the GNU GPL 2.
5
+
6
+ $LOAD_PATH.unshift '..' unless $LOAD_PATH.include? '..'
7
+
8
+ module Qwik
9
+ class Action
10
+ D_ExtPresen = {
11
+ :dt => 'Presentaion mode',
12
+ :dd => 'You can show the page in presentation mode.',
13
+ :dc => "* How to
14
+ [[FrontPage.presen]]
15
+ [[FrontPage.presen]]
16
+ Follow this link and you'll see the presen mode of the FrontPage.
17
+ {{presen}}
18
+ You can show a link to presentation mode.
19
+ ** Specify Presentation theme
20
+ {{presen_theme(qwikblack)}}
21
+ You can specify the presentation theme by this plugin.
22
+ {{presen_theme_list}}
23
+ You can choose from this list.
24
+ * Thanks
25
+ I use
26
+ [[S5: A Simple Standards-Based Slide Show System|http://www.meyerweb.com/eric/tools/s5/]]
27
+ by Mr. Eric Meyer for this presentation mode. Thank you very much.
28
+ "
29
+ }
30
+
31
+ D_ExtPresen_ja = {
32
+ :dt => 'プレゼン・モード',
33
+ :dd => 'プレゼン・モードで表示します。',
34
+ :dc => '* 使い方
35
+ [[FrontPage.presen]]
36
+ [[FrontPage.presen]]
37
+ このリンクをたどると、FrontPageをプレゼン・モードで表示します。
38
+ {{presen}}
39
+ あるページをプレゼン・モードにするリンクを表示したい場合は、
40
+ このプラグインをご利用下さい。
41
+ ** プレゼンテーマ指定
42
+ {{presen_theme(qwikblack)}}
43
+ このようにして、プレゼンテーマを指定できます。
44
+ {{presen_theme_list}}
45
+ この一覧の中から選べます。
46
+ * 感謝
47
+ プレゼン・モードには、Eric Meyer氏による
48
+ [[S5: A Simple Standards-Based Slide Show System|http://www.meyerweb.com/eric/tools/s5/]]
49
+ を使わせていただいております。どうもありがとうございます。
50
+ '
51
+ }
52
+
53
+ def plg_presen_switch
54
+ return nil if ! defined?(@req.base) || @req.base.nil?
55
+ return plg_ext('presen', _('Present')) if /^Presen/ =~ @req.base
56
+ return nil
57
+ end
58
+
59
+ def plg_presen
60
+ return nil if ! defined?(@req.base) || @req.base.nil?
61
+ return page_attribute('presen', _('Presentation mode'))
62
+ end
63
+ alias plg_show_presen plg_presen # FIXME: Make this obsolete.
64
+
65
+ def plg_presen_theme(theme)
66
+ return # Do nothing.
67
+ end
68
+
69
+ def plg_presen_theme_list
70
+ return [:ul, *presen_theme_list.map {|t| [:li, t] }]
71
+ end
72
+
73
+ PRESEN_THEME_IGNORE_DIR = %(default)
74
+
75
+ def presen_theme_list
76
+ themes = []
77
+ theme_path = @config.theme_dir.path+'s5'
78
+ theme_path.each_entry {|d|
79
+ s = d.to_s
80
+ next if /\A\./ =~ s
81
+ next if PRESEN_THEME_IGNORE_DIR.include?(s)
82
+ dir = theme_path+d
83
+ next unless dir.directory?
84
+ themes << d.to_s
85
+ }
86
+ return themes.sort
87
+ end
88
+
89
+ # ============================== ext_presen
90
+ PRESEN_DEFAULT_THEME = 'qwikworld'
91
+
92
+ def ext_presen
93
+ c_require_pagename
94
+ c_require_page_exist
95
+ c_require_no_path_args
96
+ c_require_no_ext_args
97
+
98
+ # Get theme.
99
+ page = @site[@req.base]
100
+ content = page.load
101
+
102
+ w = c_parse(content)
103
+ theme = presen_get_theme(w)
104
+ theme ||= PRESEN_DEFAULT_THEME
105
+
106
+ w = c_res(content)
107
+
108
+ w = presen_patch(w)
109
+
110
+ c_set_html
111
+ c_set_no_cache
112
+ @res.body = PresenGenerator.generate(@site, @req.base, w, theme)
113
+ end
114
+
115
+ def presen_patch(wabisabi)
116
+ if wabisabi.is_a?(String) # for test
117
+ wabisabi = c_parse(wabisabi)
118
+ end
119
+
120
+ nw = []
121
+ wabisabi.each {|ele|
122
+ if ele.is_a?(Array) && ele[0] == :plugin &&
123
+ ele.attr[:method] == 'com'
124
+ # do nothing
125
+ else
126
+ nw << ele
127
+ end
128
+ }
129
+ return nw
130
+ end
131
+
132
+ def presen_get_theme(wabisabi)
133
+ if wabisabi.is_a?(String) # for test
134
+ wabisabi = c_parse(wabisabi)
135
+ end
136
+
137
+ theme = nil
138
+ wabisabi.each {|ele|
139
+ if ele.is_a?(Array) && ele[0] == :plugin &&
140
+ ele.attr[:method] == 'presen_theme'
141
+ theme = ele.attr[:param]
142
+ end
143
+ }
144
+ return theme
145
+ end
146
+
147
+ def nu_presen_get_theme(content)
148
+ theme = 'i18n'
149
+ wabisabi = c_res(content)
150
+ wabisabi.each {|ele|
151
+ if ele.is_a?(Array) && ele[0] == :plugin &&
152
+ ele.attr[:method] == 'presen_theme'
153
+ theme = ele.attr[:param]
154
+ end
155
+ }
156
+ theme
157
+ end
158
+ end
159
+
160
+ class PresenGenerator
161
+ def self.generate(site, pagename, wabisabi, theme=nil)
162
+ page = site[pagename]
163
+ title = page.get_title
164
+
165
+ wabisabi = resolve_h(wabisabi)
166
+ wabisabi = resolve_slide(wabisabi)
167
+
168
+ #theme ||= 'i18n'
169
+ theme ||= 'qwikworld'
170
+ #theme = 'qwikblack'
171
+ #theme = 'qwikborder'
172
+
173
+ return html_page(title, theme, wabisabi, pagename)
174
+ end
175
+
176
+ REPLACE_H = {:h2=>:h1, :h3=>:h2, :h4=>:h3, :h5=>:h4, :h6=>:h5}
177
+ def self.resolve_h(wabisabi)
178
+ wabisabi.each_tag(:h2, :h3, :h4, :h5, :h6){|w|
179
+ w[0] = REPLACE_H[w[0]]
180
+ w
181
+ }
182
+ end
183
+
184
+ def self.resolve_slide(wabisabi)
185
+ presentation = []
186
+ slide = []
187
+ presentation << slide
188
+ wabisabi.each {|e|
189
+ if e.is_a?(Array) && e[0] == :h1 && 0 < slide.size
190
+ slide = []
191
+ presentation << slide
192
+ end
193
+ slide << e
194
+ }
195
+
196
+ return presentation.map {|slide|
197
+ [:div, {:class=>'slide'}, slide]
198
+ }
199
+ end
200
+
201
+ private
202
+
203
+ def self.html_page(title, theme, wabisabi, pagename)
204
+ theme_href = ".theme/s5/#{theme}/slides.css"
205
+ html = [[:"!DOCTYPE", 'html', 'PUBLIC',
206
+ '-//W3C//DTD HTML 4.01 Transitional//EN',
207
+ 'http://www.w3.org/TR/html4/loose.dtd'],
208
+ [:html,
209
+ {:'xmlns'=>'http://www.w3.org/1999/xhtml',
210
+ :'xmlns:v'=>'urn:schemas-microsoft-com:vml'},
211
+ [:head,
212
+ [:title, title],
213
+ [:meta, {:name=>'defaultView', :content=>'slideshow'}],
214
+ [:meta, {:name=>'controlVis', :content=>'hidden'}],
215
+ [:link, {:rel=>'stylesheet', :href=>theme_href,
216
+ :type=>'text/css', :media=>'projection', :id=>'slideProj'}],
217
+ [:link, {:rel=>'stylesheet', :href=>'.theme/s5/default/outline.css',
218
+ :type=>'text/css', :media=>'screen', :id=>'outlineStyle'}],
219
+ [:link, {:rel=>'stylesheet', :href=>'.theme/s5/default/print.css',
220
+ :type=>'text/css', :media=>'print', :id=>'slidePrint'}],
221
+ [:link, {:rel=>'stylesheet', :href=>'.theme/s5/default/opera.css',
222
+ :type=>'text/css', :media=>'projection', :id=>'operaFix'}],
223
+ [:style, {:type=>'text/css', :media=>'all'}, ''],
224
+ [:script, {:src=>'.theme/s5/default/slides.js',
225
+ :type=>'text/javascript'}, '']],
226
+ [:body,
227
+ [:div, {:class=>'layout'},
228
+ [:div, {:id=>'controls'}, ''],
229
+ [:div, {:id=>'currentSlide'}, ''],
230
+ [:div, {:id=>'header'}, ''],
231
+ [:div, {:id=>'footer'},
232
+ [:h1, [:a, {:href=>"#{pagename}.html"}, title]]]],
233
+ [:div, {:class=>'presentation'}, wabisabi]]]]
234
+ return html
235
+ end
236
+ end
237
+ end
238
+
239
+ if $0 == __FILE__
240
+ require 'qwik/test-common'
241
+ $test = true
242
+ end
243
+
244
+ if defined?($test) && $test
245
+ class TestActPresen < Test::Unit::TestCase
246
+ include TestSession
247
+
248
+ def test_plg_presen
249
+ ok_wi [:span, {:class=>'attribute'}, [:a, {:href=>'1.presen'},
250
+ 'Presentation mode']], '{{presen}}'
251
+
252
+ # test_plg_presen_switch
253
+ ok_wi [], '{{presen_switch}}'
254
+
255
+ page = @site.create("PresenTest")
256
+ page.store('{{presen_switch}}')
257
+ res = session('/test/PresenTest.html')
258
+ ok_in([:a, {:href=>"PresenTest.presen"}, "Present"],
259
+ "//div[@class='section']")
260
+ end
261
+
262
+ def test_plg_presen_theme
263
+ ok_wi [], '{{presen_theme(q)}}'
264
+ end
265
+
266
+ def test_act_presen
267
+ t_add_user
268
+
269
+ page = @site.create_new
270
+ page.store('* あ')
271
+ res = session('/test/1.presen')
272
+ assert_text('あ', 'title')
273
+ end
274
+
275
+ def test_get_theme
276
+ res = session
277
+ ok_eq(nil, @action.presen_get_theme('a'))
278
+ ok_eq('q', @action.presen_get_theme('{{presen_theme(q)}}'))
279
+ ok_eq('q', @action.presen_get_theme('a
280
+ {{presen_theme(q)}}
281
+ b
282
+ '))
283
+ end
284
+ end
285
+
286
+ class TestPresenGenerator < Test::Unit::TestCase
287
+ include TestSession
288
+
289
+ def ok_re(e, w)
290
+ ok_eq(e, Qwik::PresenGenerator.resolve_h(w))
291
+ end
292
+
293
+ def ok_slide(e, w)
294
+ ok_eq(e, Qwik::PresenGenerator.resolve_slide(w))
295
+ end
296
+
297
+ def test_resolve_h
298
+ res = session
299
+ ok_re([[:h1, 'h']], [[:h2, 'h']])
300
+ ok_re([[:h1, 'h', 'h2']], [[:h2, 'h', 'h2']])
301
+ ok_re([[:h1, 'h', [:b, 'b'], 'c']], [[:h2, 'h', [:b, 'b'], 'c']])
302
+ ok_re([[:h2, 'h']], [[:h3, 'h']])
303
+ end
304
+
305
+ def test_resolve_slide
306
+ c = Qwik::PresenGenerator
307
+
308
+ # test_resolve_slide
309
+ ok_slide([[:div, {:class=>'slide'}, [[:h1, 'h']]]],
310
+ [[:h1, 'h']])
311
+ ok_slide([[:div, {:class=>'slide'}, [[:h1, 'h'], [:p, 'p']]]],
312
+ [[:h1, 'h'], [:p, 'p']])
313
+ ok_slide([[:div, {:class=>'slide'}, [[:h1, 'h'], [:p, 'p']]],
314
+ [:div, {:class=>'slide'}, [[:h1, 'h'], [:p, 'p']]]],
315
+ [[:h1, 'h'], [:p, 'p'], [:h1, 'h'], [:p, 'p']])
316
+ end
317
+
318
+ def test_get_html
319
+ res = session
320
+
321
+ c = Qwik::PresenGenerator
322
+ page = @site.create_new
323
+ page.store("* h\np\n* h2\np2\n")
324
+ wabisabi = @action.c_page_res(page.key)
325
+ w = c.generate(@site, page.key, wabisabi)
326
+
327
+ wpage = [[:'!DOCTYPE',
328
+ 'html',
329
+ 'PUBLIC',
330
+ '-//W3C//DTD HTML 4.01 Transitional//EN',
331
+ 'http://www.w3.org/TR/html4/loose.dtd'],
332
+ [:html,
333
+ {:'xmlns:v'=>'urn:schemas-microsoft-com:vml',
334
+ :xmlns=>'http://www.w3.org/1999/xhtml'},
335
+ [:head,
336
+ [:title, 'h'],
337
+ [:meta, {:content=>'slideshow', :name=>'defaultView'}],
338
+ [:meta, {:content=>'hidden', :name=>'controlVis'}],
339
+ [:link,
340
+ {:id=>'slideProj',
341
+ :rel=>'stylesheet',
342
+ :type=>'text/css',
343
+ :href=>'.theme/s5/qwikworld/slides.css',
344
+ :media=>'projection'}],
345
+ [:link,
346
+ {:id=>'outlineStyle',
347
+ :rel=>'stylesheet',
348
+ :type=>'text/css',
349
+ :href=>'.theme/s5/default/outline.css',
350
+ :media=>'screen'}],
351
+ [:link,
352
+ {:id=>'slidePrint',
353
+ :rel=>'stylesheet',
354
+ :type=>'text/css',
355
+ :href=>'.theme/s5/default/print.css',
356
+ :media=>'print'}],
357
+ [:link,
358
+ {:id=>'operaFix',
359
+ :rel=>'stylesheet',
360
+ :type=>'text/css',
361
+ :href=>'.theme/s5/default/opera.css',
362
+ :media=>'projection'}],
363
+ [:style, {:type=>'text/css', :media=>'all'}, ''],
364
+ [:script, {:type=>'text/javascript',
365
+ :src=>'.theme/s5/default/slides.js'}, '']],
366
+ [:body,
367
+ [:div,
368
+ {:class=>'layout'},
369
+ [:div, {:id=>'controls'}, ''],
370
+ [:div, {:id=>'currentSlide'}, ''],
371
+ [:div, {:id=>'header'}, ''],
372
+ [:div, {:id=>"footer"}, [:h1, [:a, {:href=>"1.html"}, "h"]]]],
373
+ [:div,
374
+ {:class=>'presentation'},
375
+ [[:div, {:class=>'slide'}, [[:h1, 'h'], [:p, 'p']]],
376
+ [:div, {:class=>'slide'}, [[:h1, 'h2'], [:p, 'p2']]]]]]]]
377
+ ok_eq(wpage, w)
378
+ end
379
+ end
380
+ end
@@ -0,0 +1,133 @@
1
+ # Copyright (C) 2003-2006 Kouichirou Eto, All rights reserved.
2
+ # This is free software with ABSOLUTELY NO WARRANTY.
3
+ # You can redistribute it and/or modify it under the terms of the GNU GPL 2.
4
+
5
+ $LOAD_PATH.unshift '..' unless $LOAD_PATH.include? '..'
6
+
7
+ module Qwik
8
+ class Action
9
+ D_ExtRedirect = {
10
+ :dt => 'Redirect mode',
11
+ :dd => 'You can use redirect at all external link on your site.',
12
+ :dc => '* How to
13
+ Go to [[_SiteConfig]] page, find this line.
14
+ :redirect:false
15
+ Change the line to this.
16
+ :redirect:true
17
+
18
+ All external links will be redirect link. When you are using redirect,
19
+ nobody can see the referere to know where the link come from.
20
+ '
21
+ }
22
+
23
+ D_ExtRedirect_ja = {
24
+ :dt => 'リダイレクト・モード',
25
+ :dd => '外部リンクを全てリダイレクトにします。',
26
+ :dc => '* 使い方
27
+ [[_SiteConfig]]のページにいき、
28
+ :redirect:false
29
+ という行を、
30
+ :redirect:true
31
+ としてください。サイト内の外部URLへのリンクが、一旦リダイレクトされて
32
+ から飛ぶようになります。こうすると、どのWikiページからリンクされている
33
+ のかが、リファラを見てもわからないようになります。
34
+ '
35
+ }
36
+
37
+ def pre_act_redirect
38
+ url = @req.query['url']
39
+ if url
40
+ return c_notice('redirect', url) {
41
+ [:p, 'redirect', [:br], [:strong, url]]
42
+ }
43
+ end
44
+ return old_redirect
45
+ end
46
+
47
+ def old_redirect
48
+ if @req.unparsed_uri
49
+ url = @req.unparsed_uri
50
+ else
51
+ url = '/'+@req.path_args[0]
52
+ end
53
+
54
+ if /\A\/((?:http|https|ftp|file)):\// =~ url
55
+ scheme = $1
56
+ url = url.sub(/\A\/#{scheme}:\//, "#{scheme}:/")
57
+ end
58
+
59
+ c_notice('redirect', url) {
60
+ [:p, 'redirect', [:br], [:strong, url]]
61
+ }
62
+ end
63
+ end
64
+ end
65
+
66
+ if $0 == __FILE__
67
+ require 'qwik/test-common'
68
+ $test = true
69
+ end
70
+
71
+ if defined?($test) && $test
72
+ class TestActRedirect < Test::Unit::TestCase
73
+ include TestSession
74
+
75
+ def test_redirect
76
+ res = session("/test/.redirect?url=http://e.com/")
77
+ ok_title('redirect')
78
+ ok_xp([:p, 'redirect', [:br], [:strong, 'http://e.com/']], '//p')
79
+ end
80
+
81
+ def test_old_redirect
82
+ res = session('/http://e.com/')
83
+ ok_title('redirect')
84
+ ok_in(['http://e.com/'], '//p/strong')
85
+
86
+ res = session('/http://e.com')
87
+ ok_in(['http://e.com'], '//p/strong')
88
+
89
+ res = session('/https://e.com/')
90
+ ok_in(['https://e.com/'], '//p/strong')
91
+
92
+ res = session('/ftp://e.com/')
93
+ ok_in(['ftp://e.com/'], '//p/strong')
94
+ end
95
+
96
+ def test_normal_external_links
97
+ ok_wi([:p, [:a, {:class=>'external', :href=>'http://example.com/'},
98
+ 'http://example.com/']], "[[http://example.com/]]")
99
+ ok_wi([:p, [:a, {:href=>'http://example.com/', :class=>'external'},
100
+ 'http://example.com/']], 'http://example.com/')
101
+ ok_wi([:p,[:a, {:href=>'http://example.com/', :class=>'external'}, 't']],
102
+ "[[t|http://example.com/]]")
103
+ end
104
+
105
+ def ok_res(e, w, site=@site)
106
+ res = session
107
+ w = Qwik::Resolver.resolve(site, @action, w)
108
+ ok_eq(e, w)
109
+ end
110
+
111
+ def test_redirect_config
112
+ ok_res([[:a, {:href=>'http://e.com/', :class=>'external'}, 'e']],
113
+ [[:a, {:href=>'http://e.com/'}, 'e']])
114
+
115
+ page = @site['_SiteConfig']
116
+ page.store(':redirect:true')
117
+ ok_res([[:a, {:href=>".redirect?url=http://e.com/", :class=>'external'},
118
+ 'e']],
119
+ [[:a, {:href=>'http://e.com/'}, 'e']])
120
+ end
121
+
122
+ # can not test this for now...
123
+ def nu_test_with_query
124
+ res = session("/http://e.com/?q=a&p=b")
125
+ assert_text("redirect : http://e.com/?q=a&p=b", 'title')
126
+ end
127
+
128
+ #def test_redirect
129
+ # @req.parse_path('/http://e.com/')
130
+ # ok_eq(['redirect', ['http://e.com/']], [@req.plugin, @req.path_args])
131
+ #end
132
+ end
133
+ end