TextRunRunの欠点や使いにくさ

TextRunRun がどういったものかを続けて紹介しますが、このページではあえて欠点というかあまり良くないであろうところをあえて紹介しておこうと思います。

TextRunRun はクセの強いソフトです。

ルールが独特な部分があるので、初めて使う人は色々なところが余計に感じるといった事が多いかもしれません。

このソフトはあくまで、私ブランボンが自分で使うために作ったものであり、自分にとって便利な仕様にしてしまっているものです。

自分が使うために作った AutoHotkey を、コマンドランチャーに関するとこだけを切り離したものです。

このソフトのイメージが沸きやすくなる事もあって、このソフトの欠点に関する事もぱっと思いついた分だけ紹介しておきます。

AutoHotkey のプログラムをそのまま使える訳では無い

このページの前から何度もこの TextRunRun は 「 AutoHotkey のプログラムを使える 」 という事を書いていきました。

しかし、実際にはそうではなく AutoHotkey と同じ様な動作をさせる様に仕向けたプログラムが実行されるだけであり、 AutoHotkey とそのまま同じ記述で使用できる訳ではありません。

ですので、 AutoHotkey の事を詳しいユーザーは戸惑うというか残念に思うとこだと思います。

AutoHotkey のプログラムと違うところを大まかにですが以下に書きます。

AutoHotkey に関する事ですので、それについて知らない人はこの括りのとこは読み飛ばしてください。

Loop に関する事は使えない。オブジェクトに関する事も使えない

とりあえず、一番の違いとして以下の 2 種類に関する事はできません。

  • Loop などを使った繰り返し処理
  • オブジェクトを使用した処理

AutoHotkey のプログラムには Loop文が何種類かあり、 それを使って繰り返しの処理ができますが、それらは TextRunRun では全て使えません。

そしてオブジェクトを使う処理も使用できません。
オブジェクトを使った配列を作ったり、COMオブジェクトを利用した処理といったものも残念ですが使えません。

とりあえず、この 2点が一番の違いだと思います。

関数を宣言して使う事はできない

関数を作る事はできません。

しかし、関数を実行する事は可能です。
AutoHotkey に元々ある、組み込み関数というものを使う事は可能です。

サブルーチンも作る事はできません。

ただ、サブルーチンを自由な名前で作る事はできなくても、 G_subroutine1 といった G_subroutine[ 数字 ]アイテム を作る事でサブルーチンの代用は可能です。

関数に関しても、関数は作れませんが アイテム を関数と似たようなものとして作る事は可能と言えば可能です。

%1 などや、 B_itemArg1 等の変数を使う事で、引数を指定して使う関数と同じ様な使い方ができる アイテム は作れると思います。

補足

サブルーチンも作る事はできないため、ホットキーラベルといったショートカットキーを作るためのものも作れません。

ショートカットキーを作る場合は、

  • 常時使用のキー を作るか、
  • HotkeyAutoHotkey のコマンドを使う

これらの方法を使います。

変数はグローバル変数しか使えない

変数を使う時は、先にグローバル宣言をしておいた変数でしか変数として意味を成しません。

TextRunRun の起動時に実行する処理のなかで、

global [ 変数名 ]

この様なものを記入して宣言しておいた変数のみしか使えません。

ただ、 V_var1 などの変数は既にグローバル宣言している変数なのでこれらは使えます。

ErrorLevel の変数は ErrorLevel_TextRunRun の変数を使う必要がある

ErrorLevel の変数も意味を成さないため、 ErrorLevel_TextRunRun という代わりの変数を使用する事になります。

しかも、 ErrorLevel_TextRunRun の変数は自動的に初期化されないため、処理の初めに
F_ErrorLevel_TextRunRunRestore() などを実行して初期化してから使わなければいけないルールになっています。

AutoHotkey のプログラムと違うところの代表的なものは以上の様なとこです。

ですので、 AutoHotkey のプログラムと全く同じ記述で使う事はできず、 TextRunRun 用に修正したプログラムを記入して使わなければいけない事になります。

AutoHotkey のプログラムと違うところの細かいとこは、このホームページ内で説明していきます。

このページで説明しています。

普通の使い方 AutoHotkeyと違うところ

細かい説明 AutoHotkeyと違うところ2

ウインドウが多い

TextRunRun の欠点の事に話を戻します。

このソフトはウインドウが沢山あります。
使う人によってはウインドウが多すぎると思うかもしれません。

そしてなにより、ユーザーがウインドウを表示させようとする操作をしてなくても自動的に表示されるウインドウがあったりもします。

TextRunRun 上の操作で何らかのエラーがあった時は、エラーの事を知らせるウインドウが勝手に表示したりします。

画像

エラーの内容を表示するために、このウインドウがいきなり表示します。

そしてこのウインドウは時間がたつと自動的に閉じます。
( 初期設定では 10 秒で閉じます。 )

その他にも、コマンドランチャーの入力欄を使って実行した時に、実行した事の説明などを簡易的に表示するウインドウもあります。

画像

このウインドウは、実行した結果や簡易的なエラーの内容を表示します。

このウインドウも時間がたつと自動的に閉じます。
( 初期設定では 7 秒で閉じます。 )

そしてこのウインドウに書かれている文字は、次に出力される内容があったらその都度上書きされるという特徴があります。
( 前にあった文字は消されるという意味です。 )

私ブランボン自身にとってはこの様な構造にした方が便利なため、そうなる様にしているのですが、使う人によっては一つのソフトにいろんなウインドウが表示されるので煩わしく感じるかもしれません。

コマンドランチャーのウインドウが複数ある

ウインドウが多い事につながる事ですが、コマンドランチャーのウインドウも複数あります。

画像

これらのコマンドランチャーはウインドウの色が違うだけです。
ですので、できる事は同じです。

さらに以下の様なコマンドランチャーもあります。

画像

入力欄が多くあるウインドウですが、これはメインのコマンドやファイルパスの指定と引数の部分を分割して指定するコマンドランチャーです。

この様にコマンドランチャーのウインドウが多数存在しているので、使う人にとっては無駄に多く存在している事を煩わしく思ってしまうかもしれません。

メインのウインドウといったものが無い

このソフトはメインのウインドウといったものがありません。

その理由から、このソフトは ウインドウを閉じるといった方法で終了する事ができません。

コマンドランチャーの入力欄のウインドウがメインのウインドウという訳でもないので、これを閉じるとソフトを終了するという訳ではありません。

終了の仕方

ウインドウを閉じるといった方法で終了できないため、タスクトレイにあるこのソフトのアイコンを右クリックした時に出てくるメニューを使います。

画像

このメニューの中に TextRunRunの終了 があるので、それを選んで終了します。

その他の終了の仕方

終了の仕方は、コマンドランチャーの入力欄を使って終了する方法や、ショートカットキーから終了する方法もあります。

AutoHotkey では、 ExitAppAutoHotkey のコマンドを使う事でソフトを終了します。

TextRunRun も、これを使う事でソフトを終了できます。

ExitApp

コマンドランチャーにこれを記入して Enter を押せば終了します。

ショートカットキーからできる様にする場合は、 常時使用のキー として登録すればいいだけです。

ExitApp を実行スクリプトとした 常時使用のキー を作れば、好きなショートカットキーから終了をする事ができます。

なお、 ExitAutoHotkey のコマンドも存在しますが、これは別の用途で使われるものです。

メインのメニュー

TextRunRun には、メインのウインドウといったものがありませんが、代わりに メインのメニュー というものがあります。

この メインのメニュー は以下の方法などで表示します。

先程紹介した 「 終了の仕方 」 の時と同じですが、タスクトレイにあるこのソフトのアイコンを右クリックすると以下のメニューが表示します。

画像

この中にある メインのメニュー を選ぶと以下のメニューが表示します。

画像

TextRunRun にある大半のウインドウはこのメニューを通じて表示させる事ができます。

ですので、このメニューが TextRunRun のメインのウインドウ代わりのメインになるものといっていいものです。

TextRunRun を使い始めたユーザーは、このソフトは何を基盤にしていいか分からないと思ってしまうかもしれないので、このメニューから辿る様にすれば良いと思います。

ちなみに、このメニューはタスクトレイからだけでなく、コマンドランチャーのウインドウの上部にある メニュー の中から辿っても表示する事ができます。

画像

ウインドウの位置と大きさが初期状態に戻る

この TextRunRun はソフトを終了した後、もう一度起動したときはウインドウの位置と大きさが初期状態に戻る様になっています。

というより、ウインドウの位置と大きさが自動的に保存される仕組みになっていません。

ですので、このソフトのウインドウの位置をマウスで変えたりしても、ソフトを閉じると元の位置と大きさに戻ってしまします。

ウインドウの位置を好きな位置に指定する方法として以下の方法があります。

メインのメニューにある項目を使う

先程紹介した メインのメニュー には、 ウインドウの位置とサイズを保存 という項目があります。

それを選ぶと、 TextRunRun のほぼ全てのウインドウに対してのその時点での「ウインドウの位置と大きさ」の情報をファイルに書き出して保存します。

それによって、このソフトを終了した後にまた起動した時も その時点での「ウインドウの位置と大きさ」を同じ状態で表示します。

あくまで、 ウインドウの位置とサイズを保存 を選んだその時点での再現になります。

AutoHotkey のプログラムで指定する

もう一つは AutoHotkey のプログラムを記入してウインドウの位置と大きさを変更する方法です。

AutoHotkey の事を知らない人は読み飛ばしてください。

Gui, %B_GuiNumText1%:Show, Hide などを使った方法があり、それらを使う方法です。

B_GuiNum から始まる変数があります。
それらを使う事でGuiの番号を指定した事と同じ事になります。

Gui, %B_GuiNumText1%:Show, Hide x50 y100

これを使うと、横の位置 50 、 縦の位置 100 の位置に 「 コマンドランチャーの入力欄のウインドウ 」 を移動できます。

この処理を「起動時に実行する処理」の中に含めておくという方法を取ります。

Gui, %B_GuiNumText1%:Show, Hide x50 y100
Gui, %B_GuiNumText2%:Show, Hide x400 y100
Gui, %B_GuiNumText3%:Show, Hide x750 y100
Gui, %B_GuiNumTextSplit1%:Show, Hide x600 y10 h650
Gui, %B_GuiNumTextSplit2%:Show, Hide x950 y10 h650

この様なプログラムを実行する アイテム を作っておき、それを「起動時に実行する処理」の中に含めておく、という方法をとる事でウインドウの初期値を決められる様になります。

マウスでクリックして使うウインドウ

この TextRunRun を起動すると、まずこのウインドウが画面の右下に表示するようになっています。

画像

初めてこのソフトを使った人は何だこれはと戸惑うかもしれません。

特に説明も無しに存在しているウインドウでもあります。

このウインドウは、色で分けられている区画があります。

マウスで区画をクリックすると、 TextRunRun のウインドウが表示できる様にしてあるものです。

水色の区画をクリックすると、何度も紹介しているコマンドランチャーのウインドウが表示します。

画像

この様に、ウインドウを表示させる時に使うためのものです。

このウインドウをマウスを使って大きさを広げると以下の様に色々な区画が確認できます。

画像

大きさを広げる時は、一度マウスで左上に移動してから右下を伸ばして広げる事になります。

この様に区画で分かれている画像があり、 先程も説明した様にマウスで区画をクリックすると、 TextRunRun のウインドウの各種が表示できる様にしてあるものです。

メインのメニュー と同じ様なものとして使えるのではないかと思います。

補足

ただし、 TextRunRun を使い慣れてくるとこのウインドウは使わなくなると思います。

コマンドランチャーの入力欄をショートカットキーから表示する様にすればそっちを使った方が便利なのでこのウインドウは使わなくなると思います。

初期設定では、このウインドウが TextRunRun の起動時に表示する様になっています。

起動時にこのウインドウを表示しないで済むようにしたい場合は設定からそうならない様にできます。

このウインドウは普通の方法では閉じない

さて、ここからが欠点に関する事です。

このウインドウは閉じようとすると、閉じるのではなく最小化をするだけになる様にしています。

このウインドウには上に「メニュー」があります。
そこをクリックする事で現れるメニューから、 このウインドウを閉じる を選ぶ事で閉じる事ができます。

画像

これをしないとこのウインドウは閉じない様にしています。
この仕様は初めての方はやはり余計だと思うかもしれません。

なぜこの様な仕様にしているのかというと、私ブランボンがその方が使いやすかったからです。

ただ、このウインドウが閉じにくい仕様もユーザーの要望があれば変えるかもしれません。

この仕様が余計だという意見が多いのであれば、普通に閉じる様にしようと思います。

このウインドウの仕様に限らず、ユーザーの要望があればなるべく TextRunRun の事は対処していきたいと思っています。

あとがき

TextRunRun の欠点に関わる事をいくつか紹介してみました。

ただ、欠点や欠陥はいくらでも他に見つかると思います。

これはプログラムの事をよく知らない素人が趣味で作ったソフトです。

不具合はいくらでも考えられるという一番の欠点があります。

ですので使う場合は 遊びの範囲で使う様に してください。