問題タブ [stty]

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.

0 投票する
2 に答える
2144 参照

linux - stty の XON/XOFF 設定を永久に無効にする方法は?

シリアル コンソールを備えた組み込みデバイスで作業しています。コンソールが突然ハングし、何も反応しないように見えることがわかりました。同じケーブルを別のデバイスに接続すると、正常に動作します。いろいろ調べた結果、この原因となっている XON/XOFF フラグについて知りました。コンソールに '^S' 文字が入力されてフリーズしました。これを理解した後、「^Q」と入力してコンソールのロックを解除できました。しかし、コンソールが再び突然ハングします。私の質問は、システムで XON/XOFF を永久に無効にすることが可能かどうかです。もしそうなら、どのように?

0 投票する
1 に答える
379 参照

java - シンプルな raw ターミナル プログラム ウィンドウ

ユーザーがJavaでEnterキーを押さずに入力できるようにする必要があります。私が知る限り、これは避けたいJNI/JNAなしでは実行できません。だから私はこれを行うことができ、再度呼び出されたときに元に戻すことができる小さなプログラムを探しています(おそらく異なる引数で?)任意の言語(できればコンパイルされたもの)である可能性がありますが、MSビジュアルなしでコンパイルできることが望ましいですむしろそれをインストールしたくないからです。

stty raw基本的に、Java から呼び出すことができるWindows に相当するものはありますか?

0 投票する
3 に答える
3023 参照

shell - Go でフルスクリーンのターミナル アプリケーションを作成する

全画面端末アプリケーションを構築しようとしています。私は選択した言語として Go を使用しています。から読み取るos.Stdin方法はわかりましたが、端末ウィンドウをクリアしてカーソル位置を操作する方法がわかりません。また、端末入力を印刷せずにキャプチャしたい(エコーバック)。

私の質問は次のとおりです。

  1. 列/行座標を使用して効果的にクリアして端末に出力するにはどうすればよいですか?
  2. 端末が押されたキーを印刷しないようにするにはどうすればよいですか

私の意図:

独自の UI をレンダリングし、内部で入力 (ホット キー/ナビゲーション/など) を処理するフル スクリーン ターミナル アプリケーションを作成したいと考えています。

この種のユースケースをカバーするライブラリがあれば、遠慮なく提案してください。

0 投票する
1 に答える
467 参照

linux - シリアル USB で必要な Linux stty コマンド ラグ ヘルプ

USBシリアル接続でRaspberry Piを使用しているため、Raspberry Piにはハードウェア照明ボードに接続されたUSBリードがあります。

このUSB接続で多くのシリアルコマンドを送信すると、時々速度が低下し、次のシリアルコマンドが通過しない可能性があるようです。送信されたシリアルコマンドに遅延を置くと、部分的に役立つようです。 Windows から同じことを行うと、遅延の問題はありません。

シリアル USB ハードウェアが機能するために必要なパラメータを設定しました。

ラグがないウィンドウでは、次を使用します。

Linux で他の同様のパラメーターを設定しても、まだ遅延があります。- stty コマンドに関する質問です。USB ポートに設定して、送信されたシリアル コマンドを即座に終了し、複数のインスタント シリアル コマンドを送信できるパラメータまたは設定はありますか。そのため、3 つが一緒に送信された場合、それらをキューに入れるか、3 つすべてを順番に許可します。

「man stty」を見て、いくつかのオプションを試しましたが、役に立たなかったので、経験豊富な解決策を探しています。

または、一度に送信される多くのシリアル USB コマンドに対してより高速またはより適切に動作する、stty に代わるものがあります。

ところで、私はPHPを使用して次のようなシリアルコマンドを送信しています:

これは問題ではないと思います。ありがとう。

0 投票する
1 に答える
11356 参照

bash - シリアルポートから読み取り、16 進数で保存

シリアル ポート経由でステータス メッセージを継続的に送信する vhf ラジオがあり、メッセージを 16 進数データとしてテキスト ファイルに保存する必要があります。

以下のようにhexdumpコマンドを試してみたところ、vhfラジオから取得したデータは正しいのですが、このスクリプトを実行すると、ctrl-cを押すまで終了しないという問題があります

だから私は次のように読み取りコマンドである別のコマンドを試しました:

しかし、file2.txt に保存されているデータは正しくありません。

無線から受信したメッセージは、無線プロトコル ドキュメントに従って解釈できる形式ではありません。したがって、データが正しくないと言ったのは、メッセージを解釈できなかったことを意味します (ランダムに受信されました)。

次のように、両方のスクリプトを実行する前にシリアルポートを設定したことに注意してください。

だから、これを理解するのを手伝ってください。または、シリアルポートから読み取る別の方法を教えてくれました。

よろしく、

0 投票する
1 に答える
478 参照

java - jline2 は、telnet コンソールで "\n" を出力すべきときに "^J" を出力します

JLine 2 (v2.13) を Socket IO と組み合わせて使用​​し、通常の telnet クライアント経由でアクセスできるアプリ用の管理コンソールを作成しています。ただし、改行を出力する必要があるときに奇妙な記号を出力することがわかりました。

正しい出力は次のようになります。

コードをたどると、問題の原因となった次のコード行が見つかりました。

ここに画像の説明を入力

もう 1 つの奇妙な点は、上向き矢印を押して履歴を取得すると、コンソールが出力され^[[A、他に何も起こらないことです。

誰にもアイデアはありますか?

更新:関連するソースコードを追加

  1. 着信 telnet 接続を受け入れるコード:

ここに画像の説明を入力

  1. ConsoleReaderを作成してコマンドをディスパッチするコード:

ここに画像の説明を入力

更新 2

すいません、いつの間にか消えてました。私のプロジェクトが私に新鮮な空気を吹き込んでくれるので、戻ってきてください。だからここに何が起こったのですか:私は作成し、問題PrintWriterの回避策としてそれを使用しました:^J

ここに画像の説明を入力

jline2ただし、 を telnet セッションと一緒に使用すると、他にも多くの問題があります。

  1. タイプ<TAB>は、完全なリストをアクティブにする代わりにタブを表示します。ただし、Enter キーを押すと、完全なリストとエラー メッセージが表示されます。 ここに画像の説明を入力
  2. 矢印<UP>を入力して を表示し^[[A、Enter キーを押すと、最後のコマンドが実行されます。ただし、コマンドライン編集を失いました

問題はまだ残っており、ガイドが必要なだけで解決する方法があるはずだと思います...

0 投票する
1 に答える
137 参照

terminal - ホストは文字を制御する必要がありますか? どれ?

RS-232 をシリアル端末と通信する「全二重」スタイルの組み込みシステムを構築しているため、ホストは端末が送信する内容をエコーし​​ます。

printables (少なくとも ASCII 0x20 から 0x7E) が通常エコーされることは知っていますが、このような場合、どの制御文字 (存在する場合) が通常エコーされるのでしょうか?

これにはPosixまたはその他の標準がありますか?Linuxはどのようにそれを行いますか?

たとえば、ターミナルで ^C と入力した場合、ホストは ^C をエコーする必要がありますか? ^G (ベル) はどうですか? 等?