問題タブ [vt100]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
telnet - VT100 エスケープ シーケンス: カーソル移動が行末に回り込む
VT100 エスケープ シーケンスで制御される Telnet CLI アプリケーションを作成しています。たとえば、カーソルを左に移動するには、<ESC>[D エスケープ シーケンスが Telnet サーバーからクライアント (Putty または Gnome ターミナル) に送信されます。残念ながら、Putty の行の長さよりも長い行では、上記のエスケープ シーケンスでは現在の行より上の行にカーソルを移動できません。
例。カーソルは「|」です。コメントは「//」でマークされています
もう一つの例
端にいるときにラップアラウンドする他のエスケープシーケンスを探していましたが、見つかりませんでした。端末モードをラップできるものに変更するエスケープ シーケンスも見つかりませんでした。
では、このような端末ナビゲーションは一般的にどのように処理されるのでしょうか?
checkbox - Lua: テーブル内のキーを検索し、そうでない場合はインデックスをインクリメントして再試行します
状況:
ご覧のとおり、check_boxes を形成する x/y_coords です。例えば:
これを使用して、ターミナルでカーソルを check_boxes の間に移動します。
問題は現在、カーソルの動きにあります。現在、指定された入力 (矢印キー) に応じて、次の x/y_coord を左/右/上/下に検索する関数を取得しました。リターン/スペースを使用して、チェックボックスの背後にある関数を呼び出します。
これで、check_boxes が指定されていない位置に Cursor を設定できます。入力==スペース/リターンの場合、入力ハンドラは関数を呼び出すため、実際には大したことではありません
したがって、カーソルが関数を指していない場合は、何も起こりません。しかし、今はカーソルを次の check_box に移動させたいと思っています。私に何ができる?
これまでの私の考え:
次の関数は、入力の左/右/上/下に応じて、x または y のいずれかになります。
問題は、最後の if が x_coord = {1,3} のようなケースを許可しないことです。これは、2 に達すると x_index が 1 に設定されるためです。
任意のヒント?
編集:今、私はそれを始めました:
めちゃくちゃ遅い。
unix - VT100 エスケープ シーケンスを使用したテキスト装飾の入れ子
VT100 エスケープ シーケンスをネストする方法はありますか? たとえば、次のように赤いテキスト内に太字の単語が必要な場合:
それを行う簡単な方法はありますか?次のようにする\e[m
と、太字を閉じることを最初に意図したときに、赤い色も閉じます。
javascript - 投稿データを shellinabox に送信する方法、または javascript を使用して同じことを行う方法
これは長いものになるので、事前に謝罪してください..
shellinabox を使用して、チーム用の Web ベースのセッション マネージャーを作成して遊んでいます。現在、新しい接続ごとに、必要に応じて別のポートで shellinaboxd の新しいインスタンスを開始することで、希望どおりに動作しています。しかし、PuTTY 接続マネージャー (現在使用しているもの) で機能しないものとして、自動化されたログオン コマンドがあります。接続を確立した後、資格情報を自動で渡し、次に使用するその他のログイン後のコマンド (cd /tmp など) を渡します。
フィドラーを使用すると、キーを押すたびにルートディレクトリに投稿が送信されることがわかります。例:
そのため、そのセッション トークンをキャプチャすれば、wget または curl でテストして、そのセッションに投稿データを送信できるのではないかと考えました。うまくいきません...
私の質問は、次に何を試すべきかについての指針を誰か教えてもらえますか? 最後に、私の POC では、ページにボタンが必要です (別のページ内に上記のリンクを埋め込んでいます)。これにより、文字列のキーを押して送信できます (文字列を 16 進数で処理できます)。変換) コンソール ビューに直接変換します。次に何を試すべきか見当もつかないので、私はどうやらこれについての私の深さから外れているようです。shellinabox がコンソールに vt100 を使用していることは知っています。JS を調べましたが、js のどこでキーストロークを送信するかを見つけることができませんでした。また、shellinabox が埋め込まれたページを開いた後、そのページが使用している現在の「セッション」トークンを取得するにはどうすればよいですか?
ヘルプ/ポインタをいただければ幸いです。
c - シリアルライン編集
シリアル端末を備えたマイクロコントローラーで作業していて、文字をバックスペースできるようにしたいのですが、すでに入力バッファーで処理していますが、端末から削除するためにシリアル経由で何を送信すればよいかわかりませんエミュレーターでは、\b を送信するとカーソルが戻るだけです。¿誰もVT100でこれを処理する方法を知っていますか?
putty - VT100 / パテで CTR+I シーケンスを送信する方法
VT100 のシリアル コンソール経由でリモート サーバーにアクセスできます。CTR+I を押した後、起動中に利用できるいくつかの設定を変更する必要があります。
パテを使用してシリアル コンソール経由でこのキーの組み合わせを送信する方法はありますか。
ありがとう
perl - Linux @ Net::Telnet および vt-100 端末での Perl の問題
Net:Telnet について助けが必要です。VT-100 端末に接続しようとしています。コンソールから通常の telnet を使用すると、正常に動作します。接続してコマンドを発行することはできますが、perl から同じことを試みると接続しますが、何も起こりません。 >サイン)。私はすべての可能な方法を試しました-> print、cmd、putなどの方法を使用しましたが、成功せず、そのことに2日間立ち往生しました。
ここに私のサンプルコードがあります:
間違ったコマンドを入力すると、通常 telnet はエラー メッセージとプロンプトを表示しますが、Perl からは何もしません。入力ログは空、出力ログは空、ダンプ ログには以下のみが含まれます。
0x00000: 31 35 0d 0a 15..
他に何を試すべきかわかりません。
通常の telnet セッションの出力は次のようになります。
どんな助けでも大歓迎です
bash - 代替 vt100 文字セットの使用方法
http://www.in-ulm.de/~mascheck/various/alternate_charset/ Esc + )+によると0、G0 セット シーケンス テーブルが使用されるようになります。http://www.vt100.net/docs/vt100-ug/table3-9.htmlは、この「テーブル」が使用されているときに表示される文字の説明を提供しているようです。例えば。
...私が理解しているように、コンソールに±が表示されるはずです。ただし±は出ていません。代わりに表示されているのはg
.
そのため、これを CLI 環境で使用して ± を表示する方法は完全にはわかりません。
何か案は?