問題タブ [readline]

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

jython - Jython インタラクティブインタープリターセッションの JLine を非アクティブ化するには?

Jython 2.5 には、デフォルトで JLine が付属しています。

rlwrapで対話型インタープリターを使用することをお勧めします。JLine がアクティブな場合、rlwrap が機能していないようです。

Scala では、 を使用しますrlwrap scala -Xnojline

Jython が JLine を無効にする同様のオプションはありますか?

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

python - Python: サブプロセス モジュールを使用して、別のコマンドライン アプリケーションで読み書きできません

Windows で Python 3.0 を使用しており、コマンドライン アプリケーションのテストを自動化しようとしています。ユーザーは Application Under Test にコマンドを入力でき、出力が 2 つの XML パケットとして返されます。1 つはパケットで、もう 1 つはパケットです。これらのパケットを分析することで、結果を検証できます。私は以下のようにコードをahev

出力を戻すことができません。readline() を使用して出力を読み取ろうとした場所でスタックします。read() を試しましたが、それもスタックします

コマンドライン アプリケーションを手動で実行してコマンドを入力すると、出力が以下のように 2 つの xml パケットとして正しく返されます。

しかし、以下のように communicate() を使用すると、Sent パケットを取得し、Recv: パケットを取得しません。recv パケットが見つからないのはなぜですか? communicate(0 は stdout.rt?

動作するはずのサンプル コードを手伝ってくれる人はいますか? 別のスレッドで読み書きする必要があるかどうかはわかりません。私を助けてください。読み取り/書き込みを繰り返す必要があります。私が使用できるPythonの高度なレベルのモジュールはありますか。Pexpect モジュールが Windows で動作しないと思います

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

python - readline に履歴を残さずに raw_input

タブ補完時に表示されないように、readline履歴に記号を残さずにraw_inputを使用する方法はありますか?

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

python - Python の readline を使用した引用符付きの行の処理

引数のスマートな補完を提供するために readline を使用する単純なシェルのようなプログラムを作成しました。スペースを含み、1 つの引数として示すために引用符で囲まれた引数をサポートするメカニズムが必要です (シェルにそのようなものを提供する場合と同様)。

shlex.split() が引用符で囲まれた引数を解析する方法を知っていることを見てきましたが、ユーザーが入力の途中で完了したい場合は失敗します (たとえば、「complete "Hello 」は、shlex に渡されたときに例外がスローされます)。 、引用符のバランスが取れていないため)。

これを行うためのコードはありますか?

ありがとう!

0 投票する
8 に答える
2174 参照

python - CSVファイルを逆方向​​に解析する

次の形式のcsvファイルがあります。

問題は、最初のフィールドにコンマ「、」が含まれていることです。ファイルの生成は、受信する形式であるため、制御できません。CSVファイルを行末から先頭まで逆方向に読み取る方法はありますか?

私が正しい方向に導かれていれば、そうするための小さなpythonスクリプトを書いてもかまいません。

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

bash - bash で単語区切り文字を変更する

単語を区切るために bash (または readline) が使用する区切り記号を変更したいと考えています。'-'具体的には、単語を区切らないようにしたいので、テキストがある場合

それを押すと、文字だけでなくテキストAlt-Backspace全体が削除されます。これにより、キーを 1 回押すだけで、より速く簡単に長いフラグを削除することもできます。some-file'-'--group-directories-first

これがzshの振る舞いだと思いますし、bashも同じように振る舞いたいと思っています。

0 投票する
5 に答える
3171 参照

python - Pythonでこのreadlineループの速度を向上させる方法は?

Databasedumpのいくつかの部分をテキスト形式でMySQLにインポートしていますが、問題は、興味深いデータの前に、興味深いものが非常に多くあることです。必要なデータを取得するために、このループを作成しました。

テキストファイルはかなり大きいので、最初に必要なエントリまでループするだけでも非常に時間がかかります。これをもっと速くできるかどうか(または私が修正した方法全体が最善のアイデアではない場合)、誰もが考えていますか?

よろしくお願いします!

0 投票する
4 に答える
33968 参照

c# - C# - StreamReader.ReadLine が正しく動作しない!

BufferedStreamReader単純に、Java で行うことを実装しようとしてきました。ソケット ストリームを開いていますが、それを行単位で読み取りたいだけです。

次のサーバーコードがあります。

そして、次のクライアントコード:

サーバーは最初の行 ( login>user,pass)のみを読み取り、 ReadLinenull を返します。

Java のような行指向のリーダーを実現する最も簡単な方法は何BufferedStreamReaderですか? :s

0 投票する
6 に答える
5340 参照

c# - C#ReadLine()を関数呼び出しの次の行に進めます

私のC#アプリでは、7桁の文字列が1行ずつ区切られた単純なテキストドキュメントをReadLine()にフィードしようとしています。私がやろうとしているのは、関数が呼び出されるたびに次の7桁の文字列を取得することです。これが私がこれまでに持っているものです:

invoiceNumberFunc()が呼び出されるたびに次の行に進むにはどうすればよいですか?

前もって感謝します。

0 投票する
6 に答える
5369 参照

c - GNU Readline:入力行をクリアする方法は?

次のようなコールバック関数を登録することにより、GNUReadlineを「選択」方式で使用します。

そして、のループrl_callback_read_charのコールバックとしてフックアップします。それはすべてかなり標準的なものであり、正常に機能します。select()STDIN_FILENO

現在、私のプログラムはメッセージを非同期で画面に出力し、ユーザーからの入力とインターリーブされることもあります。「クリーンな」セッションは次のようになります。

しかし、サーバーの応答が到着したときにユーザーが回線の途中にいる場合はどうなるでしょうか。それからそれは醜くなります:

これを修正するには、ユーザーが何かを入力した場合はサーバー出力の前に改行を出力し(これはチェックすることで簡単にわかりますrl_line_buffer)、rl_forced_update_display()サーバー出力を印刷した後に実行します。これで、次のようになります。

これは優れていますが、それでも完璧ではありません。問題は、ユーザーが行全体を入力したが、まだEnterキーを押していない場合に発生します。その場合、次のようになります。

ユーザーには3つのコマンドを入力したように見えるため、これは悪いことです(3つの入力に対する3つの応答は、実際に起こったことである2つの入力に対する3つの応答と同じくらい可能です)。

厄介なハック(これは機能します)はこれを行うことです:

の代わりにバックスペース('\ b')文字を印刷することでこれを改善できると思いまし" - INCOMPLETE"たが、それは私のターミナル(Ubuntu Hardyのgnome-terminal)ではまったく何もしないようです。 なんらかの理由で、printf("ABC\b");ただ印刷します。ABC

では、どうすれば不完全な入力行を消去できますか?なんらかの方法でバックスペースを印刷するか(印刷する数を把握できます-それはstrlen(rl_line_buffer))、またはまだ知らないReadline機能を使用しますか?