전체 화면 모드에서 실행되는 프로세스

전체 화면 모드에서 실행되는 프로세스

인터페이스가 터미널 기반인 채팅 애플리케이션을 개발하려고 합니다. 이를 위해 나는 screen및 명령을 사용했습니다 tmux.

그러나 유사점을 발견했습니다. 프레임/패널/창/창에서 충분히 위로 스크롤한 것처럼 내 명령이 전체 화면 모드에서 실행되지 않지만 여전히 기록과 셸을 시각화할 수 있습니다.

예를 들어, vi와 같은 전체 화면 모드에서 내 프로그램을 실행하려면 어떻게 해야 합니까?

감사해요!

답변1

그래서 당신은TUI(텍스트 기반 사용자 인터페이스) 애플리케이션? ~처럼TUI 위키피디아 페이지설명하다:

Unix 계열 운영 체제에서 TUI는 일반적으로 터미널 제어 라이브러리를 사용하여 구축됩니다.저주, 또는저주, 대부분 호환되는 라이브러리입니다.

간단한 상호작용 방법저주tput명령줄 도구를 사용하세요 . 이렇게 하면 전체 화면 모드와 관련된 특정 문제를 해결할 수 있습니다. 이는 일반적으로 보조 화면을 활성화하여 수행됩니다(적절한 터미널 에뮬레이터에서 이 화면을 제공해야 함).

tput smcup

현재 화면은 숨겨지고(예: 위로 스크롤하여 이전 출력을 볼 수 없음) 새로운 "새" 화면에 애플리케이션이 표시됩니다. 종료 후 홈 화면으로 돌아가려면:

tput rmcup

...모든 것이 원래 상태로 복원됩니다.

tput다른 기능의 예는 다음과 같습니다.

tput cup 23 4  # move the cursor to row 23, column 4 of your terminal

tput ed  # clear to end of screen

tput setaf 2  # set foreground color to bright green

tput cubl  # move cursor left one space

tput rev  # turn on reverse video mode

tput sc  # save the cursor position
tput rc  # restore the cursor position

man tput및 을 참조하십시오 man 5 terminfo. 후자의 경우 아래로 스크롤해야 합니다.사전 정의된 함수특히 부분.

다음과 같은 자세한 내용을 알아볼 수 있는 훌륭한 리소스가 온라인에 많이 있습니다.http://linuxcommand.org/lc3_adv_tput.php

tmux(위 내용은 이용 여부와는 아무런 관련이 없음을 알려드립니다.)

관련 정보