ひとりぶろぐ

価値ある情報をユーザー視点で発信するブログ

[JB]いろんなiOSアプリで無理矢理TextExpanderを有効にしちゃうUniversalExpander

      2013/09/14

文字入力支援アプリTextExpanderをどこでも使いたい

ひとりぶろぐのmoyashi (@hitoriblog) です。

TextExpanderというアプリがあります。

TextExpander App
カテゴリ: 仕事効率化
価格: ¥450

また、TextExpanderに対応したアプリもあります。

長文に対する短縮形をTextExpanderで登録。TextExpander対応アプリにて登録した短縮形をタイプすると、元の長文にポン!と復元する文字入力支援ユーティリティとでもいうのでしょうか。

特に、ブログ書きを極限まで効率化しているiOSアプリをレビューするブロガーの間での普及率が異常に高いというシロモノです。

一例を挙げると、「;h3」という短縮形をタイプすると「<h3>○</h3>」というhtmlタグに展開、カーソル位置を○の位置にジャンプさせるということができます。

改行を含む長文を登録したり、今例に挙げたように長文に展開した後、指定した位置にカーソルを移動することもできるので、単語辞書とはちょっと違う使い方ができます。

ただし、これができるのはTextExpanderに対応したアプリのみです。 対応アプリは、Textforce、MyEditorなど。

テキスト編集 Textforce for Dropbox App
カテゴリ: 仕事効率化
価格: ¥350

MyEditor App
カテゴリ: ビジネス
価格: ¥350

対応していないアプリの場合、アプリの開発者にTextExpanderへの対応を依頼せねばなりません。

TextExpander非対応アプリを無理矢理対応にするUniversalExpander

Twitterクライアントなどは軒並みTextExpander非対応ですが、一番テキストを入力する機会が多いのはTwitterクライアント上なので、対応してもらいたいところです。

しかし、短文だからいらないでしょ、ということなのかTextExpander対応の機運を一切感じません。

そこで、こうした非対応アプリを無理矢理TextExpander対応にするJailbreak Tweak、UniversalExpanderというものを作ってみました。(続きは[Read More]から)

設定

UniversalExpanderをインストールすると、「設定>UniversalExpander」が出現します。

Screenshot 2013 03 05 03 41 04

「設定>UniversalExpander」を開くと、アプリのリストが表示されます。ここでスイッチをオンにしたアプリの中のUITextViewにてTextExpanderが有効になるよう改変が試みられます。

動作テスト

例えば、ここではFacebookとGoodReaderをオンにしてみました。

Screenshot 2013 03 05 03 43 45

TextExpanderでは、短縮形「qqka」にカギカッコ「」を登録しています。また、カギカッコの間に%|という謎の記号が書かれていますが、これは短縮形を元の形に戻した後でカーソルを移動する先を指定するものです。つまり、qqkaとタイプするとカギカッコに展開され、さらにカギカッコの間にカーソルが移動するというわけです。

Screenshot 2013 03 05 03 46 06

早速、FacebookとGoodReaderで有効になっているか確認してみます。設定の反映のためには、設定変更後、一度対象アプリケーションを終了させて再起動する必要があります

まずはFacebook。qqkとタイプ、aと打った瞬間にカギカッコに展開され、カーソルがカギカッコの間にジャンプしました。動いています。Facebookは本来TextExpander非対応です。

Screenshot 2013 03 05 03 49 46 Screenshot 2013 03 05 03 50 00

今度はGoodReader。こちらも同様の展開ができました。TextExpanderに無理矢理対応成功です。

Screenshot 2013 03 05 03 52 57 Screenshot 2013 03 05 03 53 06

簡単に動作確認したアプリ

不具合が発生しないことを保証するわけではありませんが、とりあえず簡単に試してTextExpanderが有効になったアプリを挙げておきます。

  • Tweetbot
  • Netbot
  • GoodReader
  • Google+
  • Facebook
  • TheWorld
  • Nettelator
  • 速Reminder
  • Instagram
  • Sylfeed
  • Tweetings
  • Tweetlogix
  • WordPress

UniversalExpanderを有効にしてもTextExpanderが効かない場合もかなりある

UITextViewをTextExpander対応にすると言われても、それがどこなのかよく分からないでしょう。

外見から判定する術はありません。複数行対応のテキスト編集エリアがUITextViewである確率が5割ぐらい。

残りはおおむねUIWebView。1行しか無い入力エリアはUITextFieldといってまた別の種類です。

UniversalExpanderはUIWebViewやUITextFieldをTextExpander対応にはしません。

また、アプリによってはUniversalExpanderを適用してもUITextViewがTextExpander対応にならない場合があります。

有効にしてもダメな場合は諦めてください。

有効にならないアプリの例としては、公式Twitterクライアントがあります。

このTweakの存在を知って最初に試すのはMobileMail.appかと思いますが、それらでは残念ながら有効になりません。

有効にならないからといって、その無念を僕にぶつけないでください。無効であることに対して、何らかのアクションを起こす予定はありません。

とりあえずTweetbot、Netbotで有効になればいいという個人的な目的は果たせたので、これで満足しています。

有効にすると不具合が発生する可能性もある

アプリ固有の事情などお構いなしにTextExpanderを有効にしますので、それがアプリに悪影響を与えることも予想されます。

その場合は諦めてオフにしてください。アプリ固有の対応はしません。

免責

UniversalExpanderは無保証、無サポートです。自己責任でお使いください。

動作確認環境

  • iPhone 5 / iOS 6.1.2

履歴

  • 0.1-1 2013.02.25 初版

インストール

いつもの New野良リポジトリ をCydiaに登録後、以下のリンクをタップしてインストールしてください。

インストールするとリスプリングを促されるので、リスプリングします。

UniversalExpanderをCydiaからインストールする

Amazonで買い物してく?

 - iPhone, Jailbreak