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.
- checksums.yaml +7 -0
- data/.gitignore +1 -0
- data/.travis.yml +7 -0
- data/Gemfile +13 -0
- data/Gemfile.lock +35 -0
- data/README.en.md +12 -0
- data/README.md +13 -0
- data/Rakefile +41 -0
- data/doc/en/filter/spambayes.txt +3 -0
- data/doc/en/plugin.txt +1 -0
- data/doc/en/style/hatena.txt +10 -0
- data/doc/en/style/markdown.txt +16 -0
- data/doc/en/util.txt +1 -0
- data/doc/ja/filter/antirefspam.history.txt +59 -0
- data/doc/ja/filter/antirefspam.txt +86 -0
- data/doc/ja/filter/comment_key.ja.html +182 -0
- data/doc/ja/filter/spambayes.txt +3 -0
- data/doc/ja/plugin/add_bookmark.txt +50 -0
- data/doc/ja/plugin/category_to_tag.txt +21 -0
- data/doc/ja/plugin/cocoment.txt +31 -0
- data/doc/ja/plugin/google_adsense.txt +25 -0
- data/doc/ja/plugin/google_analytics.txt +7 -0
- data/doc/ja/plugin/image_detail.txt +69 -0
- data/doc/ja/plugin/image_gps.txt +36 -0
- data/doc/ja/plugin/image_gps2.txt +41 -0
- data/doc/ja/plugin/livedoor_weather.txt +105 -0
- data/doc/ja/plugin/opensearch_ad.txt +16 -0
- data/doc/ja/plugin/section_footer.txt +84 -0
- data/doc/ja/plugin/select_theme.txt +1 -0
- data/doc/ja/plugin.txt +13 -0
- data/doc/ja/style/hatena.txt +10 -0
- data/doc/ja/style/markdown.txt +13 -0
- data/doc/ja/util.txt +12 -0
- data/filter/antirefspam.rb +263 -0
- data/filter/commentkey.rb +29 -0
- data/filter/commentsize.rb +18 -0
- data/filter/hidecomment.rb +13 -0
- data/filter/iplookup.rb +55 -0
- data/filter/plugin/antirefspam.rb +59 -0
- data/filter/plugin/commentkey.rb +58 -0
- data/filter/plugin/commentsize.rb +12 -0
- data/filter/plugin/en/iplookup.rb +9 -0
- data/filter/plugin/en/spambayes.rb +123 -0
- data/filter/plugin/iplookup.rb +39 -0
- data/filter/plugin/ja/antirefspam.rb +91 -0
- data/filter/plugin/ja/commentkey.rb +17 -0
- data/filter/plugin/ja/commentsize.rb +6 -0
- data/filter/plugin/ja/iplookup.rb +9 -0
- data/filter/plugin/ja/spambayes.rb +124 -0
- data/filter/plugin/spambayes.rb +501 -0
- data/filter/plugin/zh/iplookup.rb +9 -0
- data/filter/rblcheck.rb +36 -0
- data/filter/spambayes.rb +535 -0
- data/filter/spamlookup.rb +37 -0
- data/io/dbi_io/ChangeLog +19 -0
- data/io/dbi_io/README.ja +39 -0
- data/io/dbi_io/dbi_io.rb +181 -0
- data/io/dbi_io/plugin/refererDbiIO.rb +76 -0
- data/io/dbi_io/tdiary_table.sql +42 -0
- data/js/appstore.js +109 -0
- data/js/datepicker.js +69 -0
- data/js/editor.js +82 -0
- data/js/flickr.js +157 -0
- data/js/image_ex.js +79 -0
- data/js/jquery.socialbutton.js +842 -0
- data/js/nicovideo.js +17 -0
- data/js/picasa.js +322 -0
- data/js/plugin_checker.js +71 -0
- data/js/prettify/lang-apollo.js +2 -0
- data/js/prettify/lang-clj.js +18 -0
- data/js/prettify/lang-css.js +2 -0
- data/js/prettify/lang-go.js +1 -0
- data/js/prettify/lang-hs.js +2 -0
- data/js/prettify/lang-lisp.js +3 -0
- data/js/prettify/lang-lua.js +2 -0
- data/js/prettify/lang-ml.js +2 -0
- data/js/prettify/lang-n.js +4 -0
- data/js/prettify/lang-proto.js +1 -0
- data/js/prettify/lang-scala.js +2 -0
- data/js/prettify/lang-sql.js +2 -0
- data/js/prettify/lang-tex.js +1 -0
- data/js/prettify/lang-vb.js +2 -0
- data/js/prettify/lang-vhdl.js +3 -0
- data/js/prettify/lang-wiki.js +2 -0
- data/js/prettify/lang-xq.js +3 -0
- data/js/prettify/lang-yaml.js +2 -0
- data/js/prettify/prettify.css +1 -0
- data/js/prettify/prettify.js +28 -0
- data/js/referer.js +17 -0
- data/js/show_and_hide.js +39 -0
- data/js/socialbutton.js +126 -0
- data/js/twitter_anywhere.js +28 -0
- data/js/yahoo_kousei.js +21 -0
- data/lib/bayes/convert.rb +34 -0
- data/lib/bayes.rb +232 -0
- data/lib/exifparser/BUGS +1 -0
- data/lib/exifparser/ChangeLog +169 -0
- data/lib/exifparser/README +15 -0
- data/lib/exifparser/install.rb +1015 -0
- data/lib/exifparser/lib/exifparser/makernote/canon.rb +502 -0
- data/lib/exifparser/lib/exifparser/makernote/fujifilm.rb +415 -0
- data/lib/exifparser/lib/exifparser/makernote/minolta.rb +84 -0
- data/lib/exifparser/lib/exifparser/makernote/mk_nikonflensname.rb +39 -0
- data/lib/exifparser/lib/exifparser/makernote/nikon.rb +267 -0
- data/lib/exifparser/lib/exifparser/makernote/nikon2.rb +581 -0
- data/lib/exifparser/lib/exifparser/makernote/nikonflensname.rb +438 -0
- data/lib/exifparser/lib/exifparser/makernote/olympus.rb +225 -0
- data/lib/exifparser/lib/exifparser/makernote/prove.rb +84 -0
- data/lib/exifparser/lib/exifparser/makernote/sigma.rb +237 -0
- data/lib/exifparser/lib/exifparser/pre-setup.rb +1 -0
- data/lib/exifparser/lib/exifparser/scan.rb +278 -0
- data/lib/exifparser/lib/exifparser/tag.rb +2298 -0
- data/lib/exifparser/lib/exifparser/thumbnail.rb +76 -0
- data/lib/exifparser/lib/exifparser/utils.rb +88 -0
- data/lib/exifparser/lib/exifparser.rb +265 -0
- data/lib/exifparser/sample/exifview.rb +279 -0
- data/lib/tdiary-contrib.rb +19 -0
- data/lib/wgs2tky.rb +93 -0
- data/misc/section_footer2/buzzurl.yaml +6 -0
- data/misc/section_footer2/fc2.yaml +6 -0
- data/misc/section_footer2/ldc.yaml +6 -0
- data/misc/section_footer2/retweet.yaml +7 -0
- data/misc/section_footer2/twitter.yaml +7 -0
- data/misc/section_footer2/yahoo.yaml +6 -0
- data/misc/tdiarygraph/tdiarygraph120x90e.swf +0 -0
- data/misc/tdiarygraph/tdiarygraph125x125e.swf +0 -0
- data/misc/tdiarygraph/tdiarygraph240x180e.swf +0 -0
- data/misc/tdiarygraph/tdiarygraph468x60e.swf +0 -0
- data/misc/tdiarygraph/tdiarygraph728x90e.swf +0 -0
- data/misc/tdiarytimes/tdiarytimes125x125r.swf +0 -0
- data/misc/tdiarytimes/tdiarytimes125x125r7.swf +0 -0
- data/misc/tdiarytimes/tdiarytimes125x125s.swf +0 -0
- data/misc/tdiarytimes/tdiarytimes125x30.swf +0 -0
- data/misc/tdiarytimes/tdiarytimes234x30.swf +0 -0
- data/misc/tdiarytimes/tdiarytimes468x30.swf +0 -0
- data/plugin/add_bookmark.rb +89 -0
- data/plugin/apple_webclip.rb +26 -0
- data/plugin/appstore.rb +47 -0
- data/plugin/bigpresen.rb +86 -0
- data/plugin/bitly.rb +39 -0
- data/plugin/bootstrap-navi.rb +54 -0
- data/plugin/canonical.rb +9 -0
- data/plugin/category_similar.rb +73 -0
- data/plugin/category_to_tag.rb +60 -0
- data/plugin/category_to_tagcloud.rb +172 -0
- data/plugin/cocomment.rb +37 -0
- data/plugin/code-prettify.rb +23 -0
- data/plugin/coderwall.rb +34 -0
- data/plugin/datepicker.rb +28 -0
- data/plugin/day2section.rb +20 -0
- data/plugin/del_footer.rb +111 -0
- data/plugin/description_from_body.rb +23 -0
- data/plugin/development.rb +16 -0
- data/plugin/editor.rb +11 -0
- data/plugin/en/add_bookmark.rb +20 -0
- data/plugin/en/del_footer.rb +10 -0
- data/plugin/en/git-register.rb +3 -0
- data/plugin/en/livedoor_weather.rb +25 -0
- data/plugin/en/microsummary.rb +18 -0
- data/plugin/en/nicovideo.rb +38 -0
- data/plugin/en/openid.rb +8 -0
- data/plugin/en/section_footer.rb +6 -0
- data/plugin/en/section_footer2.rb +3 -0
- data/plugin/en/socialbutton.rb +5 -0
- data/plugin/everytrail.rb +39 -0
- data/plugin/facebook_comments.rb +59 -0
- data/plugin/flickr.rb +209 -0
- data/plugin/gist.rb +16 -0
- data/plugin/git-register.rb +240 -0
- data/plugin/github_badge.rb +27 -0
- data/plugin/github_link.rb +9 -0
- data/plugin/goo_gl.rb +42 -0
- data/plugin/google_adsense.rb +132 -0
- data/plugin/google_analytics.rb +39 -0
- data/plugin/google_map.rb +168 -0
- data/plugin/google_sitemaps.rb +60 -0
- data/plugin/google_webmaster.rb +22 -0
- data/plugin/hatena_bookmark_nocomment.rb +9 -0
- data/plugin/hatena_star.rb +66 -0
- data/plugin/hb_footer.rb +255 -0
- data/plugin/hb_footer4sec.rb +244 -0
- data/plugin/hb_footer4sec_js.rb +30 -0
- data/plugin/hide_comment_form.rb +4 -0
- data/plugin/hide_sidebar_iphone.rb +21 -0
- data/plugin/iddy.rb +81 -0
- data/plugin/image_detail.rb +143 -0
- data/plugin/image_ex.rb +462 -0
- data/plugin/image_gps.rb +128 -0
- data/plugin/inline_wiki.rb +6 -0
- data/plugin/instagr.rb +64 -0
- data/plugin/ja/add_bookmark.rb +20 -0
- data/plugin/ja/del_footer.rb +10 -0
- data/plugin/ja/flickr.rb +62 -0
- data/plugin/ja/git-register.rb +3 -0
- data/plugin/ja/google_sitemaps.rb +35 -0
- data/plugin/ja/livedoor_weather.rb +25 -0
- data/plugin/ja/microsummary.rb +18 -0
- data/plugin/ja/nicovideo.rb +41 -0
- data/plugin/ja/openid.rb +7 -0
- data/plugin/ja/section_footer.rb +6 -0
- data/plugin/ja/section_footer2.rb +4 -0
- data/plugin/ja/socialbutton.rb +6 -0
- data/plugin/jdate.rb +20 -0
- data/plugin/jholiday.rb +16 -0
- data/plugin/jmonth.rb +20 -0
- data/plugin/jquery_ui_theme.rb +55 -0
- data/plugin/jroku.rb +28 -0
- data/plugin/jyear.rb +37 -0
- data/plugin/latlonglab_route.rb +25 -0
- data/plugin/lazy_referer.rb +38 -0
- data/plugin/livedoor_weather.rb +180 -0
- data/plugin/make_link.rb +44 -0
- data/plugin/makerss_category.rb +43 -0
- data/plugin/makerss_comment.rb +35 -0
- data/plugin/microsummary.rb +62 -0
- data/plugin/mm_footer.rb +215 -0
- data/plugin/monthly_autopagerize.rb +67 -0
- data/plugin/my_hotentry.rb +132 -0
- data/plugin/navi_day.rb +118 -0
- data/plugin/navi_this_month.rb +15 -0
- data/plugin/nicovideo.rb +115 -0
- data/plugin/notify_miniblog.rb +134 -0
- data/plugin/ogp.rb +55 -0
- data/plugin/ohmsha_estore.rb +71 -0
- data/plugin/openid.rb +90 -0
- data/plugin/opensearch_ad.rb +33 -0
- data/plugin/picasa.rb +56 -0
- data/plugin/plugin_checker.rb +41 -0
- data/plugin/popit.rb +22 -0
- data/plugin/prettify.rb +19 -0
- data/plugin/prezi.rb +10 -0
- data/plugin/profile.rb +222 -0
- data/plugin/puboo.rb +93 -0
- data/plugin/pygments_css.rb +76 -0
- data/plugin/rating.rb +419 -0
- data/plugin/recent_estraier.rb +50 -0
- data/plugin/recent_tweet.rb +71 -0
- data/plugin/retweet.rb +86 -0
- data/plugin/rubykaigi.rb +99 -0
- data/plugin/search-bing.rb +87 -0
- data/plugin/search-default.rb +264 -0
- data/plugin/search-google-custom.rb +60 -0
- data/plugin/search-yahoo-websearch.rb +121 -0
- data/plugin/search-yahoo.rb +109 -0
- data/plugin/section_footer.rb +195 -0
- data/plugin/section_footer2.rb +278 -0
- data/plugin/section_permalink.rb +73 -0
- data/plugin/section_permalink_anchor.rb +39 -0
- data/plugin/select_style.rb +42 -0
- data/plugin/select_theme.rb +90 -0
- data/plugin/show_and_hide.rb +77 -0
- data/plugin/slideshare.rb +10 -0
- data/plugin/socialbutton.rb +60 -0
- data/plugin/tatsu_zine.rb +93 -0
- data/plugin/tdiarygraph_flashstyle.rb +296 -0
- data/plugin/tdiarytimes.rb +166 -0
- data/plugin/tdiarytimes2.rb +406 -0
- data/plugin/tdiarytimes_flashstyle.rb +263 -0
- data/plugin/tdiarytimes_textstyle.rb +290 -0
- data/plugin/title_anchor.rb +16 -0
- data/plugin/tweet_quote.rb +106 -0
- data/plugin/twitpic.rb +10 -0
- data/plugin/twitter.rb +46 -0
- data/plugin/twitter_anywhere.rb +209 -0
- data/plugin/twitter_badge.rb +42 -0
- data/plugin/twitter_js.rb +59 -0
- data/plugin/ustream.rb +19 -0
- data/plugin/vimeo.rb +14 -0
- data/plugin/volatile.rb +89 -0
- data/plugin/vote.rb +100 -0
- data/plugin/wikiloc.rb +27 -0
- data/plugin/windex.rb +512 -0
- data/plugin/yahoo_kousei.rb +79 -0
- data/plugin/yahoo_map.rb +97 -0
- data/plugin/youtube.rb +33 -0
- data/plugin/yshop.rb +189 -0
- data/plugin/zenback.rb +46 -0
- data/spec/apple_webclip_spec.rb +46 -0
- data/spec/fixtures/friendfeed.xml +2 -0
- data/spec/fixtures/github.json +1 -0
- data/spec/fixtures/twitter.xml +73 -0
- data/spec/gist_spec.rb +16 -0
- data/spec/github_link_spec.rb +39 -0
- data/spec/google_analytics_spec.rb +60 -0
- data/spec/jdate_spec.rb +23 -0
- data/spec/jmonth_spec.rb +28 -0
- data/spec/jyear_spec.rb +21 -0
- data/spec/my_hotentry_spec.rb +78 -0
- data/spec/openid_spec.rb +246 -0
- data/spec/opensearch_ad_spec.rb +50 -0
- data/spec/profile_spec.rb +88 -0
- data/spec/rcov.opts +2 -0
- data/spec/spec_helper.rb +223 -0
- data/spec/title_anchor_spec.rb +39 -0
- data/spec/twitter_js_spec.rb +116 -0
- data/spec/youtube_spec.rb +20 -0
- data/style/hatena_style.rb +1011 -0
- data/style/markdown_style.rb +239 -0
- data/style/wikiext_style.rb +21 -0
- data/tdiary-contrib.gemspec +25 -0
- data/util/clean-spam/README.ja +1 -0
- data/util/clean-spam/tdiary-comment-clean +46 -0
- data/util/clean-spam/tdiary-comment-clean2 +81 -0
- data/util/clean-spam/tdiary-referer-clean +46 -0
- data/util/convert_pstore.rb +82 -0
- data/util/estraier-search/ChangeLog +36 -0
- data/util/estraier-search/README.ja +114 -0
- data/util/estraier-search/en/estraier-register.rb +3 -0
- data/util/estraier-search/estraier-register.rb +298 -0
- data/util/estraier-search/estraier-search.rb +273 -0
- data/util/estraier-search/estraier.rhtml +73 -0
- data/util/estraier-search/estraier.rxml +23 -0
- data/util/estraier-search/i.estraier.rhtml +31 -0
- data/util/estraier-search/ja/estraier-register.rb +3 -0
- data/util/image-gallery/README.ja +27 -0
- data/util/image-gallery/image-gallery.rb +523 -0
- data/util/image-gallery/image-gallery.rb.euc-jp +523 -0
- data/util/image-gallery/js/SmoothGallery/Changelog +52 -0
- data/util/image-gallery/js/SmoothGallery/css/ReMooz.css +186 -0
- data/util/image-gallery/js/SmoothGallery/css/img/carrow1.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/carrow2.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/closebox.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/closebox.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/fleche1.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/fleche1.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/fleche2.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/fleche2.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/loading-bar-black.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/open.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/open.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_e.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_n.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_ne.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_nw.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_s.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_se.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_sw.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/remo_bg_w.png +0 -0
- data/util/image-gallery/js/SmoothGallery/css/img/spinner.gif +0 -0
- data/util/image-gallery/js/SmoothGallery/css/jd.gallery.css +371 -0
- data/util/image-gallery/js/SmoothGallery/css/layout.css +91 -0
- data/util/image-gallery/js/SmoothGallery/license.txt +621 -0
- data/util/image-gallery/js/SmoothGallery/resizer.php +113 -0
- data/util/image-gallery/js/SmoothGallery/scripts/Changelog +52 -0
- data/util/image-gallery/js/SmoothGallery/scripts/History.Routing.js +126 -0
- data/util/image-gallery/js/SmoothGallery/scripts/History.js +109 -0
- data/util/image-gallery/js/SmoothGallery/scripts/ReMooz.js +364 -0
- data/util/image-gallery/js/SmoothGallery/scripts/jd.gallery.js +843 -0
- data/util/image-gallery/js/SmoothGallery/scripts/jd.gallery.set.js +183 -0
- data/util/image-gallery/js/SmoothGallery/scripts/jd.gallery.transitions.js +90 -0
- data/util/image-gallery/js/SmoothGallery/scripts/jdgalleryresize.js +828 -0
- data/util/image-gallery/js/SmoothGallery/scripts/license.txt +621 -0
- data/util/image-gallery/js/SmoothGallery/scripts/mootools-1.2-more.js +103 -0
- data/util/image-gallery/js/SmoothGallery/scripts/mootools-1.2.1-core-yc.js +349 -0
- data/util/image-gallery/js/SmoothGallery/scripts/resizer.php +113 -0
- data/util/image-gallery/misc/plugin/recent_image.rb +406 -0
- data/util/image-gallery/skel/gallery.rhtml +154 -0
- data/util/image-gallery/skel/gallery.rhtml.euc-jp +154 -0
- data/util/image-gallery/tdiary.conf.igsample +8 -0
- data/util/image-gallery/theme/image-gallery.css +85 -0
- data/util/image2flickr.rb +282 -0
- data/util/posttdiary/README.ja +12 -0
- data/util/posttdiary/posttdiary-ex.rb +1155 -0
- data/util/posttdiary/posttdiary.rb +245 -0
- data/util/rast-search/ChangeLog +55 -0
- data/util/rast-search/README.ja +99 -0
- data/util/rast-search/en/rast-register.rb +3 -0
- data/util/rast-search/i.rast.rhtml +33 -0
- data/util/rast-search/ja/rast-register.rb +3 -0
- data/util/rast-search/rast-register.rb +326 -0
- data/util/rast-search/rast-search.rb +249 -0
- data/util/rast-search/rast.rhtml +66 -0
- data/util/rast-search/rast.rxml +21 -0
- data/util/section_link/README +11 -0
- data/util/section_link/misc/plugin/section_link.rb +68 -0
- data/util/section_link/misc/plugin/section_link_anchor.rb +38 -0
- data/util/section_link/tdiary/tdiary_day_ext.rb +21 -0
- data/util/section_link/tdiary/tdiaryext_style.rb +36 -0
- data/util/section_link/tdiary/wikiext_style.rb +36 -0
- data/util/tdiary-for-ruby1.9/compatible.rb +97 -0
- data/util/tdiary-for-ruby1.9/tdiary-2.2.0.patch +98 -0
- data/util/tdiary-for-ruby1.9/tdiary-2.3.1.patch +212 -0
- data/util/tdiary-grep/README +4 -0
- data/util/tdiary-grep/grep.rb +445 -0
- data/util/tdiary-mode/http.el +130 -0
- data/util/tdiary-mode/tdiary-mode.el +613 -0
- data/util/tdiary-vim/ChangeLog +25 -0
- data/util/tdiary-vim/README +60 -0
- data/util/tdiary-vim/tdiary.vim +350 -0
- data/util/tdiarysearch/README.en +53 -0
- data/util/tdiarysearch/README.ja +99 -0
- data/util/tdiarysearch/search.rb +504 -0
- 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/"/\"/g
|
59
|
+
silent! %s/>/>/g
|
60
|
+
silent! %s/</</g
|
61
|
+
silent! %s/&/\&/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/"/\"/g
|
299
|
+
silent! s/>/>/g
|
300
|
+
silent! s/</</g
|
301
|
+
silent! s/&/\&/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
|
+
|