В Vim почему моя мышь не работает за 220-й колонкой? - PullRequest
60 голосов
/ 09 августа 2011

Я стремлюсь развернуть терминал на один экран и разделить вертикально несколько окон в Vim.Все хорошо работает для первых нескольких окон слева, но нажатие мимо 220-й колонки в терминале не работает правильно.Кажется, что любые щелчки мыши за столбцом 220 переходят в столбец 1. Я тестировал терминалы xterm, urxvt и Gnome с tmux / screen и без него;всегда одинаковое поведение.Если я значительно увеличу размер шрифта в терминале Gnome, я могу щелкнуть по последнему столбцу (хотя он больше не находится за столбцом # 220).

Если я запускаю команду в терминале, который печатает в стандартныйвывод, я могу щелкнуть полностью справа от терминала.Проблема, похоже, связана с Vim.

У меня есть set mouse=a в .vimrc.Я опубликую весь файл по запросу, но, похоже, он не имеет ничего общего с мышью.

Возможно, это не имеет значения, но я использую Xmonad + Gnome.Заранее спасибо.

Ответы [ 3 ]

77 голосов
/ 08 октября 2013

Это было исправлено в Vim 7.3.632 . Смотри :h sgr-mouse. Или просто вставьте это в ваш ~/.vimrc:

set ttymouse=sgr

Если вы хотите быть совместимым с версиями, в которых не скомпилировано mouse_sgr, используйте:

if has("mouse_sgr")
    set ttymouse=sgr
else
    set ttymouse=xterm2
end

Чтобы узнать, имеет ли ваша версия Vim mouse_sgr, запустите vim --version из командной строки или в Vim введите :version и найдите +mouse_sgr.

Если вы используете более старые версии экрана или терминальные эмуляторы, которые не поддерживают SGR, вам может потребоваться обновление или переключение. Эти настройки работают со всеми новыми версиями screen, tmux, gnome-терминал, PuTTY / KiTTY, iTerm2 и Terminal.app, используя TERM=xterm-256color или screen-256color.

Обновление: Если вы используете neovim, поддержка SGR включена по умолчанию.

9 голосов
/ 10 августа 2011

Редактировать :Я удалил отчет об ошибке, так как этот трекер был для веб-сайта, а не текстового редактора.

При поиске в правильном месте существующего отчета об ошибках я нашел следующее: http://groups.google.com/group/vim_dev/browse_thread/thread/4c137e64d2032441/b3993eaa89589619?lnk=gst&q=mouse#b3993eaa89589619

Подводя итог, это было отменено ограничение xterm.Однако Vim еще не поддерживает столбцы длиннее 223. Оригинал: Это кажется ошибкой, что подтверждается комментариями Redstreet.Я подал отчет об ошибке:

https://sourceforge.net/tracker/?func=detail&aid=3389331&group_id=27891&atid=391887

4 голосов
/ 20 мая 2015

Несколько лет спустя ошибка все еще присутствует. Решение, которое я нашел, это neovim: современный рефакторинг vim. Среди других особенностей, эта ошибка была устранена.

Я просто скопировал свой .vimrc в .nvimrc, и мои плагины просто работали с nvim. Может быть, я просто буду использовать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...