nDiaryの話
-
(ほぼリアルタイムな)現行packの使い方
- nDiary本家よりndiary_0.9.4.zipを展開
- ndiary_pack.zipを展開、重ね書き
- ndiary/script/ 下の ndiary_pack.bat を実行(幾つかフォルダが作られます)
- ndiary.bat で日記生成(ネット環境の悪い時は ndiary_nonet.bat)
以上で私の日記環境が再構築されるはずです。
ndiary/log/2004xx.txt が日記原文、ndiary/www/s_diary.htmlが最新日記ですので、
記述→ndiary.bat→表示を繰り返して楽しんでください。
(厳密には、ruby1.6.8にuconvやiconvやimage_sizeが入ってるんですけど、そこまではこれでは出来てませんが。)
(WinXP/2000でiconvはiconv.dllをc:\winnt\system32にコピー要、image_sizeはimage_size.rbをruby/lib/ruby/site_ruby/1.6ぐらいにコピー要)
-
色々やってます
ちょっと丁寧に数えるの面倒臭いなあ。
なんか、よく、ちまちまと、増えたり減ったり変えたりしています。ので、日記とか日記トピックあたりを参照して貰うといいかもしれません。
バージョン管理はすごく適当です。ごめんなさい。
だから以下の記述もかなり曖昧になります。
nDiaryUserWikiとかに期待した方がいいかも。
でもとりあえず、だいたい、おおまかに書く。
-
オンライン書店
オンライン書店行脚。
各店の頁を見に行き、そこから情報を抽出するデコード部と、
データを提示する表示部からなる。
キーはISBN。
ネット環境の悪い時は「ruby diary -nonet」でいいはず。
→使用例
- 表示部 : bookstore_x
user/filter/bookstore_x.rb
script/filter/bookstore.rbの改造。
表示のカスタムは
user/filter/bookstore_x_custom.rbのように可能。
→使用例
幾つかnDiaryユーザさんの表示を真似したデモを中に添付。
- デコード部 : cache
user/lib/cache.rb他
script/filter/amazon.rbの改造。
cookie対応で頁を取りに行く為にuser/lib/webagent.rb,cookie.rbを利用、
cacheに情報を貯める為にuser/lib/cache.rb,cachebib.rbを作成。
各書店についてscript/filter/bookstore.rb程度(つまりリンクだけ)でいいなら、user/lib/cachebib_simple.rbがあればいい。
もう少し詳しく情報を取りたいなら各店用のuser/lib/xxx.rbを用意。
CDやDVDやゲームや電化製品や本棚には未対応。
それ用(各店用)のデコード部を誰か作ってくれい。足すのは簡単なので。
- テスト
→動作テスト
→動作テスト最新β版
(β:多分常時いじって不具合修正をしてたり逆にエンバグしてたるするもの)
-
本日記
user/filter/onlybook.rb
日記各節をチェックして「(ISBN...)」のあるところだけ抜書きする。
他、文字飾りとか改行抜いたりとか本の位置変えたりとか。
-
集計
/user/filter/sum_price_x.rb
/user/plugin/sum_price_x.rb
filterを利用して、日記文中から家計簿記述を抜き出し別ファイル(.price)にまとめ、
pluginを利用して、その一覧を集計表示する。
-
タグ(マークアップ)追加
/user/filter/cite.rb
「Cite:」
引用。引用元のリンクとかタイトルとか。
別書式の版がどこだかあったな。
/user/filter/head.rb
「Head:」
巻頭言。日付の所に文章が入ります。
巻頭言のカスタム。
→使用例
-
テキスト挿入系
- 今日は何の日? : today
user/filter/today.rb
user/plugin/today.rb
カレンダー的な情報ファイルを用意しておいて、今日とか、前後数日分とかを表示。
標準ではSF版が入ってます。
他に利用者は猫旦那さん?
- テキスト足 : word
/usr/plugin/word.rb
単にテキスト(.word)を足す。「今月の目標」とか。
- スケジュール : schedule
/user/plugin/schedule_z
日付指定に幅を追加。記述の仕方がかなり変わってしまったので別名(_z)にしました。
別改造が誰かの手であったな。
-
カレンダーとか
/user/plugin/calender.rb
縦横サイズ自由指定。1行カレンダーでも3列カレンダーでもどうぞ。色々できます。
/user/plugin/monthindex.rb
表示をシンプルに。
-
便利Tips
/user/filter/custom.rb
filterの名を借りて、nDiaryのあちこちを再定義して自分の使い出をよくしてます。
曜日表記の変更とか、
Topicで文字列置換した後、空リンクになった時の対処とか。
/script/diary_cut.rb
1つのファイルにまとめ書きしてた日記を(.diaryに)分割する。
毎日1ファイル新規作成なんてたるくてやってられない人用。
有里さんのdiary_cut.rbのカスタム。
ちなみに逆にサルベージして一つにまとめる/script/diary_sum.rbもある。
/user/filter/space.rb
トピック行と次行の間に空行を加える。
普段トピック行の次に空行を入れるのをめんどくさがってる人用。
あるいは空行多すぎて見難いと思ってる人用。
使ってない(別プログラムで等価処理してる)ので過去に葬る。
-
検索系
キーワードをそのままオンライン書店とかgoogleに送るとかを試みた事もあった。
でもそのへんは他の人がやってくれてるし。
だから過去に葬る。
-
冗句
samuraizer.rb, tanaka.rbとか。
好きだけど、自分でも毎日使わない(一発ネタ)だし、実用性は皆無だし。
だから過去に葬る。
-
CGIでnDiary : onDiary
Rubyの動くサーバでなら、そのままnDiaryが動くでしょ?
とりあえず日記入力のインターフェイスcgiだけ別に作っておいて、と。
→onDiary
→入鹿さんマニュアル
-
現行pack
ndiary_pack.zip
あると便利かなと思って作ってみた。
(ほぼリアルタイムに)現行私のカスタム部ファイル一式。
なんか動かんとか言う時の為の参考に。
要するに一塊(〜3塊ぐらい)突っ込んでbatで動くはずだから、後はそれを改造してね、という。
本家でもそういうパックあったっけ?