Mac 터미널 / iTerm에서 vim에 대한 부드러운 스크롤?


13

Mac OSX (Lion)의 터미널에서 부드러운 스크롤 (마우스 스크롤 휠 또는 맥북 터치 패드 사용)이 가능합니까? 또한, vim 내에서 이것을 할 수 있습니까?

부드러운 스크롤은 코드를 읽는 데 도움이되며 연속 픽셀 스크롤과 달리 개별 행으로 스크롤 할 수있을 때 좋아하지 않습니다.

감사


터미널 세션 ( code.google.com/p/macvim , macvim.org/OSX ) 에서 Vim 애플리케이션을 사용하는 대신 Vim 애플리케이션을 사용하면 더 나은 환경을 경험할 수 있습니다 . 터미널 내에서 사용해야하는 이유가 있습니까?
— Chris 페이지

3
MacVim은 부드러운 스크롤 기능도 제공하지 않습니다.
— romainl

안녕하세요 @romainl. 버퍼 크기 (윈도우 크기)가 실제로 큰 경우 (즉 전체 파일의 크기) vim이 어떻게 작동하는지 궁금합니다. 이것을 테스트해야합니다. 그런 다음 부드러운 스크롤 GTK (또는 QT) 위젯 안에 vim 버퍼를 넣고 위젯 내부의 vim 버퍼 전체를 부드럽게 스크롤 할 수 있습니다. 이것은 현대 편집자와 마찬가지로 커서를 쉽게 숨길 수 있다는 추가 이점이 있습니다. 사용자가 커서를 움직이면 위젯은 (동일한 API gVim을 사용하여) 스크롤 위치를 알 수 있습니다.
— trusktr

(계속) vim의 전체 파일 길이 출력을 새 위젯으로 복제하고 위젯을 적절한 위치로 부드럽게 스크롤하여 창 분할을 수행 할 수도 있습니다. 이것은 모두 간단한 산술과 멋진 위젯 툴킷에 대한 좋은 지식이 필요합니다. 창 분할 (수평 및 수직)과 스크롤 및 위젯 크기 조정은 다음과 같습니다. 나머지는 수행해야 할 케이크 조각입니다 (메뉴, 탭, gVim 및 qVim이 이미 수행 한 작업).
— trusktr

(계속) vim의 성능도 크게 향상시킬 수 있습니다. 콘솔 vim 또는 g / qvim 창 (현재)을 스크롤 할 때마다 vim은 화면의 거의 모든 문자를 다시 작성해야합니다. vim 버퍼가 전체 길이이고 스크롤이 부드러운 스크롤 위젯에 의해 독립적으로 처리 된 경우 vim은 커서를 새로운 행으로 또는 더 나은 단일 행으로 이동할 때마다 한 번에 한 행의 문자 만 업데이트하면됩니다. 한 문자 앞으로 또는 뒤로 이동할 때 문자). 이것은 vim에게 엄청난 성능 이점이 될 것입니다!
— trusktr

답변:


5

iterm2를 사용하고 있으며 터미널에서 vim 7.3을 사용하여 다음 옵션을 사용하여 매우 훌륭한 기능을 찾고 있습니다.

set mouse=niv #or set mouse=a
set clipboard=unnamed

편집 : set mouse = a 또한 다른 제안으로 표시된대로 사용하는 것이 좋습니다.

이 작업은 텍스트를 선택하는 동안 일반 모드에서 시각적 모드로 또는 삽입 모드에서 ((삽입) VISUAL) 모드로 자동 전환됩니다. 또한 줄 번호 또는 상대 줄 번호가 있으면 복사하지 않을 번호를 복사한다는 점에서 이러한 모드를 전혀 설정하지 않는 것보다 편리한 이점이 있습니다. 이 방법으로 마우스 사용 비주얼 모드로 전환하면 기본 터미널 선택 (억제됨)이 아닌 비주얼 모드 선택을 제어하기 위해 행 번호를 복사하지 않습니다. 스크롤은 선택을 시작한 곳부터 화면 맨 아래까지 모든 항목을 선택한다는 점을 염두에두고 전체적으로 잘 작동합니다. vim에서 ctrl + c / ctrl + v는 잊어라-vim yankypasta 명령 (y, yy, p,

http://vim.wikia.com/wiki/Mac_OS_X_clipboard_sharing#Comments

다시 말하지만, iterm2-osx의 내장 터미널은 휴지통입니다. 나는 이것이 단순히 vim이 작동하는 방식에 만족하기 때문에 줄 단위 스크롤로 쇠고기를 보지 못하지만 다른 사람들이 비디오 게임을하는 것을 볼 수없는 이유와 비슷한 이유로 멀미 또는 형광등과 CRT 모니터가 편두통 점으로 사람들의 머리를 깜빡 거리는 이유. 두뇌의 재생 빈도를 조정 해보십시오. 사원을 세게 눌렀을 때 손잡이를 느낄 수 있습니다.


0

나는 당신에 동의하지 않지만 여기에 당신이 원하는 것을 더하는 Terminal.app 플러그인 이 있습니다.

추가해야 할 수도 있습니다

set mouse=a

.vimrc에. 자세한 내용 :help mouse은 참조하십시오 .


불행히도 플러그인에는 SIMBL이 필요합니다. SIMBL은 Lion
— Eddy

나는 라이온이 없기 때문에 몰랐습니다. MouseTerm은 내가 들어 본 Terminal.app에 마우스 스크롤을 추가하는 유일한 방법입니다. 일부 사람들은 Lion에서 SIMBL을 사용하는 데 제한적으로 성공 했다고보고 한 것 같습니다. 또한 iTerm2가 "마우스보고"및 스크롤을 제공하지만 줄 단위로 스크롤한다는 것을 알았습니다. 보조 노트 I 거의 스크롤 (위 / 아래 / J / K) 이상으로 : 내가 발견 /, ?, fF, tT및 <C-f>/ <C-b>훨씬 더 유용합니다.
— romainl

이것들은 마우스 휠 스크롤을 작동 시키지만 주요 문제를 해결하지는 않습니다.
— Chris 페이지

이 유형의 스크롤 (한 줄씩)은 Vim에서 하드 코딩됩니다. 고맙게도 그 길은 없습니다. 정말로 필요한 경우 vim-dev 에 대한 신중한 말로 주장 하거나 패치를 제공해야합니다.
— romainl

부드러운 스크롤을 원하는 이유는 개별적으로 줄을 스크롤 할 때 내 자리를 잃는 경향이 있기 때문입니다. 이것은 설명하기 어렵다. 어쩌면 그것은 모든 사람에게 영향을 미치지는 않지만 나에게도 영향을 미칩니다
— Eddy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.