2011年7月13日水曜日

DraftPadのAssistを作りたい

iPhoneアプリのDraftPadはAssist機能で便利に使うことができます。

でも、やっぱり自分仕様のAssistが搭載されたら、さらに便利になるでしょう。

ということで、どういう仕組みで動いているか知る必要があります。AssistのHelpが英文で見てもよく理解できないので和訳してみました。

といっても機械翻訳なので、誤訳満載になっていますが英文のままより理解はしやすいでしょう。

 

DraftPad Assist Help

アシストでは、DraftPadから他のアプリケーションまたはWebサービスにルーティングして、テキストをするために開くことができる特殊なブックマークです。たとえば、キーワードとしてテキストを使用してDraftPadから直接Googleのウェブサイトで検索したり、他のTwitterクライアントアプリを使用せずに/でDraftPadからTwitterに投稿することができます。
支援は、DraftPadを手助けリストの画面からアクセス可能なアシスト図書館のウェブページからインポートすることができます。すべてのプリインストールされているアシストはアシストライブラリに格納されているので、いつでも、後でライブラリから再度インポートできるので、あなたのアシストの画面からのものを削除しても安全だと感じてください。
あなたはそれらをあなたのタスクに合わせて、またはあなたもあなた自身のものを作ることができるように、既存のアシストを変更することができます。
Customizing an Assist
アシストはカスタマイズ可能です。既存のアシストを変更するには、アシストの一覧画面の"編集"ボタンをタップし、編集する項目を選択します。
threeは、変更可能なもの、タイトル、URL、およびオプションがあります。
タイトルは、アシストの機能には影響しません。あなたが好きなので、それを変更することができます。
URLはそれ自体をアシストの機能を指定している。だから、それに触れることに注意する必要があります。しかし、次のような一つ以上のプレースホルダを参照してください場合 “<@>,” “<L1>,” or “<@@>” URL文字列内で、それはあなたへのアシストをより使いやすくするために他のプレースホルダに置き換えて悪くはない。
例えば、"Tweet";アシストを編集してみましょう。 URL文字列は、このようなものです。
draftpad://twitter/update?text=<@>
あなたは、終了時にプレースホルダ"<@>"を参照してください。このプレースホルダーは、"あなたのテキストの現在の行または選択を。"意味実は、このアシストの記事現在の行やTwitterへのテキストの選択。今、あなたは"<@@>"で"<@>"を置き換えて、代わりに現在の行のテキスト全体を投稿することを好むなら、それが可能になります。プレースホルダ"<@@>"は、"テキスト全体"を意味します。
プレースホルダの詳細については、下記の"プレースホルダ"を参照してください。
オプションは、アシストの機能をカスタマイズする別の機会です。オプションはどのようにDraftPadコピー、カット、またはアシストが実行されているときにテキストをクリアして指定します。
アシストの大部分では、オプションはデフォルトで"なし"に設定されています。これが書かれたテキストは、アシストの実行時に変更するつもりはないことを意味します。例えば、あなたが"つぶやき"アシストを実行すると、DraftPadはTwitterサーバーにテキストを送信しますが、送信された文字列は、テキストビューではまだになります。あなたが送信した文字列がテキストビューから自動的に削除されていることを好めば今ことを可能にするオプションメニューで"切り取り現在の行または選択"を選択、(あなたはもうそれを必要としないため)。

Creating an Assist
あなたがウェブの技術に精通している場合、あなた自身のアシストを作成することは大したことではありません。
それでも、あなたは、アシストの構成について学ぶ必要がある。このような“Title,” “URL,” と “Option.”のような3つの属性について説明しましょう​​。"
Title
前述のように好きなように、それぞれのアシストに名前を付けることができます。タイトルは、アシストのリストに表示されます。

URL
アシストURLの形式は、インターネットのURLのようにちょうどようなものです。あなたのテキストがURLの一部にすることができますし、別のアプリケーションまたはWebサービスに渡されるように、URL文字列内で特別なプレースホルダ(s)を使用することができます。自分でアシストのURLを作成する最も一般的な方法は、あなたのお気に入りのWebサービスで入力データを送信するときにGETメソッドでWebサーバに送信されるURLを見つけて再利用することです。たとえば、モバイルSafari、"http://www.google.com/search?q=yourKeyword&client=safari"のようなものですURLとGoogleで検索]ボタンを押すと、Googleのサーバーに送信されます。この場合、文字列"yourKeywordは"あなたが探しているものです。以下のようなアシストURLはあなたのDraftPadグーグルのためのインタフェースになるようにこのURLを変更。
Example URL 1:
http://www.google.com/search?q=<@>&client=safari
URLの例1では、検索キーワード(複数可)としてテキストを使用してSafariのアプリケーションを経由してGoogleで検索できるURLを示しています。このケースでは、"<@>"が意味するプレースホルダである"現在の行または選択からのテキストに置き換えます。"あなたはこのアシストを実行すると、DraftPadは"http://www.google.comのようなURL文字列を行います/検索?Q= yourText&クライアント=サファリは、"その後、Googleが検索結果を表示するために要求するURLを渡すことで、Safariのアプリケーションを開きます。あなたのテキスト文字列は、適切なURLの一部に自動的にURLエンコードされます。
Example URL 2:
twitterrific:///post?message=<@>
URLの例2では、送信メッセージのようにテキストを使用して、Twitterrificがこのアプリのつぶやきを可能にするアシストURLを示しています。この場合、接頭辞"Twitterrificが://"は、そのアプリケーションがデバイスにインストールされている場合はこのURLが呼び出されると、IOSはTwitterrificがアプリを開くことを意味し、"/ポストメッセージは=?"Twitterrificが所定のAPIのいずれかです。アプリ。Twitterrificがアプリが似ているURLを受信する場合:他のアプリから"?Twitterrificが///ポストメッセージは= yourTextを"、Twitterrificがアプリはそれに渡されたテキストとそのメッセージコンポーザが表示されますし、つぶやきに準備が整いました。多くのアプリは(OpenURLのスキーム)、独自のAPIを持っている。お気に入りのアプリケーションのドキュメントをチェックしたり、それらのAPIを使って何ができるか/どのように知ることが彼らの支持を求める。
Placeholders
URLは、プレースホルダのいくつかの種類を受け入れるアシスト。あなたがするかどうかは一つのURL内で複数回入れることができます。
placeholdingのためのマークアップ
<@>  現在の行または選択。
<@ L1>  は第1ライン。任意の番号を使用することができます。
<@ L1〜>  一線から最後まで。任意の番号を使用することができます。
<@ L1〜2> 一線から2番目のラインに。任意の番号を使用することができます。
<@ L〜3>  最大三線へ。任意の番号を使用することができます。
<@ C1>  1文字目。任意の番号を使用することができます。
<@ C1〜> 1文字目から最後まで。任意の番号を使用することができます。
<@ C1〜2> 1文字目から2番目の文字まで。任意の番号を使用することができます。
<@ C〜3>  最大3番目の文字まで。任意の番号を使用することができます。
<@@>  全文
<#LOC>  現在のカーソル位置を表す数値。カーソルがテキストの冒頭にある場合は、このプレースホルダは"0"に置き換えられます。このプレースホルダはDraftPadバージョン1.4+で利用可能です。
<#LEN>  選択範囲の現在の長さを表す数値。文字列が"Hello"現在のテキストビューで選択されている場合、このプレースホルダは"10"に置き換えられます。このプレースホルダはDraftPadバージョン1.4+で利用可能です。

Text Encoding
プレースホルダを使用して置換される文字列はUTF- 8ベースで(URLエンコード)パーセントエンコードされます。これは、文字列を正しく処理するためには受信機によって、UTF - 8ベースでデコードする必要があることを意味します。
しかし、例えば日本語のウェブサイトなどの一部のサービスは、例えば、Shift - JISのように、他のエンコーディングを使用して、受信したURL内のパラメータをデコードするように設計されています。あなたが受信機に正しい文字列を渡すことができないため、このような場合には、アシストが動作しません。
この問題を解決するために、DraftPad v1.4では、+テキストエンコーディングベースを指定する機能があります。
テキストエンコーディングのベースを指定するには、アシスト、URL文字列の先頭で、以下に記載されている特殊なマークアップ、のいずれかを置く。
Sample: Shift - JISのベースとしてテキストのエンコーディングを指定する
<€3>http://cosmeet.cosme.net/top/search?fw=<@>
Markups for specifying text encoding base
(None) UTF8
<€0> UTF8
<€1> Western (ISO Latin 1)
<€2> Western (Mac OS Roman)
<€3> Japanese (Shift JIS)
<€4> Japanese (ISO 2022-JP)
<€5> Japanese (EUC)
<€6> Japanese (Shift JIS X0213)
<€7> Traditional Chinese (Big 5)
<€8> Traditional Chinese (Big 5 HKSCS)
<€9> Traditional Chinese (Windows, DOS)
<€10> Korean (ISO 2022-KR)
<€11> Korean (Mac OS)
<€12> Korean (Windows, DOS)
<€13> Arabic (ISO 8859-6)
<€14> Arabic (Windows)
<€15> Hebrew (ISO 8859-8)
<€16> Hebrew (Windows)
<€17> Greek (ISO 8859-7)
<€18> Greek (Windows)
<€19> Cyrillic (ISO 8859-5)
<€20> Cyrillic (Mac OS)
<€21> Cyrillic (KOI8-R)
<€22> Cyrillic (Windows)
<€23> Ukrainian (KOI8-U)
<€24> Thai (Windows, DOS)
<€25> Simplified Chinese (GB 2312)
<€26> Simplified Chinese (HZ GB 2312)
<€27> Chinese (GB 18030)
<€28> Central European (ISO Latin 2)
<€29> Central European (Mac OS)
<€30> Central European (Windows Latin 2)
<€31> Vietnamese (Windows)
<€32> Turkish (ISO Latin 5)
<€33> Turkish (Windows Latin 5)
<€34> Central European (ISO Latin 4)
<€35> Baltic (Windows)

Option
"Option"はどのようにDraftPadコピー、カット、またはアシストが実行されているときにテキストをクリアして指定することです。の7種類があります。

None     DraftPadは何もしません。

Copy Current Line or Selection     DraftPadはアシストを実行する前に現在の行からテキストまたは現在の選択の権利をコピーします。

Copy All Text     DraftPadは右のアシストを実行する前にテキスト全体をコピーするコピーします。

Cut Current Line or Selection      DraftPadはアシストを実行した後に現在の行または現在の選択範囲の右からテキストをカットします。

Cut All Text     DraftPadは右のアシストを実行後、テキスト全体をカットするカット。

Clear Current Line or Selection     DraftPadはアシストを実行した後に現在の行または現在の選択の右のテキストを削除します。

Clear All Text      DraftPadは右のアシストを実行した後に全体のテキストをクリアしますクリア。