"gnome-terminal" 환경의 "vim"에서 마우스 지원 비활성화

"gnome-terminal" 환경의 "vim"에서 마우스 지원 비활성화

편집: 마우스 활성화 문제는 (버전 3.4.1.1-1, gnome 3 대체 모드를 사용하고 있음) vim에만 해당되는 것 같습니다 . gnome-terminal을 실행하면 xterm기본적으로 마우스 지원이 비활성화되며 활성화하거나( 절대로 수행하지 않음) 비활성화 vim하도록 선택할 수 있습니다 ( ). 대신 을 실행하면 마우스 지원이 기본적으로 활성화되며 비활성화할 수 있는 방법이 없습니다( 효과 없음). 터미널 에뮬레이터를 변경하는 것 외에 다른 해결책이 있습니까?:set mouse=a:set mouse=vimgnome-terminal:set mouse=


마우스 지원을 완전히 비활성화하고 싶습니다 vim. 저는 vim버전 2:7.3.547-3에서 gnome-terminal버전 3.4.1.1-1을 실행하고 있습니다. vim에서 직접 실행하든 내 .vimrc파일에 추가하든 다음 명령은 마우스 지원을 비활성화하지 못합니다.

set mouse =
set mouse =""

vim 매뉴얼과 온라인 게시물을 읽어보면 이 명령 중 하나 또는 둘 다 작동할 것입니다. 특히 vim 매뉴얼에는 다음과 같이 명시되어 있습니다.

'mouse'                 string  (default "", "a" for GUI, MS-DOS and Win32)
    The mouse can be enabled for different modes:
            n       Normal mode
            v       Visual mode
            i       Insert mode
            c       Command-line mode
            h       all previous modes when editing a help file
            a       all previous modes
            r       for |hit-enter| and |more-prompt| prompt 
    Normally you would enable the mouse in all four modes with: >
            :set mouse=a
    When the mouse is not enabled, the GUI will still use the mouse for
    modeless selection.  This doesn't move the text cursor.

저는 노트북에서 작업하고 있는데 트랙패드를 손으로 쓸어 넘길 때마다 vim의 커서 위치가 갑자기 움직입니다.

답변1

이 나쁜 동작에 대한 Linux 기반의 여러 가지 이유를 찾았습니다.

/usr/share/vim/vim80/defaults.vim # may be "vim81" depending on your vim version

그렇지 않은 경우 "소스"이지만 이와 같은 또는 파일이 ~/.vimrc있더라도 그렇지 않은 경우 @lgpasquale가 제안한 대로 빈 파일을 만드십시오./etc/vimrc/etc

mkdir ~/.vim/; [[ -s ~/.vim/vimrc ]] && echo "aborted, file exists" || :> ~/.vim/vimrc

defaults.vim에서 제공하는 추가 기능(예: 구문 강조)이 마음에 들면 이전 명령 대신 이 명령을 사용할 수 있습니다.

mkdir ~/.vim/; [[ -s ~/.vim/vimrc ]] && echo "aborted, file exists" || echo -e "source /usr/share/vim/vim80/defaults.vim\nset mouse=" > ~/.vim/vimrc

답변2

마우스 지원은 기본적으로 비활성화되어 있으므로 무언가가 켜져 있습니다. 실패하는 이유 set mouse=는 아마도 시작하기 전에 실행 중이기 때문일 것입니다. vimrc의 나머지 부분과 아마도 시스템 전체 vimrc( /etc/vim/vimrc표준 위치)를 살펴보겠습니다 .

최후의 수단으로 이 매우 추악한 해킹을 수행할 수 있습니다. 이 해킹을 수행하면 편집기를 제어하기 전에 완료된 마지막 작업 중 하나로 명령이 실행됩니다.

autocmd BufEnter * set mouse=

답변3

Fedora Server 25 호스트의 OS X "터미널" 응용 프로그램에서 이 문제가 발생했습니다. 나는 이것을 .vimrc에서 영구적으로 수정했습니다:

set mouse=
set ttymouse=

이제 마우스를 사용하여 터미널 스크롤백에서 이전 bash 기록까지 스크롤할 수 있습니다.

답변4

새로운 Vim의 마우스 감도에 대한 귀하의 불만을 공유합니다. 그것은 set mouse=""나에게도 효과가 없습니다.

set mouse=c내 파일은 하단 근처에 (따옴표 없이) 있습니다 .vimrc. 이것은 "PuTTY"를 사용하여 내 (어!) Windows 컴퓨터에서 ssh를 사용하지 않는 한 Vim이 마우스를 사용하는 것을 방지하는 것 같습니다. PuTTY에 붙여넣으려면 Shift-가운데 버튼을 사용해야 합니다.

:mouse=2018-03-30 편집: 이제 원치 않는 마우스 효과를 제거하기 위해 일부 원격(CentOS 6.7) vim 인스턴스에서 (따옴표 없이)을 사용하기 시작했습니다 .

관련 정보