[追記 / 20100726]
諦めずにチャレンジ三回目、やっと普通に使えるレベルになったと思うiPhoneへのユーザー辞書一括登録の話。
テスト回数がまだ少ないので問題が全くないとは言い切れませんが。
iOS4のユーザー辞書にPCから単語を一括登録する手順 / よみ表示問題解決版
[20100726-追記ここまで]
追記 / 20100710
追記追記といろいろごちゃごちゃしてきたので一回まとめてみました。
脱獄してないiPhoneのユーザー辞書に、PCの作業だけで単語を追加する方法を模索したまとめ。
(なにやらリンク先を間違えてたみたいです、なんかだめだめだ)
追記の追記 / 20100704
iPhoneのユーザー辞書に登録するテキスト作成をちょっとお手伝いするページをつくりまんた。
![テキストファイルをLibrary_Keyboard_UserWords.sqliteに追加できる形式の.xlsファイルに変換するページ [image]テキストファイルをLibrary_Keyboard_UserWords.sqliteに追加できる形式の.xlsファイルに変換するページ](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100704-1-e1278216395300.png)
よみ [全角スペース or Tab区切り] 単語 な書式の.txtを、
(PupSQLite を使って) Library_Keyboard_UserWords.sqlite (ユーザー辞書に表示される単語)の既存のテーブルに追加できる.xlsファイルと
地味に面倒くさい Library_Keyboard_SerializedUserWords-ja (これがないとユーザー辞書に表示されてても変換できない) の<string></string> をコピペするだけですむように整形された文字列を吐き出します。
ユーザー辞書を追加しても、反映されない時があって、
なぜかキーボードの数を変更すると反映されたりします。
追記 / 途中、再現できない部分があったので書き直しました。
![ユーザー辞書 [image]ユーザー辞書の画面](http://blog.sakurachiro.com/wp-content/uploads/2010/06/IMG_0072.png)
iOS 4 になってやっとユーザー辞書が使えるようになった。
けれどiPhone上からしか登録出来ないので面倒くさくて困った(3GはBluetoothキーボードに非対応みたいだし、そもそも持ってもいない)。
なんとかならないかな?と調べてみると
どうも iBackupBot というアプリ(windows用)で iPhone のバックアップデータを書き換えたりできるらしい。
( 参考: iTunesにバックアップしたiPhoneのデータを漁る方法 – iPhone.goodegg.jp )
さっそくダウンロードして試してみたけど、どうもまだiOS 4に対応していない様子2010/06/23に iOS4 に対応たみたいです。
iBackupBotダウンロード先:
Download iPod software for Windows
以下、分からないながらにやったことメモ。
起動すると勝手にバックアップファイルを探してきて表示してくる。
![iBackupBot for iTunes [mage]iBackupBot for iTunesでバックアップファイルを読み込んだところ](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100624-3-e1277315878436.png)
でもなんか日付が変。
よく見たらバージョンも3.1.3と表示されてる。
それっぽいユーザー辞書も発見できず。
まさかバックアップが取れてないのか?と何度かバックアップを作成する
何回やっても20100622のバックアップしか読み込まれない。
バックアップが出来なくなったんだろうか?と不安になる。
実際にバックアップされたファイルの更新日時を見てみようと、
PCに保管されてるバックアップの保存先フォルダを探して中を確認してみたら以下のフォルダが2つ入ってた。
バックアップの保存場所
XP:Documents and Settings\ユーザー名\Application Data\Apple Computer\MobileSync\Backup
vista / windows 7 (多分):\Users\ユーザー名\AppData\Roaming\Apple Computer\MobileSync\Backup
片方の名前に日付が付いてる。
iTunes上からバックアップを調べてみる。
[編集] – [設定] – [デバイス]タブ
iOS 4のバックアップは日付がつかなくなったんかな?
とりあえず日付の無いフォルダを読み込ませてみる
iBackupBotの [file] – [open](Ctrl+O)から 日付が付いてない方のバックアップファイルを読み込ませてみるが認識しない。
![file-open [image]file-openしてるところ](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100624-4-e1277317645165.png)
というわけで、ユーザー辞書の登録は iBackupBot が iOS 4に対応するのを待って、PCからできそうならPCから
ダメそうなら諦めてiPhone からやることにしまふ。
[ここから追記 / 20100627]
さっき iBackupBot を見にいったらなんと、2010/06/23に iOS4 に対応してたみたいです!
iOS4 のユーザー辞書に iPhone を使わず PC から(不完全だけど)辞書登録ぽいことが出来た。
けど『よみ』を上手く反映させられてなかったです。 ZPROPERTIESの値はどうやって変換するんだろう。
以下、試した事の流れ。
用意するモノ3つ
- iPhoneのバックアップを開いて編集できるソフト / iBackupBot for iTunes
- iTunes Backup Manager for iPhone 3G, iPhone 3GS, iPod Touch, iPad
- SQLite3データベースを閲覧・作成・編集するためのソフトウェア / PupSQLite
- 窓の杜 – 【REVIEW】「SQLite」のデータベースをGUIで操作できる高機能管理ソフト「PupSQLite」
Pup's Atelier-Software - .plistのEditor / plist Editor for Windows
- plist Editor for Windows (Freeware)
1.バックアップファイルからユーザー辞書ファイルを探そう
iBackupBotを起動すると自動的にiOS4のバックアップファイルを読み込んでくれる。
ユーザー辞書用のファイルぽいものがあったので書き出してみる。
Library/Keyboard/SerializedUserWords-ja と
Library/Keyboard/UserWords.sqlite に
チェックをつけて [File] – [Export]
Export Backed-Up Files というウインドウが開くので
Export only checled file(s). にチェックを入れると
Export with backup information, for import to another backup. が出現、こっちにもチェックをつけて[OK]
出力先を決めて書き出す。
2ファイルを書き出したよって言われるので確認しにいくと。
とりあえず次へ。
2.編集してみよう
登録したい言葉がパッと思いつかないので
メール返信で困ったときに使えるフレーズいくつか – インターネットの備忘録 の返信フレーズを登録していってみる。
PupSQLiteを起動して、さっき書き出した Library_Keyboard_UserWords.sqlite を読み込む。
先にiPhone上で入力してあったユーザー辞書の内容を参考にしてコピペ、コピペ、コピペ
おそらくZSORTKEY_JA が『よみ』でZSTRING が『単語』。
ここまでを反映させたらどうなるか試してみる
再び、iBackupBot に戻って [File] – [Import] から、さきほどファイルをExportしたフォルダを選ぶ
![importする [image]importするところ](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100627-6-e1277594356896.jpg)
iBackupBot からrestoreを試す。こっちでも結構時間かかったけど無事完了。
![リストア完了 [image]リストア完了](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100627-7.jpg)
でも『よみ』(ZSORTKEY_JA)の順番で登録されているし変換もできる。なんだこれ。
追記 / コメント欄を読んで、10回ほど”工場出荷状態まで復元して登録して”をやり直してみたところ、
この段階だとユーザー辞書に表示されるだけで、変換候補には表示されませんでした、ごめんなさい。
最初に書いた時のiPhoneがなぜ変換できてたのかは謎、再現できずでした。
よくわからないので
次に、Library_Keyboard_SerializedUserWords-ja を見てみる事にする。
3.Library_Keyboard_SerializedUserWords-ja
plist Editor for Windows を起動し、Library_Keyboard_SerializedUserWords-ja を読み込む
xmlだった。
PupSQLite で Library_Keyboard_UserWords.sqlite を xml で出力して、plist Editor for Windows で開いた Library_Keyboard_SerializedUserWords-ja へコピペしたり置換したりして形を揃えて
iBackupBot にimportしてrestore。
復元が終わるのを待ってiPhoneを確認するもやっぱり『よみ』は表示されない。
追記 / けれど変換は出来るようになってます。
![なぜか変換は出来る [image]なぜか変換は出来てる画面](http://blog.sakurachiro.com/wp-content/uploads/2010/06/IMG_00011.png)
Library_Keyboard_UserWords.sqlite にある
ZTIUSERWORD の ZPROPERTIES の Byte[]配列ってのがユーザー辞書の編集画面に表示される『よみ』みたいだけど(例えば『よみ』”あいおーえす”の Byte[]配列を出力して、空のZPROPERTIESへ登録すると、iPhoneのユーザー辞書を編集から『よみ』が”あいおーえす”と表示されるので)、中を見てもチンプンカンプン。
BASE64て何?UTF-16BEて何?みたいな、右も左も全くわからない状態からスタートして、とりあえずどこに『よみ』が入るかなんとなっく解読出来たんだけど、その2バイト前に来る文字の法則(stringの次の1文字)と、最後の2バイトか4バイトの法則が全然わからない。
(と、思ったら『よみ』”あいおーえす”のstring後の1文字は f 、”ちがくね”の前の1文字は d 、”しらん”の前は c なので『よみ』の文字数ぽいなぁ)
でもって、さらに弱ったのがPupSQLiteでxml出力を出来たからインポートも出来るだろうと勝手に思っていたんだけど、xmlがインポート出来なかった。
/* BLOB を TEXT に変更したりしたらどうかな? */
そうするともしかしたら、1単語毎に1つのバイナリファイルを作成して読み込ませていかなきゃ『よみ』をPC上から反映させられないかもしれないのかも(まぁそもそものバイナリファイルを作成できてないんだけども)。
その手間を掛けてまでひらがなの『よみ』をPC登録したいかなぁというと、微妙なところ。
現段階でも、単語をPC上からコピペでガンガン登録出来て、変換も出来るわけで、しかも辞書編集画面には『よみ』で並んでるから、そこはiPhoneで登録しちゃおうかなぁと思ったり
![辞書を追加してiPhoneを復元した時 [image]辞書を追加してiPhoneを復元した時](http://blog.sakurachiro.com/wp-content/uploads/2010/06/IMG_0006.png)
![キーボードを削除するか増やしてみる [image]キーボードの数を変更すると](http://blog.sakurachiro.com/wp-content/uploads/2010/06/IMG_0007.png)
![ユーザー辞書に戻ってみると反映された、不思議。 [image]ユーザー辞書に戻ってみると反映された](http://blog.sakurachiro.com/wp-content/uploads/2010/06/IMG_0008.png)
![Apple Computer\MobileSync\Backup [image]Apple Computer\MobileSync\Backupフォルダ](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100624-2.png)
![iTunes - デバイスタブ [image]Tunes - デバイスタブ、バックアップの日付](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100624-1-480x363.png)
![Found a backup, but the bacup not completed. [image]Found a backup, but the bacup not completed.の表示](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100624-5-480x360.png)
![なんだかダメそう [image]読み込めてない](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100624-6-e1277317904314.png)
![iBackupBotを起動、ユーザー辞書らしきファイルを発見 [image]ユーザー辞書らしきファイル発見](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100627-1-e1277591192364.jpg)
![2 files exported to: [image]2 files exported to:](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100627-22-480x131.jpg)
![出力されたファイル [image]exportされたファイルは4つだった。](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100627-3.jpg)
![Library_Keyboard_UserWords.sqlite を編集中 [image]Library_Keyboard_UserWords.sqlite を編集](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100627-4-e1277593288100.jpg)
![登録されてるけどなんか変 [image]ユーザー辞書編集画面](http://blog.sakurachiro.com/wp-content/uploads/2010/06/IMG_0004.png)
![「よみ」の表示がない。 [image]編集に進むと「よみ」が表示されてんかった](http://blog.sakurachiro.com/wp-content/uploads/2010/06/IMG_0003.png)
![plist Editor for Windows で Library_Keyboard_SerializedUserWords-ja を開いたところ [image]plist Editor for Windows で Library_Keyboard_SerializedUserWords-ja を開いたところ](http://blog.sakurachiro.com/wp-content/uploads/2010/06/20100627-5-e1277593812834.jpg)
[...] This post was mentioned on Twitter by 秋風, Crazy. Crazy said: iPhoneのユーザー辞書登録で、そのうち役に立つかもしれない自分メモ | 乱雑モックアップ: iOS 4 になってやっとユーザー辞書が使えるよ [...]
ピンバック by Tweets that mention iPhoneのユーザー辞書登録で、そのうち役に立つかもしれない自分メモ | 乱雑モックアップ -- Topsy.com — 2010年6月28日 @ 10:34
同じ機種、同じバージョンで全く同じようにやったけど、登録はされたけど変換はできなかったんですが。
無駄な時間を費やした。
コメント by スナフキン — 2010年7月1日 @ 05:40
辞書に登録されたのなら、iPhone上でヨミを追加すれば変換できるようになりますよ。
ちなみにスナフキンさんは
Library_Keyboard_UserWords.sqliteと
Library_Keyboard_SerializedUserWords-jaの
両方を書き換えて同期をさせましたか?
コメント by まこと — 2010年7月1日 @ 16:29
記事だとヨミ追加しなくても変換できるって書いてあるんですが。
iphone上でヨミ追加するんなら少し手間がはぶけるだけだなぁ
コメント by スナフキン — 2010年7月1日 @ 23:22
>>スナフキンさん
IMEテキストファイル的な書式の.txtから
Library_Keyboard_UserWords.sqlite に追加できるxlsと
Library_Keyboard_SerializedUserWords-ja用のテキストを吐き出すページを作ってみたので、
お時間がありましたら試してみてください。
http://sakurachiro.com/data/ios4-userwords/
(iPhoneのバックアップを忘れずに)
コメント by まこと — 2010年7月4日 @ 13:25
[...] はこちら、一応リンク貼っておきます。 iPhoneのユーザー辞書登録で、そのうち役に立つかもしれない自分メモ / 20100704追記 [...]
ピンバック by 脱獄してないiPhoneのユーザー辞書に、PCの作業だけで単語を追加する方法を模索したまとめ。 | 乱雑モックアップ — 2010年7月10日 @ 21:09
Thank you. 謝謝。
コメント by Nasone Cheng — 2011年2月9日 @ 18:00
こんにちは
私もiphone4でユーザ辞書からの登録ができなくなったのでこちらにたどり着いたのですがうまくいかないのです。。
とりあえず3つのソフトをインストールしてiBackupBotを起動したのですが、右側Pathの欄が空白のまま何も出ません。
どうしたら良いのでしょうか?教えてください。
コメント by naruko — 2011年6月24日 @ 13:12
ごめんなさい Pathの部分は無事表示されました。
まだ登録がうまくいくかはわかりませんが取り急ぎお知らせでした。
コメント by naruko — 2011年6月24日 @ 13:59