« [iPhone][Jailbreak]SBSettings用Add-on DateStamper | Main | [iPhone][Jailbreak]今度こそClippyでMobileSafariのページ内容をコピーするためのbookmarklet集 »

2009.01.13

[iPhone][Jailbreak]標準入力経由で学習辞書に登録するコマンド stdio2dtext

開発終了のため、公開停止しました。再配布はしないように願います。(2010.05.30)

標準入力から入力されたストリームをiPhoneの学習辞書に登録するコマンド「stdio2dtext」というものを作ってみました。

これは日本語変換の支援のためのものでなく、コピー&ペーストの代替手段となることを主眼としています。
Mac OS Xでいえば、pbpaste / pbcopyに当たるものですね。


MobileTerminalは今のところ、英語キーボードにしていないと入力できないので間違いはないと思いますが、実行時は英語キーボードにしていないと機能しませんので注意してください。

登録先は、QWERTYキーボードからの利便性を考慮して、よみ「ああ(aa)、あさ(asa)、あだ(ada)、あふぁ(afa)、あが(aga)、あは(aha)、あじゃ(aja)、あか(aka)、あぁ(ala)、あーあ(a-a)」の10カ所です。

なぜこんなに登録先が多いかというと、1単語当たり255字までという長さ制限があるからです。
標準入力から入力された文字数が255字を超えると、255字ごとに分割して複数のよみに登録していきます。
全部で2,550字まで対応できることになります。
それ以上増やしてもいいのですが、よみに英数字が交ざると変換できませんし、普通の日本語変換を阻害することになるので、このぐらいが限度でしょう。

登録されたものは、JPMemoDicを実行すると消せます。

藤棚工房さんのNSString_FJNStringEncodingを使っているので、入力するテキストのエンコーディングは、UTF-8、Shift-JIS、EUC-JP、ISO-2022JP何でもOKだと思います。ただ、短いテキストであるほど、自動認識に失敗すると思います。改行コードも、何でも大丈夫だと思います。

oオプションの動作は、「p−」とよみの付いた単語を標準出力に出力するというものです。
こちらは複数の単語をつなぎ合わせてコピーする機能がありませんので、255字までの対応となります。

履歴

Ver.0.2 (2009.01.17)
 学習辞書から標準出力に書き出す機能を追加しました。

コマンドラインオプション

-i 標準入力から学習辞書に登録
-o 学習辞書から標準出力に出力
-h ヘルプ

無指定時はヘルプが表示されます。

oオプションの動作は、「p−」とよみの付いた単語を標準出力に出力するというものです。
gTxtEditJplusなどでコピーしたテキストを標準出力に出力できます。
複数の単語を数珠つなぎにしてコピーする機能を持つソフトウェアが現存しませんので、255字までの対応となります。
LastVisitURLなど、「p−」に複数の単語を登録するものの実行後は、それらが全部出力されます。

使用例

コマンドの出力を登録


ls -l | stdio2dtext -i

Stdio2dtext2_2
▲※スクリーンショットでは日本語キーボードになっていますが、実際には英語キーボードでないと機能しません。

Stdio2dtext3

Stdio2dtext1

テキストファイルを登録


cat sample.txt | stdio2dtext -i

Webからダウンロードしたhtml等を登録(lastvisiturl2stdoutを併用すると便利かと思います)


curl www.foobar.com | sed -e 's/<[^>][^>]*>//g' | stdio2dtext -i

学習辞書の内容(コピーしたテキストなど)をテキストファイルにリダイレクト


stdio2dtext -o > output.txt

やってみると分かりますが、2,550字なんて、結構すぐいっちゃいますね。
インストールは、いつものCydiaのリポジトリから「stdio2dtext」で検索してください。

|

« [iPhone][Jailbreak]SBSettings用Add-on DateStamper | Main | [iPhone][Jailbreak]今度こそClippyでMobileSafariのページ内容をコピーするためのbookmarklet集 »