JavaScript コンソール

この度,ブラウザ上で JavaScript プログラムを簡易に開発するための環境として「JavaScript コンソール」を開発しましたので,ここに発表致します.

製品画面イメージを以下に示します.*1

製品画面イメージ

特徴

従来の JavaScript プログラム開発は,

エディタで編集 → ブラウザにロード → 修正 → … というサイクルを繰り返すことが必要でした.

本環境では,ターゲットプログラムの出力をテキストエリアへの文字情報に制限することにより,プログラムの編集から実行までを web ブラウザ画面で行うことが可能となりました.

また,従来の統合開発環境でありがちな複雑なメニューを排し,伝統的なユーザインターフェースを採用いたしました. これにより,操作に惑うこと無くプログラム開発が行えるものと信じております.

対応環境

以下のブラウザで動作することを確認しました.

forefox 3.0.7
Debian/Lenny (iceweasel), Windows Xp
Internet Explorer 7.0
Windows Xp

起動方法

以下の2つの方法があります.

オンラインで使用

http://jr0bak.homelinux.net/~imai/linux/jsconsole/jsconsole.html にアクセスしてください.

オフラインで使用

http://jr0bak.homelinux.net/~imai/linux/jsconsole/jsconsole-0.1.tar.gz より tar ball を取得できます.

tar ball を展開した後,jsconsole.html を開いてください.

動作モード

本製品の動作モードは

  • 編集モード
  • コマンドラインモード
  • 実行モード

の3モードがあります.

各モード間の遷移は下図のようになります.

            − exit コマンド →                      − run コマンド →
編集モード                      コマンドラインモード                    実行モード
            ← edit コマンド −                      ←プログラム終了−

各部の説明

各部説明

1. ステータス表示行

動作モードを表示する行で,

edit
編集モード
command
コマンドラインモード
run
プログラム実行モード

を表します.

2. 出力テキストエリア

プログラムの実行結果を出力するエリアです. 編集モードではこのエリアにプログラムを入力します. その他のモードでも,本エリアへの入力や編集ができることもありますが,開発環境への指示とはなりません.

3. コマンド入力行

コマンドラインモードでは,ここにコマンドを入力することにより,指示を与えます. 編集モードでは,編集モードを終了する「exit」コマンドのみを受け付けます.

なお,コマンドライン入力では,簡易的な補完機能があります. 例えば,本来は

list()

と入力すべきところに

list

と入力しても,省略した括弧を補完してコマンドを実行します.

なお,この補完機能はコマンドラインのみで働きます. 従って,プログラム中では括弧を省略することはできません.

クイックツアー

例題として,「Hello,world」を表示させる,おやくそくのプログラムの作成から実行までを行ってみましょう.

本製品を起動します

編集モードに入ります

コマンド入力行で

edit

と入力します.最後に Enter キーを押すのを忘れずに.

出力テキストエリアにプログラムを入力します

print ( "Hello,world\n" );




 

編集モードを抜けます

print ( "Hello,world\n" );




exit

コマンド入力行に exit と入力しましょう.

メモリ上のプログラムの確認

コマンド入力行で

list

と入力してください. 出力テキストエリアに

list
print ( "Hello,world\n" );

Ready

と,プログラムの内容が表示されましたね.

実行

コマンド入力行に

run

と入力しましょう.

出力テキストエリアに

run
Hello,world

Ready

と出てきたら成功です.

拡張コマンド

本製品はブラウザの JavaScript 上で動作しております. 開発するプログラム内において,ブラウザの JavaScript の関数を利用することが可能です.

これに加え,開発環境の操作やリソースへのアクセスのためのコマンドを拡張しています.

拡張コマンドの一覧を下表に示します.

コマンド名コマンドラインプログラムコマンド説明
run×ターゲットプログラムの実行
listターゲットプログラムの表示
edit×ターゲットプログラムの編集
newp×ターゲットプログラムの消去
help拡張コマンドのヘルプメッセージの表示
print出力テキストエリアへの出力
cls出力テキストエリアの表示内容の消去
width出力テキストエリアの桁数・行数の変更
color出力テキストエリアの前景色・背景色の変更
promptプロンプトの変更
files退避領域にあるファイルの一覧
load×退避領域のファイルをプログラム領域に読み込む
saveプログラムを退避領域に書き込む
kill退避領域のファイルを削除

run

概要
プログラムの実行
つかいかた
run()
使用可能
コマンドモード
説明
メモリ上にあるプログラムを実行します. 起動直後はプログラムが無いので,run コマンドを実行しても何も起こりません.

list

概要
プログラムの表示
つかいかた
list()
使用可能
コマンドモード,プログラム
説明
メモリ上のプログラムを出力テキストエリアに表示します. このコマンドではプログラムを表示するのみで,表示したプログラムを編集することはできません. プログラムを編集するには,edit コマンドを使用してください.

edit

概要
プログラムの編集
つかいかた
edit()
使用可能
コマンドモード
説明
このコマンドを実行すると,出力テキストエリアでプログラムの編集を行うことができます. 編集を終了するには,コマンド入力行で exit と入力してください.

newp

概要
プログラムの消去
つかいかた
newp()
使用可能
コマンドモード
説明
メモリ上にあるプログラムを消去します. new でない理由はわかりますね.

help

概要
拡張コマンドの使い方の表示
つかいかた
help([コマンド名])
使用可能
コマンドモード,プログラム
説明
引数を省略した場合は,拡張コマンドの一覧を表示します. 引数を指定した場合は,指定したコマンドのヘルプメッセージを表示します.

print

概要
引数の表示
つかいかた
print(変数 [,変数[,変数...]])
使用可能
コマンドモード, プログラム
説明
引数に指定された変数を画面に出力します. 引数は複数指定することができます.

cls

概要
出力テキストエリアのクリア
つかいかた
cls()
使用可能
コマンドモード, プログラム
説明
出力テキストエリアを消去します.

width

概要
画面の桁数・行数の変更
つかいかた
width(桁数[,行数])
使用可能
コマンドモード,プログラム
説明
画面の桁数と行数を変更します. 行数は省略可能です. コマンド名から想像される動作と異なるかもしれません.

color

概要
出力テキストエリアの前景色・背景色の変更
つかいかた
color(前景色[,背景色])
使用可能
コマンドモード,プログラム
説明
出力テキストエリアの前景色と背景色を変更します. 背景色の指定は省略可能です. 色は数値で指定します.
0
1
2
3
4
5
空色
6
黄色
7

8〜15 は,0〜7 の暗い色となります. このコマンドも,想像される動作とは微妙に異なるかもしれません.

prompt

概要
プロンプトメッセージの変更
つかいかた
prompt(Z80) もしくは prompt(6809)
使用可能
コマンドモード,プログラム
説明
プロンプト(初期状態では 'Ready' と出力されているメッセージ)を変更します. 引数に Z80 と指定した場合は 'Ok' と,6809 と指定した場合は 'Ready' となります.

files

概要
退避領域にあるファイルの一覧
つかいかた
files()
使用可能
コマンドモード,プログラム
説明
退避領域にあるファイルの一覧を表示します. 退避領域については save コマンドを参照のこと.

load

概要
退避領域のファイルからメモリ上にプログラムを読み込む
つかいかた
load('ファイル名')
使用可能
コマンドモード
説明
退避領域のファイルからメモリ上にプログラムを読み込みます. 退避領域については save コマンドを参照のこと.

save

概要
メモリ上のプログラムを退避領域に退避
つかいかた
save('ファイル名')
使用可能
コマンドモード,プログラム
説明
メモリ上のプログラムを退避領域に退避します. 退避領域はメモリ上に確保されています. ホスト PC 上のディスクに保存されるわけではありません. このため,本環境のページを閉じると,退避領域上のファイルも消えてしまいます. 保存が必要なプログラムは,メモリ上に呼び出し,edit コマンドや list コマンドで表示させ,コピー&ペーストでテキストエディタ(メモ帳など)に貼り付け,ホスト PC 上に保存してください.

kill

概要
退避領域上のファイルを削除
つかいかた
kill('ファイル名')
使用可能
コマンドモード,プログラム
説明
退避領域上のファイルを削除します. 退避領域については save コマンドを参照のこと.

サンプルプログラム

プログラムのサンプルとして Brainfuck インタプリタを添付します.

PC 上のテキストエディタで開き,本環境の編集画面にコピー&ペーストしてご利用ください.

免責事項

本製品の利用によって生じた障害・損害等について,作者は一切担保しません. 本製品は使用者の責任において使用してください.

エイプリルフールネタです

念のため書いときますが,本製品はあくまでもエイプリルフールネタです.

上記の説明どおりの動作はすることはするのですが,実際のところ

  • ターゲットプログラムが無限ループに入った場合,停止させる手段が無い
  • ターゲットプログラム上でエラーが発生した場合,発生箇所がわからない

ので,本格的なプログラム開発には使わん方が身のためです.


*1 画像は開発中のものであり,製品版とは異なる場合があります.

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-04-01 (水) 00:00:49 (4078d)