« [iPhone][Jailbreak]SBSettings用Add-on JPMemoDic人柱版 | Main | [iPhone][Jailbreak]SBSettings用Add-on DateStamper »

2009.01.09

[iPhone][Jailbreak]SBSettings用Add-on JPMemoDic

iPhoneの「メモ」に書いた単語を学習辞書に登録するSBSettings用のAdd-onを作ってみました。

Jpmemodic_1

またまたiPodayさんで紹介してもらいました。こちらもご参照ください。

JPMemoDic - Sbsettings toggle

履歴

Ver.0.4 01.02.09
 /var/mobile/Documents/wordslist.txtに
 ファイルがあった場合に、その内容も取り込むように
 詳細は「使い方」参照

Ver.0.3 30.01.09
 空のdtextを作る処理とdtextが無かった場合の処理を追加
 255字以上の単語を切り詰めるように

Ver.0.2 09.01.09
 処理終了後に、SBSettingsのウィンドウごと収納されるように

インストール

SBankNotifyと同じCydiaの野良リポジトリからインストールしてください。「JPMemoDic」という名前で登録してありますので、検索を。

インストール後、respringしてください。
場合によってはハングアップするかもしれないので、その場合はrebootを。
(Cydiaからインストールした後、respringを要求するにはどうしたらいいんですかね)

無保証です。

使い方1「メモ」の内容から登録

「メモ」で適当に新規メモを作ります。1行目をJPMemoDicにすることで、タイトルを「JPMemoDic」にします。大文字小文字も合致してないとだめです。
以降の行を、

「登録したい単語◉よみ」

といった感じで書いていきます。「◉」は「まる」で出ます。
「◉」を含み、なおかつ前後に文字が無い行は無視しますので、1行目の「JPMemoDic」はそのままにしておいてOKです。つまり、コメントなども書いておけます。

変換できなくなったら、また実行すればいいわけです。重複して登録されることがないような処理をしています。

199個しか登録できないと思います。199個登録しても、最初の方のやつはすぐプッシュアウトされて変換できなくなると思いますので、実用できるのは100個ぐらいでしょうか。

Jpmemodic_2

「1行目\n2行目\n3行目\n\n?よみ」といった感じのものを登録すると、「\n」が改行になります。
「\t1行目\n\t2行目\n\t3行目\n\n?よみ」といった感じで登録すると、「\t」がタブになります。
「\bq」はバッククオート「`」になります。

\n -> 改行
\t -> タブ
\bq -> バッククオート(`)

編集が済んだらいったんキーボードを英語キーボードに切り替えるか、「メモ」を終了させ、Home画面に戻ってからSBSetting内の「JPMemoDic」を起動すると、さきほどのメモに書いた単語が登録されると思います。

ご存知かどうか分かりませんが、PalmwareのTrainTimeみたいな感じの仕組みですね。

学習辞書に無理矢理突っ込んでいるので、登録したものもいずれ流れ消えて無くなります。

Jpmemodic_3
▲先ほど登録した単語。「\n」を挟んで改行を入れています。

Jpmemodic_4
▲確定すると、改行が入った形で入力されます。

使い方2テキストファイルから登録

「/var/mobile/Documents/」に「wordslist.txt」というテキストファイルを、つまり「/var/mobile/Documents/wordslist.txt」を置いておくと、その内容も取り込みます。
処理内容としては「使い方1「メモ」の内容から登録」に準拠しますが、こちらの方は、単語とよみの区切り文字をタブ文字と想定しています。
以前JPDicManを使っていた方は、JPDicManで使っていたテキストファイルが流用できると考えていただければよいかと思います。
Excelなどでリストを作り、そこからコピペしてファイルを作ると楽かと思います。

一応、サンプルを置いておきます。これを「/var/mobile/Documents/wordslist.txt」に置いて、JPMemoDicを実行すると取り込まれると思います。注意すべきは、単語とよみの間のタブは一つ、ということです。

「wordslist.txt」をダウンロード

「メモ」、「wordslist.txt」の両方から取り込みますが、取り込める量が増えているわけではありませんので、登録数には気をつけてください。
あまり多くても、すぐ流れちゃいます。

運用について

JPMemoDicの単語登録方法は、あくまで一時的なものですぐ流れてしまいます。
恒久的な単語登録方法には、住所録のエントリを利用する方法、leo.s氏のsysdic2csvを使う方法などありますので、これらと用途に合わせて使い分けてください。

JPMemoDicはiPhone上で登録することを主眼としているので、wordslist.txtに対応するとコンセプトがぼけるのですが、以前JPDicManを作った経緯があり、またPCで作ったリストを登録したい人が多いようですので対応しました。
wordslist.txtを作ってまでiPhoneに単語を登録させたいと思っている人は、leo.s氏のsysdic2csvの利用を検討してください。

sysdic2csvをiPhone上で動かしたいという声があると思いますが、処理速度やメモリの制限の点で無理だと思います。恒久的に単語登録するために、住所録にエントリを追加しちゃう方法はありますが、住所録が汚くなってしまいます。

|

« [iPhone][Jailbreak]SBSettings用Add-on JPMemoDic人柱版 | Main | [iPhone][Jailbreak]SBSettings用Add-on DateStamper »

Comments

こんばんは。
VPNトグルの件、御教授有難う御座いました。
生粋のドザなんでターミナルコマンドを調べるのに必死ですw


このJPmemoDICですが、文字数制限はあるのでしょうか?
であればちょっと変則的な使い方ですが、
Safariでの掲示板への書き込み時にまずメモで書いて、
このアプリで登録してWebで呼び出せば、書き込み中のSafari落ちによる
心労を防げて大変便利になります。
何度長文を書いてる最中にSafariが落ちたことか…orz

Posted by: KAZU | 2009.01.09 at 11:35 PM

「であれば」はおかしいですね(^^;;
「そうでなければ」の誤りでした。

たとえ文字数制限があっても変換候補を分ければいいだけの話ですね。
とても頼もしいアプリをありがとうございます!

Posted by: KAZU | 2009.01.09 at 11:44 PM

英字も日本語も1字と数え、1単語255字(256字?)までです。それ以上だと登録されませんです。これはiPhoneの日本語入力ソフトウェアの仕様です。

その用途なら、gTxtEditJplusがご期待に沿えるかと思います。
仕組みとしてはいっしょなので、こちらも255字制限はあります。
範囲をずらして複数回に分けてコピペすれば、大きなページを開いていて、SpringBoardにバックグラウンドに回ったSafariが自動終了されなければ大丈夫だと思います。

255字以上必要なら、今のところJPMemoDicで変換候補を分けて登録する方法の方が楽かもしれませんね。

標準入力から変換候補に流し込む/変換候補から標準出力に出すコマンド(MobileTerminalの黒い画面から文字を打ってうんぬん、というやつです)は作っていて、255字ずつに分けて複数のよみに割り付ける方法を取ろうと思ってます。これが完成すれば、gTxtEditJplusで編集したテキストをこのコマンドに渡し、同様のことを自動で実現できることになります。
完成未定。

Posted by: moyashi | 2009.01.10 at 12:04 AM

Hey Moyashi. You are doing some great stuff with SBSettings! If you speak English give me an email at bigboss@thebigboss.org I'd like to talk to you.

Posted by: BigBoss | 2009.01.12 at 05:33 PM

いつも楽しみに拝見させていただいております。
JPMemoDicがインストールできないので
教えていただきたくて、書き込みをしました
もちろんレポジトリは入力しておりまして
間違いないものと思います。
AirPlane Toggle,gTxtEditJplus,Ruby/SerialPort,SBankNotifyは
表示されておりますが、
JPMemoDicが表示されません
レポジトリの間違いがあるのでしょうか?
http://homepage3.nifty.com/moyashi/cydia/
と入力してあります。
何卒よろしくお願いします。
iPod touch 16G 2.2JBです

Posted by: kamizu | 2009.01.14 at 03:01 PM

こちらでは大丈夫です。

Cydiaの「Manage > Sosurces > moyashi's Repo...」から僕のリポジトリだけのパッケージ一覧が見られますです。

それでも無ければ、一度リポジトリを削除して、再登録してみてください。

Posted by: moyashi | 2009.01.14 at 03:10 PM

お返事ありがとうございます
ご指摘の件を試してみました
パッケージを再確認しましたが
やはり出てきませんので、レポジトリを削除
再起動
レポジトリを登録
すると、
http://homepage3.nifty.com
Undetermined Error

http://ip.opda.com.cn
Sub-process bzip2 returned an error code (2)
のエラーが出てきます
そのあと、レポジトリの中を確認しても
前回と同じもの4つしか出てきません
何が悪いのか解りません
申し訳ありませんが、もう少しおつきあいいただけたらと思います
よろしくお願いいたします。

Posted by: kamizu | 2009.01.14 at 09:59 PM

削除して登録し直し確認しましたが正常です。
そちらの環境に問題があることは、はっきりしています。

Entered by Userのリポジトリを、僕のだけ残してやってみてください。
僕にはhttp://ip.opda.com.cnのPackages.bz2の展開時にエラーが出ているように見えます。

Posted by: moyashi | 2009.01.15 at 12:07 AM

ご指導ありがとうございました&ご迷惑をおかけしました。
ご指摘のように、User入力のレポジトリをmoyashiさんの以外すべて消しても解決できず
パッケージから入力したものを消してうまくいきました
原因はiPhone-Patch's Sourseというレポジトリでした
これで、やっと使わせていただくことが出来ます
お付き合いいただきありがとうございました。

Posted by: kamizu | 2009.01.15 at 07:38 AM

はじめまして。いつも便利に使わせてもらっています。
昨日2.2から2.2.1にUPして再jbしました。
退避したnotes.dbを戻したのですが、辞書がうまく動かなくなってしまいました。
sqlite3で見てみたのですが、もしかして2.2.1になってデータベース構造が変わったのでしょうか?
ヘッダーを見ると、
ROWID|creation_date|title|summary|contains_cjk
となっています。
2.2の時は、
creation_date|title|summary
だったような気が。
#勘違いでしたらすみません。
とりあえずwordslist.txtでは問題ないので大丈夫なのですが、Memoアプリからだと修正や登録が簡単なので・・
もし何か解決策ありましたらよろしくお願いいたします。

Posted by: G | 2009.02.10 at 11:17 AM

僕も同じことをやって使えています。iTunesのバックアップからの復元でも、同じことをやるでしょうし、大丈夫なはずですけどね。
2.2.1の「メモ」で新規に作ったnotes.dbからも大丈夫です。

SBSettingsはユーザーmobileの権限でアクセスするので、パーミッションの問題かもしれませんが、「メモ」もmobileでアクセスするはずですしねえ。

一度消して、「メモ」が作るnotes.dbと比較して、違いが無いか確認する。

バックアップしたnotes.dbの内容をsqlite3の.outputコマンドでファイルにエクスポートして、それを「メモ」が作ったnotes.dbに.importコマンドでインポートする、という方法も試す価値があるかもしれません。

拙作のstdio2hclipを使えば、テキストファイルからhClipboardに転送できるので、それで移行する手はあるかもしれません。

Posted by: moyashi | 2009.02.10 at 02:23 PM

どうやら2.2のときに退避させたnotes.dbが壊れていたようです。
#もしくはすでに2.2のときから壊れていた?
そのまま2.2.1へ持ってきてメモアプリを開くとJPMemoDicしかないはずなのに別に消せない空のエントリが存在していたりしました。
notes.dbのデータをsqlite3からすべてdeleteして再度やりなおしたらうまく稼動し始めました。
お手数おかけしました。
ありがとうございました。
#同じ感じでSMSのsms.dbもどうやら壊れてしまったみたいです・・泣

Posted by: G | 2009.02.10 at 05:18 PM

こんにちは。
いつも楽しく拝見させてもらっています。

このツールは、顔文字と絵文字を登録して活用させていただいています。
メールの時に大変便利で重宝しています。
moyashiさんのツールは痒いところに手が届いてホントにありがたいです。(^0^)

で、勝手なんですけど、もっと私のお気に入り環境に合わせてキーボード”5-Row QWERTY”でも使いたい。
との思って設定ファイルを探してみたのですが...
どこにあるのかすらわかりません?(。>0<。)
やっぱりthemeとかをいじるのとは訳がちがうみたいですね。

恐縮ですが、他の気ボードへの対応方法がありましたら、教えていただけませんでしょうか。(^-^;
そもそもそんな簡単にできるものではないのでようか...

P.S.
別件ですが、StatusNotiferで自動ロック中の表示について作者さんに依頼してみた 件ですが、
なんにもにもレスなく。忙しいんでしょうか。残念...(´・ω・`)ショボーン

Posted by: マクロレンズ | 2009.03.21 at 12:16 PM

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/13760/43684220

Listed below are links to weblogs that reference [iPhone][Jailbreak]SBSettings用Add-on JPMemoDic:

« [iPhone][Jailbreak]SBSettings用Add-on JPMemoDic人柱版 | Main | [iPhone][Jailbreak]SBSettings用Add-on DateStamper »