/ 最近 .rdf 追記 設定 本棚

脳log[2013-01-26~]



2013年01月26日 (土) [COSMOS] Vistaのメモリ診断ツールを実行してみたら開始早々、進捗1%でハードウェアのエラーを検出した。BIOSで 1Tとなってるところを 2Tにしてみたり、空きスロットに差し直したりしてみたがやはりエラーを検出する。メモリがあかんのかもね。この1年ケースを開けた記憶がないほど安定してたのに。動作クロックを下げて最後の足掻きをしてから新しいのを買う。■■■@2012-01-24 同じものを買った。新しいのは標準電圧(1.50V)で DDR3-1600(800MHz)動作すると書き込んであった(古いのは 1.65V)。BIOSでNBとの比率を設定してわずかにスピードアップ。■■■やっぱり強制終了する。こんどは診断ツールでエラーを発生させることもできない。1.ゲームをするまでは何の問題もなかった。2.強制終了して再起動後は問題ない。3.ゲーム中に起こることがほとんど(そこから悪化した)。考えたシナリオは、1.ビデオカードがアクセス違反をおかしてる(OSのキャッシュと衝突?)。2.(グラフィック)共有システムメモリの使用でメインメモリが音を上げた(メモリに直接あたるファンが存在していない)。物理メモリが壊れてるのか冷却に穴があるのか Vistaのメモリ管理が悪いのか AMDのグラフィックドライバが悪いのか。■■■GPUを差し直してみた。場所も5段下にしてメモリから遠ざけた。現在様子見中。

最終更新: 2015-02-09T01:58+0900

[SonyReader] PRS-650 tools.

PCとリーダーのディレクトリ構成が決め打ちなので、きったねえなー、という感想を漏らすぐらいしか使い道がないでしょうが。

  1. $0-RunOnReaderConnected.bat
  2. $1-Update_Collecctions.rb19
  3. $2-Make_CacheXML_And_Sync.rb19
  4. $3-touch_last3_opened_books.rb
  5. $4-cacheExt_tweak.rb19

 1. $0-RunOnReaderConnected.bat

Sony Readerを繋いだら実行する。$1-$4のスクリプトを引数付きで順番に実行するためのもの。前提条件

  • メモリーカードスロットは E:と F:。
  • すべてのバッチとスクリプトファイルが同じフォルダにあり、作業フォルダもこれと一致する。
  • READER MS (E:)と READER SD (F:)という名前のサブフォルダがあり、この中には Readerにコピーする PDFファイルと $Collections.txtというファイルが(フラットに)入っている。

 2. $1-Update_Collecctions.rb19

カレントディレクトリをスキャンして $で始まるファイルと隠しファイルを除いたファイルのリストを $Collections.txtというファイルに保存する。カレントディレクトリはバッチファイルによって READER MS (E:)か READER SD (F:)になっている。以降のスクリプトのカレントディレクトリも同様。

 $Collections.txt

内容はこんな感じ。

____1 [カイ サワベ] ヘンな感じの日本人.pdf
__1__ [森博嗣] 四季.pdf
__1__ [須賀しのぶ] 芙蓉千里.pdf

-__1__ [沢村凜] 瞳の中の大河.pdf
-__1__ [範乃秋晴] 特異領域の特異点.pdf

-1____ $コレクション名 マンガ
-_1___ $コレクション名 実用的なマンガ
-__1__ $コレクション名 小説
-___1_ $コレクション名 実用的な小説
-____1 $コレクション名 実用書

行頭のマイナスは $Collections.txtに記載されていたファイルが現在は見えなくなってることを示す。アンダースコアはコレクションに属していないことを、1はコレクションに属していることを示す。$コレクション名(スペース)で始まるファイル名は特殊で、コレクション名を定義するための行。行頭にマイナスが付いてるのは「$コレクション名 マンガ」という名前のファイルが存在しないから。自分で付ける必要はないが $1スクリプトの実行で付加される。行の並びは自由。ただし見えないファイルと新しく出現したファイルは末尾に集められる。コレクションを追加するときは全ての行の頭にアンダースコアを追加する。コレクション名のデフォルトはコレクションN(※Nは連番)。

例えば、[森博嗣] 四季.pdfと [須賀しのぶ] 芙蓉千里.pdfは同じコレクションに属していて、そのコレクションの名前は小説。[沢村凜] 瞳の中の大河.pdfというファイルは以前存在していたが今は見えない。ファイルが削除されていて見えないのであれば $2のスクリプトがミラーリングを行ったときに Sony Readerからも削除される(はず)。隠しファイルになっていて見えないのであれば Readerから削除はされない(これは robocopyのミラーリングの仕様による)。

 3. $2-Make_CacheXML_And_Sync.rb19

READERDRIVE:/Sony Reader/database/cache.xmlに ./$Collections.txtの内容を反映させ、READERDRIVE:/自炊.pdf/とカレントディレクトリをミラーリングする。

READERDRIVEはバッチファイルから与えられた引数。

 @2014-01-22 修正。

cache.xmlの text要素の開きタグにマッチする正規表現において、閉じタグを省略するスラッシュにマッチする部分をオプションに変更( />\z → /?>\z )。珍しいけど bookmarkDate要素が子になることがある。

when %r{\A<text (?:\s*id="(\d+)"|\s*path="(?:[^"/]*/)*([^"/]+)"|\s*sourceid="(\d+)"|\s*\w+="[^"]*")*\s*/?>\z}i
when %r{\A<text (?:\s*id="(\d+)"|\s*path="(?:[^"/]*/)*([^"/]+)"|\s*sourceid="(\d+)"|\s*\w+="[^"]*")*\s*/?>\z}i

 4. $3-touch_last3_opened_books.rb

E:/Sony Reader/database/cacheExt.xmlと F:/Sony Reader/database/cacheExt.xmlを読んでメモリーカード内のすべてのファイルの最後に開いた日時を取得し、これをもとに最後に開いた3冊に最も新しい更新日時を設定する。すると Readerは最後に開いた3冊を最新の3冊としてホーム画面に表示する。

--resetオプションが与えられるとファイル本来の更新日時を復元する。オプションなしで実行されると復元と設定を行う。

対象ファイルの最終アクセス日時情報は失われる。最終アクセス日時がファイルシステムや他のプログラムによって変更されると更新日時の復元に失敗する。

 5. $4-cacheExt_tweak.rb19

READERDRIVE:/Sony Reader/database/cacheExt.xmlを操作する。1.すべての<history>要素を削除する。2.ファイルの更新日時を比較し Readerの方が古ければ opened="true"属性を削除する。比較対象は cacheExt.xmlに記載されているすべてのファイルと、カレントディレクトリ直下の同名のファイル。

追記@2014-03-10 ホーム画面上部の「続きから読む」欄の一冊は絶対に未読状態にならない。PCとの接続を絶つとすぐに opened属性が Readerによって再設定されるみたい。


こんな苦労が必要なのは、最後にコピーしたファイルのうち3冊だけがホーム画面という特等席に表示されても嬉しくないのと、本を読み続けると蓄積するページ履歴(history要素。ほとんどが連続するページの履歴)が Readerの動作を遅らせ不安定にするのと、合計48GBのメモリーカードに1000冊以上の PDFを入れてるとコレクションへの登録やファイルの削除の途中で必ず Readerがフリーズするのだが eBook Transfer for Readerはメモリーカードの読み込みに5時間を費やしそうな勢いで助けにならないからと、管理対象の数を減らすためにシリーズを一つの PDFに結合していて新刊が出るたびに末尾にくっつけているために既読フラグのクリアが定期的に必要だからだ。結局俺は PRS-650を自分のものにはしていないのだ。そう勘違いさせてくれるだけの選択の自由を Sonyは提供していないし、お仕着せで満足できるほどの完成度も Sonyは提供していない。

 @2015-01-31 lib/prs-650.rb (2.8KiB, 2015-02-09 変数名のミス修正)

  • prs-650が書き出す XML(cache.xmlと cacheExt.xml)に特化したずぼらライブラリ
  • $2-Make_CacheXML_And_Sync.rb19 と $4-cacheExt_tweak.rb19 に共通するコードを抜き出しただけ
  • ファイルをスキャンしながら情報を抜き出したり、ちょっとだけ書き換えたり

2013年01月25日 (金) W53Sのカレンダーは2000年1月から2019年12月までしか表示できない。2007年10月に購入して、300件がいっぱいになるたびに古いものから削除しながら 5年間使用してきて、あと 1年で折り返し地点をむかえる。スマホしか選択肢がなかったら本当に困る。


2013年01月24日 (木) HDDが 14℃と22℃。スピンアップに失敗しやしないだろうか。プレヒートが必要じゃないかね。■電源を入れたら初めて聞く異音がしたんだよ。モーターを手で回して発電してるんじゃないかっていうような音が。あるいは油の切れた扇風機。


2013年01月23日 (水) 家の Windows PCのパスワードリマインダを紹介。「黄色いあれ」記憶を失わない限り俺にはわかる(それってほとんど、(一日一回以上入力する)パスワードを忘れるようなことがない限りわかるって言ってるのと変わらない)。リマインダ関係なしに周辺情報を集めた方が当たりやすかったり。■定型の質問文と組み合わせて強制的に2つ目のパスワードを作らせようとするのってなんなんでしょうね(Windowsのことではないよ。ないけど……Windowsの場合パスワードリマインダを機能させるためには意味のある、辞書に載ってそうなパスワードを設定することが求められてるな)。弱い方から破られるだろうに。質問に対するよくある答えを用意して、多数の IDに対して無差別にログインを試行すればけっこう当たるでしょう。


2013年01月22日 (火) 2013年01月16日 18時51分 もいすん■こ、れ、は! Rubyの%rリテラルにマッチする正規表現を発展させているのだけど……解読を諦めるレベル。


2013年01月21日 (月) 電子書籍に対して勘違い(過度な期待)をしていたのをどこかのブログで気付かされた。あれは文庫版が出るのを待望して喜ぶように、電書版まで出たのを祝福すべきことだったのだと。だから最新刊が手に入らなかったりシリーズの途中までしか揃ってなかったりしてもがっかりしてはいけない。そのうち別ルートから電書版が手に入る可能性がなきにしもあらずだ。何年でも待っていよう(それでいいその程度のものと判断したなら)。■単行本を買うということ。価格の高さ、かさばることに負けないメリットを見出した結果。著者の最新作を(雑誌連載には遅れるけど)すぐに読みたい、読み終わったら本棚に並べて保存したい、あたりの理由だろうか。奇特だね。それにすぐに読みたいというのを一応理由に挙げたが、著者のブログを読むのとアマゾンで著者名をクリックするのだけが俺が単行本の発売を知る手段だ。文庫には太洋社とまんが王倶楽部のリストがあるが単行本にはない。講談社と丸善&ジュンク堂ネットストアのメールマガジンが希少な例外手段。■文庫を買うということ。単行本に価値を見いだせなかったり文庫版にそれに優る別の価値を見つけた結果。安い。軽い。場所をとらない。自炊しやすい。文庫版あとがきや解説があったりする。■古本を買うということ。圧倒的に価格。時間の経過につれて価格が下がる。単行本発売から半年から数年遅れて文庫が出るころには単行本が古本で251円で手に入る。文庫本だって単行本よりスタートが遅れるものの発売から中古価格が下がっていく。同じ古本でも文庫か単行本か。落ちてきた文庫の最新刊には最初から鮮度なんてないし、中古価格が下落するまで余分に待つことは苦ではない。読むものは他にいくらだってあるし、自炊すれば紙の劣化や汚れも問題ではなくなる。底値をつけるのは単行本の方が早いけど自分は文庫の古本により高い価値を見出してる。■電子書籍を買うということ。なんだろうね? 文庫より場所をとらない。文庫より安い。手元にすぐ届く。自炊の手間が不要(スキャン、最適化、転送、バックアップ)。自炊より高品質(傾きなし、高コントラスト、高解像度、文字データ付きで検索が可能)。考えられるメリットはいっぱいあるけど両立しないものもあるし、現状ではひとつでも成立していれば御の字である(という使い方から御の字が妥協することだという誤解が生じるのだな。(反語)みたいに(皮肉)(諦念)とか書かないかんのか?)。■ハードカバー、文庫というフォーマットが大まかな価格を決めるように電書には電書の価格があって、それは150円から300円くらいだと思ってる。これは、安く早くいつでもどこでも気軽に大量に購入できて(質は)まずくない、という価格。安さと品揃えの良さと露出の多さとアクセスの良さが勝負の決め手。高品質の電子書籍はプレミア価格の単行本の付録としてか自炊でしか手に入らないかもね。■例外。オライリーとか達人出版会。まだ自分で評価を決めかねてる。文庫や古本の競合としての電書とは位置づけが違うので。■電書の市場がどういうものになるのかわからないけど、現状では文庫を自炊するのが質(カバー、カバー裏、表紙、カラーページ、挿絵の省略がないこと。解像度の高さ)、価格(中古の売買も当然考慮のうち)、発売の確実さ、発売時期(単行本より遅いがその他より遅くはない)、発見・購入の容易さ、データの扱いやすさ(他端末へのコピー、端末ごとの最適化、メタデータの整理統一)で有利。泣き所は(単行本に比べた)発売の遅さ、文字データがなく単語・人名の以前の登場位置にジャンプできないこと、輸送にかかる時間、スキャンの手間、紙ゴミ。どう考えても些細なことでは有無をいわせない低価格にしか電書の価値が見つからない(自炊と同等以上のデータは用意できないでしょう?それも300円までで。できそうなのは青空文庫だけだ)。どうやら Sony Readerと ScanSnapを手にした俺は文庫の自炊で満足してる(読書端末が液晶タブレットしかなかったら、ScanSnapがなかったら、電書への要求やその水準は違っていたろう)。電書がはやって中古市場が縮小しないことを望む。■■■翌日。こうまで電書を否定してしまうと試してみたくなるのが人情というもの。Reader Storeをのぞいてみたら以前はクレジットカードだけだったはずの決済方法に NET CASHが加わっている。他には、My Sony Clubの My Sony IDというのを取得しなければいけないのがものすごく面倒だけど、これは買い物をする以上しかたない。なんだかんだで現役のソニー製品を数えてみたら6つもあることでもあるし、GPS付きのデジカメとかネックバンド型の MP3プレイヤーとかヘッドマウントディスプレイとか、目を付けてるソニー製品にも事欠かない。会員IDをメモる手間くらいかけようじゃないか。■メールメンバーとして登録したら Reader Store優待プログラム:ランクRegularだってさ。楽天とか DHCと同じことしてんのな。客の足下を見てこっそり価格の付け替えをするより公正だとは思うけど反吐が出る。ポイント集めゲームを楽しめる人間はつまらない人生の楽しみ方を知ってると本当に思う。■ガガガ文庫の315円という値付けが絶妙。あとノベルズの充実っぷりが目立つ。だけど Sony Readerでギリギリ読めないものが2段組のノベルズだったり。余白はもちろんノンブルと章タイトルまで削っても字が小さすぎて読む気が起こらない。電書として販売されてるものがどういう組み方をされてるのかはわからんけど確かめようもなし。いやいやサンプルダウンロードボタンがあった。Readerに転送しないと読めないんだけど。■書籍のデータが全然足りない。データサイズ、(あるなら)ピクセルサイズ、文庫換算であるいはPRS-650で表示したときに何ページあるのか、とか。■書籍管理ソフト(eBook Transfer for Reader)を起動するとそれ以外にランチャーとバックグラウンドサービスが起動して起動しっぱなしになるというのがすごく嫌で、サンプルや購入した書籍をとりあえずダウンロードだけして保存しがち。■Reader Storeには美少女文庫が足りない!ソフガレとパラダイムも!■■■「このジュブナイルポルノがすごいかもしれない 2012 - SNOW ILLUSION blog


2013年01月20日 (日) 電子ペーパーは十分よみやすいけれど、Paperwhite で読書してると、紙にくらべてなぁんか、微妙に読みにくいのよね・・と感じます。 でも、コントラストは、まぁ雑誌的なレベルでは十分ですし、解像度もなかなかのはず。なんでそう感じるんでしょ?、、と思ってたのですが、あぁ、そっか、表面の透明なプラスチック層のせいだ、と気がつきました。 あそこにホコリが乗ったり、反射があったりすると、微妙に文字の位置と焦点面がちがっていて、それで疲れるのかも。3D映画をみててつかれるのと似たような原理というか。」■再三(20120214, 20121027)懸念を表明してきてることなので鬼の首を取ったように喜びはしないが(探せばそういう意見が見つかるのは当然)、大いに参考にします(嬉しそう)。


2013年01月18日 (金) (間違って上書きしてしまった。最近で2回目。今度は思い出せない)■ここのところ不意の再起動に悩まされていて、ゲーム中に起こることから GPUを疑ってたんだけど最近は時を選ばず起こる。一番怪しいのはメモリなんだけど、NTFSの頑健さに甘えてついついメモリテストを先送りしてしまう。ファイルシステムが壊れてないだけで、ファイルの中身の整合性が人知れず失われてる可能性はあるんだろうけど。<追記@2013-01-24>空になってるファイルを発見!異常終了時に起動してたプログラムの設定ファイルだ。</追記>■Firefoxの話。日記を書いてる途中で不意のシャットダウンにみまわれ、再起動後にタブの復元をすると inputエリアに入力中だったテキストが完全に元通りなのに感激して、絶対に失うまいとそそくさと投稿ボタンを押したはいいけど日付の部分がシャットダウン前と違っていたんだろうなあ。きっちり値がセットされるフィールドに勝手に以前の値を復元することはできまいて。それに気付かず二度までも。■あー気になる。■■■@2013-01-31 emojiに関してサイト内検索したら見つかったのが消えた今日の日記だった。以下、googleキャッシュからの復元。■[tDiary] @2013-01-13 スペック(describe)がリネームに追いついてない件>added spec and rename methods · 37da173 · tdiary/tdiary-core · GitHub■emojifyはWikiスタイル(HikiDoc)には使えないメソッドだなー(定義リストと干渉する)とか、絵文字名をコロンで囲むあたりがスタイルの領分なんじゃないかなーとか、(そうは言っても)書き方がいっぱいあっても嬉しくないしなーとか。やくたいもないことをバカっぽく。■完全なツールメソッドにするか、収斂進化的な状況を受け入れるという選択肢もあるよ。共有するのはいつでもできるけど共有(公開)したものを隠すのは基本的にできないから。■emoji.gsub!(":", "")と emoji=emoji[1..-2]はどちらにするか微妙なところ。gsubがブロックの第2引数以下にキャプチャを渡してくれたらいいのにね。gsub(/:([a-z0-9_+-]+):/) do |_,emoji| と書きたい(書けない)。JavaScriptの String.replaceメソッドの至れり尽くせりなことよ。「m + 2 個目の引数は」とか説明されてもヘッ?ってなるけど。


2013年01月17日 (木) ラストレムナントをつまらなくしてるのはボスをボスたらしめるためのまずいやり方。マルチロックによる複数回のカウンター攻撃とエリア攻撃。攻撃しなければ一回しか食らわないのがわかってるのに攻撃しない選択肢が出ないことがある。クラスである程度コントロールできるがどのクラスに就くかというのがまたコントロールしづらい。そして多用されるエリア攻撃。ユニオンの位置取りは自由にできないし、どういう配置になってるのかを瞬間移動するカメラがとらえる敵味方入り乱れる画面から読み取ることも難しい。「ああ、わかってるのにカウンター」「ああ、死にかけのお前も巻き添えなのね」ちなみにミンサガで最低だった戦闘はゴーストシップ。ラストレムナントでこれまでのところ最低だったのは地獄門。どちらもいちいちいちいちカウンター攻撃をしてくるうえにモーションが遅い。こんなカウンターだけのとろくさいやつ相手をせずに脇を通り抜けるのが最善なのにその選択肢がない。■この、リアクションが嫌いというのは、ブレーキ操作に付随する「余計な反応が問題(20130112)」というのにも、全面タッチパネルの、タッチパネルしか入力手段が存在しないスマホが嫌いなのにも通じてる気がする。空気を読みすぎる(それを気取(けど)られる)やつはうざいよ。(いやまあ、よく気がつく気のいいやつではあるんだけど。(ブーメラン)うざいのはお前だーっ)■■■2周目の乱殺マニアクスが本番で1周目はその準備だというつもりでやってる。


2013年01月16日 (水) 下半身が32年フリーザなんですけど、女性向けTENGAが出るって聞いたので最終形態になれそう。 - エロマンティック■開設時まで全部読んだっ。才能に嫉妬するレベル。


2013年01月15日 (火) スクリプトを使わないとログインもできないサイトの多いことよ。半月前から始めて実際に見つけたのは LUTSと eoの2つだけだけど(常套句として)。eoは見当違いのアクセス制御をいつになったら修正するのだろうね。通話料金明細を表示するとき、印刷するとき、Cookieがどうたら期限がどうたらポータルから云々いって表示を拒否するが同じリンクを何度もクリックし続けるとそのうち表示される。一貫性がない。意図が間違ってるうえにその実装も間違ってる証拠。これはクッキーもスクリプトも有効なときの話(スクリプトが無効だとログインもできないからね)。ボークスホビー天国ウェブの件とか、今は直ったけどジュンク堂の件から想像するに日本のWeb製作界隈にはシリアル脳のはびこる一画があるんじゃないかと思う。新しいタブ(ウィンドウ)で開く、のみならず、ブラウザキャッシュを利用した戻るに続くアクセスにも対応できない思考形式。それも、やり口がお粗末だから便不便ではなく不具合として馬脚をあらわす。想像できないのだとしたら想定した上で拒否するなんて土台無理かしらん(まっとうな例外処理があれば不時着はできるはずだけど)。話は戻ってスクリプト。何が主で何が従かを思い出せ。→20110519。→20081024。→20060407p01。こういうのって少数の、俺みたいに偏屈だったりするユーザーのためにあとからお金をかけて対策するようなこと(やっぱりやめとこっかなっ)じゃあないんよ。最初からこういうやり方しか存在してないの。スクリプトを使ってしか実装できないやつは馬鹿だし、目的を見失ってスクリプトを要するハードルの高い要件を最低条件として求めたやつがいたのだとしたら大馬鹿。■■■スクリプトは余技である。もちろん仕上げにどれだけの手をかけられるかが最終的な質を決める部分はあるだろうけど、やっぱりデコレーションに過ぎないことを忘れてほしくない(と思ってる人間がどれほどいるというのか。嘆息)。


2013年01月14日 (月) 鵜の目鷹の目。『Beautiful Code(ビューティフルコード)』(第4刷)の第10章まで読んだ(はい。本の種類によらず目次のあと1章から読み進めるタイプです)。以前勉強になるなあと書いた実行時コード生成の話が第8章にあった。そういえば開闢(※勝手な当て字)が C++での実行時コード生成ライブラリだったと思ったんだけど、どっちを先に知ったんだろう。BitBltで指定するラスタオペレーションのうち名前付きのものは氷山の一角で、それ以外も含めると完備している(20120205)、というのも8章に書いてあった。ところで、8章122ページのコードで「int yFilter = iFilter / cyFilter; int xFilter = iFilter % cxFilter」とあるけれど、cyFilterは cxFilterの間違いではないかと(この2行のみから類推できるのは名前が良いからだよね。アプリケーションハンガリアン)。もうひとつは10章160ページ。「b進法で表現された整数を b-1で割った余りは、(b≧3のとき)各桁の数字を足したものと bを法として合同であり、なおかつ b-1より小さくなります。」10進数で計算してみたけど、勘違いしてないなら(<ここが一番疑わしい)、b-1を法として合同な気がする。いずれにしろ、そういうことが成り立つとしてそこから「語 xを 64進法で書かれた整数とみなすと、この剰余演算で各6ビットフィールドが合計できることは明らかです。」(※この剰余演算とは x%63)までの理解が遠い。一体何が明らかなんだー。■■■@2013-01-29 第11章。「訳注:Bruce Schneier、Applied Cryptography著、『Applied Cryptography』」「Criptoniteプロジェクト」


2013年01月13日 (日) [Vista] ペンタブレット。フルキーボードとトラックボールの手前に置くと窮屈なんだよね。大きさ的にキーボードをどけたい。どけられない理由はログオンとUACのパスワード入力。指紋で認証したいなー。あとは手書きした文字の失われやすさ。PCにも mazecが欲しいなー。■キーボード(Majestouch)。マウス(MX610)。トラックボール(TM-150)。ペンタブレット(CTH-670)。ゲームパッド(DUALSHOCK2)。ジョイスティック(CYBORG EVO FORCE)。ステアリングコントローラ(GTFP)。入力機器が多すぎるんじゃないかな。