Bravoは最初のWYSIWYG文書作成プログラムでした。[ 1 ] Xerox Altoパーソナルコンピュータのビットマップディスプレイを使用してマルチフォント機能を提供しました。Xerox PARCでButler Lampson、Charles Simonyi 、同僚によって開発され、1974年9月14日に運用が開始されました。[ 2 ]
Bravoはモーダルエディタでした。キーボードで入力された文字は通常Bravoへのコマンドとして扱われましたが、「挿入」モードまたは「追加」モードの場合は文字バッファに入力されました。Bravoはテキスト内の位置指定やテキスト領域の選択にマウスを多用しましたが、コマンド入力には使用しませんでした。(グラフィカルユーザーインターフェース設計の黎明期であったため、コマンド駆動型ではないインターフェースは野心的すぎると考えられ、非効率的で扱いにくいと判断されたのです。)
Bravoは、テキストの書式設定を制御するための多数のコマンド(例えば、テキストのセクションの左右の余白を調整したり、フォントを選択したりする機能など)に加えて、複数のバッファ(つまりファイル)の使用や、複数のウィンドウの使用もサポートしていました。
Bravoは通常、書式設定(例えば、文字揃え、フォント、文字間隔の比例調整など)を施したテキストを表示していましたが、印刷されたページがどのように見えるかを再現しようとはしませんでした。これは、Altoモニターの解像度が1インチあたり72ピクセルであったのに対し、 PARCで使用されていたレーザープリンターの解像度が300 PPIであったためです。つまり、画面上では印刷されたページがどのように見えるかをせいぜい近似的にしか表示できなかったのです。そのため、通常の表示モードでは、ディスプレイの性能により適した文字サイズなどでテキストが表示されていました。
印刷時と全く同じようにテキストを表示しようとする特別な表示モードがあり、通常のコマンドセットもそのモードで動作しました。しかし、画面上の表示は必然的に近似値であるため、文字や単語がわずかにずれることがありました(これはワープロソフトでは現在も続いている問題です)。
72 PPIというピクセルサイズは、商業印刷業界で使用されている72.27ポイント/インチに非常に近い値であるため、Bravoのピクセルは書体のポイントと同じサイズになる。
Bravoは、後にAltoに搭載された文書システムであるGypsyのベースとなった。Gypsyは、現代的なグラフィカルユーザーインターフェースを備えた最初のシステムだった。
Bravo に続いて、1979 年にXerox の Advanced Systems Development (ASD) グループで Simonyi のリーダーシップの下で開発された BravoX が登場しました[ 3 ] [ 4 ] 。BravoX は Gypsy と同様に「モードレス」でした。Bravo (および BravoX) は当初 Xerox Alto 用にBCPLで実装されましたが、BravoX は後に「Butte」と呼ばれる言語で再実装されました (Charles Simonyi がよく言っていたように、「Butte は小さなMesaです」)。[ 5 ] Alto BCPL はData General Novaマシン命令にコンパイルされ、それが Alto マイクロコードによって解釈されました。Butte は Butte 固有のバイトコードにコンパイルされ、それが Mesa バイトコード インタプリタに似た特別な Alto マイクロコードによって解釈されました。
Bravoの初期バージョンでは、コマンドインターフェースが、コマンドモードで「EDIT」コマンドを入力しようとすると、すべてのテキストが「T」に不可逆的に置き換えられるように設計されていました。「e」はすべてを選択するように解釈され、「d」は選択したすべてを削除します。 「i」は入力モードに戻り、「t」が唯一のテキストとして表示されます。元に戻せるアクションは1つだけなので、「t」の挿入のみを元に戻すことができます。[ 1 ]