터미널에서 가로 스크롤

터미널에서 가로 스크롤

그래서 나는 이미 두 가지 질문이 있다고 생각합니다. 이 모든 것이 관련이 있으므로 tail -f"덜 사용"이라는 접선적인 대답이 됩니다.

모든 작업, 모든 명령 등을 수행하는 데 필요합니다. 문제는 많은 콘솔 창을 실행해야 하고 여러 모니터를 사용하더라도 여전히 창을 줄여야 한다는 것입니다. 결과적으로 거의 모든 출력이 개행 문자로 인해 손상되어 읽기가 어렵습니다.

제안된 해결책 중 하나는 echo -ne '\e[?7l'어느 정도 작동한다는 것입니다. 이제 문제는 콘솔에 스크롤바를 표시할 수 있는 방법이 있느냐는 것입니다.

우분투 12.10, 터미널

답변1

귀하가 요구하는 것은 일부가 표시되는 무한 너비 터미널입니다. 이는 터미널이 전통적으로 작동하는 방식도 아니고 애플리케이션이 작동할 것으로 기대하는 방식도 아닙니다.

예를 들어, 터미널의 너비가 무한하다면 화면 중앙에 무언가를 표시하려고 할 때 시각적 응용 프로그램은 어떻게 작동합니까?

하지만 할 수 있는 일은 GNU를 사용하고 screen(화면이 더 큰 터미널의 작은 창을 표시하는 방법을 알 수 있도록 다양한 크기의 여러 터미널에서 스크린 세션을 연결할 수 있어야 함) screen창 너비를 실제로 큰 값으로 설정하는 것입니다. 그런 다음 화면 너비가 원래 너비인 것처럼 시각적 응용 프로그램을 속입니다.

좋아요 (내부 screen)

c=$COLUMNS # assuming your shell has that variable
screen -X width -w 1000
stty cols "$c"

일부 비전 앱은 잘 작동하지만 일부는 그다지 잘 작동하지 않습니다(상대 위치 지정을 수행하거나 설치 시 터미널 패키징에 의존하는 경우). vim잘 작동하는 것 같습니다.

screen그런 다음 데이터를 스크롤하고 복사하여 붙여넣으려면 's'를 사용하는 것이 유일한 옵션입니다.복사모델. ( <prefix>]) 및 커서 주위로 이동( info -f screen -n Movement참조복사모델).

tmux비슷한 능력을 가지고 있을 수도 있습니다.

이것terminator터미널 에뮬레이터(자바 기반) 이것은 아닙니다terminator우분투와 함께 제공이는 무한한 터미널 너비로도 수행할 수 있습니다.

  • 줄은 절대로 줄지어 서지 않습니다
  • 비전 애플리케이션에서는 화면 너비가 무한대가 아니라 창에 맞는 너비라고 알려줍니다.
  • 또한 terminfo 항목이 줄 바꿈을 수행하지 않는다고 주장하므로 위 기반 솔루션보다 더 잘 작동합니다. screen따라서 응용 프로그램은 이를 알고 줄 시작 부분의 BS는 이전 줄의 끝으로 이동하지 않습니다.

답변2

Emacs는 기본적으로 편집기이자 IDE이지만 귀하의 문제에 완벽하게 맞습니다. Emacs 창 내에서 프로그램을 실행할 수 있으며 Emacs는 이를 너비와 높이가 무제한인 멍청한 터미널에 표시합니다. 커서가 버퍼 끝에 있으면 프로그램이 출력을 생성할 때 창이 스크롤됩니다. 커서를 이동하면 출력이 커져도 창은 그대로 유지됩니다.

Emacs 버퍼에서 쉘을 시작하려면 M-x shell RET(예: Alt+ ) 를 입력하십시오 . 다른 쉘을 x shell Return입력 C-u M-x shell RET하거나 M-1 M-x shell RET시작하십시오. 각 셸에서 프로그램을 실행하고 필요에 따라 여러 창에 버퍼를 배열할 수 있습니다.

¹ 때때로 사람들은 이것이 편집기보다 더 나은 운영 체제라고 말하지만 그것을 사용하지 않는 사람들만이 그렇게 말합니다. 그것은 단지 농담일 뿐입니다.

관련 정보