AiB Terminalマニュアル
（このマニュアルでは AiB Edit のアウトライン機能を利用できます）

* 目次

１．はじめに
２．画面の説明
３．操作方法
３．１．基本的な操作方法
３．２．出力ウィンドウの操作方法
３．３．入力ウィンドウの操作方法
３．４．入力履歴の呼び出し
３．５．ファイル名入力の補完
３．６．特殊コマンド
４．設定
５．点字ディスプレイ制御について
６．ショートカットキー
７．ＦＡＱ
８．コマンドライン引数


* １．はじめに

　AiB Terminal は、スクリーンリーダーでの音声読み上げと点字表示に対応した
端末エミュレータです。
端末エミュレータとは、簡単に言えば Windows 標準の「コマンドプロンプト」の
代わりとして利用できるアプリケーションを指します。


* ２．画面の説明

　AiB Terminal には「出力ウィンドウ」と「入力ウィンドウ」という
二つのテキストボックスがあります。出力ウィンドウは、
コマンドラインプログラムから出力された文字列を表示するテキストボックスで、
読み取り専用になっています。
入力ウィンドウは、コマンドラインプログラムへ入力を行うために使うテキストボックスです。


* ３．操作方法

** ３．１．基本的な操作方法
　AiB Terminal は、出力ウィンドウがフォーカスされた状態で起動します。
出力を読み上げるには、方向キーや Home、End キーなどでカーソルを移動します。
　コマンドを実行するには、そのままコマンドを打ち込んで Enter キーを押します。
コマンドの入力を始めると自動的にフォーカスが入力ウィンドウに移ります。
そのため、どちらのウィンドウにフォーカスされていても関係なくコマンドを入力できます。
　コマンドを実行すると、自動的にコマンドの実行結果の先頭にカーソルが移動します。
その後は出力の読み取りとコマンドの入力を繰り返していきます。
　入力ウィンドウにフォーカスしている時に Escape キーを押すと、
フォーカスが出力ウィンドウに移動します。
また、出力ウィンドウにフォーカスしている時に Escape キーを押すと、
最後に実行したコマンドの実行結果の先頭にカーソルが戻ります。
したがって、AiB Terminal の状態がよく分からなくなったら
Escape を二回以上押せば最後にコマンドを入力した直後の状態に戻る事ができます。
また Ctrl+Tab キーを押すと出力・入力のウィンドウ間を移動できます。

** ３．２．出力ウィンドウの操作方法
　出力ウィンドウは読み取り専用のテキストボックスです。
カーソルは方向キーや Home、End、PageUp、PageDown の各キーで移動でき、
Shift を押しながらカーソルを移動させれば文字列を選択できます。
選択したテキストは Ctrl+C でクリップボードにコピーでき、
入力ウィンドウに貼り付けて次の入力に使ったり
他のアプリケーションに貼り付けたりできます。
　出力ウィンドウにフォーカスされている時に Escape キーを押すと、
最後に入力したコマンドの出力結果の先頭にカーソルが戻ります。
自分が入力したコマンドを確認したい場合や
改めて出力結果を先頭から読み直したい場合、
どこを読んでいるのか分からなくなった場合などに使うと便利です。

** ３．３．入力ウィンドウの操作方法
　入力ウィンドウは一行だけ入力できるテキストボックスです。
基本的にはコマンドを入力して Enter キーを押し、
その内容をコマンドラインプログラムに送信します。
　入力を確定する時に Shift キーを押しながら Enter キーを押すと、
改行文字を付けずにその内容をコマンドラインプログラムへ送信できます。
改行文字を付けたくない場合にこの入力方法を使ってください。

** ３．４．入力履歴の呼び出し
　AiB Terminal はユーザの入力を記憶しています。
F7 を押すと今までに入力したコマンドの履歴が一覧表示されます。
この一覧ウィンドウが現れた直後は履歴が古い順にリストアップされ、
その中で一番新しい履歴が選択された状態になっています。
各履歴は上下の方向キーで選択できますので、
上方向キーを押して過去の履歴へと順にアクセスしていきます。
呼び出したい履歴を選択して Enter キーを押すと、
その履歴が入力ウィンドウに設定されてフォーカスも入力ウィンドウに移動します。
履歴の呼び出しをキャンセルするには Escape キーを押します。

** ３．５．ファイル名入力の補完
　AiB Terminal は途中まで入力したファイル名を補完する機能を持っています。
F8 を押すとファイル名補完の対象が名前順に一覧表示されます。
各補完対象は上下の方向キーで選択できます。
採用したい補完対象を選択して Enter キーを押すと、
入力ウィンドウのカーソル位置にある単語がその補完対象に置き換わります。
入力補完をキャンセルするには Escape キーを押します。
　入力ウィンドウにフォーカスされている時に Tab キーを押すと、
ファイル名を「その場で」補完する事ができます。
たとえばカレントディレクトリの AiBTerminal.txt というファイルを
AiB Edit で開くには次のようなコマンドを入力する必要があります。

	AiBEdit AiBTerminal.txt

このような場合に補完を利用するには、
まず AiBEdit aib と入力した後で Tab キーを押します。
すると自動的に AiBTerminal.txt というファイル名が補完され、完全なコマンドになります。
もし aib で始まるファイルが一つでなかった場合、
Tab を押すたびに次の候補へと切り替わっていきます。

** ３．６．特殊コマンド
  AiB Terminal は以下の特殊コマンドを内蔵しています。

・_javac
　このコマンドを入力すると、
  Java のコンパイラである javac を実行してその結果を解析、
　発生したコンパイルエラーを GUI でリスト表示します。
　なお _javac に与えた引数はそのまま javac へと渡されますので、
　「javac のかわりに _javac と打ち込む」という感覚で利用できます。
　またそのリスト中に表示されるエラー項目を選択して Enter キーを押すと、
　AiB Edit を起動してそのエラー発生箇所へカーソルを移動します。
  _javac コマンドの動作には Java コンパイラの javac.exe が必要です。
・_csc
　このコマンドは _javac の C# 版です。
　機能は完全に _javac と同じで、動作には C# コンパイラの csc.exe が必要です。


* ４．設定

  AiB Terminal の設定は、ツールメニューの「オプション」から表示する
ダイアログで行います。現在用意されている設定項目を続いて説明します。

・コマンド入力後のカーソル位置
　　このオプションは、コマンド入力を確定した後に
　カーソルをどこに移動するかを設定します。
　　「最後の入力行（音声ユーザ用）」を選択した場合、
　最後に入力を行った行の先頭にカーソルが移動します。
　この場合、コマンド入力に対する結果はこの行の直後に続くため、
　入力確定後に下方向キーを押すと出力結果の先頭にカーソルが移動し、
　先頭の音声読み上げを開始できます。
　　「出力の先頭行（点字ユーザ用）」を選択した場合、
　コマンド入力に対する出力結果の先頭行にカーソルが移動します。
　この場合、入力を確定すると点字ディスプレイに出力結果の先頭行が
　表示されるため、すぐに結果を読むことができます。


* ５．点字ディスプレイ制御について

  AiB Tools は、AiB Tools 専用にカスタマイズされた
ニュー・ブレイル・システム社の点字出力エンジン
「ピンブレイル」を使用しています。
ピンブレイルを利用して、
AiB Edit は点字ディスプレイに編集内容を正確に表示します。

ピンブレイルによる点字表示には、次のような特徴があります。
・各種点字を正確に表示できる
・半角記号と全角記号、あるいは半角空白と全角空白とタブ文字とを簡単に区別できる
・行末の種類が画面幅による「折り返し」なのか、改行なのか、
　テキストの末尾なのかを区別できる
・点字ディスプレイのタッチカーソルキーやシフトキーでカーソルを操作できる
　（Shift キーを併用するとテキストの選択もタッチカーソルキーで行えます）


* ６．ショートカットキー

　AiB Terminal には次のショートカットコマンドが用意されています。

・CTRL-BREAK イベントを送信: Ctrl+Break
・出力をクリア: Ctrl+K （おそらく Kill buffer の k）
・入力履歴を表示: F7
・ファイル名を補完: F8
・点字表示体系を変更: Ctrl+B (Braille の b)
・終了: Ctrl+W

　CTRL-BREAK イベントを送信すると、実行中のプログラムの処理を中断します。
無限ループに陥って制御が帰ってこないプログラムを終了させたい時などに
送信してください。


* ７．ＦＡＱ

問１：
　Windows アプリケーションを実行しても起動しない
答：
　現在、そのような現象が起こる仕様になっています。
実際には「起動しない」のではなく、
起動しているのにウィンドウが表示されていない状態になっています。
多くの場合、何でも良いので続けてコマンドラインプログラムを
何度か実行するとウィンドウが表示されます。
_dir コマンドなどで良いでしょう。
（これはシェルに CMD.exe を使った場合に特有の問題らしく、
Cygwin や MSYS の bash を使うとこのような現象は起こりません。
原因は不明ですが、対処方法はありません。）


* ８．コマンドライン引数

　起動時にコマンドライン引数を与えると AiB Terminal の起動方法を設定できます。
起動オプションは - あるいは -- に続けてオプション名を書き、その後ろに = を付けて
その値を書いて指定します。起動オプションには次の３つがあります。

-k, --keep
　プログラムが終了してもウィンドウが閉じないようにします。

--shell
　起動するシェルのパスを指定します。
　指定がなければ、標準の CMD.exe （Windows のコマンドプロンプト）が使われます。

--args
　起動するシェルに与えるコマンドライン引数を指定します。
　スペースを含む引数を与える場合は、ダブルクォーテーションで囲います。

　また引数としてディレクトリのパスを指定すると、
そのディレクトリから AiB Terminal を起動できます。
コマンドライン引数の具体的な例を次に挙げます。

例１：CMD.exe のかわりに cygwin の bash を使う
AiBTerminal --shell="bash" -args="--login -i" "C:\cygwin\bin"

例２：Javaプログラムをコンパイルし、その結果を表示したままウィンドウを消さない
AiBTerminal -k --shell=javac --args="HelloWorld.java" "C:\Projects\HelloWorld"

例３：Javaプログラムを実行する
AiBTerminal --shell=java --args="HelloWorld" "C:\Projects\HelloWorld"
