26

Я хотел бы использовать мышь в Vim только для прокрутки (не для того, чтобы включать другие режимы Vim или иным образом взаимодействовать с Vim). Использование :set mouse=a - это операция «все или ничего», это можно изменить? В качестве альтернативы можно сделать так, чтобы iTerm проходил только через события прокрутки и никогда не щелкал / перетаскивал события?

Длинное объяснение: я часто использую Vim в iTerm и не пользуюсь мышью. Тем не менее, инерционная прокрутка с помощью трекпада действительно хороша и является отличным способом просмотра больших файлов. Я могу :set mouse=a и использовать трекпад для прокрутки, и это здорово. Теперь, когда я нажимаю, vim входит в визуальный режим, и iTerm не будет копировать выделенный текст. Я хотел бы сохранить возможность iTerms для выбора и копирования текста.

Я думал о настройке Vim так, чтобы копирование в vim копировало в Mac OS X (используя pbcopy, мне все равно нужно это делать). Это поможет при редактировании локальных файлов, но большую часть времени я где-то в ssh и редактирую удаленные файлы.

5 ответов5

38

Вы могли бы использовать

:set mouse=nicr

Это работает только с прокруткой мыши, как я тестировал.

17

Если вы set mouse=a , вы все равно можете использовать Option -click, чтобы сделать выбор в iTerm. Не идеально, но это лучший вариант, который я нашел.

1

Я не уверен насчет iTerm, но это возможно с Terminal.app.

  • Прокрутка в Terminal.app:

http://ayaz.wordpress.com/2010/10/19/using-mouse-inside-vim-on-terminal-app/ (установите SIMBL и MouseTerm)

  • Только прокрутка:

    1. Перейти к терминалу;
    2. Предпочтение;
    3. Значок "Настройки";
    4. Вкладка "Клавиатура"
    5. Кнопка "мышь ...";
    6. Там под «Отправить события мыши для:» снимите флажок "Левый клик", "Средний клик", "Правый клик".

Готово.

0

Вы также можете установить параметры vim env из командной строки

Например:

vim -c 'set mouse=a'

Таким образом, альтернативный псевдоним для vim, который делает это автоматически, может быть:

alias vimmy="vim -c 'set mouse=a'"
-1

Даже лучше, чем принятый ответ:

set mouse=a

Это позволяет прокручивать, а затем выделение дает вам визуальный блок.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .