こちらに書いているように, 最近はすっかり Windows マシンから X-Deep/32 で Linux を使うように なってきました. とは言え
ターミナルプログラムのマクロを書けばいい気もしますが, ちょっと美しくありません. と言うわけで, そういうプログラムを作ってみました.
プログラム本体はこちらです(V1.1).
原理は簡単で 23 番ポートに telnet し, あらかじめ GUI で入力したユーザ名とパスワードでログインし,
$ kterm -geometry 80x25+0+0 -display hostname:0 & $ exit |
また, 23 番ポートでログインすると, 最初にプロトコルネゴシエーションをするん
ですが, RFC のどこに書いているのか分からず (RFC854 のようだ),
とにかく WEB で適当に概要を調べ, よく理解しないまま適当に作りました.
筆者の環境 (Plamo 4.2 及び 4.3) ではログインできるのでほっといてますが,
もしかして他の端末では動かないかもしれません.
その節はあきらめてください.
さらにプログラムの都合上, Linux マシンは以下の条件を満たす必要があります.
プログラムですが, 第一引数に Linux マシンを指定して起動します. プログラムは指定された Linux マシンに対して接続を試みます. また, 第二引数以降, 1〜9, x という文字も指定できます. 1〜9 はディスプレイ番号で, 指定しなければ上の例のように 0 が入ります. 複数指定した場合は最後に指定したものが有効になります. 一方 x は kterm の代わりに xterm を呼び出すものです.
プログラムを起動すると, 以下のようなダイアログが現れ, ユーザ名とパスワードを たずねます. ini ファイルか何かで覚えさせておくこともできたんですが, 作るのが面倒くさいのでセキュリティ上の観点ということにして, 毎回入れるようにしています.
ユーザ名やパスワードを間違えて入力した場合, Linux マシンが時間切れで切断するまで, ダイアログは閉じません. 間違えたと思ったら手動で閉じて再起動してください. 同様にエラーメッセージは一切見てないので, Linux マシンに x/kterm が入ってないとかパスが通ってないとか, ディスプレイ番号を間違えた場合, ダイアログは閉じますが X サーバ上に x/kterm が現れません. その辺は適当に判断してください.
使い方ですが こちらに書いたように
d: cd \utils\xdeep32_40\usr\X11R6\bin D:\utils\xdeep32_40\usr\utils\xcl.exe 'D:\utils\xdeep32_40\usr\X11R6\bin\twm.exe' -n -d 127.0.0.1:0 d:\tools\nopathtool\fetchxterm my.linux.machine |