tasker_icon

日本語版 Tasker ユーザーガイド : Variables

~ 変数 ~

Taskerの主要な四つの要素、Profile(プロファイル)、Task(タスク)、Variable(変数)、Scene(シーン)のうち「変数」について見ていきます。

Taskerでは、いくつかのアクションが連携して1つのタスクとして動いたり、シーンで入力された内容をタスクに渡したり、システムから得た情報をタスクで利用したりするのに「変数」というものを使います。変数とはデータに付けられた名札のようなものだと思ってください。各々の変数に格納されたデータはこの名札で識別されるため、タスク内の特定の場所で状況によって異なるデータが必要な場合に、この変数名(※変数の名前のことを「変数名」といいます。)でデータを扱ってやれば変数の中味にどんなデータが入っているかに関係なくタスクを作ることが出来ます。

変数とは

General (概要)

変数とは、その時々で変化する名前付きの値です。例えば、バッテリーの残量や日時などです。

Taskerがテキスト中に変数名を見つけると、アクションが実行される前に、それら変数の値に置き換えられます。

変数を使用する主な目的は次の通りです。

  • 動的なデータの割り当て。タスクの作成時点ではまだ確定していないデータをアクションで使う。 例)SMSへの返信(SMSを受け取るまで、返信先が判らないため。)
  • タスク内部または、タスク間のフロー制御
  • タスク間でのデータの受け渡し。

Built-In Variables (組み込み変数)

組み込み変数の値は、Taskerによって更新され、その変数名は、全て大文字です。

Airplane Mode Status (機内モードの状態)
(dynamic)
%AIR
機内モードが、onoff かを表します。
Airplane Radios (機内モード時の無線通信)
%AIRR
機内モード中に、無効になる無線機能をコンマで区切って格納します。
値は、bluetooth, cell, nfc, wifi, wimax のいずれかです。
Battery Level (バッテリー残量)
%BATT
現在のバッテリー残量を0100で表します。
Bluetooth Status (Bluetoothの状態)
(dynamic)
%BLUE
Bluetoothが、 on か、off かを表します。
Calendar List (カレンダーのリスト)
%CALS
デバイスで利用可能なカレンダーのリストを改行で区切って格納します。
各エントリーはカレンダーの提供元:カレンダー名という形式で表されます。
【使用例】
Variable Set, %newline, \n
	Variable Split, %CALS, %newline
	Flash, %CALS(#) calendars, first one is %CALS(1)
\nは、改行を表す記号です。
Calendar Event Title / Descr / Location (カレンダーに関するイベント)
%CALTITLE / %CALDESCR / %CALLOC
現在のカレンダーのイベント(あれば)のタイトル、内容および、場所を格納します。 現在のカレンダーのイベントが複数ある場合、変数には、最も期間の短いものが格納されます。
【一口メモ】
現在のイベントに関してその他の情報を知るには、MiscカテゴリーのTestアクションのパラメーターに%TIMESを指定して実行します。
Call Name / Number/ Date / Time (In) (電話の着信に関する情報)
(dynamic, monitored)
%CNAME / %CNUM / %CDATE / %CTIME
現在通話中または、前回の通話の発信者の名前、番号、日にちおよび、時間です。
発信者番号が、0 の場合、発信者不明です。
発信者名が、? の場合、発信者名が不明です。(非通知による発信が考えられます。) また、電話帳にない発信者の場合、番号が格納されます。Android >2.0以上が必要です。
Call Name / Number/ Date / Time / Duration (Out) (電話の発信に関する情報)
(dynamic, monitored)
%CONAME / %CONUM / %CODATE / %COTIME / %CODUR
(現在のではなく)前回の発信先の名前、番号、日にちおよび、時間です。
発信先の名前が電話帳にない場合、番号が格納されます。Android 2.0以上が必要です。
Cell ID (通信基地局のID)
(dynamic, monitored)
%CELLID
現在エリア内の通信基地局のIDを格納します。
Cell Nearステートコンテキストを使っている場合、%CELLIDが、基地局不明を 表していても、コンテキストは、引き続き成立状態になる場合がある点に注意してください。
これは、Cell Nearステートコンテキストが、通信状態の影響で不成立になるのを防ぐためです。
Cell Signal Strength (電波強度)
(dynamic,monitored)
%CELLSIG
現在の電波強度を大まかな尺度で、08 で表します。 CDMA方式の電話機によっては、電波強度が2つ刻み(0,2,4,6,8)で表されます。
値が -1 の場合、電波強度が不明か、受信圏外です。
Androidのバージョンによっては、デバイスを再起動するまで電波強度の情報が更新されないというバグがあります。
Cell Service State (通信の状態)
(dynamic,monitored)
%CELLSRV
現在の通信サービスの状態です。unknown, service, noservice, emergency, nopower のいずれかです。
Clipboard Contents (クリップボードの内容)
%CLIP
現在クリップボードに保存されている内容です。
CPU Frequency (CPU周波数)
%CPUFREQ
現在のCPU 0 のクロック周波数です。CPU Controlもご覧ください。
CPU Governor (CPUの制御方法)
%CPUGOV
現在のCPU 0 のクロック周波数の制御方法です。CPU Controlもご覧ください。
Date (日付)
%DATE
現在の日付を人が読むのに適した形で格納します。
Day of the Month (その月の何日か)
%DAYM
その月の何日かを表します。1 から始まります。
Day of the Week (曜日)
%DAYW
現在の曜日です。日曜から始まります。
Device ID / Manufacturer / Model / Product (デバイスに関する情報)
%DEVID / %DEVMAN / %DEVMOD / %DEVPROD
使用しているデバイスの、ID、製造元、モデル名、製品名です。
【注記】
IDは、デバイスを一意に識別するためのものではなく、デバイスのハードウェアを識別するためのものです。 %DEVTID の項もご覧ください。
Device Telephony ID (通信サービスID)
%DEVTID
デバイスの通信サービス上のIDを格納します。例)GSM の IMEI や、CDMA の MEID または、 ESN です。
全てのデバイスで機能するとは限りません。
Display Brightness (画面の明るさ)
%BRIGHT
現在の画面の明るさです。 0255で表されます。デバイスによっては、 明るさの自動調節が有効になっている場合、この値は常に255です。
Display Timeout (ディスプレイの自動オフ)
%DTOUT
現在のディスプレイの自動オフまでの時間を秒で表します。
Email From / Cc / Subject / Date / Time ( ‘K9メール’ で受信したEメールに関する情報)
(dynamic)
%EFROM / %ECC / %ESUBJ / %EDATE / %ETIME
K9アプリケーションで前回受信したEメールの、送信者、Cc、件名、受信日、時間です。
Free Memory (空きメモリーのサイズ)
%MEMF
空きメモリーをメガバイトで表します。
GPS Status (GPSの状態)
(monitored,dynamic Gingerbread+)
%GPS
システムのGPS受信機がon か、off かを表します。
HTTP Response Code / Data / Content Length (HTTPの情報)
(dynamic)
%HTTPR / %HTTPD / %HTTPL
最後に行った、HTTP POST/GET アクションで得た情報を格納します。
サーバーが、データ長を返さなかった場合、可能であれば、取得したデータから %HTTPL の値を計算します。
Input Method (入力方法)
%IMETHOD
現在選択されている入力方法を表します。コンマで区切られた、次の四つの部分から成ります。 Method Name、 SubType Name、 Mode、 Locale
特定の部分の情報を取り出すには、Variable Splitアクションを実行します。
Keyguard Status (キーガードの状態)
%KEYG
キーガードが、on か、offかを表します。
Last Application (直前のアプリケーション)
%LAPP
現在フォアグラウンドのアプリケーションの直前に、フォアグラウンドだったアプリケーションを表します。
Last Photo (最後に撮影された写真)
%FOTO
Taskerが、システム標準のカメラアプリケーションで最後に撮影した写真データファイルへのパスを格納します。
Light Level (照度)
(dynamic,monitored)
%LIGHT
最後に記録された照度を、ルクスで表します。
Adroidは、照度に変化があったときにのみ値を返すので、最初に明るい光にかざして、 センサーが正しく動いているかをテストしてください。
ディスプレイがオフの状態では更新されません。 Menu / Prefs / More / Display Off Monitoring / Light Sensorをご覧ください。
Location (位置)
(dynamic)
%LOC
最後の位置計測で得られた、緯度と経度を格納します。
こちらもご覧ください。
Location Accuracy (位置の精度)
(dynamic)
%LOCACC
最後の位置計測の制度を、メートルで表します。
こちらもご覧ください。
Location Altitude (高度)
(dynamic)
%LOCALT
最後の位置計測で得られた、高度を格納します。値が、0 のとき、高度は不明です。
こちらもご覧ください。
Location Speed (速度)
(dynamic)
%LOCSPD
最後の位置計測で得られた、速度をメートル毎秒で表します。値が、0 のとき、速度は不明です。
こちらもご覧ください。
Location Fix Time Seconds (位置計測時間)
(dynamic)
%LOCTMS
最後の位置計測を行った時間を、秒で表します。 最後の計測からの経過時間を得るには、%TIMES からこの値を引きます。
この値は、位置計測の時間とGPSの時間の差分が計算されるまでは、セットされないので (最初のGPS測位が行われるまでは、セットされないので)、その時点までは、格納される値は無意味なものになります。
こちらもご覧ください。
Location (Net) (通信ネットによる位置計測)
(dynamic)
%LOCN
最後のネットワークを使った位置計測で得たれた、緯度と経度を格納します。
こちらもご覧ください。
Location Accuracy (Net) (通信ネットによる位置計測の精度)
(dynamic)
%LOCNACC
最後のネットワークを使った位置計測の精度を、メートルで表します。
こちらもご覧ください。
Location Fix Time (Net) (通信ネットによる位置計測の時間)
(dynamic)
%LOCNTMS
最後のネットワークを使った位置計測の時間を、秒で表します。 位置計測からの経過時間を知るには、%TIMES からこの値を引きます。
こちらもご覧ください。
Magnetic Field Strength (磁場強度)
(monitored, dynamic)
%MFIELD
デバイスのセンサーの三軸方向の総合的な磁場強度を、マイクロテスラで表します。
一秒ごとに更新されます。
Magnetic Fieldステートコンテキストの項もご覧ください。
Music Track (音楽トラック)
(dynamic)
%MTRACK
現在再生中の音楽トラックを表します。以下の機能によってサポートされます。
  • Music Playアクションおよび、Music Play Dirアクション。
  • Androidの標準ミュージックプレーヤー。ただし、全てのデバイスにあるとは限りません。
  • Android用アプリケーション ‘Power AMP’ 。
  • Android用アプリケーション ‘BeyondPod (Tasker 1.2.1以上が必要)’ 。
  • Android用アプリケーション ‘Phantom Music Control Pro’ 。
Taskerとその他のサポートされているミュージックプレーヤーが同時に再生を行った場合の優先度は、 その他のプレーヤーで再生されているトラックが、優先されますが、サポートされている複数のプレーヤーが同時に再生を行った場合の結果については、未定です。
【注記】
  • もしサポートされたその他のプレーヤーを使っていない場合は、 ‘Phantom Music Control Pro’ を試してみるのがいいでしょう。多くのミュージックプレーヤーの情報をTaskerに渡すことができます。
  • 一時停止をすると、変数はクリアされます。再生を再開すると再びセットされます。
  • 使っているプレーヤー側で、再生トラック情報の公開が設定されていなければならないかもしれません。 また、このオプションはプロバージョンにしか搭載されていない場合があります。
Muted (消音)
%MUTED
現在マイクが消音(on)か、そうでないか(off)を表します。
Night Mode (夜間モード)
%NIGHT
現在のAndroidの夜間モードの設定を表します。
onoffautoのいずれかです。
autoの場合、Android自身が夜間モードの設定を決定します。
Notification Title (通知のタイトル)
(monitored, dynamic)
%NTITLE
最後にステータスバーに表示された通知のタイトルを格納します。 Taskerのユーザー補助サービスが有効になっている必要があります。(Androidのユーザー補助設定をご覧ください。) Taskerによって作成された通知は対象外です。いくつかのアプリケーションの通知は登録されず、変数は空のままになります。
Android 1.5 では機能しません。
Phone Number (電話番号)
%PNUM
現在のデバイスで加入している通信サービスの電話番号を格納します。
通信端末によっては、機能しない場合があります(Android による制限)、SIM の種類に関係があるようです。
Pressure (気圧)
(monitored,dynamic)
%PRESSURE
現時点でデバイスが測定している気圧を格納します。
デバイスのディスプレイがオフの状態では、更新されません。
Menu / Prefs / Monitor / Display Off Monitoring / Pressure Sensorもご覧ください。
Profiles Active (アクティブなプロファイル)
(dynamic)
%PACTIVE
現在アクティブな、名前付きプロファイルのコンマで区切られたリストをアクティブになった順に格納します。 重複した名前は、一度しかリストされません。変数が空の場合を除き、検索を容易にするために、リストは常にコンマで始まり、コンマで終わります。
Profiles Enabled (有効なプロファイル)
(dynamic)
%PENABLED
現在有効な名前付きプロファイルのコンマで区切られたリストを作成された順に格納します。 重複した名前は一度しかリストされません。
変数が空の場合を除き、検索を容易にするために、リストは常にコンマで始まり、コンマで終わります。
Roaming (ローミング)
%ROAM
現在の通信ネットワークがローミングの場合は、onそうでない場合は、offです。
Root Available (ルート化されているか)
%ROOT
デバイスで、ルート関数を実行可能な場合は、yesそうでない場合は、noです。
Screen (スクリーンのオン/オフ)
(dynamic)
%SCREEN
スクリーンが、onか、offかを表します。
SDK Version (SDKのバージョン)
%SDK
Android のSDKバージョンを表す数字が格納されます。
Silent Mode (サイレントモード)
(dynamic)
%SILENT
サイレントモードの現在の状態をoffvibrateonで表します。
SIM Serial Number (SIMカードのシリアル番号)
%SIMNUM
SIMカードが挿入されていて、アクセス可能な場合に、シリアル番号を格納します。
SIMカードがロックされている場合、機能しません。
SIM State (SIMカードの状態)
%SIMSTATE
SIMカードの現在の状態を表します。
unknownabsentpinrequiredpukrequirednetlockedreadyのいずれかです。
Speakerphone (スピーカーフォン)
%SPHONE
スピーカーフォンが、onか、offかを表します。
Speech (読み上げ)
(dynamic)
%SPEECH
Sayアクションまたは、Say To Fileアクションを実行して読み上げられた内容を格納します。
Task Queue Seconds (タスクの実行時間)
(dynamic)
%QTIME
現在実行中のタスクの継続時間を秒で表します。 タスクの実行は、優先度の高いタスクによって中断されることがあるため、 この値が必ずしも、タスクの総実行時間ではないことに注意してください。
Tasks Running (実行中のタスク)
(dynamic)
%TRUN
現在実行中の名前付きタスクのコンマで区切られたリストを格納します。 変数が空の場合を除き、検索を容易にするために、リストは常にコンマで始まり、コンマで終わります。
Telephone Network (通信ネットワーク)
(dynamic, monitored)
%TNET
現在デバイスで利用中の通信事業者を格納します。
CDMAネットワークでは、信頼性に欠けます。
Text From/Date/Subject/Time (メッセージ)
(monitored)
%SMSRF / %SMSRN / %SMSRB / %MMSRS / %SMSRD / %SMSRT
最後に受け取った、SMSまたは、MMSの送信者のアドレス、名前、本文、件名、日付および、時間を格納します。
この変数の値を参照してから、最初のメッセージを受け取るまでの間は、空のままです。 これは、必要になるまでモニターが行われないためです。
電話帳に送信者が登録されていない場合、名前の変わりにアドレスが格納されます。 Android 2.0 より前のバージョンでは機能しません。
本文は、SMSについてのみ格納されます。
件名は、MMSについてのみ格納されます。
Time (時刻)
%TIME
現在の時刻を人が読むのに適した形で、ピリオドで区切って格納します。例) 10.59
Time MilliSeconds (ミリ秒表示の時刻)
%TIMEMS
現在の時刻をミリ秒で表します。
(これは、1970年1月のある時点からの経過時間を表しています。)
Time Seconds (秒表示の時刻)
%TIMES
現在の時刻を秒で表します。
(これは、1970年1月のある時点からの経過時間を表しています。)
UI Mode (UIモード)
(dynamic, monitored)
%UIMODE
現在のAndroidのUI(ユーザーインターフェース)モードを表します。
cardesknormalのいずれかです。
Uptime Seconds (起動時間)
%UPS
デバイスが最後に起動されてからの経過時間です。
Volume - Alarm/Call/DTMF/Media/Notification/Ringer/System (音量)
(dynamic)
%VOLA / %VOLC / %VOLD / %VOLM / %VOLN / %VOLR / %VOLS
現在のオーディオチャンネルの音量です。
電話アプリを使用中は、デバイスによっては、音量の変更が更新されないものがあります。
WiFi Info (Wifi情報)
%WIFII
アクセスポイントに接続しているときに、接続中のアクセスポイントの情報を格納します。 接続中でない場合は、最も最近スキャンした、アクセスポイントの情報が格納されます。
WiFi Status (Wifiの状態)
(dynamic)
%WIFI
WiFiが、onか、offかを表します。
【注記】
Wifiが、接続中または、切断中の場合、接続が確立していない状況なので、offが格納されます。
Wimax Status (Wimaxの状態)
%WIMAX
Wimaxが、onか、offかを表します。
【注記】
WiMaxが、接続中または、切断中の場合、接続が確立していない状況なので、offが格納されます。
Window Label (ウインドウのラベル)
(monitored)
%WIN
現在表示されている、フルスクリーンまたは、ダイアログウインドウのラベルを格納します。
ラベルが不明の場合値は格納されません。
メニュー項目や、ボタンのようにウインドウの最初のアイテムがラベルになるものがあります。
General Notes (付記)

上のリストで、dynamicの表記のあるものは、どこでその値が変化しても、 Variable Valueステートコンテキストや、Variable Setイベントコンテキストの成立の条件になるものです。

monitoredの表記のあるものは、ウィジェットや有効なプロファイル内に含まれる、コンテキストやタスク で使用されたときに、関連のモニターが開始されるものです。 一例として、%CELLS がFlashアクションで使われると、位置情報のモニタリングが開始されます。

【制限】 monitoredの表記のある変数でも、名前のないショートカット内で使用されている場合は、この限りではありません。

Note On Location Variables (位置関連の変数に関する注記)

Locationコンテキストで、使用されているロケーションプロバイダー(Netまたは、GPS)が、アクティブな場合。 関連する変数にはその情報が格納されますが、場合によっては、他のアプリケーションによって取得された位置情報の方が、Taskerの情報よりも新しいことがあります。

関連するロケーションプロバイダーがアクティブでない場合、変数に格納される値は、Get Location アクションまたは、Locationコンテキストによって最後に取得されたものです。

このことはすなわち、ロケーションプロバイダーの切断を挟んで変数を参照すると、 その計測時間が前後する場合があることを示しています。

Get Locationアクションを実行することで、変数の値を手動で更新することができます。

User Variables (ユーザー定義変数)

Variable Setアクションを始め、その他いくつかのアクションは、新しく変数を定義するのに使うことができます。 変数名には以下の制限があります。

  • 変数名が、%文字で始まること
  • 大文字/小文字が区別されること
  • 少なくとも3文字以上の半角英数字であること
  • 変数名の最初と最後以外であれば、アンダースコア(_)を使うことができること
Global vs Local Variables (グローバル変数とローカル変数)

全ての組み込み変数は、グローバル変数です。すなわち、Taskerのどこからでも参照することができます。

変数名に一つ以上の大文字を含む変数も、グローバル変数です。例)%Car

一方、%fruit のように、全て小文字の変数名を持つ変数は、ローカル変数です。 これは、つまりこの変数が使用されているタスク内または、シーンイベントで実行されたタスクの場合はそのシーン内からしか参照できないことを意味します。

次のような理由で、可能であれば、ローカル変数を使うことが望まれます。

  • 他のタスクによって書き換えられることが無い
  • その他のいくつかの利点がある

【注記】 同じタスクのコピーが同時に実行される場合、各タスクごとに独立してローかつ変数が作成されます。

Escaping Variable Names (変数名の置き換えの回避)

変数名が、Taskerによってその値に置き換えられるのを防ぐには、変数名の前に\をつけます。すなわち、 Variable Set, %new, \%old のようにすると、%new には、%old の値ではなく%old という変数名が格納されます。

\の付いた変数名の前に更に\をつけると、変数の値に\をつけることができます。すなわち、 Variable Set, %new, \\%old のようにすると、%new には、%old の値の前に\がついたものが格納されます。

Variable Lifetime (変数の有効期限)

タスクで変更しない限り、変数の値は、Taskerがアンインストールされるまで保持されます。

Uninitialized Variables (初期化されていない変数)

値を持たないユーザー定義変数は、変数名の値による置き換えは行われません。 すなわち、I love %fruitのようなテキストで%fruitが空の場合、変数名がそのまま使用されます。

【例外】 数式内で空の変数が使われると、それらの変数は0で置き換えられます。

Variables In Plugins (プラグインで使用される変数)

プラグインで使用されている変数も、Taskerによって現在Taskerが保持している値に置き換えることができます。 もしそのようになっていないプラグインがあった場合、その開発者に次のURLを伝えこの仕組みの詳細を教えてあげましょう。

http://tasker.dinglisch.net/plugins.html

Variable Arrays (変数配列)

Taskerでは、擬似配列をサポートしています。

配列は、Forアクションで、かく要素を順に一連のアクションに渡すような場合に役に立ちます。 例えば、ファイル名のリストにある各ファイルを調べる場合などです。

使用例

いま、%arr1, %arr2, %arr3, %arr4という四つの変数に、それぞれa, b, c, dという値が格納されているとします。このとき、四つの要素を持つ配列と見なすことができます。これらの変数は個別に使用することもできますが、特別な方法で参照することもできます。

以下にその例を示します。

%arr(#)
定義済みの配列の要素数(この例では、4)
%arr(#>)
定義済みの要素の最初のインデックス値、定義済みの要素がない場合には、0 が返ります。(この例では、1)
%arr(#<)
定義済み要素の最後のインデックス値、定義済み要素がない場合には、0 が返ります。(この例では、4)
%arr(#?b/c)
指定された値を持つ要素のインデックスを小さい順にコンマで区切られたリストとして返します。 該当する要素がない場合には、0 が返ります。(この例では、2,3)
%arr(>)
最初の要素の値を返します。(この例では、a)
%arr(<)
最後の要素の値を返します。(この例では、d)
%arr() または、%arr(:)
全ての要素の値をコンマで区切って返します。(この例では、a,b,c,d)
%arr(2) または単に、%arr2
インデックスが、2の要素の値を返します。(この例では、b)
%arr(2:4)
インデックスが、2~4の要素の値を返します。(この例では、b,c,d)
%arr(:3)
インデックスが、3以下の全ての要素の値を返します。(この例では、a,b,c)
%arr(3:)
インデックスが、3以上の全ての要素の値を返します。(この例では、c,d)
%arr(1:2)
インデックスが、1~2の全ての要素の値を返します。(この例では、a,b)

【注記】

  • 配列では、仮想的に全ての要素が定義されているものしてあつかわれますので、 %arr(>)は、%arr(1)と、 %arr(#)は、%arr(#<)と同じ意味になります。
  • インデックスの指定には、変数を使うことも出来ます。例)%arr(1:%MAX)、%arr(#?%FINDME))
Creating An Array (配列の作成)
  • Variable Splitアクションを使う。:
    Variable Set %arr a,b,c,d
    Variable Split %arr
    データの内容に、コンマが含まれるような場合、Variable Splitアクションで他の文字を セパレーターとして指定します。
  • Variable Setアクションを使って、個々の要素に値を設定する:
    Variable Set, %arr3, c.
  • Array Pushアクションを使って、最初の要素を作成する。
  • List Filesアクションなど、様々なアクションの実行結果tとして配列を作成する。
Inserting Elements (要素の挿入)

Array Pushを使って行います。

Fill Spacesパラメーターについてはもう少し説明が必要でしょう。 このパラメーターは、一つまたは、それ以上の要素が未定義の場合にのみ関係があります。例えば、配列の要素%arr1と、%arr3にそれぞれ、appleと、bananaが格納されているとしましょう。

  • Array Push %arr1, 1, pear

    とすると、%arr1、%arr2および、%arr4にそれぞれ、pearappleおよび、bananaが格納されます。

  • 一方、Array Push %arr2, 1, pear, Fill Spaces

    とすると、%arr1、%arr2および、%arr3にそれぞれ、pearappleおよび、bananaが格納されます。

Removing Elements (要素の削除)

Array Popアクションを使って行います。Array Popアクションと、Variable Clearアクションの違いに注意してください。Pop では、配列の要素数を減らしますが、Clearでは、単に要素を空にするだけです。

【例】 いま、配列の要素%arr1、 %arr2、 %arr3にそれぞれ、applepearおよび、banana が格納されているとします。

  • Variable Clear %arr2

    とすると、%arr1および、%arr3にそれぞれ、appleおよび、bananaが格納されます。

  • しかし、Array Pop %arr2

    とすると、%arr1および、%arr2にそれぞれ、appleおよび、bananaが格納されます。

Deleting An Array (配列の削除)

Array Clearアクションを使います。

ほとんどの場合、パターンマッチングオプションをチェックして、Variable Clear %arr* とすることもできますが、これでは、%arrTOODEETOO のような変数までクリアしてしまいます。そこで、 Array Clearを使うほうが安全だといえます。

Array Efficiency (配列の効率性)

配列は、高次の演算を行うのに便利なように用意されていますが、 天文データを処理するためのものではありません。数千の配列の計算でも数秒はかかるでしょう。(とはいうものの、計算処理そのものに時間がかかっているというよりは、 計算の合間にTaskerが家事をかたずけているせいだと思いますが。)

メモリーの節約という点に関しては、ほぼ絶望的といえます。 もっとも、数千もの要素を持つ配列を保存しようとする人がいるとも思えませんが。