問題タブ [terminal-emulator]

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 投票する
0 に答える
44 参照

android - リモート サーバーと通信する ANandroid のターミナルのコーディング

「保留中」の状態だったため、追加情報を使用して質問を再構成しています。別の質問を削除します。

注文 (コマンド) を送信し、サーバーからの応答を受信できるコンソール (cmd など) であるアプリを構築しようとしています。

画面に表示されるのは、注文とサーバーの応答です。

この目的のために何をすべきですか?

で試していServiceます。ただし、サービスはネットワークでは機能しません。

AsyncTask最初のコマンドを送信すると終了します。そのため、注文を送信するたびに再接続する必要があります (非効率的ですか?)

IntentServiceアクティビティの寿命にバインドされています。そして、それと同じように終了Asynctaskします。

初めてサーバーに接続するスレッドを実行するにはどうすればよいですか。次に、スレッドにメッセージを送信するたびに、サーバーに接続し、サーバーから TextEdit の情報を取得しますか?


[保留中]状態の編集。さらに情報を追加する


ここに私が持っているものがあります:

  • Activitya (TextView端末プロンプトに使用)、a EditText(ユーザーが送信したいコマンドを入力できるようにする)、および aButtonを使用して送信します。
  • これActivityは、次のようにバインドされてServiceいます。

    /li>
  • Serviceサーバーと対話し、情報を に取得する必要があるTextViewため、次のように実装しました。

    /li>

controlOut は a PrintWriter、 controlIn aでありDataInputStream、どちらも次のように method で初期化さconnectれます。

だから私がやりたいことは次のとおりです。

  1. connectサービスを初めて実行するときにメソッドを使用してサーバーに接続します。
  2. リモート サーバーに注文を送信するたびmServer.sendMessage(command);に、Activity で行う必要があります。
  3. したがって、は RemoteとService対話し、応答を取得すると、は UI 更新のために への応答を取得します。ServerServiceActivity

Activity-Service-Thread/Whatever...私に知らせるよりも別の適切な方法がある場合は、助けてくれてありがとう. そして、あなたの忍耐に感謝します。

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

python - 端末の行と行

端末エミュレーターには行と行の概念があるようですが、それについてもっと知りたいです。

行と行の意味のデモンストレーション

以下の Python スクリプトは、3 行の「a」を表示して待機し、次に 3 行の「b」を表示します。

ここに画像の説明を入力

この休憩中に端末ウィンドウの幅を 1 文字狭くすると、次のように表示されます。

ここに画像の説明を入力

これはかなり妥当なようです。各行は個別にラップされています。もう一度エンターを押してbs を印刷すると、

ここに画像の説明を入力

すべてが期待どおりに機能します。私は絶対カーソル位置を使用し、以前に書き込んだのと同じ行に書き込みました - もちろん、すべての a を上書きするわけではありません。それらの多くは他の行にあるからです。

ただし、ウィンドウをさらに 1 文字狭めると、ラッピングの動作が異なります。

ここに画像の説明を入力

2 番目と 3 番目の行がb折り返されたのはなぜaですか? また、' の最後の行が b の最初の行と結合したのはなぜですか? 上の表示されている行に理由のヒントがあります - 2 つaの が表示されているのは、これらの 2 つの行がまだリンクされているためです - もちろん、ウィンドウを再度移動すると、その 1 つの行は同じように折り返されます。これは、行全体を置き換えた行でも発生しているようです。

以前に折り返されていた行が、対応する親行にリンクされていることがわかります。ターミナルを大きく広げると、それらが同じ論理行に属していることがより明白になります。

ここに画像の説明を入力

私の質問

実際には、私の質問は、この行が行に結合されるのをどのように防止または予測するかです。画面全体をクリアするとこの動作はなくなりますが、アプリケーションを大幅に高速化する行ごとのキャッシュを保持できるように、可能であればこれを必要とする個々の行に対してのみこれを行うとよいでしょう。行の最後までクリアすると、その行はその下の行からリンク解除されますが、行の先頭までクリアしても、その行からその行のリンクは解除されません。

私は興味があります - これらの行のものは何ですか? それらについてどこで読むことができますか?どの行が同じ行の一部であるかを調べることはできますか?

私は、tmux の有無にかかわらず、terminal.app と iterm でこの動作を観察しました。仕様がなくても、これらのいずれかにソースダイブすると答えが得られると思いますが、どこかに仕様があると思います!


背景: ユーザーがウィンドウの幅を狭めた場合に端末の折り返しが発生する方法を予測できる端末ユーザー インターフェイスを作成したいと考えています。tput smcup行の折り返しを防ぐために機能するフルスクリーンモード( 、または'、ncursesが使用するもの)のようなものは知ってpython -c 'print "\x1b[?1049h"いますが、ここでは使用したくありません。

編集:スクリプトの上書き動作をすでに理解していることをより明確にし、ラッピング動作の説明が必要です。

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

ios - telnet 経由で Fedora サーバーに送信された Ctrl-Z は、プロセスを停止しません

目的:

telnet プロトコルを介して Unix サーバーにアクセスするための iOS 端末エミュレーターに取り組んでいます。AIX と Fedora Linux の両方に対してテストしています。

問題:

Ctrl-Z (ASCII 26) を AIX サーバーに送信すると、期待どおりに動作します。 のような文字列が返され、stopped programnameさらに送信した文字がエコー バックされます。

Fedora サーバーに送信すると、もう一度 Ctrl-Z を送信するまでエコーバックが返されません。プログラムは、Fedora マシンの Bash で実行されています。

この動作の違いが見られるのはなぜですか?

0 投票する
0 に答える
5583 参照

javascript - 並列ビルドを有効にするには、「/m」スイッチを追加してください

このサンプルhttps://github.com/Gotox/node-webtermを実行したいのですが、コマンド npm install を実行すると、エラー メッセージが表示されます。

  1. https://github.com/TooTallNate/node-gyp#installationから参照されているように、python 2.7.3、windows 7 SDK をインストールしました。しかし、それでも同じエラーが発生しました。