ramaze 0.3.9.1 → 2023.01.06

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 (781) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +3 -0
  3. data/README.md +125 -0
  4. data/Rakefile +13 -186
  5. data/bin/ramaze +4 -149
  6. data/examples/app/auth/layout/auth.xhtml +25 -0
  7. data/examples/app/auth/start.rb +25 -0
  8. data/examples/app/auth/view/index.xhtml +4 -0
  9. data/examples/app/auth/view/login.xhtml +20 -0
  10. data/examples/app/auth/view/secret.xhtml +1 -0
  11. data/examples/app/blog/app.rb +23 -0
  12. data/examples/app/blog/config.ru +19 -0
  13. data/examples/app/blog/controller/init.rb +30 -0
  14. data/examples/app/blog/controller/posts.rb +223 -0
  15. data/examples/app/blog/controller/users.rb +152 -0
  16. data/examples/app/blog/layout/default.xhtml +61 -0
  17. data/examples/app/blog/migrations/01_create_schema.rb +50 -0
  18. data/examples/app/blog/model/comment.rb +42 -0
  19. data/examples/app/blog/model/init.rb +44 -0
  20. data/examples/app/blog/model/post.rb +33 -0
  21. data/examples/app/blog/model/user.rb +100 -0
  22. data/examples/app/blog/public/css/grid.css +107 -0
  23. data/examples/app/blog/public/css/layout.css +203 -0
  24. data/examples/app/blog/public/css/reset.css +123 -0
  25. data/examples/app/blog/public/css/text.css +109 -0
  26. data/examples/app/blog/public/dispatch.fcgi +11 -0
  27. data/examples/app/blog/public/favicon.ico +0 -0
  28. data/examples/app/blog/public/images/bg.png +0 -0
  29. data/examples/app/blog/start.rb +20 -0
  30. data/examples/app/blog/view/feed.xhtml +23 -0
  31. data/examples/app/blog/view/form.xhtml +11 -0
  32. data/examples/app/blog/view/index.xhtml +44 -0
  33. data/examples/app/blog/view/users/form.xhtml +12 -0
  34. data/examples/app/blog/view/users/index.xhtml +30 -0
  35. data/examples/app/blog/view/users/login.xhtml +8 -0
  36. data/examples/app/blog/view/view.xhtml +68 -0
  37. data/examples/app/chat/layout/default.xhtml +13 -0
  38. data/examples/app/chat/model/history.rb +38 -0
  39. data/examples/app/chat/model/message.rb +7 -0
  40. data/examples/app/chat/public/css/chat.css +9 -0
  41. data/examples/app/chat/public/js/chat.js +28 -0
  42. data/{lib/proto → examples/app/chat}/public/js/jquery.js +75 -15
  43. data/examples/app/chat/start.rb +39 -0
  44. data/examples/app/chat/view/chat.xhtml +9 -0
  45. data/examples/app/chat/view/index.xhtml +7 -0
  46. data/examples/app/localization/locale/de.yaml +5 -0
  47. data/examples/app/localization/locale/en.yaml +5 -0
  48. data/examples/app/localization/locale/ja.yaml +5 -0
  49. data/examples/app/localization/start.rb +48 -0
  50. data/examples/app/todolist/controller/init.rb +11 -0
  51. data/examples/app/todolist/controller/task.rb +39 -0
  52. data/examples/app/todolist/layout/default.xhtml +14 -0
  53. data/examples/app/todolist/model/init.rb +14 -0
  54. data/examples/app/todolist/model/task.rb +39 -0
  55. data/examples/app/todolist/public/css/screen.css +63 -0
  56. data/examples/app/todolist/start.rb +7 -0
  57. data/examples/app/todolist/view/index.xhtml +29 -0
  58. data/examples/{upload → app/upload}/start.rb +7 -3
  59. data/examples/app/whywiki/spec/whywiki.rb +56 -0
  60. data/examples/{whywiki → app/whywiki}/start.rb +10 -9
  61. data/examples/{whywiki/template → app/whywiki/view}/edit.xhtml +2 -2
  62. data/examples/app/whywiki/view/show.xhtml +20 -0
  63. data/examples/{wikore → app/wikore}/spec/wikore.rb +7 -9
  64. data/examples/{wikore → app/wikore}/src/controller.rb +9 -11
  65. data/examples/{wikore → app/wikore}/src/model.rb +11 -13
  66. data/examples/app/wikore/start.rb +9 -0
  67. data/examples/{wiktacular/template/html_layout.xhtml → app/wiktacular/layout/application.xhtml} +1 -1
  68. data/examples/{wiktacular → app/wiktacular}/mkd/main/2007-07-20_19-21-12.mkd +1 -1
  69. data/examples/app/wiktacular/mkd/main/2007-07-20_19-23-10.mkd +2 -0
  70. data/examples/app/wiktacular/mkd/main/2007-07-20_19-45-07.mkd +2 -0
  71. data/examples/app/wiktacular/mkd/main/current.mkd +2 -0
  72. data/examples/{wiktacular → app/wiktacular}/mkd/markdown/current.mkd +2 -2
  73. data/examples/app/wiktacular/mkd/testing/2007-07-20_16-43-46.mkd +2 -0
  74. data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-20_19-43-50.mkd +2 -2
  75. data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-46-01.mkd +11 -11
  76. data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-46-32.mkd +12 -12
  77. data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-47-08.mkd +16 -16
  78. data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-47-54.mkd +16 -16
  79. data/examples/{wiktacular → app/wiktacular}/mkd/testing/current.mkd +16 -16
  80. data/examples/{wiktacular → app/wiktacular}/spec/wiktacular.rb +39 -40
  81. data/examples/{wiktacular → app/wiktacular}/src/controller.rb +18 -18
  82. data/examples/{wiktacular → app/wiktacular}/src/model.rb +30 -14
  83. data/examples/{wiktacular → app/wiktacular}/start.rb +1 -1
  84. data/examples/{wiktacular/template → app/wiktacular/view}/edit.xhtml +2 -2
  85. data/examples/{wiktacular/template → app/wiktacular/view}/new.xhtml +1 -1
  86. data/examples/{element.rb → basic/element.rb} +5 -3
  87. data/examples/basic/gestalt.rb +26 -0
  88. data/examples/basic/hello.rb +14 -0
  89. data/examples/{layout.rb → basic/layout.rb} +2 -2
  90. data/examples/basic/linking.rb +29 -0
  91. data/examples/basic/partial.rb +26 -0
  92. data/examples/{simple.rb → basic/simple.rb} +9 -12
  93. data/examples/{caching.rb → helpers/cache.rb} +9 -7
  94. data/examples/helpers/paginate.rb +71 -0
  95. data/examples/helpers/rest.rb +28 -0
  96. data/examples/helpers/simple_captcha.rb +29 -0
  97. data/examples/{css.rb → misc/css.rb} +6 -12
  98. data/examples/misc/memleak_detector.rb +37 -0
  99. data/examples/misc/nagoro_element.rb +43 -0
  100. data/examples/{ramaise.rb → misc/ramaise.rb} +2 -2
  101. data/examples/misc/rapp.rb +56 -0
  102. data/examples/misc/sequel_scaffolding.rb +45 -0
  103. data/examples/misc/serve_directory.rb +6 -0
  104. data/examples/templates/template_erubis.rb +9 -10
  105. data/examples/templates/template_ezamar.rb +8 -7
  106. data/examples/templates/template_haml.rb +7 -8
  107. data/examples/templates/template_liquid.rb +20 -19
  108. data/examples/templates/template_markaby.rb +6 -7
  109. data/examples/templates/template_mustache.rb +70 -0
  110. data/examples/templates/template_nagoro.rb +6 -7
  111. data/examples/templates/template_redcloth.rb +8 -9
  112. data/examples/templates/template_remarkably.rb +8 -9
  113. data/examples/templates/template_tenjin.rb +10 -15
  114. data/examples/templates/{template → view}/external.haml +4 -4
  115. data/examples/templates/{template → view}/external.mab +4 -4
  116. data/examples/templates/view/external.mt +29 -0
  117. data/examples/templates/{template → view}/external.nag +4 -4
  118. data/examples/templates/{template → view}/external.redcloth +4 -4
  119. data/examples/templates/{template → view}/external.rem +4 -4
  120. data/examples/templates/{template → view}/external.rhtml +6 -6
  121. data/examples/templates/{template → view}/external.tenjin +4 -4
  122. data/examples/templates/{template → view}/external.zmr +6 -6
  123. data/guide/AUTHORS +80 -0
  124. data/guide/CHANGELOG +20210 -0
  125. data/guide/LICENSE +19 -0
  126. data/guide/_static/logo.png +0 -0
  127. data/guide/_static/logo.svg +49 -0
  128. data/guide/css/common.css +20 -0
  129. data/guide/general/cache.md +168 -0
  130. data/guide/general/configuration.md +169 -0
  131. data/guide/general/contributing.md +182 -0
  132. data/guide/general/controllers.md +210 -0
  133. data/guide/general/helpers.md +89 -0
  134. data/guide/general/installation.md +59 -0
  135. data/guide/general/logging.md +96 -0
  136. data/guide/general/middlewares.md +111 -0
  137. data/guide/general/models.md +79 -0
  138. data/{doc/readme_chunks/principles.txt → guide/general/principles.md} +15 -17
  139. data/guide/general/ramaze_command.md +110 -0
  140. data/guide/general/routes.md +82 -0
  141. data/guide/general/sessions.md +210 -0
  142. data/guide/general/special_thanks.md +69 -0
  143. data/guide/general/testing.md +228 -0
  144. data/guide/general/upgrading.md +85 -0
  145. data/guide/general/views.md +335 -0
  146. data/lib/proto/Gemfile +4 -0
  147. data/lib/proto/README.md +35 -0
  148. data/lib/proto/Rakefile +1 -0
  149. data/lib/proto/app.rb +9 -0
  150. data/lib/proto/config.ru +19 -0
  151. data/lib/proto/controller/init.rb +18 -0
  152. data/lib/proto/controller/main.rb +13 -10
  153. data/lib/proto/layout/default.xhtml +57 -0
  154. data/lib/proto/public/css/grid.css +107 -0
  155. data/lib/proto/public/css/layout.css +81 -0
  156. data/lib/proto/public/css/reset.css +123 -0
  157. data/lib/proto/public/css/text.css +109 -0
  158. data/lib/proto/public/favicon.ico +0 -0
  159. data/lib/proto/public/images/bg.png +0 -0
  160. data/lib/proto/spec/helper.rb +39 -0
  161. data/lib/proto/task/ramaze.rake +57 -0
  162. data/lib/proto/view/index.xhtml +36 -25
  163. data/lib/ramaze/app.rb +198 -0
  164. data/lib/ramaze/bin/create.rb +92 -0
  165. data/lib/ramaze/bin/runner.rb +127 -0
  166. data/lib/ramaze/cache/lru.rb +88 -0
  167. data/lib/ramaze/cache/memcache.rb +219 -0
  168. data/lib/ramaze/cache/moneta.rb +143 -0
  169. data/lib/ramaze/cache/redis.rb +163 -0
  170. data/lib/ramaze/cache/sequel.rb +373 -0
  171. data/lib/ramaze/cache.rb +42 -82
  172. data/lib/ramaze/controller/default.rb +25 -0
  173. data/lib/ramaze/controller.rb +184 -224
  174. data/lib/ramaze/current.rb +17 -68
  175. data/lib/ramaze/default_middleware.rb +24 -0
  176. data/lib/ramaze/files.rb +59 -0
  177. data/lib/ramaze/gestalt.rb +95 -63
  178. data/lib/ramaze/helper/auth.rb +107 -107
  179. data/lib/ramaze/helper/bench.rb +51 -0
  180. data/lib/ramaze/helper/blue_form.rb +683 -0
  181. data/lib/ramaze/helper/cache.rb +108 -130
  182. data/lib/ramaze/helper/csrf.rb +191 -0
  183. data/lib/ramaze/helper/email.rb +116 -0
  184. data/lib/ramaze/helper/erector.rb +113 -0
  185. data/lib/ramaze/helper/flash.rb +42 -39
  186. data/lib/ramaze/helper/formatting.rb +200 -35
  187. data/lib/ramaze/helper/gestalt.rb +49 -0
  188. data/lib/ramaze/helper/gravatar.rb +75 -0
  189. data/lib/ramaze/helper/identity.rb +93 -68
  190. data/lib/ramaze/helper/layout.rb +128 -0
  191. data/lib/ramaze/helper/link.rb +52 -119
  192. data/lib/ramaze/helper/localize.rb +143 -0
  193. data/lib/ramaze/helper/markaby.rb +26 -24
  194. data/lib/ramaze/helper/maruku.rb +15 -6
  195. data/lib/ramaze/helper/paginate.rb +315 -0
  196. data/lib/ramaze/helper/remarkably.rb +14 -0
  197. data/lib/ramaze/helper/request_accessor.rb +20 -0
  198. data/lib/ramaze/helper/send_file.rb +34 -0
  199. data/lib/ramaze/helper/simple_captcha.rb +61 -0
  200. data/lib/ramaze/helper/stack.rb +72 -62
  201. data/lib/ramaze/helper/tagz.rb +13 -12
  202. data/lib/ramaze/helper/thread.rb +25 -0
  203. data/lib/ramaze/helper/upload.rb +525 -0
  204. data/lib/ramaze/helper/user.rb +260 -39
  205. data/lib/ramaze/helper/xhtml.rb +122 -0
  206. data/lib/ramaze/helper.rb +8 -79
  207. data/lib/ramaze/log/hub.rb +41 -32
  208. data/lib/ramaze/log/informer.rb +128 -104
  209. data/lib/ramaze/log/logger.rb +25 -15
  210. data/lib/ramaze/log/logging.rb +46 -27
  211. data/lib/ramaze/log/rotatinginformer.rb +237 -0
  212. data/lib/ramaze/log/syslog.rb +57 -31
  213. data/lib/ramaze/log.rb +16 -15
  214. data/lib/ramaze/reloader/watch_inotify.rb +84 -0
  215. data/lib/ramaze/reloader/watch_stat.rb +58 -0
  216. data/lib/ramaze/reloader.rb +212 -0
  217. data/lib/ramaze/request.rb +126 -0
  218. data/lib/ramaze/response.rb +67 -0
  219. data/lib/ramaze/snippets/object/__dir__.rb +25 -0
  220. data/lib/ramaze/snippets/ramaze/deprecated.rb +23 -0
  221. data/lib/ramaze/snippets/string/camel_case.rb +17 -14
  222. data/lib/ramaze/snippets/string/color.rb +27 -24
  223. data/lib/ramaze/snippets/string/esc.rb +25 -25
  224. data/lib/ramaze/snippets/string/snake_case.rb +16 -13
  225. data/lib/ramaze/snippets/string/unindent.rb +24 -11
  226. data/lib/ramaze/snippets.rb +21 -6
  227. data/lib/ramaze/spec/bacon.rb +44 -0
  228. data/lib/ramaze/spec/helper/bacon.rb +4 -4
  229. data/lib/ramaze/spec/helper/pretty_output.rb +9 -1
  230. data/lib/ramaze/spec/helper/snippets.rb +11 -1
  231. data/lib/ramaze/spec/helper/template_examples.rb +22 -0
  232. data/lib/ramaze/version.rb +4 -13
  233. data/lib/ramaze/view/erector.rb +116 -0
  234. data/lib/ramaze/view/erubis.rb +26 -0
  235. data/lib/ramaze/view/ezamar.rb +27 -0
  236. data/lib/ramaze/view/gestalt.rb +20 -0
  237. data/lib/ramaze/view/haml.rb +27 -0
  238. data/lib/ramaze/view/liquid.rb +99 -0
  239. data/lib/ramaze/view/lokar.rb +18 -0
  240. data/lib/ramaze/view/mustache.rb +46 -0
  241. data/lib/ramaze/view/nagoro/render_partial.rb +32 -0
  242. data/lib/ramaze/view/nagoro.rb +44 -0
  243. data/lib/ramaze/view/remarkably.rb +22 -0
  244. data/lib/ramaze/view/sass.rb +22 -0
  245. data/lib/ramaze/view/slim.rb +43 -0
  246. data/lib/ramaze/view/slippers.rb +51 -0
  247. data/lib/ramaze/view/tagz.rb +67 -0
  248. data/lib/ramaze/view/tenjin.rb +32 -0
  249. data/lib/ramaze/view.rb +35 -0
  250. data/lib/ramaze.rb +60 -100
  251. data/lib/vendor/route_exceptions.rb +42 -0
  252. data/ramaze.gemspec +61 -0
  253. data/spec/examples/caching.rb +5 -8
  254. data/spec/examples/css.rb +3 -4
  255. data/spec/examples/element.rb +4 -4
  256. data/spec/examples/hello.rb +4 -5
  257. data/spec/examples/linking.rb +3 -4
  258. data/spec/examples/misc/sequel_scaffolding.rb +18 -0
  259. data/spec/examples/simple.rb +3 -8
  260. data/spec/examples/templates/template_erubis.rb +8 -18
  261. data/spec/examples/templates/template_ezamar.rb +9 -19
  262. data/spec/examples/templates/template_haml.rb +8 -20
  263. data/spec/examples/templates/template_liquid.rb +8 -24
  264. data/spec/examples/templates/template_markaby.rb +10 -19
  265. data/spec/examples/templates/template_mustache.rb +13 -0
  266. data/spec/examples/templates/template_nagoro.rb +13 -0
  267. data/spec/examples/templates/template_remarkably.rb +8 -18
  268. data/spec/examples/templates/template_tenjin.rb +8 -23
  269. data/spec/examples/todolist.rb +33 -0
  270. data/spec/helper.rb +14 -3
  271. data/spec/ramaze/action/render.rb +9 -17
  272. data/spec/ramaze/action/view/other_wrapper.erb +1 -0
  273. data/spec/ramaze/action/view/sub/sub_wrapper.xhtml +1 -0
  274. data/spec/ramaze/app/location.rb +43 -0
  275. data/spec/ramaze/app.rb +50 -0
  276. data/spec/ramaze/bin/app/config.ru +11 -0
  277. data/spec/ramaze/bin/create.rb +28 -0
  278. data/spec/ramaze/bin/runner.rb +30 -0
  279. data/spec/ramaze/cache/lru.rb +48 -0
  280. data/spec/ramaze/cache/memcache.rb +69 -0
  281. data/spec/ramaze/cache/moneta.rb +53 -0
  282. data/spec/ramaze/cache/redis.rb +58 -0
  283. data/spec/ramaze/cache/sequel.rb +60 -0
  284. data/spec/ramaze/controller/actionless_templates.rb +16 -12
  285. data/spec/ramaze/controller/lonely_mapping.rb +18 -0
  286. data/spec/ramaze/controller/mapping.rb +63 -0
  287. data/spec/ramaze/controller/provide_inheritance.rb +40 -0
  288. data/spec/ramaze/controller/resolve.rb +9 -11
  289. data/spec/ramaze/controller/subclass.rb +22 -7
  290. data/spec/ramaze/controller/template_resolving.rb +23 -61
  291. data/spec/ramaze/controller/view/bar.xhtml +1 -0
  292. data/spec/ramaze/controller/view/base/another.xhtml +1 -0
  293. data/spec/ramaze/dispatcher/directory.rb +61 -33
  294. data/spec/ramaze/dispatcher/file.rb +65 -47
  295. data/spec/ramaze/error.rb +54 -64
  296. data/spec/ramaze/files/public_1/plain.txt +1 -0
  297. data/spec/ramaze/files/public_2/rich.txt +1 -0
  298. data/spec/ramaze/files.rb +30 -0
  299. data/spec/ramaze/gestalt.rb +28 -21
  300. data/spec/ramaze/helper/auth.rb +47 -29
  301. data/spec/ramaze/helper/bench.rb +21 -0
  302. data/spec/ramaze/helper/blue_form.rb +807 -0
  303. data/spec/ramaze/helper/cache.rb +65 -84
  304. data/spec/ramaze/helper/csrf.rb +64 -0
  305. data/spec/ramaze/helper/email.rb +69 -0
  306. data/spec/ramaze/helper/flash.rb +22 -101
  307. data/spec/ramaze/helper/formatting.rb +100 -6
  308. data/spec/ramaze/helper/gestalt.rb +18 -0
  309. data/spec/ramaze/helper/gravatar.rb +43 -0
  310. data/spec/ramaze/helper/layout/alternative.xhtml +5 -0
  311. data/spec/ramaze/helper/layout/default.xhtml +5 -0
  312. data/spec/ramaze/helper/layout.rb +109 -0
  313. data/spec/ramaze/helper/link.rb +48 -102
  314. data/spec/ramaze/helper/localize.rb +65 -0
  315. data/spec/ramaze/helper/maruku.rb +22 -0
  316. data/spec/ramaze/helper/paginate.rb +304 -0
  317. data/spec/ramaze/helper/request_accessor.rb +22 -0
  318. data/spec/ramaze/helper/simple_captcha.rb +45 -0
  319. data/spec/ramaze/helper/stack.rb +54 -41
  320. data/spec/ramaze/helper/upload.rb +150 -0
  321. data/spec/ramaze/helper/uploads/text_1.txt +1 -0
  322. data/spec/ramaze/helper/uploads/text_2.txt +1 -0
  323. data/spec/ramaze/helper/user.rb +63 -20
  324. data/spec/ramaze/helper/xhtml.rb +54 -0
  325. data/spec/ramaze/log/informer.rb +30 -28
  326. data/spec/ramaze/log/logging.rb +66 -0
  327. data/spec/ramaze/log/syslog.rb +89 -4
  328. data/spec/ramaze/params.rb +12 -16
  329. data/spec/ramaze/request.rb +51 -160
  330. data/spec/ramaze/rewrite/file.css +1 -0
  331. data/spec/ramaze/session/lru.rb +58 -0
  332. data/spec/ramaze/session/memcache.rb +66 -0
  333. data/spec/ramaze/session/redis.rb +63 -0
  334. data/spec/ramaze/session/sequel.rb +62 -0
  335. data/spec/ramaze/view/erector/external_view.erector +5 -0
  336. data/spec/ramaze/view/erector/index.erector +5 -0
  337. data/spec/ramaze/view/erector/layout.erector +13 -0
  338. data/spec/ramaze/view/erector/tables.erector +23 -0
  339. data/spec/ramaze/view/erector/view.erector +6 -0
  340. data/spec/ramaze/view/erector.rb +68 -0
  341. data/spec/ramaze/view/erubis/external.rhtml +8 -0
  342. data/spec/ramaze/view/erubis/sum.rhtml +1 -0
  343. data/spec/ramaze/view/erubis.rb +73 -0
  344. data/spec/ramaze/view/ezamar/external.zmr +8 -0
  345. data/spec/ramaze/view/ezamar/sum.zmr +1 -0
  346. data/spec/ramaze/view/ezamar.rb +73 -0
  347. data/spec/ramaze/view/gestalt/external.ges +8 -0
  348. data/spec/ramaze/view/gestalt.rb +94 -0
  349. data/spec/ramaze/view/haml/external.haml +5 -0
  350. data/spec/ramaze/view/haml/sum.haml +2 -0
  351. data/spec/ramaze/view/haml.rb +114 -0
  352. data/spec/ramaze/view/liquid/external.liquid +8 -0
  353. data/spec/ramaze/view/liquid/sum.liquid +1 -0
  354. data/spec/ramaze/view/liquid.rb +73 -0
  355. data/spec/ramaze/view/lokar/external.lok +8 -0
  356. data/spec/ramaze/view/lokar/sum.lok +1 -0
  357. data/spec/ramaze/view/lokar.rb +78 -0
  358. data/spec/ramaze/view/mustache/external.mt +8 -0
  359. data/spec/ramaze/view/mustache/sum.mt +1 -0
  360. data/spec/ramaze/view/mustache.rb +77 -0
  361. data/spec/ramaze/view/nagoro/external.nag +8 -0
  362. data/spec/ramaze/view/nagoro/sum.nag +1 -0
  363. data/spec/ramaze/view/nagoro.rb +78 -0
  364. data/spec/ramaze/view/remarkably.rb +49 -0
  365. data/spec/ramaze/view/sass.rb +73 -0
  366. data/spec/ramaze/view/slim/external.slim +5 -0
  367. data/spec/ramaze/view/slim/external_vars.slim +5 -0
  368. data/spec/ramaze/view/slim.rb +49 -0
  369. data/spec/ramaze/view/slippers/external.st +8 -0
  370. data/spec/ramaze/view/slippers/sum.st +1 -0
  371. data/spec/ramaze/view/slippers.rb +49 -0
  372. data/spec/ramaze/{template → view}/tagz.rb +20 -31
  373. data/spec/ramaze/view/tenjin/external.rbhtml +8 -0
  374. data/spec/ramaze/view/tenjin/sum.rbhtml +1 -0
  375. data/spec/ramaze/view/tenjin.rb +57 -0
  376. data/spec/ramaze/view.rb +36 -0
  377. data/spec/snippets/object/__dir__.rb +17 -0
  378. data/spec/snippets/ramaze/lru_hash.rb +88 -0
  379. data/spec/snippets/string/camel_case.rb +4 -1
  380. data/spec/snippets/string/color.rb +4 -1
  381. data/spec/snippets/string/snake_case.rb +4 -1
  382. data/spec/snippets/string/unindent.rb +10 -1
  383. data/tasks/authors.rake +17 -0
  384. data/tasks/bacon.rake +81 -0
  385. data/tasks/changelog.rake +20 -0
  386. data/tasks/gems.rake +15 -0
  387. data/tasks/release.rake +38 -0
  388. data/tasks/todo.rake +31 -0
  389. data/tasks/yard.rake +13 -0
  390. metadata +813 -714
  391. data/doc/AUTHORS +0 -25
  392. data/doc/CHANGELOG +0 -5757
  393. data/doc/COPYING +0 -56
  394. data/doc/FAQ +0 -92
  395. data/doc/GPL +0 -339
  396. data/doc/INSTALL +0 -34
  397. data/doc/LEGAL +0 -26
  398. data/doc/ProjectInfo +0 -53
  399. data/doc/README +0 -435
  400. data/doc/TODO +0 -29
  401. data/doc/meta/announcement.txt +0 -126
  402. data/doc/meta/configuration.txt +0 -162
  403. data/doc/meta/internals.txt +0 -278
  404. data/doc/meta/users.kml +0 -64
  405. data/doc/migrate/1110_to_1111.txt +0 -131
  406. data/doc/readme_chunks/appendix.txt +0 -10
  407. data/doc/readme_chunks/examples.txt +0 -38
  408. data/doc/readme_chunks/features.txt +0 -148
  409. data/doc/readme_chunks/getting_help.txt +0 -5
  410. data/doc/readme_chunks/getting_started.txt +0 -18
  411. data/doc/readme_chunks/installing.txt +0 -46
  412. data/doc/readme_chunks/introduction.txt +0 -18
  413. data/doc/readme_chunks/thanks.txt +0 -59
  414. data/doc/tutorial/todolist.html +0 -816
  415. data/doc/tutorial/todolist.mkd +0 -736
  416. data/examples/auth/auth.rb +0 -54
  417. data/examples/auth/template/layout.haml +0 -20
  418. data/examples/auth/template/login.haml +0 -16
  419. data/examples/blog/README +0 -3
  420. data/examples/blog/controller/main.rb +0 -29
  421. data/examples/blog/model/entry.rb +0 -30
  422. data/examples/blog/public/styles/blog.css +0 -132
  423. data/examples/blog/spec/blog.rb +0 -87
  424. data/examples/blog/start.rb +0 -7
  425. data/examples/blog/view/edit.xhtml +0 -17
  426. data/examples/blog/view/index.xhtml +0 -17
  427. data/examples/blog/view/layout.xhtml +0 -11
  428. data/examples/blog/view/new.xhtml +0 -16
  429. data/examples/hello.rb +0 -15
  430. data/examples/linking.rb +0 -29
  431. data/examples/memleak_detector.rb +0 -32
  432. data/examples/nitro_form.rb +0 -23
  433. data/examples/rammit/spec/rammit.rb +0 -30
  434. data/examples/rammit/src/controller/main.rb +0 -3
  435. data/examples/rammit/src/controller/page.rb +0 -16
  436. data/examples/rammit/src/model.rb +0 -33
  437. data/examples/rammit/start.rb +0 -8
  438. data/examples/rammit/template/index.xhtml +0 -14
  439. data/examples/rammit/template/page/view.xhtml +0 -4
  440. data/examples/rapaste/Rakefile +0 -35
  441. data/examples/rapaste/controller/paste.rb +0 -94
  442. data/examples/rapaste/model/paste.rb +0 -55
  443. data/examples/rapaste/public/css/active4d.css +0 -114
  444. data/examples/rapaste/public/css/all_hallows_eve.css +0 -72
  445. data/examples/rapaste/public/css/amy.css +0 -147
  446. data/examples/rapaste/public/css/blackboard.css +0 -88
  447. data/examples/rapaste/public/css/brilliance_black.css +0 -605
  448. data/examples/rapaste/public/css/brilliance_dull.css +0 -599
  449. data/examples/rapaste/public/css/cobalt.css +0 -149
  450. data/examples/rapaste/public/css/dawn.css +0 -121
  451. data/examples/rapaste/public/css/display.css +0 -197
  452. data/examples/rapaste/public/css/eiffel.css +0 -121
  453. data/examples/rapaste/public/css/espresso_libre.css +0 -109
  454. data/examples/rapaste/public/css/idle.css +0 -62
  455. data/examples/rapaste/public/css/iplastic.css +0 -80
  456. data/examples/rapaste/public/css/lazy.css +0 -73
  457. data/examples/rapaste/public/css/mac_classic.css +0 -123
  458. data/examples/rapaste/public/css/magicwb_amiga.css +0 -104
  459. data/examples/rapaste/public/css/pastels_on_dark.css +0 -188
  460. data/examples/rapaste/public/css/slush_poppies.css +0 -85
  461. data/examples/rapaste/public/css/spacecadet.css +0 -51
  462. data/examples/rapaste/public/css/sunburst.css +0 -180
  463. data/examples/rapaste/public/css/twilight.css +0 -137
  464. data/examples/rapaste/public/css/zenburnesque.css +0 -91
  465. data/examples/rapaste/public/js/jquery.js +0 -11
  466. data/examples/rapaste/spec/rapaste.rb +0 -49
  467. data/examples/rapaste/start.rb +0 -24
  468. data/examples/rapaste/view/copy.xhtml +0 -10
  469. data/examples/rapaste/view/index.xhtml +0 -9
  470. data/examples/rapaste/view/layout.xhtml +0 -25
  471. data/examples/rapaste/view/list.xhtml +0 -29
  472. data/examples/rapaste/view/search.xhtml +0 -41
  473. data/examples/rapaste/view/view.xhtml +0 -37
  474. data/examples/simple_auth.rb +0 -23
  475. data/examples/sourceview/public/coderay.css +0 -104
  476. data/examples/sourceview/public/images/file.gif +0 -0
  477. data/examples/sourceview/public/images/folder.gif +0 -0
  478. data/examples/sourceview/public/images/tv-collapsable-last.gif +0 -0
  479. data/examples/sourceview/public/images/tv-collapsable.gif +0 -0
  480. data/examples/sourceview/public/images/tv-expandable-last.gif +0 -0
  481. data/examples/sourceview/public/images/tv-expandable.gif +0 -0
  482. data/examples/sourceview/public/images/tv-item-last.gif +0 -0
  483. data/examples/sourceview/public/images/tv-item.gif +0 -0
  484. data/examples/sourceview/public/jquery.js +0 -11
  485. data/examples/sourceview/public/jquery.treeview.css +0 -48
  486. data/examples/sourceview/public/jquery.treeview.js +0 -223
  487. data/examples/sourceview/public/sourceview.js +0 -52
  488. data/examples/sourceview/sourceview.rb +0 -77
  489. data/examples/sourceview/template/index.haml +0 -59
  490. data/examples/templates/template/external.amrita +0 -19
  491. data/examples/templates/template/external.xsl +0 -57
  492. data/examples/templates/template_amrita2.rb +0 -74
  493. data/examples/templates/template_xslt.rb +0 -49
  494. data/examples/todolist/README +0 -1
  495. data/examples/todolist/public/js/jquery.js +0 -1923
  496. data/examples/todolist/public/ramaze.png +0 -0
  497. data/examples/todolist/spec/todolist.rb +0 -132
  498. data/examples/todolist/src/controller/main.rb +0 -70
  499. data/examples/todolist/src/element/page.rb +0 -31
  500. data/examples/todolist/src/model.rb +0 -14
  501. data/examples/todolist/start.rb +0 -11
  502. data/examples/todolist/template/index.xhtml +0 -17
  503. data/examples/todolist/template/new.xhtml +0 -7
  504. data/examples/whywiki/spec/whywiki.rb +0 -58
  505. data/examples/whywiki/template/show.xhtml +0 -18
  506. data/examples/wikore/start.rb +0 -9
  507. data/examples/wiktacular/mkd/main/2007-07-20_19-23-10.mkd +0 -2
  508. data/examples/wiktacular/mkd/main/2007-07-20_19-45-07.mkd +0 -2
  509. data/examples/wiktacular/mkd/main/current.mkd +0 -2
  510. data/examples/wiktacular/mkd/testing/2007-07-20_16-43-46.mkd +0 -2
  511. data/lib/proto/public/css/ramaze_error.css +0 -90
  512. data/lib/proto/public/dispatch.fcgi +0 -11
  513. data/lib/proto/public/ramaze.png +0 -0
  514. data/lib/proto/spec/main.rb +0 -24
  515. data/lib/proto/start.rb +0 -8
  516. data/lib/proto/start.ru +0 -8
  517. data/lib/proto/view/error.xhtml +0 -64
  518. data/lib/proto/view/page.xhtml +0 -15
  519. data/lib/ramaze/action/render.rb +0 -163
  520. data/lib/ramaze/action.rb +0 -136
  521. data/lib/ramaze/adapter/base.rb +0 -59
  522. data/lib/ramaze/adapter/cgi.rb +0 -24
  523. data/lib/ramaze/adapter/ebb.rb +0 -32
  524. data/lib/ramaze/adapter/evented_mongrel.rb +0 -7
  525. data/lib/ramaze/adapter/fcgi.rb +0 -24
  526. data/lib/ramaze/adapter/lsws.rb +0 -23
  527. data/lib/ramaze/adapter/mongrel.rb +0 -25
  528. data/lib/ramaze/adapter/scgi.rb +0 -22
  529. data/lib/ramaze/adapter/swiftiplied_mongrel.rb +0 -7
  530. data/lib/ramaze/adapter/thin.rb +0 -22
  531. data/lib/ramaze/adapter/webrick.rb +0 -52
  532. data/lib/ramaze/adapter.rb +0 -101
  533. data/lib/ramaze/cache/memcached.rb +0 -70
  534. data/lib/ramaze/cache/memory.rb +0 -6
  535. data/lib/ramaze/cache/yaml_store.rb +0 -68
  536. data/lib/ramaze/contrib/auto_params/get_args.rb +0 -57
  537. data/lib/ramaze/contrib/auto_params.rb +0 -135
  538. data/lib/ramaze/contrib/email.rb +0 -84
  539. data/lib/ramaze/contrib/facebook/facebook.rb +0 -171
  540. data/lib/ramaze/contrib/facebook.rb +0 -23
  541. data/lib/ramaze/contrib/file_cache.rb +0 -65
  542. data/lib/ramaze/contrib/gettext/mo.rb +0 -155
  543. data/lib/ramaze/contrib/gettext/parser.rb +0 -46
  544. data/lib/ramaze/contrib/gettext/po.rb +0 -109
  545. data/lib/ramaze/contrib/gettext.rb +0 -113
  546. data/lib/ramaze/contrib/gzip_filter.rb +0 -56
  547. data/lib/ramaze/contrib/profiling.rb +0 -36
  548. data/lib/ramaze/contrib/route.rb +0 -22
  549. data/lib/ramaze/contrib/sequel/fill.rb +0 -12
  550. data/lib/ramaze/contrib/sequel_cache.rb +0 -92
  551. data/lib/ramaze/contrib.rb +0 -82
  552. data/lib/ramaze/controller/error.rb +0 -46
  553. data/lib/ramaze/controller/main.rb +0 -2
  554. data/lib/ramaze/controller/resolve.rb +0 -234
  555. data/lib/ramaze/current/request.rb +0 -181
  556. data/lib/ramaze/current/response.rb +0 -19
  557. data/lib/ramaze/current/session/flash.rb +0 -67
  558. data/lib/ramaze/current/session/hash.rb +0 -65
  559. data/lib/ramaze/current/session.rb +0 -153
  560. data/lib/ramaze/dispatcher/action.rb +0 -40
  561. data/lib/ramaze/dispatcher/directory.rb +0 -116
  562. data/lib/ramaze/dispatcher/error.rb +0 -108
  563. data/lib/ramaze/dispatcher/file.rb +0 -87
  564. data/lib/ramaze/dispatcher.rb +0 -124
  565. data/lib/ramaze/error.rb +0 -24
  566. data/lib/ramaze/global/dsl.rb +0 -39
  567. data/lib/ramaze/global/globalstruct.rb +0 -147
  568. data/lib/ramaze/global.rb +0 -116
  569. data/lib/ramaze/helper/aspect.rb +0 -100
  570. data/lib/ramaze/helper/cgi.rb +0 -43
  571. data/lib/ramaze/helper/inform.rb +0 -40
  572. data/lib/ramaze/helper/nitroform.rb +0 -14
  573. data/lib/ramaze/helper/pager.rb +0 -366
  574. data/lib/ramaze/helper/partial.rb +0 -96
  575. data/lib/ramaze/helper/redirect.rb +0 -73
  576. data/lib/ramaze/helper/sendfile.rb +0 -18
  577. data/lib/ramaze/helper/sequel.rb +0 -52
  578. data/lib/ramaze/inform.rb +0 -4
  579. data/lib/ramaze/log/analogger.rb +0 -37
  580. data/lib/ramaze/log/growl.rb +0 -35
  581. data/lib/ramaze/log/knotify.rb +0 -25
  582. data/lib/ramaze/log/xosd.rb +0 -88
  583. data/lib/ramaze/route.rb +0 -84
  584. data/lib/ramaze/snippets/array/put_within.rb +0 -37
  585. data/lib/ramaze/snippets/binding/locals.rb +0 -13
  586. data/lib/ramaze/snippets/dictionary.rb +0 -504
  587. data/lib/ramaze/snippets/divide.rb +0 -20
  588. data/lib/ramaze/snippets/kernel/__dir__.rb +0 -23
  589. data/lib/ramaze/snippets/kernel/acquire.rb +0 -39
  590. data/lib/ramaze/snippets/kernel/aquire.rb +0 -1
  591. data/lib/ramaze/snippets/kernel/constant.rb +0 -26
  592. data/lib/ramaze/snippets/kernel/pretty_inspect.rb +0 -15
  593. data/lib/ramaze/snippets/metaid.rb +0 -17
  594. data/lib/ramaze/snippets/numeric/filesize_format.rb +0 -19
  595. data/lib/ramaze/snippets/object/pretty.rb +0 -6
  596. data/lib/ramaze/snippets/object/scope.rb +0 -11
  597. data/lib/ramaze/snippets/object/thread_accessor.rb +0 -5
  598. data/lib/ramaze/snippets/object/traits.rb +0 -76
  599. data/lib/ramaze/snippets/ordered_set.rb +0 -36
  600. data/lib/ramaze/snippets/proc/locals.rb +0 -11
  601. data/lib/ramaze/snippets/ramaze/caller_info.rb +0 -30
  602. data/lib/ramaze/snippets/ramaze/caller_lines.rb +0 -51
  603. data/lib/ramaze/snippets/ramaze/thread_accessor.rb +0 -44
  604. data/lib/ramaze/snippets/string/each.rb +0 -8
  605. data/lib/ramaze/snippets/string/ord.rb +0 -15
  606. data/lib/ramaze/snippets/string/start_with.rb +0 -7
  607. data/lib/ramaze/snippets/struct/fill.rb +0 -23
  608. data/lib/ramaze/snippets/struct/values_at.rb +0 -23
  609. data/lib/ramaze/snippets/symbol/to_proc.rb +0 -24
  610. data/lib/ramaze/snippets/thread/into.rb +0 -18
  611. data/lib/ramaze/sourcereload.rb +0 -169
  612. data/lib/ramaze/spec/helper/browser.rb +0 -88
  613. data/lib/ramaze/spec/helper/mock_http.rb +0 -69
  614. data/lib/ramaze/spec/helper/requester.rb +0 -49
  615. data/lib/ramaze/spec/helper/simple_http.rb +0 -434
  616. data/lib/ramaze/spec/helper.rb +0 -122
  617. data/lib/ramaze/spec.rb +0 -1
  618. data/lib/ramaze/store/default.rb +0 -109
  619. data/lib/ramaze/template/amrita2.rb +0 -44
  620. data/lib/ramaze/template/builder.rb +0 -28
  621. data/lib/ramaze/template/erubis.rb +0 -35
  622. data/lib/ramaze/template/ezamar/element.rb +0 -169
  623. data/lib/ramaze/template/ezamar/engine.rb +0 -76
  624. data/lib/ramaze/template/ezamar/morpher.rb +0 -135
  625. data/lib/ramaze/template/ezamar/render_partial.rb +0 -31
  626. data/lib/ramaze/template/ezamar.rb +0 -42
  627. data/lib/ramaze/template/haml.rb +0 -37
  628. data/lib/ramaze/template/liquid.rb +0 -36
  629. data/lib/ramaze/template/markaby.rb +0 -52
  630. data/lib/ramaze/template/nagoro.rb +0 -51
  631. data/lib/ramaze/template/none.rb +0 -14
  632. data/lib/ramaze/template/redcloth.rb +0 -24
  633. data/lib/ramaze/template/remarkably.rb +0 -38
  634. data/lib/ramaze/template/sass.rb +0 -37
  635. data/lib/ramaze/template/tagz.rb +0 -79
  636. data/lib/ramaze/template/tenjin.rb +0 -34
  637. data/lib/ramaze/template/xslt.rb +0 -96
  638. data/lib/ramaze/template.rb +0 -81
  639. data/lib/ramaze/tool/create.rb +0 -74
  640. data/lib/ramaze/tool/localize.rb +0 -162
  641. data/lib/ramaze/tool/mime.rb +0 -25
  642. data/lib/ramaze/tool/mime_types.yaml +0 -615
  643. data/lib/ramaze/tool/record.rb +0 -6
  644. data/lib/ramaze/tool.rb +0 -9
  645. data/lib/ramaze/trinity.rb +0 -13
  646. data/lib/vendor/bacon.rb +0 -323
  647. data/rake_tasks/conf.rake +0 -73
  648. data/rake_tasks/coverage.rake +0 -46
  649. data/rake_tasks/darcs.rake +0 -5
  650. data/rake_tasks/gem.rake +0 -43
  651. data/rake_tasks/maintenance.rake +0 -384
  652. data/rake_tasks/spec.rake +0 -62
  653. data/spec/contrib/auto_params.rb +0 -121
  654. data/spec/contrib/profiling.rb +0 -26
  655. data/spec/contrib/route.rb +0 -36
  656. data/spec/contrib/sequel/fill.rb +0 -47
  657. data/spec/examples/simple_auth.rb +0 -32
  658. data/spec/examples/templates/template_amrita2.rb +0 -16
  659. data/spec/examples/templates/template_redcloth.rb +0 -28
  660. data/spec/ramaze/action/basics.rb +0 -36
  661. data/spec/ramaze/action/cache.rb +0 -43
  662. data/spec/ramaze/action/layout.rb +0 -190
  663. data/spec/ramaze/adapter/mongrel.rb +0 -12
  664. data/spec/ramaze/adapter/record.rb +0 -31
  665. data/spec/ramaze/adapter/webrick.rb +0 -12
  666. data/spec/ramaze/adapter.rb +0 -22
  667. data/spec/ramaze/cache.rb +0 -73
  668. data/spec/ramaze/controller.rb +0 -177
  669. data/spec/ramaze/current/request.rb +0 -30
  670. data/spec/ramaze/current/session.rb +0 -97
  671. data/spec/ramaze/dispatcher.rb +0 -31
  672. data/spec/ramaze/element.rb +0 -107
  673. data/spec/ramaze/helper/aspect.rb +0 -92
  674. data/spec/ramaze/helper/cgi.rb +0 -43
  675. data/spec/ramaze/helper/file.rb +0 -18
  676. data/spec/ramaze/helper/pager.rb +0 -99
  677. data/spec/ramaze/helper/partial.rb +0 -76
  678. data/spec/ramaze/helper/redirect.rb +0 -112
  679. data/spec/ramaze/localize.rb +0 -67
  680. data/spec/ramaze/morpher.rb +0 -111
  681. data/spec/ramaze/public/error404.xhtml +0 -1
  682. data/spec/ramaze/request/mongrel.rb +0 -9
  683. data/spec/ramaze/request/thin.rb +0 -9
  684. data/spec/ramaze/request/webrick.rb +0 -5
  685. data/spec/ramaze/route.rb +0 -130
  686. data/spec/ramaze/session.rb +0 -94
  687. data/spec/ramaze/store/default.rb +0 -71
  688. data/spec/ramaze/template/amrita2/external.amrita +0 -6
  689. data/spec/ramaze/template/amrita2/sum.amrita +0 -1
  690. data/spec/ramaze/template/amrita2.rb +0 -50
  691. data/spec/ramaze/template/builder/external.rxml +0 -3
  692. data/spec/ramaze/template/builder.rb +0 -55
  693. data/spec/ramaze/template/erubis/sum.rhtml +0 -1
  694. data/spec/ramaze/template/erubis.rb +0 -41
  695. data/spec/ramaze/template/ezamar/another/long/action.zmr +0 -1
  696. data/spec/ramaze/template/ezamar/combined.zmr +0 -1
  697. data/spec/ramaze/template/ezamar/file_only.zmr +0 -1
  698. data/spec/ramaze/template/ezamar/index.zmr +0 -1
  699. data/spec/ramaze/template/ezamar/nested.zmr +0 -1
  700. data/spec/ramaze/template/ezamar/other__index.xhtml +0 -1
  701. data/spec/ramaze/template/ezamar/some__long__action.zmr +0 -1
  702. data/spec/ramaze/template/ezamar/sum.zmr +0 -1
  703. data/spec/ramaze/template/ezamar.rb +0 -63
  704. data/spec/ramaze/template/haml/index.haml +0 -5
  705. data/spec/ramaze/template/haml/locals.haml +0 -2
  706. data/spec/ramaze/template/haml/with_vars.haml +0 -4
  707. data/spec/ramaze/template/haml.rb +0 -66
  708. data/spec/ramaze/template/liquid/index.liquid +0 -1
  709. data/spec/ramaze/template/liquid/products.liquid +0 -45
  710. data/spec/ramaze/template/liquid.rb +0 -99
  711. data/spec/ramaze/template/markaby/external.mab +0 -8
  712. data/spec/ramaze/template/markaby/sum.mab +0 -1
  713. data/spec/ramaze/template/markaby.rb +0 -61
  714. data/spec/ramaze/template/nagoro/another/long/action.nag +0 -1
  715. data/spec/ramaze/template/nagoro/combined.nag +0 -1
  716. data/spec/ramaze/template/nagoro/file_only.nag +0 -1
  717. data/spec/ramaze/template/nagoro/index.nag +0 -1
  718. data/spec/ramaze/template/nagoro/nested.nag +0 -1
  719. data/spec/ramaze/template/nagoro/some__long__action.nag +0 -1
  720. data/spec/ramaze/template/nagoro/sum.nag +0 -1
  721. data/spec/ramaze/template/nagoro.rb +0 -64
  722. data/spec/ramaze/template/redcloth/external.redcloth +0 -1
  723. data/spec/ramaze/template/redcloth.rb +0 -38
  724. data/spec/ramaze/template/remarkably.rb +0 -58
  725. data/spec/ramaze/template/sass.rb +0 -69
  726. data/spec/ramaze/template/tenjin/external.tenjin +0 -1
  727. data/spec/ramaze/template/tenjin.rb +0 -49
  728. data/spec/ramaze/template/xslt/concat_words.xsl +0 -16
  729. data/spec/ramaze/template/xslt/index.xsl +0 -14
  730. data/spec/ramaze/template/xslt/products.xsl +0 -32
  731. data/spec/ramaze/template/xslt/ruby_version.xsl +0 -14
  732. data/spec/ramaze/template/xslt.rb +0 -90
  733. data/spec/ramaze/template.rb +0 -128
  734. data/spec/snippets/array/put_within.rb +0 -33
  735. data/spec/snippets/divide.rb +0 -19
  736. data/spec/snippets/kernel/__dir__.rb +0 -8
  737. data/spec/snippets/kernel/acquire.rb +0 -71
  738. data/spec/snippets/kernel/constant.rb +0 -23
  739. data/spec/snippets/numeric/filesize_format.rb +0 -12
  740. data/spec/snippets/ordered_set.rb +0 -63
  741. data/spec/snippets/ramaze/caller_info.rb +0 -39
  742. data/spec/snippets/ramaze/caller_lines.rb +0 -30
  743. data/spec/snippets/struct/fill.rb +0 -26
  744. data/spec/snippets/struct/values_at.rb +0 -44
  745. data/spec/snippets/symbol/to_proc.rb +0 -13
  746. data/spec/snippets/thread/into.rb +0 -20
  747. /data/examples/{todolist → app/todolist}/public/favicon.ico +0 -0
  748. /data/examples/{upload → app/upload}/view/index.xhtml +0 -0
  749. /data/examples/{wikore/template → app/wikore/view}/index.xhtml +0 -0
  750. /data/examples/{wiktacular → app/wiktacular}/README +0 -0
  751. /data/examples/{wiktacular → app/wiktacular}/mkd/link/2007-07-20_19-45-51.mkd +0 -0
  752. /data/examples/{wiktacular → app/wiktacular}/mkd/link/current.mkd +0 -0
  753. /data/examples/{wiktacular → app/wiktacular}/mkd/main/2007-07-20_16-31-33.mkd +0 -0
  754. /data/examples/{wiktacular → app/wiktacular}/public/favicon.ico +0 -0
  755. /data/examples/{wiktacular → app/wiktacular}/public/screen.css +0 -0
  756. /data/examples/{wiktacular/template → app/wiktacular/view}/index.xhtml +0 -0
  757. /data/examples/{identity.rb → helpers/identity.rb} +0 -0
  758. /data/examples/{facebook.rb → misc/facebook.rb} +0 -0
  759. /data/examples/templates/{template → view}/external.liquid +0 -0
  760. /data/spec/ramaze/action/{template → view}/bar.xhtml +0 -0
  761. /data/spec/ramaze/action/{template → view}/instancevars/layout.xhtml +0 -0
  762. /data/spec/ramaze/action/{template → view}/other_wrapper.xhtml +0 -0
  763. /data/spec/ramaze/action/{template → view}/single_wrapper.xhtml +0 -0
  764. /data/spec/ramaze/action/{template/sub/sub_wrapper.xhtml → view/sub/sub_wrapper.erb} +0 -0
  765. /data/spec/ramaze/controller/{template → view}/greet.xhtml +0 -0
  766. /data/spec/ramaze/controller/{template → view}/list.xhtml +0 -0
  767. /data/spec/ramaze/controller/{template → view}/other/greet/other.xhtml +0 -0
  768. /data/spec/ramaze/controller/{template → view}/other_wrapper.xhtml +0 -0
  769. /data/spec/ramaze/helper/{template → view}/locals.xhtml +0 -0
  770. /data/spec/ramaze/helper/{template → view}/loop.xhtml +0 -0
  771. /data/spec/ramaze/helper/{template → view}/num.xhtml +0 -0
  772. /data/spec/ramaze/helper/{template → view}/partial.xhtml +0 -0
  773. /data/spec/ramaze/helper/{template → view}/recursive.xhtml +0 -0
  774. /data/spec/ramaze/helper/{template → view}/recursive_local_ivars.xhtml +0 -0
  775. /data/spec/ramaze/helper/{template → view}/recursive_locals.xhtml +0 -0
  776. /data/spec/ramaze/helper/{template → view}/test_template.xhtml +0 -0
  777. /data/spec/ramaze/{template → view}/remarkably/external.rem +0 -0
  778. /data/spec/ramaze/{template → view}/remarkably/sum.rem +0 -0
  779. /data/spec/ramaze/{template → view}/sass/file.css.sass +0 -0
  780. /data/spec/ramaze/{template → view}/tagz/external.tagz +0 -0
  781. /data/spec/ramaze/{template → view}/tagz/sum.tagz +0 -0
@@ -1,42 +1,41 @@
1
+ require 'rubygems'
1
2
  require 'ramaze'
2
- require 'ramaze/spec/helper'
3
+ require 'ramaze/spec/bacon'
3
4
 
4
- spec_require 'hpricot', 'bluecloth'
5
+ require 'nokogiri'
6
+ require 'bluecloth'
5
7
 
6
- $LOAD_PATH.unshift base = __DIR__/'..'
8
+ $LOAD_PATH.unshift base = __DIR__('..')
7
9
  require 'start'
8
10
 
9
11
  describe 'wiktacular' do
10
- behaves_like 'http'
12
+ behaves_like :rack_test
11
13
  NEWPAGE = "newpagename"
12
14
 
13
15
  def check_page(name)
14
- page = get('/'+name)
16
+ page = get(name)
15
17
  page.status.should == 200
16
18
  page.body.should.not == nil
17
19
 
18
- doc = Hpricot(page.body)
20
+ doc = Nokogiri::HTML(page.body)
19
21
  doc.at('title').inner_html.should == 'Wiktacular'
20
22
 
21
- menu = doc.search('div#menu>a')
23
+ menu = doc.css('div#menu a')
22
24
  menu[0].inner_html.should == 'Home'
23
25
  menu[1].inner_html.should == 'New Entry'
24
26
 
25
- navigation = doc.search('div#navigation>div>a')
27
+ navigation = doc.css('div#navigation div a')
26
28
  %w[link main markdown testing].each do |link|
27
29
  navigation.map{|n| n.inner_html }.sort.should.include(link)
28
30
  end
29
31
 
30
- manipulate = doc.search('div#manipulate>a')
32
+ manipulate = doc.search('div#manipulate a')
31
33
  manipulate.map{|m| m.inner_html }.should ==
32
34
  %w[Edit Delete Revert Unrevert]
33
-
34
35
  doc
35
36
  end
36
37
 
37
38
  it 'should start' do
38
- ramaze :public_root => base/:public,
39
- :template_root => base/:template
40
39
  get('/').status.should == 200
41
40
  end
42
41
 
@@ -56,58 +55,59 @@ describe 'wiktacular' do
56
55
  check_page('/testing')
57
56
  end
58
57
 
59
-
60
58
  it 'should not have foobar page' do
61
59
  doc = check_page('/foobar')
62
- doc.at('div#text').inner_html.strip.should == 'No Entry'
63
- end
60
+ doc.at('div#content').inner_html.strip.should =~ /No Entry/
61
+ end
64
62
 
65
63
  it 'should allow page editing' do
66
64
  doc = check_page('/edit/main')
67
65
  form = doc.at('div#content>form')
66
+ form.should.not == nil
68
67
  form.at('input[@type=text]')['value'].should == 'main'
69
68
  form.at('textarea').inner_html.should.match(/# Hello, World/)
70
69
  form.at('a').inner_html.should == 'cancel'
71
70
  form.at('a')['href'].should == '/main'
72
71
  end
73
72
 
74
- def edit_page(name, text='new text')
75
- page = post('/save','handle'=>name,'text'=>text)
76
- page.status.should == 303
77
- page.location.should == '/index/'+name
73
+ def edit_page(name, text = 'new text')
74
+ page = post('/save', 'handle' => name,'text' => text)
75
+ page.status.should == 302
76
+ path = MainController.r(:index, name)
77
+ page.location.should == "http://example.org#{path}"
78
78
  end
79
-
79
+
80
80
  def delete_page(name)
81
81
  page = get('/delete/'+name)
82
- page.status.should == 303
83
- page.location.should == '/'
82
+ page.status.should == 302
83
+ page.location.should == 'http://example.org/'
84
84
  end
85
85
 
86
86
  def revert_page(name)
87
87
  page = get('/revert/'+name)
88
- page.status.should == 303
89
- page.location.should == '/'+name
88
+ page.status.should == 302
89
+ page.location.should == 'http://example.org/'+name
90
90
  end
91
91
 
92
92
  def unrevert_page(name)
93
93
  page = get('/revert/'+name)
94
- page.status.should == 303
95
- page.location.should == '/'+name
94
+ page.status.should == 302
95
+ page.location.should == 'http://example.org/'+name
96
96
  end
97
97
 
98
98
  it 'editing should create page' do
99
99
  edit_page(NEWPAGE, 'new text')
100
- doc = check_page(NEWPAGE)
100
+ doc = check_page("/#{NEWPAGE}")
101
101
  doc.at('div#text').inner_html.strip.should == '<p>new text</p>'
102
102
  delete_page(NEWPAGE)
103
103
  end
104
104
 
105
105
  it 'editing should modify page' do
106
106
  edit_page(NEWPAGE, 'text text')
107
- doc = check_page(NEWPAGE)
107
+ doc = check_page("/#{NEWPAGE}")
108
108
  doc.at('div#text').inner_html.strip.should == '<p>text text</p>'
109
109
  edit_page(NEWPAGE,'some other text')
110
- doc = check_page(NEWPAGE)
110
+ doc = check_page("/#{NEWPAGE}")
111
111
  doc.at('div#text').inner_html.strip.should == '<p>some other text</p>'
112
112
  delete_page(NEWPAGE)
113
113
  end
@@ -115,10 +115,10 @@ describe 'wiktacular' do
115
115
  it "should be possible to revert changes" do
116
116
  edit_page(NEWPAGE, 'first text')
117
117
  edit_page(NEWPAGE, 'second text')
118
- doc = check_page(NEWPAGE)
118
+ doc = check_page("/#{NEWPAGE}")
119
119
  doc.at('div#text').inner_html.strip.should == '<p>second text</p>'
120
120
  revert_page(NEWPAGE)
121
- doc = check_page(NEWPAGE)
121
+ doc = check_page("/#{NEWPAGE}")
122
122
  doc.at('div#text').inner_html.strip.should == '<p>first text</p>'
123
123
  end
124
124
 
@@ -126,33 +126,32 @@ describe 'wiktacular' do
126
126
  edit_page(NEWPAGE, 'first text')
127
127
  edit_page(NEWPAGE, 'second text')
128
128
  revert_page(NEWPAGE)
129
- doc = check_page(NEWPAGE)
129
+ doc = check_page("/#{NEWPAGE}")
130
130
  doc.at('div#text').inner_html.strip.should == '<p>first text</p>'
131
131
  unrevert_page(NEWPAGE)
132
- doc = check_page(NEWPAGE)
132
+ doc = check_page("/#{NEWPAGE}")
133
133
  doc.at('div#text').inner_html.strip.should == '<p>first text</p>'
134
134
  end
135
135
 
136
136
  it "should convert [[#{NEWPAGE}]] to existing link" do
137
137
  edit_page(NEWPAGE, "Link: [[#{NEWPAGE}]]")
138
- doc = check_page(NEWPAGE)
138
+ doc = check_page("/#{NEWPAGE}")
139
139
  a = doc.at('div#text>p>a')
140
140
  a['class'].should == 'exists'
141
- a['href'].should == NEWPAGE
141
+ a['href'].should == "/index/#{NEWPAGE}"
142
142
  a.inner_html.should == NEWPAGE
143
143
  end
144
144
 
145
145
  it "should convert [[chunky bacon]] to nonexisting link" do
146
146
  edit_page(NEWPAGE, "Link: [[chunky bacon]]")
147
- doc = check_page(NEWPAGE)
147
+ doc = check_page("/#{NEWPAGE}")
148
148
  a = doc.at('div#text>p>a')
149
149
  a['class'].should == 'nonexists'
150
- a['href'].should == "chunky+bacon"
150
+ a['href'].should == "/index/chunky+bacon"
151
151
  a.inner_html.should == "chunky bacon"
152
152
  end
153
153
 
154
- after do
155
- WikiEntry.new(NEWPAGE).delete
154
+ should 'delete page for cleanup' do
155
+ WikiEntry.new(NEWPAGE).delete.first.should =~ /#{NEWPAGE}$/
156
156
  end
157
-
158
157
  end
@@ -1,9 +1,11 @@
1
1
  class MainController < Ramaze::Controller
2
-
2
+ layout :application
3
+ before_all {setup}
3
4
 
4
- def index handle = "main"
5
- @handle = handle
5
+ def index(handle = "main")
6
6
  @entry = WikiEntry.new(handle)
7
+ @handle = @entry.name
8
+
7
9
  if @entry.exists?
8
10
  @text = EntryView.render(@entry.content)
9
11
  @history = @entry.history.map{|f|
@@ -15,41 +17,39 @@ class MainController < Ramaze::Controller
15
17
  end
16
18
  end
17
19
 
18
- def edit handle
19
- @handle = handle
20
+ def edit(handle)
20
21
  @entry = WikiEntry.new(handle)
22
+ @handle = @entry.name
21
23
  @text = @entry.content
22
24
  end
23
25
 
24
- def revert handle
26
+ def revert(handle)
25
27
  WikiEntry[handle].revert
26
- redirect Rs(handle)
28
+ redirect route(handle)
27
29
  end
28
30
 
29
- def unrevert handle
31
+ def unrevert(handle)
30
32
  WikiEntry[handle].unrevert
31
- redirect Rs(handle)
33
+ redirect route(handle)
32
34
  end
33
35
 
34
- def delete handle
35
- WikiEntry[handle].delete
36
+ def delete(handle)
37
+ WikiEntry.new(handle).delete
36
38
  redirect_referer
37
39
  end
38
40
 
39
41
  def save
40
42
  redirect_referer unless request.post?
43
+
41
44
  handle = request['handle']
42
45
  entry = WikiEntry.new(handle)
43
46
  entry.save(request['text'])
44
- redirect Rs(:index, handle)
47
+ redirect entry.route
45
48
  end
46
49
 
47
- def html_layout
50
+ def setup
48
51
  @nodes = WikiEntry.titles.map{|f|
49
- name = File.basename(f)
50
- %[<a href="/#{name}">#{name}</a>]
51
- }.join("\n")
52
+ anchor File.basename(f)
53
+ }.join("\n")
52
54
  end
53
-
54
- layout '/html_layout'
55
55
  end
@@ -2,18 +2,22 @@ require 'fileutils'
2
2
  require 'cgi'
3
3
 
4
4
  class WikiEntry
5
- ENTRIES_DIR = __DIR__/'../mkd'
5
+ ENTRIES_DIR = __DIR__('../mkd')
6
+
6
7
  class << self
7
8
  def [](name)
8
- if File.exist?(ENTRIES_DIR/File.basename(File.expand_path(name)))
9
+ if File.exist?(File.join(ENTRIES_DIR, File.basename(File.expand_path(name))))
9
10
  new(name)
10
11
  end
11
12
  end
13
+
12
14
  def titles
13
- Dir[ENTRIES_DIR/'*'].entries
15
+ Dir[File.join(ENTRIES_DIR,'*')].entries
14
16
  end
15
17
  end
16
18
 
19
+ include Ramaze::Helper::CGI
20
+
17
21
  attr_reader :history, :current, :name
18
22
 
19
23
  def initialize(name)
@@ -27,7 +31,7 @@ class WikiEntry
27
31
  @history = Dir["#{base}/*_*.mkd"]
28
32
  end
29
33
 
30
- def save newtext
34
+ def save(newtext)
31
35
  FileUtils.mkdir_p(base)
32
36
 
33
37
  if content != newtext
@@ -42,7 +46,7 @@ class WikiEntry
42
46
  end
43
47
 
44
48
  def delete
45
- FileUtils.rm_rf(base)
49
+ FileUtils.rm_rf(base) if exists?
46
50
  end
47
51
 
48
52
  def revert
@@ -64,7 +68,11 @@ class WikiEntry
64
68
  end
65
69
 
66
70
  def base
67
- ENTRIES_DIR/@name
71
+ File.join(ENTRIES_DIR, @name)
72
+ end
73
+
74
+ def route
75
+ MainController.route(:index, name)
68
76
  end
69
77
 
70
78
  def content
@@ -81,21 +89,29 @@ class WikiEntry
81
89
  end
82
90
 
83
91
  class EntryView
84
- include Ramaze::Helper::Methods
85
- helper :cgi, :link
86
-
87
92
  class << self
88
-
89
93
  def render content
90
94
  mkd2html(content || "No Entry")
91
95
  end
92
96
 
93
- def mkd2html text
97
+ def mkd2html(text)
94
98
  html = BlueCloth.new(text).to_html
95
- html.gsub!(/\[\[(.*?)\]\]/) do |m|
96
- exists = WikiEntry[$1] ? 'exists' : 'nonexists'
97
- A(h($1), :href => $1, :class => exists)
99
+
100
+ html.gsub!(/\[\[(.*?)\]\]/) do
101
+ name = $1
102
+
103
+ if entry = WikiEntry[name]
104
+ exists = 'exists'
105
+ route = entry.route
106
+ else
107
+ exists = 'nonexists'
108
+ route = MainController.route(:index, name)
109
+ end
110
+
111
+ title = Rack::Utils.escape_html(name)
112
+ "<a href='#{route}' class='#{exists}'>#{title}</a>"
98
113
  end
114
+
99
115
  html
100
116
  end
101
117
  end
@@ -5,4 +5,4 @@ require 'bluecloth'
5
5
  require 'src/model'
6
6
  require 'src/controller'
7
7
 
8
- Ramaze.start :adapter => :mongrel
8
+ Ramaze.start
@@ -1,6 +1,6 @@
1
1
  <form method="POST" action="/save" id="edit_entry">
2
- <input type="text" name="handle" value="#@handle" />
2
+ <input type="text" name="handle" value="#{h @entry.name}" />
3
3
  <textarea name="text">#@text</textarea>
4
4
  <input type="submit" />
5
- or #{A('cancel', :href=>Rs(@handle))}
5
+ or #{anchor('cancel', @entry.name)}
6
6
  </form>
@@ -2,5 +2,5 @@
2
2
  <input type="text" name="handle" />
3
3
  <textarea name="text"></textarea>
4
4
  <input type="submit" />
5
- or #{A('cancel',:href=>'/')}
5
+ or #{anchor('cancel','/')}
6
6
  </form>
@@ -1,7 +1,8 @@
1
1
  require 'rubygems'
2
2
  require 'ramaze'
3
+ require 'nagoro'
3
4
 
4
- class Page < Ezamar::Element
5
+ class Page < Nagoro::Element
5
6
  def render
6
7
  %{
7
8
  <html>
@@ -17,7 +18,7 @@ class Page < Ezamar::Element
17
18
  end
18
19
  end
19
20
 
20
- class SideBar < Ezamar::Element
21
+ class SideBar < Nagoro::Element
21
22
  def render
22
23
  %{
23
24
  <div class="sidebar">
@@ -29,6 +30,7 @@ end
29
30
 
30
31
  class MainController < Ramaze::Controller
31
32
  map '/'
33
+ engine :Nagoro
32
34
 
33
35
  def index
34
36
  %{
@@ -42,4 +44,4 @@ class MainController < Ramaze::Controller
42
44
  end
43
45
  end
44
46
 
45
- Ramaze.start
47
+ Ramaze.start
@@ -0,0 +1,26 @@
1
+ require 'ramaze'
2
+
3
+ class MainController < Ramaze::Controller
4
+ helper :gestalt
5
+
6
+ def index
7
+ build do
8
+ html do
9
+ head do
10
+ title "Welcome to Gestalt"
11
+ end
12
+
13
+ body do
14
+ h1 "Gestalt reports for duty"
15
+
16
+ p "Feel free to take a look at my source.",
17
+ "That's what open source is for anyway."
18
+
19
+ a(:href => 'http://ramaze.net'){ 'ramaze.net' }
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+
26
+ Ramaze.start
@@ -0,0 +1,14 @@
1
+ require 'rubygems'
2
+ require 'ramaze'
3
+
4
+ # Start this example with `ruby hello.rb`.
5
+ # After startup you will be able to access it at http://localhost:7000/
6
+ # This should output "Hello, World!" in your browser.
7
+
8
+ class MainController < Ramaze::Controller
9
+ def index
10
+ "Hello, World!"
11
+ end
12
+ end
13
+
14
+ Ramaze.start
@@ -2,8 +2,8 @@ require 'rubygems'
2
2
  require 'ramaze'
3
3
 
4
4
  class MainController < Ramaze::Controller
5
- map '/'
6
5
  layout :page
6
+ provide :html, :engine => :Nagoro
7
7
 
8
8
  def index
9
9
  @title = "Test"
@@ -11,7 +11,7 @@ class MainController < Ramaze::Controller
11
11
  end
12
12
 
13
13
  def page
14
- %{
14
+ %q{
15
15
  <html>
16
16
  <head>
17
17
  <title>examples/layout</title>
@@ -0,0 +1,29 @@
1
+ require 'rubygems'
2
+ require 'ramaze'
3
+
4
+ class LinkingController < Ramaze::Controller
5
+ map '/'
6
+
7
+ def index
8
+ %{simple link <br/> <a href="#{r(:help)}">Help?</a>}
9
+ end
10
+
11
+ def new
12
+ "something new!"
13
+ end
14
+
15
+ def help
16
+ %{you have help <br/> <a href="#{LinkToController.r(:another)}">A Different Controller</a>}
17
+ end
18
+
19
+ end
20
+
21
+ class LinkToController < Ramaze::Controller
22
+ map '/link_to'
23
+
24
+ def another
25
+ %{<a href="#{LinkingController.r(:index)}">Back to Original Controller</a>}
26
+ end
27
+ end
28
+
29
+ Ramaze.start
@@ -0,0 +1,26 @@
1
+ require 'rubygems'
2
+ require 'ramaze'
3
+
4
+ # This is a small extension to the hello world example, showing how to use the
5
+ # <render> tag of Nagoro.
6
+ #
7
+ # Browse to /more and /even_more
8
+
9
+ class MainController < Ramaze::Controller
10
+ engine :nagoro
11
+
12
+ def index
13
+ "Hello, World!"
14
+ end
15
+
16
+ def more
17
+ @tail = request[:tail] || 'the standard'
18
+ 'More of <render src="/index" /> #@tail'
19
+ end
20
+
21
+ def even_more
22
+ '<render src="/more" tail="This is even more" />'
23
+ end
24
+ end
25
+
26
+ Ramaze.start
@@ -3,8 +3,9 @@ require 'ramaze'
3
3
 
4
4
  # A very simple little application, you can simply run it and
5
5
  # point your browser to http://localhost:7000
6
- # you can change the port by setting
7
- # Global.port = 80
6
+ #
7
+ # You can change the port by setting
8
+ # Ramaze.options.adapter.port = 80
8
9
  # this most likely requires root-privileges though.
9
10
 
10
11
  # This example shows following (requests to the mentioned base-url) :
@@ -24,24 +25,20 @@ class SimpleController < Ramaze::Controller
24
25
  "simple"
25
26
  end
26
27
 
27
- def simple
28
- request.inspect
29
- end
30
-
31
- def join first, second
28
+ def join(first, second)
32
29
  [first, second].join
33
30
  end
34
31
 
35
32
  def join_all *strings
36
33
  strings.join
37
34
  end
38
-
35
+
39
36
  def sum first, second
40
- first.to_i + second.to_i
37
+ "#{first.to_i + second.to_i}"
41
38
  end
42
-
39
+
43
40
  def post_or_get
44
- request.post? ? 'POST' : 'GET'
41
+ request.request_method
45
42
  end
46
43
  end
47
44
 
@@ -53,4 +50,4 @@ class OtherController < Ramaze::Controller
53
50
  end
54
51
  end
55
52
 
56
- Ramaze.start
53
+ Ramaze.start
@@ -2,18 +2,18 @@ require 'rubygems'
2
2
  require 'ramaze'
3
3
 
4
4
  class MainController < Ramaze::Controller
5
- map :/
6
-
5
+ map '/'
7
6
  helper :cache
8
- cache :index
9
7
 
10
8
  def index
11
- %[
9
+ @number = rand * 100
10
+
11
+ %q[
12
12
  <html>
13
13
  <head><title>examples/caching</title></head>
14
14
  <body>
15
15
  <p>
16
- This action just shows you a random number: #{rand * 100}.<br />
16
+ This action just shows you a random number: #{@number}.<br />
17
17
  If you <a href="/">refresh</a> the page it won't change since you see a cached version.<br />
18
18
  But if you <a href="/invalidate">invalidate</a> it, the page will be regenerated.
19
19
  </p>
@@ -22,10 +22,12 @@ class MainController < Ramaze::Controller
22
22
  ]
23
23
  end
24
24
 
25
+ cache_action :method => 'index'
26
+
25
27
  def invalidate
26
- action_cache.delete '/index'
28
+ Ramaze::Cache.action.delete('/')
27
29
  redirect :/
28
30
  end
29
31
  end
30
32
 
31
- Ramaze.start
33
+ Ramaze.start
@@ -0,0 +1,71 @@
1
+ require 'rubygems'
2
+ require 'ramaze'
3
+
4
+ USERS = DATA.read.split("\n")
5
+
6
+ class MainController < Ramaze::Controller
7
+ helper :paginate
8
+
9
+ trait :paginate => {
10
+ :limit => 6,
11
+ :var => 'user_page',
12
+ }
13
+
14
+ def index
15
+ @pager = paginate(USERS)
16
+ %q~
17
+ <html>
18
+
19
+ <head><title>Users</title></head>
20
+ <body>
21
+ #{@pager.navigation if @pager.needed?}
22
+ <pre>
23
+ <?r @pager.each do |user| ?>
24
+ #{user}
25
+ <?r end ?>
26
+ </pre>
27
+ #{@pager.navigation if @pager.needed?}
28
+ </body>
29
+ </html>
30
+ ~
31
+ end
32
+ end
33
+
34
+ Ramaze.start
35
+
36
+ __END__
37
+ Michael Fellinger 1868 [ 77.13% ]
38
+ Aman Gupta 211 [ 8.71% ]
39
+ Jonathan Buch 89 [ 3.67% ]
40
+ Gabriele Renzi 49 [ 2.02% ]
41
+ Ara T. Howard 44 [ 1.82% ]
42
+ Clive Crous 37 [ 1.53% ]
43
+ Keita Yamaguchi 27 [ 1.11% ]
44
+ Ryan Grove 17 [ 0.70% ]
45
+ Pistos 16 [ 0.66% ]
46
+ Wang, Jinjing 11 [ 0.45% ]
47
+ Colin Shea 9 [ 0.37% ]
48
+ Sam Carr 6 [ 0.25% ]
49
+ Stephan Maka 5 [ 0.21% ]
50
+ samcarr 4 [ 0.17% ]
51
+ raggi 3 [ 0.12% ]
52
+ Clinton R. Nixon 3 [ 0.12% ]
53
+ Chris Duncan 3 [ 0.12% ]
54
+ Richard Outten 2 [ 0.08% ]
55
+ Andy Smith 2 [ 0.08% ]
56
+ skaar 1 [ 0.04% ]
57
+ Yasushi Abe 1 [ 0.04% ]
58
+ Thomas Leitner 1 [ 0.04% ]
59
+ Rob Lievaart 1 [ 0.04% ]
60
+ Riku Raisaenen 1 [ 0.04% ]
61
+ Matt Rubens 1 [ 0.04% ]
62
+ Martin Hilbig 1 [ 0.04% ]
63
+ Leo Borisenko 1 [ 0.04% ]
64
+ Lars Olsson 1 [ 0.04% ]
65
+ Jeremy Evans 1 [ 0.04% ]
66
+ Jean-Francois Chevrette 1 [ 0.04% ]
67
+ James Tucker 1 [ 0.04% ]
68
+ Fabian Buch 1 [ 0.04% ]
69
+ Christian Neukirchen 1 [ 0.04% ]
70
+ Carlo Zottmann 1 [ 0.04% ]
71
+ Andrew Farmer 1 [ 0.04% ]