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,283 @@
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
+ require 'qwik/site'
8
+ require 'qwik/util-pathname'
9
+ require 'qwik/util-time'
10
+
11
+ # $update_group_files = true
12
+ $update_group_files = false
13
+
14
+ module Qwik
15
+ # Bundle many sites to one object.
16
+ class Farm
17
+ def initialize(config, memory)
18
+ @config = config
19
+ @memory = memory
20
+ @logger = @memory[:logger]
21
+ @data_path = @config.sites_dir.path
22
+ @grave_path = @config.grave_dir.path
23
+ @top_sitename = @config.default_sitename
24
+ if $update_group_files
25
+ $update_group_files = false # Set before to do it.
26
+ update_group_files
27
+ end
28
+ end
29
+
30
+ def update_group_files
31
+ list().each {|sitename|
32
+ site = get_site(sitename)
33
+ site.member.update_group_files
34
+ }
35
+ end
36
+
37
+ def get_site(sitename)
38
+ sitepath = @data_path + sitename
39
+
40
+ # FIXME: Should we check the directory everytime?
41
+ if ! sitepath.directory? # At the first, check the directory.
42
+ return nil # No such site.
43
+ end
44
+
45
+ # Now, I am sure that we have the directory for the site.
46
+ # Create a new site object and return it.
47
+ return Site.new(@config, @memory, sitename)
48
+ end
49
+ alias exist? get_site
50
+
51
+ def get_top_site
52
+ return get_site(@top_sitename)
53
+ end
54
+
55
+ def list
56
+ return check_all_sites.sort
57
+ end
58
+
59
+ def close_all
60
+ list().each {|sitename|
61
+ site = self.get_site(sitename)
62
+ site.close if site
63
+ }
64
+ end
65
+
66
+ def make_site(sitename, now = Time.now)
67
+ sitepath = @data_path + sitename
68
+ raise 'site already exist' if sitepath.exist? # Check the path first.
69
+ sitepath.mkdir
70
+ page = (sitepath + "_QwikSite.txt")
71
+ page.write(now.rfc_date)
72
+ return nil
73
+ end
74
+
75
+ def sweep
76
+ @logger.log(WEBrick::Log::INFO, 'start sweep') unless $test
77
+
78
+ log = @memory[:bury_log]
79
+ unless $test
80
+ log.info("start sweep")
81
+ end
82
+
83
+ inactive_sites = check_inactive_sites
84
+ buried = []
85
+ inactive_sites.each {|sitename|
86
+ @logger.log(WEBrick::Log::INFO, 'sweep '+sitename) unless $test
87
+ buried << bury(sitename)
88
+ }
89
+
90
+ unless $test
91
+ log.info("end sweep")
92
+ end
93
+
94
+ return buried
95
+ end
96
+
97
+ def check_inactive_sites
98
+ inactive_sites = []
99
+ list().each {|sitename|
100
+ # Do not bury default site.
101
+ next if sitename == @top_sitename
102
+ site = get_site(sitename)
103
+ # Check a particular page to check the directory is a site or not.
104
+ next if ! site.exist?('_SiteConfig')
105
+ inactive_sites << sitename if site && site.inactive?
106
+ }
107
+ return inactive_sites
108
+ end
109
+
110
+ private
111
+
112
+ def check_all_sites
113
+ sites = Array.new
114
+
115
+ # Check the direcotry entries.
116
+ @data_path.each_entry {|entry|
117
+ pa = @data_path + entry
118
+ next if ! pa.directory? # is not a directory?
119
+ sitename = entry.to_s
120
+ next if sitename[0] == ?. # begin with dot?
121
+ next if sitename == 'CVS'
122
+ #next if (pa + '_SiteConfig.txt').exist? # check the site.
123
+ sites << sitename
124
+ }
125
+
126
+ return sites
127
+ end
128
+
129
+ def bury(sitename)
130
+ site = get_site(sitename)
131
+ if site.unconfirmed?
132
+ dump_site(site, 'deleted')
133
+ delete(site)
134
+ return
135
+ end
136
+ dump_site(site, 'buried')
137
+
138
+ sitepath = site.path
139
+ dirtime = sitepath.mtime.to_i
140
+ @grave_path.check_directory
141
+ (sitepath.parent + ".grave").check_directory
142
+ while true
143
+ tempgravepath = sitepath.parent + ".grave" + "#{dirtime}_#{sitename}"
144
+ gravesitepath = @grave_path + "#{dirtime}_#{sitename}"
145
+ unless tempgravepath.exist? || gravesitepath.exist?
146
+ # step1. move atomically on same disk volume
147
+ sitepath.rename(tempgravepath)
148
+ # step2. move across disk volume
149
+ #FileUtils.mv(tempgravepath, gravesitepath)
150
+ break
151
+ end
152
+ dirtime += 1
153
+ end
154
+ #return gravesitepath
155
+ return tempgravepath
156
+ end
157
+
158
+ def bury_dummy(sitename)
159
+ site = get_site(sitename)
160
+ dump_site(site, 'bury dummy')
161
+ return site.path
162
+ end
163
+
164
+ require 'stringio'
165
+ def dump_site(site, message)
166
+ log = @memory[:bury_log]
167
+ buff = StringIO.new
168
+ buff.puts("#{message}: #{site.sitename}")
169
+
170
+ ml_life_time = site.siteconfig['ml_life_time'].to_i
171
+ days = ml_life_time / (60*60*24)
172
+ buff.puts("ml_life_time: #{ml_life_time} (#{days}d)")
173
+
174
+ site.path.children.sort{|a,b| b.mtime <=> a.mtime }.each do |path|
175
+ buff << path.mtime.strftime("%Y-%m-%d %H:%M:%S ")
176
+ buff << sprintf("% 8d ", path.size)
177
+ buff << path.basename.to_s
178
+ buff << "\n"
179
+ end
180
+ unless $test
181
+ log.info(buff.string)
182
+ end
183
+ end
184
+
185
+ def delete(site)
186
+ sitepath = site.path
187
+ sitepath.remove_directory
188
+ end
189
+
190
+ end
191
+ end
192
+
193
+ if $0 == __FILE__
194
+ require 'qwik/test-module-session'
195
+ $test = true
196
+ end
197
+
198
+ if defined?($test) && $test
199
+ class TestFarm < Test::Unit::TestCase
200
+ include TestSession
201
+
202
+ def test_make_site
203
+ farm = @memory.farm
204
+ farm.close_all
205
+ @dir.teardown
206
+ @dir.rmtree if @dir.directory?
207
+ @dir.rmdir if @dir.directory?
208
+
209
+ dir = @config.sites_dir.path
210
+
211
+ # test_exist?
212
+ assert_equal false, !!farm.exist?('test')
213
+ assert_equal nil, farm.get_site('test')
214
+ assert_equal false, (dir + 'test').exist?
215
+
216
+ # test_make_site
217
+ assert_equal false, (dir + 'test').path.exist?
218
+ farm.make_site('test', Time.at(0))
219
+ assert_equal true, (dir + 'test').path.exist?
220
+ assert_equal true, (dir + 'test/_QwikSite.txt').path.exist?
221
+ assert_equal "1970-01-01T09:00:00", (dir + 'test/_QwikSite.txt').path.read
222
+ assert_equal false, (dir + 'test/test').path.exist?
223
+ assert_equal true, !!farm.exist?('test')
224
+ assert_equal false, (dir + 'test/test').path.exist?
225
+
226
+ site = farm.get_site('test')
227
+ assert_equal true, (dir + 'test'.path).exist?
228
+ assert_equal false, (dir + 'test/test').path.exist?
229
+ #assert_equal true, (dir + 'test/test').path.exist?
230
+ assert_equal 'test', site.sitename
231
+
232
+ # test_raise
233
+ assert_raise(RuntimeError) {
234
+ # Creating a site with same name cause error.
235
+ farm.make_site('test')
236
+ }
237
+ end
238
+
239
+ def test_all
240
+ farm = @memory.farm
241
+
242
+ # test_top_site
243
+ site = farm.get_top_site
244
+ eq @config.default_sitename, site.sitename
245
+
246
+ # test_list
247
+ is "Array", farm.list.class.name
248
+
249
+ #assert_equal false, (@dir+"test").exist?
250
+ end
251
+
252
+ def test_sweep
253
+ farm = @memory.farm
254
+
255
+ site = farm.get_site('test')
256
+ page = site['_SiteConfig']
257
+ page.put_with_time(':ml_life_time:0', 0) # Die soon.
258
+
259
+ # test_inactive?
260
+ eq true, site.inactive?
261
+
262
+ # test_sweep
263
+ buried = farm.sweep
264
+ site = farm.get_site('test')
265
+ eq nil, site
266
+
267
+ # Clean up the grave dir.
268
+ buried.each {|gravesitepath|
269
+ gravesitepath.teardown
270
+ gravesitepath.rmtree
271
+ }
272
+ end
273
+
274
+ def test_delete
275
+ farm = @memory.farm
276
+ site = farm.get_site('test')
277
+ site_path = site.path
278
+ t_make_public(Qwik::Farm, :delete)
279
+ farm.delete(site)
280
+ eq false, site_path.exist?
281
+ end
282
+ end
283
+ end
@@ -0,0 +1,56 @@
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
+ module GetText
9
+ def set_catalog (catalog)
10
+ @gettext_catalog = catalog
11
+ end
12
+
13
+ def gettext (text)
14
+ return text if ! defined?(@gettext_catalog) || @gettext_catalog.nil?
15
+ return @gettext_catalog[text] || text
16
+ end
17
+
18
+ alias :_ :gettext
19
+ end
20
+ end
21
+
22
+ if $0 == __FILE__
23
+ require 'qwik/testunit'
24
+ require 'qwik/catalog-factory'
25
+ $test = true
26
+ end
27
+
28
+ if defined?($test) && $test
29
+ class MockGetText
30
+ include Qwik::GetText
31
+
32
+ def test_all(t)
33
+ # $KCODE = 's'
34
+
35
+ # test_gettext
36
+ t.assert_equal 'hello', gettext('hello')
37
+
38
+ # test_set_catalog
39
+ cf = Qwik::CatalogFactory.new
40
+ cf.load_all_here('catalog-??.rb')
41
+ catalog_ja = cf.get_catalog('ja')
42
+ set_catalog(catalog_ja)
43
+
44
+ # test_gettext_ja
45
+ t.assert_equal 'こんにちは', gettext('hello')
46
+ t.assert_equal 'こんにちは', _('hello')
47
+ end
48
+ end
49
+
50
+ class TestMockGetText < Test::Unit::TestCase
51
+ def test_all
52
+ mock = MockGetText.new
53
+ mock.test_all(self)
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,157 @@
1
+ #
2
+ # Copyright (C) 2002-2004 Satoru Takabayashi <satoru@namazu.org>
3
+ # Copyright (C) 2003-2006 Kouichirou Eto
4
+ # All rights reserved.
5
+ # This is free software with ABSOLUTELY NO WARRANTY.
6
+ #
7
+ # You can redistribute it and/or modify it under the terms of
8
+ # the GNU General Public License version 2.
9
+ #
10
+
11
+ $LOAD_PATH.unshift '..' unless $LOAD_PATH.include? '..'
12
+ require 'qwik/group-db'
13
+
14
+ module QuickML
15
+ class Group
16
+ def newly_created?
17
+ return ! @db.exist?(:Members)
18
+ end
19
+
20
+ private
21
+
22
+ # ==================== Count
23
+ def init_count
24
+ @count = Group.load_count(@db)
25
+ end
26
+
27
+ def self.load_count(db)
28
+ return 0 if ! db.exist?(:Count)
29
+ content = db.get(:Count)
30
+ return (content.to_a.first || '1').chomp.to_i
31
+ end
32
+
33
+ def inc_count
34
+ @count += 1
35
+ @db.put(:Count, @count)
36
+ end
37
+
38
+ # ==================== Charset
39
+ def init_charset
40
+ @charset = Group.load_charset(@db)
41
+ end
42
+
43
+ def self.load_charset(db)
44
+ return nil if ! db.exist?(:Charset)
45
+ return parse_charset(db.get(:Charset))
46
+ end
47
+
48
+ def self.parse_charset(content)
49
+ return (content.to_a.first || '').chomp
50
+ end
51
+
52
+ def save_charset(charset)
53
+ return if charset.nil?
54
+ @db.put(:Charset, charset+"\n")
55
+ end
56
+
57
+ # ==================== Alertedp
58
+ def alerted?
59
+ return @db.exist?(:Alerted)
60
+ end
61
+
62
+ def close_alertedp_file
63
+ @db.put(:Alerted, '')
64
+ end
65
+
66
+ def remove_alertedp_file
67
+ @db.delete(:Alerted)
68
+ end
69
+ end
70
+ end
71
+
72
+ if $0 == __FILE__
73
+ require 'qwik/group'
74
+ require 'qwik/test-module-ml'
75
+ $test = true
76
+ end
77
+
78
+ if defined?($test) && $test
79
+ class TestGroupConditions < Test::Unit::TestCase
80
+ include TestModuleML
81
+
82
+ def setup_group
83
+ return QuickML::Group.new(@ml_config, 'test@example.com')
84
+ end
85
+
86
+ def test_all
87
+ c = QuickML::Group
88
+
89
+ group = setup_group
90
+
91
+ t_make_readable(QuickML::Group, :db)
92
+
93
+ # ==================== Conditions.
94
+ # test_newly_created?
95
+ ok_eq(true, group.newly_created?)
96
+
97
+ # ==================== Count
98
+ # test_init_count
99
+ t_make_public(QuickML::Group, :init_count)
100
+ group.init_count
101
+
102
+ t_make_readable(QuickML::Group, :count)
103
+ ok_eq(0, group.count)
104
+ ok_eq(nil, group.db.get(:Count))
105
+
106
+ # test_inc_count
107
+ t_make_public(QuickML::Group, :inc_count)
108
+ group.inc_count
109
+ ok_eq(1, group.count)
110
+ ok_eq('1', group.db.get(:Count))
111
+
112
+ # test_load_count
113
+ ok_eq(1, c.load_count(group.db))
114
+ group.inc_count
115
+ ok_eq(2, c.load_count(group.db))
116
+
117
+ # ==================== Charset
118
+ # test_init_charset
119
+ t_make_public(QuickML::Group, :init_charset)
120
+ group.init_charset
121
+
122
+ t_make_readable(QuickML::Group, :charset)
123
+ ok_eq(nil, group.charset)
124
+
125
+ # test_parse_charset
126
+ ok_eq('', c.parse_charset(''))
127
+ ok_eq('t', c.parse_charset("t\n"))
128
+ ok_eq('t', c.parse_charset("t\ns\n"))
129
+ ok_eq('iso-2022-jp', c.parse_charset("iso-2022-jp\n"))
130
+
131
+ # test_save_charset
132
+ t_make_public(QuickML::Group, :save_charset)
133
+ group.save_charset('iso-2022-jp')
134
+ ok_eq("iso-2022-jp\n", group.db.get(:Charset))
135
+ group.init_charset
136
+ ok_eq('iso-2022-jp', group.charset)
137
+
138
+ # test_load_charset
139
+ ok_eq('iso-2022-jp', c.load_charset(group.db))
140
+
141
+ # ==================== Alertedp
142
+ # test_alerted?
143
+ t_make_public(QuickML::Group, :alerted?)
144
+ ok_eq(false, group.alerted?)
145
+
146
+ # test_close_alertedp_file
147
+ t_make_public(QuickML::Group, :close_alertedp_file)
148
+ group.close_alertedp_file
149
+ ok_eq(true, group.alerted?)
150
+
151
+ # test_remove_alertedp_file
152
+ t_make_public(QuickML::Group, :remove_alertedp_file)
153
+ group.remove_alertedp_file
154
+ ok_eq(false, group.alerted?)
155
+ end
156
+ end
157
+ end