tdiary-contrib 3.2.2.20130518

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 (393) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +1 -0
  3. data/.travis.yml +7 -0
  4. data/Gemfile +13 -0
  5. data/Gemfile.lock +35 -0
  6. data/README.en.md +12 -0
  7. data/README.md +13 -0
  8. data/Rakefile +41 -0
  9. data/doc/en/filter/spambayes.txt +3 -0
  10. data/doc/en/plugin.txt +1 -0
  11. data/doc/en/style/hatena.txt +10 -0
  12. data/doc/en/style/markdown.txt +16 -0
  13. data/doc/en/util.txt +1 -0
  14. data/doc/ja/filter/antirefspam.history.txt +59 -0
  15. data/doc/ja/filter/antirefspam.txt +86 -0
  16. data/doc/ja/filter/comment_key.ja.html +182 -0
  17. data/doc/ja/filter/spambayes.txt +3 -0
  18. data/doc/ja/plugin/add_bookmark.txt +50 -0
  19. data/doc/ja/plugin/category_to_tag.txt +21 -0
  20. data/doc/ja/plugin/cocoment.txt +31 -0
  21. data/doc/ja/plugin/google_adsense.txt +25 -0
  22. data/doc/ja/plugin/google_analytics.txt +7 -0
  23. data/doc/ja/plugin/image_detail.txt +69 -0
  24. data/doc/ja/plugin/image_gps.txt +36 -0
  25. data/doc/ja/plugin/image_gps2.txt +41 -0
  26. data/doc/ja/plugin/livedoor_weather.txt +105 -0
  27. data/doc/ja/plugin/opensearch_ad.txt +16 -0
  28. data/doc/ja/plugin/section_footer.txt +84 -0
  29. data/doc/ja/plugin/select_theme.txt +1 -0
  30. data/doc/ja/plugin.txt +13 -0
  31. data/doc/ja/style/hatena.txt +10 -0
  32. data/doc/ja/style/markdown.txt +13 -0
  33. data/doc/ja/util.txt +12 -0
  34. data/filter/antirefspam.rb +263 -0
  35. data/filter/commentkey.rb +29 -0
  36. data/filter/commentsize.rb +18 -0
  37. data/filter/hidecomment.rb +13 -0
  38. data/filter/iplookup.rb +55 -0
  39. data/filter/plugin/antirefspam.rb +59 -0
  40. data/filter/plugin/commentkey.rb +58 -0
  41. data/filter/plugin/commentsize.rb +12 -0
  42. data/filter/plugin/en/iplookup.rb +9 -0
  43. data/filter/plugin/en/spambayes.rb +123 -0
  44. data/filter/plugin/iplookup.rb +39 -0
  45. data/filter/plugin/ja/antirefspam.rb +91 -0
  46. data/filter/plugin/ja/commentkey.rb +17 -0
  47. data/filter/plugin/ja/commentsize.rb +6 -0
  48. data/filter/plugin/ja/iplookup.rb +9 -0
  49. data/filter/plugin/ja/spambayes.rb +124 -0
  50. data/filter/plugin/spambayes.rb +501 -0
  51. data/filter/plugin/zh/iplookup.rb +9 -0
  52. data/filter/rblcheck.rb +36 -0
  53. data/filter/spambayes.rb +535 -0
  54. data/filter/spamlookup.rb +37 -0
  55. data/io/dbi_io/ChangeLog +19 -0
  56. data/io/dbi_io/README.ja +39 -0
  57. data/io/dbi_io/dbi_io.rb +181 -0
  58. data/io/dbi_io/plugin/refererDbiIO.rb +76 -0
  59. data/io/dbi_io/tdiary_table.sql +42 -0
  60. data/js/appstore.js +109 -0
  61. data/js/datepicker.js +69 -0
  62. data/js/editor.js +82 -0
  63. data/js/flickr.js +157 -0
  64. data/js/image_ex.js +79 -0
  65. data/js/jquery.socialbutton.js +842 -0
  66. data/js/nicovideo.js +17 -0
  67. data/js/picasa.js +322 -0
  68. data/js/plugin_checker.js +71 -0
  69. data/js/prettify/lang-apollo.js +2 -0
  70. data/js/prettify/lang-clj.js +18 -0
  71. data/js/prettify/lang-css.js +2 -0
  72. data/js/prettify/lang-go.js +1 -0
  73. data/js/prettify/lang-hs.js +2 -0
  74. data/js/prettify/lang-lisp.js +3 -0
  75. data/js/prettify/lang-lua.js +2 -0
  76. data/js/prettify/lang-ml.js +2 -0
  77. data/js/prettify/lang-n.js +4 -0
  78. data/js/prettify/lang-proto.js +1 -0
  79. data/js/prettify/lang-scala.js +2 -0
  80. data/js/prettify/lang-sql.js +2 -0
  81. data/js/prettify/lang-tex.js +1 -0
  82. data/js/prettify/lang-vb.js +2 -0
  83. data/js/prettify/lang-vhdl.js +3 -0
  84. data/js/prettify/lang-wiki.js +2 -0
  85. data/js/prettify/lang-xq.js +3 -0
  86. data/js/prettify/lang-yaml.js +2 -0
  87. data/js/prettify/prettify.css +1 -0
  88. data/js/prettify/prettify.js +28 -0
  89. data/js/referer.js +17 -0
  90. data/js/show_and_hide.js +39 -0
  91. data/js/socialbutton.js +126 -0
  92. data/js/twitter_anywhere.js +28 -0
  93. data/js/yahoo_kousei.js +21 -0
  94. data/lib/bayes/convert.rb +34 -0
  95. data/lib/bayes.rb +232 -0
  96. data/lib/exifparser/BUGS +1 -0
  97. data/lib/exifparser/ChangeLog +169 -0
  98. data/lib/exifparser/README +15 -0
  99. data/lib/exifparser/install.rb +1015 -0
  100. data/lib/exifparser/lib/exifparser/makernote/canon.rb +502 -0
  101. data/lib/exifparser/lib/exifparser/makernote/fujifilm.rb +415 -0
  102. data/lib/exifparser/lib/exifparser/makernote/minolta.rb +84 -0
  103. data/lib/exifparser/lib/exifparser/makernote/mk_nikonflensname.rb +39 -0
  104. data/lib/exifparser/lib/exifparser/makernote/nikon.rb +267 -0
  105. data/lib/exifparser/lib/exifparser/makernote/nikon2.rb +581 -0
  106. data/lib/exifparser/lib/exifparser/makernote/nikonflensname.rb +438 -0
  107. data/lib/exifparser/lib/exifparser/makernote/olympus.rb +225 -0
  108. data/lib/exifparser/lib/exifparser/makernote/prove.rb +84 -0
  109. data/lib/exifparser/lib/exifparser/makernote/sigma.rb +237 -0
  110. data/lib/exifparser/lib/exifparser/pre-setup.rb +1 -0
  111. data/lib/exifparser/lib/exifparser/scan.rb +278 -0
  112. data/lib/exifparser/lib/exifparser/tag.rb +2298 -0
  113. data/lib/exifparser/lib/exifparser/thumbnail.rb +76 -0
  114. data/lib/exifparser/lib/exifparser/utils.rb +88 -0
  115. data/lib/exifparser/lib/exifparser.rb +265 -0
  116. data/lib/exifparser/sample/exifview.rb +279 -0
  117. data/lib/tdiary-contrib.rb +19 -0
  118. data/lib/wgs2tky.rb +93 -0
  119. data/misc/section_footer2/buzzurl.yaml +6 -0
  120. data/misc/section_footer2/fc2.yaml +6 -0
  121. data/misc/section_footer2/ldc.yaml +6 -0
  122. data/misc/section_footer2/retweet.yaml +7 -0
  123. data/misc/section_footer2/twitter.yaml +7 -0
  124. data/misc/section_footer2/yahoo.yaml +6 -0
  125. data/misc/tdiarygraph/tdiarygraph120x90e.swf +0 -0
  126. data/misc/tdiarygraph/tdiarygraph125x125e.swf +0 -0
  127. data/misc/tdiarygraph/tdiarygraph240x180e.swf +0 -0
  128. data/misc/tdiarygraph/tdiarygraph468x60e.swf +0 -0
  129. data/misc/tdiarygraph/tdiarygraph728x90e.swf +0 -0
  130. data/misc/tdiarytimes/tdiarytimes125x125r.swf +0 -0
  131. data/misc/tdiarytimes/tdiarytimes125x125r7.swf +0 -0
  132. data/misc/tdiarytimes/tdiarytimes125x125s.swf +0 -0
  133. data/misc/tdiarytimes/tdiarytimes125x30.swf +0 -0
  134. data/misc/tdiarytimes/tdiarytimes234x30.swf +0 -0
  135. data/misc/tdiarytimes/tdiarytimes468x30.swf +0 -0
  136. data/plugin/add_bookmark.rb +89 -0
  137. data/plugin/apple_webclip.rb +26 -0
  138. data/plugin/appstore.rb +47 -0
  139. data/plugin/bigpresen.rb +86 -0
  140. data/plugin/bitly.rb +39 -0
  141. data/plugin/bootstrap-navi.rb +54 -0
  142. data/plugin/canonical.rb +9 -0
  143. data/plugin/category_similar.rb +73 -0
  144. data/plugin/category_to_tag.rb +60 -0
  145. data/plugin/category_to_tagcloud.rb +172 -0
  146. data/plugin/cocomment.rb +37 -0
  147. data/plugin/code-prettify.rb +23 -0
  148. data/plugin/coderwall.rb +34 -0
  149. data/plugin/datepicker.rb +28 -0
  150. data/plugin/day2section.rb +20 -0
  151. data/plugin/del_footer.rb +111 -0
  152. data/plugin/description_from_body.rb +23 -0
  153. data/plugin/development.rb +16 -0
  154. data/plugin/editor.rb +11 -0
  155. data/plugin/en/add_bookmark.rb +20 -0
  156. data/plugin/en/del_footer.rb +10 -0
  157. data/plugin/en/git-register.rb +3 -0
  158. data/plugin/en/livedoor_weather.rb +25 -0
  159. data/plugin/en/microsummary.rb +18 -0
  160. data/plugin/en/nicovideo.rb +38 -0
  161. data/plugin/en/openid.rb +8 -0
  162. data/plugin/en/section_footer.rb +6 -0
  163. data/plugin/en/section_footer2.rb +3 -0
  164. data/plugin/en/socialbutton.rb +5 -0
  165. data/plugin/everytrail.rb +39 -0
  166. data/plugin/facebook_comments.rb +59 -0
  167. data/plugin/flickr.rb +209 -0
  168. data/plugin/gist.rb +16 -0
  169. data/plugin/git-register.rb +240 -0
  170. data/plugin/github_badge.rb +27 -0
  171. data/plugin/github_link.rb +9 -0
  172. data/plugin/goo_gl.rb +42 -0
  173. data/plugin/google_adsense.rb +132 -0
  174. data/plugin/google_analytics.rb +39 -0
  175. data/plugin/google_map.rb +168 -0
  176. data/plugin/google_sitemaps.rb +60 -0
  177. data/plugin/google_webmaster.rb +22 -0
  178. data/plugin/hatena_bookmark_nocomment.rb +9 -0
  179. data/plugin/hatena_star.rb +66 -0
  180. data/plugin/hb_footer.rb +255 -0
  181. data/plugin/hb_footer4sec.rb +244 -0
  182. data/plugin/hb_footer4sec_js.rb +30 -0
  183. data/plugin/hide_comment_form.rb +4 -0
  184. data/plugin/hide_sidebar_iphone.rb +21 -0
  185. data/plugin/iddy.rb +81 -0
  186. data/plugin/image_detail.rb +143 -0
  187. data/plugin/image_ex.rb +462 -0
  188. data/plugin/image_gps.rb +128 -0
  189. data/plugin/inline_wiki.rb +6 -0
  190. data/plugin/instagr.rb +64 -0
  191. data/plugin/ja/add_bookmark.rb +20 -0
  192. data/plugin/ja/del_footer.rb +10 -0
  193. data/plugin/ja/flickr.rb +62 -0
  194. data/plugin/ja/git-register.rb +3 -0
  195. data/plugin/ja/google_sitemaps.rb +35 -0
  196. data/plugin/ja/livedoor_weather.rb +25 -0
  197. data/plugin/ja/microsummary.rb +18 -0
  198. data/plugin/ja/nicovideo.rb +41 -0
  199. data/plugin/ja/openid.rb +7 -0
  200. data/plugin/ja/section_footer.rb +6 -0
  201. data/plugin/ja/section_footer2.rb +4 -0
  202. data/plugin/ja/socialbutton.rb +6 -0
  203. data/plugin/jdate.rb +20 -0
  204. data/plugin/jholiday.rb +16 -0
  205. data/plugin/jmonth.rb +20 -0
  206. data/plugin/jquery_ui_theme.rb +55 -0
  207. data/plugin/jroku.rb +28 -0
  208. data/plugin/jyear.rb +37 -0
  209. data/plugin/latlonglab_route.rb +25 -0
  210. data/plugin/lazy_referer.rb +38 -0
  211. data/plugin/livedoor_weather.rb +180 -0
  212. data/plugin/make_link.rb +44 -0
  213. data/plugin/makerss_category.rb +43 -0
  214. data/plugin/makerss_comment.rb +35 -0
  215. data/plugin/microsummary.rb +62 -0
  216. data/plugin/mm_footer.rb +215 -0
  217. data/plugin/monthly_autopagerize.rb +67 -0
  218. data/plugin/my_hotentry.rb +132 -0
  219. data/plugin/navi_day.rb +118 -0
  220. data/plugin/navi_this_month.rb +15 -0
  221. data/plugin/nicovideo.rb +115 -0
  222. data/plugin/notify_miniblog.rb +134 -0
  223. data/plugin/ogp.rb +55 -0
  224. data/plugin/ohmsha_estore.rb +71 -0
  225. data/plugin/openid.rb +90 -0
  226. data/plugin/opensearch_ad.rb +33 -0
  227. data/plugin/picasa.rb +56 -0
  228. data/plugin/plugin_checker.rb +41 -0
  229. data/plugin/popit.rb +22 -0
  230. data/plugin/prettify.rb +19 -0
  231. data/plugin/prezi.rb +10 -0
  232. data/plugin/profile.rb +222 -0
  233. data/plugin/puboo.rb +93 -0
  234. data/plugin/pygments_css.rb +76 -0
  235. data/plugin/rating.rb +419 -0
  236. data/plugin/recent_estraier.rb +50 -0
  237. data/plugin/recent_tweet.rb +71 -0
  238. data/plugin/retweet.rb +86 -0
  239. data/plugin/rubykaigi.rb +99 -0
  240. data/plugin/search-bing.rb +87 -0
  241. data/plugin/search-default.rb +264 -0
  242. data/plugin/search-google-custom.rb +60 -0
  243. data/plugin/search-yahoo-websearch.rb +121 -0
  244. data/plugin/search-yahoo.rb +109 -0
  245. data/plugin/section_footer.rb +195 -0
  246. data/plugin/section_footer2.rb +278 -0
  247. data/plugin/section_permalink.rb +73 -0
  248. data/plugin/section_permalink_anchor.rb +39 -0
  249. data/plugin/select_style.rb +42 -0
  250. data/plugin/select_theme.rb +90 -0
  251. data/plugin/show_and_hide.rb +77 -0
  252. data/plugin/slideshare.rb +10 -0
  253. data/plugin/socialbutton.rb +60 -0
  254. data/plugin/tatsu_zine.rb +93 -0
  255. data/plugin/tdiarygraph_flashstyle.rb +296 -0
  256. data/plugin/tdiarytimes.rb +166 -0
  257. data/plugin/tdiarytimes2.rb +406 -0
  258. data/plugin/tdiarytimes_flashstyle.rb +263 -0
  259. data/plugin/tdiarytimes_textstyle.rb +290 -0
  260. data/plugin/title_anchor.rb +16 -0
  261. data/plugin/tweet_quote.rb +106 -0
  262. data/plugin/twitpic.rb +10 -0
  263. data/plugin/twitter.rb +46 -0
  264. data/plugin/twitter_anywhere.rb +209 -0
  265. data/plugin/twitter_badge.rb +42 -0
  266. data/plugin/twitter_js.rb +59 -0
  267. data/plugin/ustream.rb +19 -0
  268. data/plugin/vimeo.rb +14 -0
  269. data/plugin/volatile.rb +89 -0
  270. data/plugin/vote.rb +100 -0
  271. data/plugin/wikiloc.rb +27 -0
  272. data/plugin/windex.rb +512 -0
  273. data/plugin/yahoo_kousei.rb +79 -0
  274. data/plugin/yahoo_map.rb +97 -0
  275. data/plugin/youtube.rb +33 -0
  276. data/plugin/yshop.rb +189 -0
  277. data/plugin/zenback.rb +46 -0
  278. data/spec/apple_webclip_spec.rb +46 -0
  279. data/spec/fixtures/friendfeed.xml +2 -0
  280. data/spec/fixtures/github.json +1 -0
  281. data/spec/fixtures/twitter.xml +73 -0
  282. data/spec/gist_spec.rb +16 -0
  283. data/spec/github_link_spec.rb +39 -0
  284. data/spec/google_analytics_spec.rb +60 -0
  285. data/spec/jdate_spec.rb +23 -0
  286. data/spec/jmonth_spec.rb +28 -0
  287. data/spec/jyear_spec.rb +21 -0
  288. data/spec/my_hotentry_spec.rb +78 -0
  289. data/spec/openid_spec.rb +246 -0
  290. data/spec/opensearch_ad_spec.rb +50 -0
  291. data/spec/profile_spec.rb +88 -0
  292. data/spec/rcov.opts +2 -0
  293. data/spec/spec_helper.rb +223 -0
  294. data/spec/title_anchor_spec.rb +39 -0
  295. data/spec/twitter_js_spec.rb +116 -0
  296. data/spec/youtube_spec.rb +20 -0
  297. data/style/hatena_style.rb +1011 -0
  298. data/style/markdown_style.rb +239 -0
  299. data/style/wikiext_style.rb +21 -0
  300. data/tdiary-contrib.gemspec +25 -0
  301. data/util/clean-spam/README.ja +1 -0
  302. data/util/clean-spam/tdiary-comment-clean +46 -0
  303. data/util/clean-spam/tdiary-comment-clean2 +81 -0
  304. data/util/clean-spam/tdiary-referer-clean +46 -0
  305. data/util/convert_pstore.rb +82 -0
  306. data/util/estraier-search/ChangeLog +36 -0
  307. data/util/estraier-search/README.ja +114 -0
  308. data/util/estraier-search/en/estraier-register.rb +3 -0
  309. data/util/estraier-search/estraier-register.rb +298 -0
  310. data/util/estraier-search/estraier-search.rb +273 -0
  311. data/util/estraier-search/estraier.rhtml +73 -0
  312. data/util/estraier-search/estraier.rxml +23 -0
  313. data/util/estraier-search/i.estraier.rhtml +31 -0
  314. data/util/estraier-search/ja/estraier-register.rb +3 -0
  315. data/util/image-gallery/README.ja +27 -0
  316. data/util/image-gallery/image-gallery.rb +523 -0
  317. data/util/image-gallery/image-gallery.rb.euc-jp +523 -0
  318. data/util/image-gallery/js/SmoothGallery/Changelog +52 -0
  319. data/util/image-gallery/js/SmoothGallery/css/ReMooz.css +186 -0
  320. data/util/image-gallery/js/SmoothGallery/css/img/carrow1.gif +0 -0
  321. data/util/image-gallery/js/SmoothGallery/css/img/carrow2.gif +0 -0
  322. data/util/image-gallery/js/SmoothGallery/css/img/closebox.gif +0 -0
  323. data/util/image-gallery/js/SmoothGallery/css/img/closebox.png +0 -0
  324. data/util/image-gallery/js/SmoothGallery/css/img/fleche1.gif +0 -0
  325. data/util/image-gallery/js/SmoothGallery/css/img/fleche1.png +0 -0
  326. data/util/image-gallery/js/SmoothGallery/css/img/fleche2.gif +0 -0
  327. data/util/image-gallery/js/SmoothGallery/css/img/fleche2.png +0 -0
  328. data/util/image-gallery/js/SmoothGallery/css/img/loading-bar-black.gif +0 -0
  329. data/util/image-gallery/js/SmoothGallery/css/img/open.gif +0 -0
  330. data/util/image-gallery/js/SmoothGallery/css/img/open.png +0 -0
  331. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_e.png +0 -0
  332. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_n.png +0 -0
  333. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_ne.png +0 -0
  334. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_nw.png +0 -0
  335. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_s.png +0 -0
  336. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_se.png +0 -0
  337. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_sw.png +0 -0
  338. data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_w.png +0 -0
  339. data/util/image-gallery/js/SmoothGallery/css/img/spinner.gif +0 -0
  340. data/util/image-gallery/js/SmoothGallery/css/jd.gallery.css +371 -0
  341. data/util/image-gallery/js/SmoothGallery/css/layout.css +91 -0
  342. data/util/image-gallery/js/SmoothGallery/license.txt +621 -0
  343. data/util/image-gallery/js/SmoothGallery/resizer.php +113 -0
  344. data/util/image-gallery/js/SmoothGallery/scripts/Changelog +52 -0
  345. data/util/image-gallery/js/SmoothGallery/scripts/History.Routing.js +126 -0
  346. data/util/image-gallery/js/SmoothGallery/scripts/History.js +109 -0
  347. data/util/image-gallery/js/SmoothGallery/scripts/ReMooz.js +364 -0
  348. data/util/image-gallery/js/SmoothGallery/scripts/jd.gallery.js +843 -0
  349. data/util/image-gallery/js/SmoothGallery/scripts/jd.gallery.set.js +183 -0
  350. data/util/image-gallery/js/SmoothGallery/scripts/jd.gallery.transitions.js +90 -0
  351. data/util/image-gallery/js/SmoothGallery/scripts/jdgalleryresize.js +828 -0
  352. data/util/image-gallery/js/SmoothGallery/scripts/license.txt +621 -0
  353. data/util/image-gallery/js/SmoothGallery/scripts/mootools-1.2-more.js +103 -0
  354. data/util/image-gallery/js/SmoothGallery/scripts/mootools-1.2.1-core-yc.js +349 -0
  355. data/util/image-gallery/js/SmoothGallery/scripts/resizer.php +113 -0
  356. data/util/image-gallery/misc/plugin/recent_image.rb +406 -0
  357. data/util/image-gallery/skel/gallery.rhtml +154 -0
  358. data/util/image-gallery/skel/gallery.rhtml.euc-jp +154 -0
  359. data/util/image-gallery/tdiary.conf.igsample +8 -0
  360. data/util/image-gallery/theme/image-gallery.css +85 -0
  361. data/util/image2flickr.rb +282 -0
  362. data/util/posttdiary/README.ja +12 -0
  363. data/util/posttdiary/posttdiary-ex.rb +1155 -0
  364. data/util/posttdiary/posttdiary.rb +245 -0
  365. data/util/rast-search/ChangeLog +55 -0
  366. data/util/rast-search/README.ja +99 -0
  367. data/util/rast-search/en/rast-register.rb +3 -0
  368. data/util/rast-search/i.rast.rhtml +33 -0
  369. data/util/rast-search/ja/rast-register.rb +3 -0
  370. data/util/rast-search/rast-register.rb +326 -0
  371. data/util/rast-search/rast-search.rb +249 -0
  372. data/util/rast-search/rast.rhtml +66 -0
  373. data/util/rast-search/rast.rxml +21 -0
  374. data/util/section_link/README +11 -0
  375. data/util/section_link/misc/plugin/section_link.rb +68 -0
  376. data/util/section_link/misc/plugin/section_link_anchor.rb +38 -0
  377. data/util/section_link/tdiary/tdiary_day_ext.rb +21 -0
  378. data/util/section_link/tdiary/tdiaryext_style.rb +36 -0
  379. data/util/section_link/tdiary/wikiext_style.rb +36 -0
  380. data/util/tdiary-for-ruby1.9/compatible.rb +97 -0
  381. data/util/tdiary-for-ruby1.9/tdiary-2.2.0.patch +98 -0
  382. data/util/tdiary-for-ruby1.9/tdiary-2.3.1.patch +212 -0
  383. data/util/tdiary-grep/README +4 -0
  384. data/util/tdiary-grep/grep.rb +445 -0
  385. data/util/tdiary-mode/http.el +130 -0
  386. data/util/tdiary-mode/tdiary-mode.el +613 -0
  387. data/util/tdiary-vim/ChangeLog +25 -0
  388. data/util/tdiary-vim/README +60 -0
  389. data/util/tdiary-vim/tdiary.vim +350 -0
  390. data/util/tdiarysearch/README.en +53 -0
  391. data/util/tdiarysearch/README.ja +99 -0
  392. data/util/tdiarysearch/search.rb +504 -0
  393. metadata +497 -0
@@ -0,0 +1,350 @@
1
+ " Copyright (C) 2004 UECHI Yasumasa
2
+
3
+ " Author: UECHI Yasumasa <uechi@potaway.net>
4
+
5
+ " $Revision: 1.8 $
6
+
7
+ " This program is free software; you can redistribute it and/or
8
+ " modify it under the terms of the GNU General Public License as
9
+ " published by the Free Software Foundation; either version 2, or (at
10
+ " your option) any later version.
11
+
12
+ " This program is distributed in the hope that it will be useful, but
13
+ " WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
+ " General Public License for more details.
16
+
17
+ " You should have received a copy of the GNU General Public License
18
+ " along with this program; see the file COPYING. If not, write to the
19
+ " Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20
+ " Boston, MA 02111-1307, USA.
21
+
22
+
23
+ if !exists("g:tdiary_site1_url")
24
+ finish
25
+ endif
26
+
27
+ command! -nargs=0 TDiaryNew call <SID>TDiaryNew()
28
+ command! -nargs=0 TDiaryReplace call <SID>TDiaryReplace()
29
+ command! -nargs=0 TDiaryUpdate call <SID>TDiaryUpdate()
30
+ command! -nargs=0 TDiarySelect call <SID>TDiarySelect()
31
+ command! -nargs=0 TDiaryTrackback call <SID>EditTrackBackExcerpt()
32
+
33
+ let s:curl_cmd = "curl"
34
+ let s:user = ''
35
+
36
+ function! s:TDiaryNew()
37
+ call s:CreateBuffer("append")
38
+ execute ":" . (s:body_start + 1)
39
+ normal dG
40
+ redraw!
41
+ endfunction
42
+
43
+ function! s:TDiaryReplace()
44
+ call s:CreateBuffer("replace")
45
+
46
+ let save_pat = @/
47
+ let @/ = 'input.\+name="title"[^>]\+>'
48
+ normal ggn
49
+ let title = substitute(getline("."), '.\+value="\(.*\)".\+', '\1', '')
50
+
51
+ let @/ = 'textarea \+name="body"[^>]\+>'
52
+ execute ":" . s:body_start
53
+ normal dndf>
54
+ let @/ = '</textarea'
55
+ normal ndG
56
+ silent! %s/
57
+
58
+ silent! %s/&quot;/\"/g
59
+ silent! %s/&gt;/>/g
60
+ silent! %s/&lt;/</g
61
+ silent! %s/&amp;/\&/g
62
+
63
+ normal gg
64
+ let @/ = '^Title:'
65
+ normal n
66
+ execute "normal A" . title . "\<Esc>"
67
+
68
+ normal G
69
+ redraw!
70
+ let @/ = save_pat
71
+ endfunction
72
+
73
+ function! s:TDiaryUpdate()
74
+ " move to _tdiary_ buffer
75
+ let n = bufwinnr(substitute(bufname("%"), "_.\\+_", "_tdiary_", ""))
76
+ execute "normal " . n . "\<C-W>w"
77
+
78
+ " set parameters
79
+ let data = s:SetParams()
80
+
81
+ " set body & csrf protection key
82
+ let data = data . "&body=" . s:MultiLineURLencode(s:body_start)
83
+ let data = data . s:csrf_protection_key
84
+
85
+ " debug mode
86
+ if exists("g:tdiary_vim_debug") && g:tdiary_vim_debug
87
+ call append("$", data)
88
+ return
89
+ endif
90
+
91
+ " redirect data to tmpfile
92
+ let tmpfile = tempname()
93
+ execute "redir! > " . tmpfile
94
+ silent echo data
95
+ redir END
96
+
97
+ " update diary
98
+ let result = system(s:curl_cmd . s:user . " -d @" . tmpfile . " -e ". s:tdiary_update_url . " " . s:tdiary_update_url)
99
+ call delete(tmpfile)
100
+ redraw!
101
+ if match(result, 'Wait or.\+Click here') != -1
102
+ echo "SUCCESS"
103
+ else
104
+ echo result
105
+ endif
106
+ endfunction
107
+
108
+
109
+ function! s:TDiarySelect()
110
+ split tDiary_select
111
+ set buftype=nofile
112
+ set nobuflisted
113
+ set noswapfile
114
+
115
+ let i = 1
116
+ while exists("g:tdiary_site{i}_url")
117
+ let site_name = ''
118
+ if exists("g:tdiary_site{i}_name")
119
+ let site_name = g:tdiary_site{i}_name . " "
120
+ endif
121
+ call append(i - 1, site_name . g:tdiary_site{i}_url)
122
+ let i = i + 1
123
+ endwhile
124
+ normal gg
125
+
126
+ nnoremap <buffer> <silent> <CR> :call <SID>SetURL()<CR>
127
+ endfunction
128
+
129
+
130
+ function! s:EditTrackBackExcerpt()
131
+ let save_line = line(".")
132
+ normal gg
133
+ call search("^TrackBackURL:")
134
+ let tb_url = s:ParamValue(getline("."))
135
+
136
+ let tb_url = input("TrackBackURL: ", tb_url)
137
+ delete
138
+ call append(line(".") - 1, "TrackBackURL: " . tb_url)
139
+ execute ":" . save_line
140
+
141
+ let tb_bufname = substitute(bufname("%"), "_tdiary_", "_trackback_", "")
142
+ split
143
+ execute "normal \<C-W>w"
144
+ execute "edit " . tb_bufname
145
+ set buftype=nofile
146
+ set noswapfile
147
+ set bufhidden=hide
148
+ endfunction
149
+
150
+
151
+ function! s:SetParams()
152
+ let data = ''
153
+ let i = 1
154
+
155
+ while i < s:body_start
156
+ let l = getline(i)
157
+ let r = s:ParamValue(l)
158
+
159
+ if l =~ "^Editing mode"
160
+ let mode = r
161
+ let data = data . "&" . r . "=" . r
162
+ elseif l =~ "^Date:"
163
+ let data = data . s:Date2PostDate(r, mode)
164
+ elseif l =~ "^Title:"
165
+ let data = data . "&title=" . s:URLencode(r)
166
+ elseif l =~ "^TrackBackURL:"
167
+ if r != ""
168
+ let data = data . "&plugin_tb_url=" . s:URLencode(r)
169
+ let data = data . s:TrackBackExcerpt()
170
+ endif
171
+ endif
172
+
173
+ let i = i + 1
174
+ endwhile
175
+
176
+ return data
177
+ endfunction
178
+
179
+
180
+ function! s:ParamValue(str)
181
+ let r = substitute(a:str, '^[^:]\+ *: *\(.*\)', '\1', '')
182
+ let r = substitute(r, ' *$', '', '')
183
+ return r
184
+ endfunction
185
+
186
+
187
+ function! s:TrackBackExcerpt()
188
+ let data = "&plugin_tb_excerpt="
189
+ let n = bufwinnr(substitute(bufname("%"), "_.\\+_", "_trackback_", ""))
190
+ if n > 0
191
+ execute "normal " . n . "\<C-W>w"
192
+ let data = data . s:MultiLineURLencode(1)
193
+ execute "normal \<C-W>p"
194
+ endif
195
+ return data
196
+ endfunction
197
+
198
+
199
+ function! s:MultiLineURLencode(start_line)
200
+ let i = a:start_line
201
+ let lastline = line("$")
202
+ let data = ""
203
+
204
+ while i <= lastline
205
+ let data = data . s:URLencode(getline(i) . "\r\n")
206
+ let i = i + 1
207
+ endwhile
208
+
209
+ return data
210
+ endfunction
211
+
212
+
213
+ function! s:SetURL(...)
214
+ if a:0 == 0
215
+ let i = line(".")
216
+ else
217
+ let i = a:1
218
+ endif
219
+ let s:tdiary_url = substitute(g:tdiary_site{i}_url, "/\\+$", "", "") . "/"
220
+ if exists("g:tdiary_site{i}_updatescript")
221
+ let update_script = g:tdiary_site{i}_updatescript
222
+ elseif exists("g:tdiary_update_script_name")
223
+ let update_script = g:tdiary_update_script_name
224
+ else
225
+ let update_script = "update.rb"
226
+ endif
227
+ let s:tdiary_update_url = s:tdiary_url . update_script
228
+
229
+ let s:user = ""
230
+ call s:SetUser()
231
+
232
+ "echo selected site
233
+ let site_name = ""
234
+ if exists("g:tdiary_site{i}_name")
235
+ let site_name = g:tdiary_site{i}_name
236
+ endif
237
+ echo site_name s:tdiary_url
238
+
239
+ if a:0 == 0
240
+ close
241
+ endif
242
+ endfunction
243
+
244
+
245
+ function! s:SetUser()
246
+ if exists("g:tdiary_use_netrc") && g:tdiary_use_netrc
247
+ let s:user = " --netrc "
248
+ elseif s:user == ''
249
+ let s:user = input("User Name: ")
250
+ let password = inputsecret("Password: ")
251
+ if s:user != ''
252
+ let s:user = " -u '" . s:user . ":" . password . "' "
253
+ endif
254
+ endif
255
+ endfunction
256
+
257
+
258
+ function! s:CreateBuffer(mode)
259
+ if !exists("s:tdiary_update_url")
260
+ call s:SetURL(1)
261
+ endif
262
+
263
+ let date = input("Date: ", strftime("%Y%m%d", localtime()))
264
+ execute "edit _tdiary_" . date
265
+ set buftype=nofile
266
+ set noswapfile
267
+ set bufhidden=hide
268
+ "set fileformat=dos
269
+
270
+ let s:body_start = 0
271
+
272
+ call append(s:body_start, "Editing mode (append or replace): " . a:mode)
273
+ let s:body_start = s:body_start + 1
274
+
275
+ call append(s:body_start, "TrackBackURL: ")
276
+ let s:body_start = s:body_start + 1
277
+
278
+ call append(s:body_start, "Date: " . date)
279
+ let s:body_start = s:body_start + 1
280
+
281
+ call append(s:body_start, "Title: ")
282
+ let s:body_start = s:body_start + 1
283
+
284
+ let s:body_start = s:body_start + 1
285
+
286
+
287
+ let data = ""
288
+ if a:mode == "replace"
289
+ let data = ' -d "'
290
+ let data = data . s:Date2PostDate(date, a:mode)
291
+ let data = data . '&edit=edit" '
292
+ endif
293
+ execute 'r !' . s:curl_cmd . ' -s ' . s:user . data . s:tdiary_update_url
294
+
295
+ normal gg
296
+ let s:csrf_protection_key = ""
297
+ if search('input.\+name="csrf_protection_key"') > 0
298
+ silent! s/&quot;/\"/g
299
+ silent! s/&gt;/>/g
300
+ silent! s/&lt;/</g
301
+ silent! s/&amp;/\&/g
302
+ let k = substitute(getline("."), '.\+value="\(.*\)".\+', '\1', '')
303
+ let s:csrf_protection_key = "&csrf_protection_key=" . s:URLencode(k)
304
+ endif
305
+ endfunction
306
+
307
+
308
+ function! s:Date2PostDate(date, mode)
309
+ let year = strpart(a:date, 0, 4)
310
+ let month = strpart(a:date, 4, 2)
311
+ let day = strpart(a:date, 6, 2)
312
+
313
+ let old = ''
314
+ if a:mode == "replace"
315
+ let old = "&old=" . a:date
316
+ endif
317
+
318
+ return "&year=" . year . "&month=" . month . "&day=" . day . old
319
+ endfunction
320
+
321
+
322
+ function! s:URLencode(str)
323
+ let r = iconv(a:str, &encoding, 'euc-jp')
324
+ let save_enc = &encoding
325
+ let &encoding = 'japan'
326
+ let r = substitute(r, '[^ a-zA-Z0-9_.-]', '\=s:Char2Hex(submatch(0))', 'g')
327
+ let &encoding = save_enc
328
+ let r = substitute(r, ' ', '+', 'g')
329
+ return r
330
+ endfunction
331
+
332
+
333
+ function! s:Char2Hex(c)
334
+ let n = char2nr(a:c)
335
+ let r = ''
336
+
337
+ while n
338
+ let r = '0123456789ABCDEF'[n % 16] . r
339
+ let n = n / 16
340
+ endwhile
341
+
342
+ if strlen(r) % 2 == 1
343
+ let r = '0' . r
344
+ endif
345
+
346
+ let r = substitute(r, '..', '%\0', 'g')
347
+
348
+ return r
349
+ endfunction
350
+
@@ -0,0 +1,53 @@
1
+ ### This tool is obsolete,
2
+ ### use alternative plugin: plugin/search-default.rb.
3
+ ### This tool will be deleted in the near future.
4
+
5
+
6
+ tdiarysearch README
7
+ ===================
8
+
9
+ This is tdiarysearch, simple tDiary search interface.
10
+
11
+
12
+ Installation and setup
13
+ ----------------------
14
+
15
+ 1. Copy search.rb aside of tDiary's index.rb.
16
+
17
+ $ ls
18
+ index.rb*
19
+ search.rb*
20
+ tdiary.conf
21
+ update.rb*
22
+
23
+ 2. Make search.rb executable.
24
+
25
+ $ chmod a+x search.rb
26
+
27
+ 3. (Optional) Adjust shebang (#!) line of search.rb.
28
+
29
+ 4. (Optional) If you'd like, edit embedded paramter in
30
+ search.rb and turn on query logging.
31
+
32
+ 5. Add following HTML form in your tDiary header:
33
+
34
+ <form method="post" action="search.rb" class="searchform">
35
+ <input type="text" name="q" size="20" value="">
36
+ <input type="submit" value="Search">
37
+ </form>
38
+
39
+ 6. Done.
40
+
41
+
42
+ License
43
+ -------
44
+
45
+ GNU GPL, General Public License version 2.
46
+
47
+
48
+ Contact
49
+ -------
50
+
51
+ Minero Aoki <aamine@loveruby.net>
52
+ http://i.loveruby.net/en/
53
+
@@ -0,0 +1,99 @@
1
+ ■■このツールは最新のtDiaryに追従していません。
2
+ ■■検索機能はプラグインとして実装されるようになったため、
3
+ ■■同等の機能はplugin/search-default.rbで実現しています。
4
+ ■■このツールは近々削除する予定です。
5
+
6
+
7
+
8
+ tdiarysearch README
9
+ ===================
10
+
11
+ tDiary簡単検索CGIです。
12
+ あらかじめインデックスを作る必要がないので、
13
+ 一般的な検索エンジンに比べてインストールが
14
+ 圧倒的に簡単です。また、書いた直後の日記も
15
+ 検索対象になるという長所があります。
16
+
17
+
18
+ 必要環境
19
+ --------
20
+
21
+ * テキスト形式のデータベースを使っていること (tDiary 1.5 以降)
22
+ * tDiary が動いているサーバに独自の CGI を追加する権限があること
23
+
24
+
25
+ セットアップ
26
+ ------------
27
+
28
+ 1. search.rb を tDiary の index.rb の隣にコピーします。
29
+ 必要なら index.rb と同じようにシンボリックリンクを
30
+ 張ったり名前を変えたりしてください。
31
+
32
+ 2. CGI として実行可能にします。
33
+
34
+ $ chmod a+x search.rb
35
+
36
+ 3. 必要なら #! のパスを合わせます。
37
+
38
+ 4. (オプション) search.rb 先頭のパラメータを変更して
39
+ クエリーログを有効にしてください。
40
+ ※ クエリーログの詳細については後述
41
+
42
+ 5. 自分の tDiary の好きな場所 (例えばヘッダ) に以下の
43
+ フォームを加えてください。
44
+
45
+ <form method="post" action="search.rb" class="searchform">
46
+ <input type="text" name="q" size="20" value="">
47
+ <input type="submit" value="Search">
48
+ </form>
49
+
50
+ 以上です。
51
+
52
+
53
+ 検索のしかた
54
+ ------------
55
+
56
+ tdiarysearch はトピックごとに AND 検索を行います。
57
+ 指定した語は空白で分割され、全単語がトピック内のテキストに
58
+ 全て含まれる場合にそのトピックを検索結果にリストします。
59
+
60
+ AND 以外の演算はサポートしません。
61
+
62
+ また rev 1.8 の段階ではまだツッコミが検索できません。
63
+ 近いうちに追加します。
64
+
65
+
66
+ クエリーログ
67
+ ------------
68
+
69
+ クエリーログ (query log) というのは、検索語のログの
70
+ ことです。このログが存在すると他の人が何を検索したのか
71
+ 見られるようになります。クエリーログを有効にするには、
72
+ search.rb 内の定数 LOGGING を true にしてください。
73
+
74
+ CGI からログを見られるようにするには、search.rb に
75
+ パラメータ history=on を付けて呼びます。例えば
76
+ 次のリンクを日記に入れておくと、リンクをたどるだけで
77
+ 日記から最近の検索ログが見られます。
78
+
79
+ <a href="search.rb?history=on">[検索ログ]</a>
80
+
81
+ なお、クエリーログは tDiary のデータディレクトリに search.log
82
+ という名前で作成されます。特にローテーション処理はしていないので、
83
+ 適当な間隔でローテートしてください。
84
+
85
+
86
+ 連絡先
87
+ ------
88
+
89
+ 青木峰郎 (あおき・みねろう)
90
+ Minero Aoki <aamine@loveruby.net>
91
+ http://i.loveruby.net/w/tdiarysearch.html
92
+
93
+ バグ報告は以下のどこかにお願いします。
94
+
95
+ * Wiki 上のバグ報告ページ
96
+ http://i.loveruby.net/w/tdiarysearchBugs.html
97
+ * tdiary-devel ML
98
+ * 直接メール
99
+