iTerm2에서 "이력 스크롤"을 끄려면 어떻게해야합니까


290

새 iTerm 2를 설치했습니다. 마우스 기능을 활성화 할 것인지를 상단의 노란색 막대로 표시했습니다. 불행히도 나는 더 이상 정확한 문장을 기억하지 못한다.

우연히 나는 승인했다. 이제 iTerm에서 마우스의 스크롤 휠을 사용하면 더 이상 위로 스크롤되지 않지만 대신 명령 기록이 트리거됩니다. 위로 커서를 누르는 것처럼

다시 끄는 올바른 설정을 찾을 수 없습니다. 누구 든지이 옵션을 토글 할 수있는 곳을 알고 있습니까?

도와 주셔서 감사합니다!


3
나는 당신이 iTerm2.9를 사용한다고 가정하고, 당신이 본 메시지는 "이와 같은 대화식 프로그램에서 스크롤 휠이 커서를 움직이기를 원합니까?"라는 것입니다. 문제?
sel-fish

1
예. 그러나 ssh를 통해 서버에 로그인 한 경우에만 가능합니다. 이것이 어떻게 연결될 수 있는지 모르겠습니다.
Gambo

"ssh를 통해 서버에 로그인 한 경우에만"로컬 작업에 iTerm2를 사용할 때 발생하지 않는다는 의미입니까? 'ssh를 통해 서버에 로그인 할 때'다른 '프로필'을 사용합니까?
sel-fish

대체 화면을 켜거나 끄려면 터미널 제어 문자가 전송되어 있어야합니다. 나는 그 제어 특성이 무엇인지 배우는 것이 더 나은 장기적이라고 생각합니다 (iTerm2 또는 vim 이하에 국한되지 않음). 그것은 수 ESC [ ? 1 0 4 9 l또는 ESC [ ? 1 0 4 7 l또는 ESC [ ? 47 l( gnu.org/software/screen/manual/html_node/Control-Sequences.html )
dlamblin

2
이것은 방금 나에게 무작위로 발생하기 시작했다 .. 당신이 로그를 살펴 보려고 할 때 좌절
SgtPooki

답변:


493

iTerm2를 포함하여 몇 단자, 전체 화면 등의 프로그램 때 휠 마우스의 동작을 변경할 수있는 기능이 vi, 또는 screen이상이 tmux실행됩니다. 이러한 프로그램이 대체 화면 을 사용하여 유용한 기능을 제공 할 때 발생 합니다. 일반적으로 iTerm2에서 대체 화면을 사용할 때 휠 마우스는 스크롤바처럼 작동하여 전체 화면을 위 / 아래로 스크롤합니다. 그러나이 기능이 활성화되면 iTerm2는 커서 위 / 아래 키를 전송하여 명령 기록을 변경합니다.

다른 의견에서 제안한대로 기본 설정 메뉴를 선택하십시오 .

여기에 이미지 설명을 입력하십시오

그런 다음 고급 탭을 선택 하십시오. 마우스 섹션으로 스크롤하여

여기에 이미지 설명을 입력하십시오

에 대한 항목을 토글

대체 화면 모드에있을 때 스크롤 휠이 화살표 키를 보냅니다.

없음 . 변경 사항을 적용하려면 iTerm2를 다시 시작해야합니다. (iTerm2 v3.1.5에서는 변경 사항이 다시 시작되지 않고 적용됩니다.)


2
주석을 작성하기 전에 테스트했습니다. 옵션을 전환하는 것만으로는 충분하지 않습니다.
Thomas Dickey 2016 년

버전에 따라 다를 수 있습니다. 3.0.2에서는 전환이 충분합니다. 실제로 대체 화면 모드에 있고이 설정이 꺼져 있고 마우스로 스크롤을 시도한 다음 위 또는 아래 화살표 키를 누르면이 기능을 켜도록 프롬프트가 표시됩니다. 터미널 창.
George

3
이를 적용하기 위해 3.0.12를 다시 시작할 필요는 없습니다.
dhempler

21
//이 기능이 마음에 들어 Vim에서 사용합니다. 주어진 터미널 창에서 대체 화면 모드를 어떻게 종료 합니까? 업데이트 : 대체 화면 모드 인 터미널에서 대체 화면 모드를 활성화하는 터미널 프로그램을 엽니 다. 해당 프로그램을 깨끗하게 종료하십시오. 일시적으로 문제가 종료됩니다. 대체 화면 기능을 비정상적으로 사용한 프로그램을 종료하여 문제가 발생한 것 같습니다.
Nathan Basanese

6
선생님, 당신은 순수한 광기에서 저를 구했습니다.
BK

60

스크롤 히스토리 모드에있는 경우 vi실행하여 직접 빠져 나와서 직접 종료 할 수 있습니다. 대체 화면을 사용하고 직접 종료하는 다른 프로그램을 선택할 수도 있습니다.

이론 상으로는 마우스 휠로 히스토리를 스크롤해서는 안됩니다. 때로는 대체 화면 모드가 올바르게 다시 전환되지 않기 때문에 실제로 발생합니다. 허용 된 답변은 마우스 휠이나 트랙 패드로 vi, less, ...로 스크롤하는 유용한 기능을 비활성화하여 문제를 해결합니다. 고급 환경 설정에서 옵션을 유지할 수 있습니다.

대체 화면 모드에있을 때 스크롤 휠이 화살표 키를 보냅니다.

yes로 설정하십시오. 때때로 스크롤 히스토리 모드에 갇히게됩니다. 그러나 탈출하는 방법을 알고 있다면 문제가되지 않습니다.


2
충고 감사합니다! 이것은 나를 도와 주었다 :)
jj172

1
고마워요! 그러나 vi에 들어가고 나가는 것이 어떤 이유로 든 도움이되지는 않았지만 man 페이지를 입력하고 q를 눌러 종료했습니다.
Frax

1
이것은 매우 도움이되었습니다. 스크롤 갑자기 추가 모든했다 [[A^[[B^명령 줄에 대신 스크롤 창을여십시오. 나는 이것이 정상적인 행동이 아니라는 것을 알고 있었다. 그 전에 nano랩톱을 종료 할 때 연결이 끊긴 SSH 셸에 컴퓨터를 남겨 두었습니다 . 그 갑작스러운 출구는 분명히 범인이었습니다. iTerm2에서 새 탭을 열기 만하면 문제가 해결되었습니다.
콜린 마샬

불행히도이 screen트릭을 사용 하여 대체 화면 모드를 종료 할 수는 없습니다. 따라서 screen(나처럼) 많이 사용 하는 경우 기능을 모두 비활성화하면 생명을 구할 수 있습니다.
mvreijn

환경 설정에서이 기능을 사용하지 않도록 설정하는 것은 나에게 좋은 옵션이 없었다가, 트랙 패드와 전체 화면 응용 프로그램을 탐색하는 것은 매우 유용하기 때문에 나는이 대답을 선호합니다 :) 들으을 :)이 팁을 공유
패트릭 페레이라

42

대체 콘솔에서 나가야 할 수도 있습니다.

시험: tput rmcup


1
위대한 답변 A + 💯
dps

훨씬 더 나은 대답-이것은 vim에서 스크롤 할 수있는 동안 기록을 스크롤 할 수있게합니다. 감사!
JonLuca

10

기본 설정 : 고급 : 마우스 : 스크롤 휠은 대체 모드 일 때 화살표 키를 보냅니다.


2
이 같은 정확한 문제가 설명되어 있지만 최신 iTerm 마우스에는 Prefences : Advanced가 없습니다. 트리거, 현명한 선택 및 시맨틱 이력. 누구든지 이것을 고칠 다른 방법을 알고 있습니까?
mikeLspohn 2016 년

9

iTerm2를 사용하면 휠을 vim에서 계속 작동시키려는 경우 스크롤 휠을 사용하여 창 스크롤을 강제 실행하는 동안 Option을 누르고있을 수도 있습니다.


이것은 작동하지만 옵션 키를 누를 필요가 없었을 때 detaults로 돌아가려면 어떻게해야합니까
meso_2600

2

표시되는 동작은 대체 화면에있을 때 예상되는 올바른 동작입니다. 당신이 가지고있는 유일한 문제는 연결을 잃어 버렸거나 사망 한 vim 이하에서 대체 화면에서 bash 또는 무엇이든 떨어 뜨린 것입니다. 예를 들어less +F /var/log/something 연결이 끊어졌습니다.

당신은 누군가가 이미 tput rmcup 명령을 실행하면 메인 화면으로 나갈 것입니다.

나는 또한 터미널 제어 문자를 찾아 보았다. 그것은 중 하나가 될 수 있습니다 : ESC [ ? 1 0 4 9 l또는 ESC [ ? 1 0 4 7 l또는ESC [ ? 47 l (gnu.org/software/screen/manual/html_node/Control-Sequences.html) 처음에 우선하여.

와 나는 iTerm2 일반적으로 성공적인있어 echo -e '\e[?1049l'실제로 발견하지 않습니다 rmcup쉽게 어떤 기억 콘솔의 메모리를 복원?


1

나는이 같은 문제가 있었고 내가 읽고 시도한 해결책 중 어느 것도 효과가 없었다. 내 문제는 Secure Keyboard Entry를 끄는 문제를 해결했으며 이제 마우스를 사용하여 ssh 및 macOS 10.13의 터미널 모드에서 마우스를 스크롤하면 예상대로 작동합니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.