/ / OS X: c ++ xcode ncurses преоразмеряване на терминала - c ++, xcode, macos, terminal, resize

OS X: c ++ xcode ncurses преоразмеряване на терминала - c ++, xcode, macos, терминал, преоразмеряване

с ncurses.h, мога да създам C + + проект в OS X.

Ето един пример:

int main(int argc, char *argv[])
{
// resizeterm(50, 50);
initscr();
// resizeterm(50, 50);
move(10, 10);
printw("%c", "x");
return 0;
}

Съставям го в терминала:

g++ -std=c++11 main.cpp -o main.o
g++ -std=c++11 -lncurses main.o

След това получавам изпълнимия файл: a.out.

Сега, ако пиша ./a.out в терминала, терминалът ще отпечата x в позиция (10, 10).

Сега искам да променя размера на терминала. Това означава, че когато бягам ./a.out, Мога веднага да получа терминал с размера, който зададох. Google ми даде функция: resizeterm(int, int), Но това не работи.

Когато отворя терминал, размерът му е 80 * 24 по подразбиране.
След това изпълнявам ./a.out, размерът на терминала не се променя. Той винаги е 80 * 24.

Отговори:

0 за отговор № 1

ncurses реакция по до събития за промяна на прозореца, т.е., SIGWINCH, Това е така не преоразмерете терминала (вижте ръководството за resizeterm).

Xterm а някои други емулатори на терминали отговарят на последователност на евакуация, която я кара да преоразмерява. Можете да го упражнявате с помощта на програмата resize, например,

resize -s 40 80

да направите 40 реда от 80 колони. На OSX, Terminal.app отговаря на тази последователност на бягство. iTerm 2 не.