Откройте графическое окно, которое использует Ncurses - PullRequest
0 голосов
/ 11 января 2019

Допустим, я использую xterm или какой-либо другой эмулятор терминала поверх графической среды X Window. xterm на KDE, например. Я хочу написать приложение, которое может быть вызвано из командной строки одного эмулятора терминала, и после выполнения приложение создает окно new KDE / Environment, отдельное от текущего эмулятора терминала, и на этом новом окно запускает контекст Ncurses для прикладных целей.

Как бы я это сделал? Этот эмулятор терминала зависит? Среда рабочего стола зависит? Буду ли я использовать системные вызовы X Window?

1 Ответ

0 голосов
/ 12 января 2019

Зависит от терминала (эмулятора).

Curses работает в терминалах и эмуляторах терминалов. Большинство последних (эмуляторы терминалов) имеют какой-то способ указать, какую программу (кроме вашей оболочки) следует запускать в эмуляторе терминала.

Например, xterm можно указать с помощью опции -e,

   -e program [ arguments ... ]
           This option specifies the program (and its command line
           arguments) to be run in the xterm window.  It also sets the
           window title and icon name to be the basename of the program
           being executed if neither -T nor -n are given on the command
           line.

           NOTE: This must be the last option on the command line.

позволяет запустить xterm , работающий MyApplication , например:

xterm -e MyApplication

Опять же, большинство эмуляторов терминала, которые вы можете запустить в X, принимают эту опцию. KDE konsole делает это. Там нет руководства, но

konsole --help-all

показывает это в конце.

...