問題タブ [ncurses]

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 に答える
5838 参照

c++ - Eclipse CDT を使用した ncurses のデバッグ

Eclipse CDT で ncurses を使用して C++ アプリケーションを作成していますが、Eclipse のコンソールが curses で動作しないため、Eclipse でアプリを実行/デバッグできません。端末から実行するとアプリは正常に動作しますが、新しいコードを追加したところ、セグメンテーション違反が発生しているため、Eclipse でデバッガーを使用して問題を解決したいと考えています。gdb で「tty /dev/pts/1」を実行するときと同じように、Eclipse でアプリケーションを実行/デバッグする方法はありますか?出力には別の端末を使用しますか? または、Eclipse で ncures アプリケーションをデバッグする他の方法はありますか?

事前にt​​hx!

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

c - 同時に他のことをしながらキーボードから入力を取得する方法は?

C (gcc) と ncurses を使用して、シリアル ポートからのデータを監視するプログラムを作成しています。プログラムにはwhile、ポートからのデータを読み取ると同時に、その情報を画面に出力する大きな .

しかし、問題はここにあります:

どうすればキーボードから入力を読み取ることができますか (getch()入力を取得するまでプログラムをフリーズするため)、同時にポートからの情報を読み取ることができますか?

多分私は別の方法を使わなければならないでしょう(大きなものではないwhile)ので、アイデアは大歓迎です!

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

c++ - ログデータを最新順形式で表示する

私は、ログ データを後から先に並べる形式 (ほとんどのブログやニュース サイトが投稿を整理するのと同じ方法) で保持するのが好きです。

私が最も使い慣れている言語は C++ と Python です。ログ データを画面 (stdout) またはファイルに出力し、最新のエントリが常に先頭に来るようにする方法はありますか?

tailまたは、スクロールアップではなくスクロールダウン方式で最新の行を表示するように変更する方法はおそらくありますか?

これには、ウィンドウシステムの ようなものが必要になるでしょうncursesか?

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

python - Linux:Python(ncurses)スクリプト、stdin、termiosにパイプします

どうやらこれは「Pythonでstdinから読み取るときの不正なパイプファイル記述子-スタックオーバーフロー」のほぼ複製です。ただし、このケースは少し複雑だと思います(そして、そのスレッドの結論がそうであったように、Windows固有ではありません)。

私は現在、Pythonで簡単なスクリプトを試しています。コマンドライン引数を使用して、スクリプトに入力を提供したいと思います。cursesまたは、このスクリプトに文字列を「パイプ」して、ターミナルインターフェイスを使用してスクリプトにこの入力文字列を表示させます。

ここでは、と呼ばれる完全なスクリプトをtestcurses.py以下に示します。問題は、実際の配管を試してみると、stdinが台無しになり、cursesウィンドウが表示されないことです。これが端末出力です。

私が見る限り、問題は次のとおりです。-文字列をPythonスクリプトにパイプするたびに、Pythonスクリプトはターミナルへの参照をとして失い、置き換えられたものは構造体ではなくなったstdinことに気付きます-そして、もはやターミナルではありません、何もレンダリングせずにすぐに終了します。stdintermiosstdincurses.initscr()

だから、私の質問は-簡単に言えば:構文echo "blabla" | ./testcurses.py -がパイプされた文字列をで表示することになるということをどうにかして達成できますcursesか?より具体的にはstdin、このスクリプトが「パイプ」されている場合でも、Pythonスクリプトから呼び出し元の端末への参照を取得することは可能ですか?

ポインタを事前に感謝します、

乾杯!

 

 

PS:testcurses.pyスクリプト:

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

c++ - ncursesを使用してUnixでキーが押されたことを確認する関数を作成します

私はこれに相当するものを探していて、kbhit()このテーマに関するいくつかのフォーラムを読んだことがありますが、大多数はncursesの使用を提案しているようです。

ncursesを使用してC++でキーが押されているかどうかを確認するにはどうすればよいですか?

getch()ncursesが提供する関数は、ウィンドウから文字を読み取ります。キーが押されているかどうかだけをチェックする関数を書きたいので、やりたいと思いますgetch()

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

c - なぜ複数の定義があるのですか? 他の参照が定義されていないのはなぜですか? これは本当に基本的なことですが、何が欠けていますか?

コンパイルする必要がある小さなプロジェクトがあります。作成した 1 つのヘッダーと 1 つのソース、およびヘッダーを含むほぼ空の driver.c があります。
観察:

今私の実装ファイル:

これで、ヘッダーを含み、メイン () を提供するドライバー:

私のbashコマンド:

私は戻ってきます:

これをコンパイルできる場所に到達し、すべてのセグ フォールトのために髪を引き裂き始めたいだけです。私のセットアップの問題は何ですか?私は Gnu C コンパイラで RTFM を実行しているようです。つまり、 iol.h で何かを宣言iol.c定義し、driver.c使用します。 2番目の目のセット:S 実際にはエラーの長いリストを取得しています.誰かがそれが関連していると思われる場合は、ソース全体を投稿させていただきます.

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

user-interface - Python 3 と互換性のある端末ウィジェット ライブラリはありますか?

ボタンやチェックボックスなどのウィジェットを提供する、python3 と互換性のある端末 UI ライブラリを探しています。

私はもう試した:

  • pycdk (python3でパイレックスが動かず、移植がめんどくさい)
  • urwid (python3 では動作しません。ポートはありますが、新しい curses インターフェイスではうまく動作しません)。

そのようなライブラリを知っている人はいますか?

ありがとう!

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

ncurses - curses で特定のスペースを占有しているキャラクターを保存するにはどうすればよいですか?

curses を使用して C++ で簡単なコンソール ゲームをいくつか作成しようとしています。私の最初のプロジェクトは、歩き回るための大きな部屋です。キャラクターは歩いているので、次のマスに行くと、そこにあったものを復元できます。問題は、特定の位置にある文字を変数に保存する方法がわからないことです。驚いたことに、curses の包括的なドキュメントが見つからないようです。私はこのような関数を探しています:

int storage = mvsavechar(1,1);

そのような機能は存在しますか?

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

c++ - セグメンテーション違反をブロックする (C++)

ncurses を使用していますが、segfault が発生するたびに、ncurses は端末の制御を適切に解放しません (endwin() が呼び出されなかったため)。シグナルハンドラーをセットアップしました:

しかし、これの問題は、endwin() の後まで遅延するのではなく、segfault が無視されることです。私は C++ にはかなり慣れていません。最終的にブロックできるように、セグメンテーション違反を例外のようにキャッチできますか? または、ハンドラー内から segfault を再送信する方法はありますか?

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

linux - 呪いの自動キーリピートを検出する

Linuxでcursesを使用して小さなテキストモードアプリケーションを書いています。

キーボード入力には、curses関数を使用します。キーの自動リピートは機能します。たとえば、キーを押したままにすると、キーをもう一度離すまで複数のキーイベントが発生します。

実際のキーイベントとキーリピートロジックによって生成されたイベントを区別することもできますか?

背景:このアプリケーションは、ユーザーが特定のパラメーターの整数を変更できる小さなデータ入力フロントエンドです。長期的には、アプリケーションは標準のキーボードがなくても動作します。データ入力用のボタンは、「増加」、「減少」、「OK」、「キャンセル」の4つだけです。

番号の範囲が広いので、ユーザーがキーを押しているかどうかを知りたいです。彼がそうする場合、私は私の数を1つ増やすのではなく、10またはおそらく100ずつ増やすことによって、私の数値範囲をより速くスキャンできます。

これはcursesのキーボード入力機能で可能ですか?