wh75er |
|
![]()
Темы:
17
Сообщения:
86
Участник с: 25 февраля 2017
|
Данная проблема уже давно и в интернете я ничего по этой теме найти не смог. Вся проблема заключается в том, что курсор ,во время прокрутки в любую сторону(h j k l или теме же стрелками) после отпускания клавиши, продолжает двигаться как будто по инерции. Это сложно описать, но я постараюсь это сделать максимально подробно. Допустим хочу я перенестись куда-то вверх по файлу, зажимаю я как обычно k и каретка начинает ехать вверх. Все работает стабильно, ничего не лагает, но когда я отпускаю k, то курсор замирает на строке, на которой был в этот момент, а потом через некоторую задержку(где-то в секунду или чуть больше) "перепрыгивает" на следующую строчку(иногда на две сразу). Я называю это перемещением по инерции, потому что происходит это всегда в том направлении, в котором до этого двигалась каретка. Такие "прыжки" случаются произвольно. То бишь курсор может встать сразу, когда я отпустил кнопку и больше не двигаться, а может и перескочить(там ситуация 50/50). Выяснить из-за чего возникает такая ошибка у меня не получилось. Удалял .vimrc, запускал от root'a - ничего. Она просто есть и все. В других редакторах(qtcreator, mousepad) такого не наблюдается. Связанна эта херня конкретно с vim'ом или это чисто косяк терминала? Проблема дико бесячая и я совершенно не знаю с чем это может быть связанно, надеюсь, что кто-нибудь поможет, буду очень благодарен В vimrc думаю смысла нет, ибо, как я уже писал, проблема явно не в нем. Я подумываю, что проблема может быть чисто в терминале, но в чем именно? Систему переодически обновляю shell - zsh xorg extra/vim 8.0.1176-1 [installed] community/termite 12-2 [installed] .zshrc
|
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
wh75erПроверил у себя - такой баг не наблюдается. Для перемещения использовал как клавиши (j, k), так и стрелки. Поставил для интереса termite - баг не наблюдается. Около года назад наблюдал близкую к этой проблему - после многократного ухода в suspend (более 5-7 раз) наблюдалась задержка в реакции клавиатуры - если быстро вводишь текст (или быстро перемещаешься по файлу), то текст (или премещаемый курсор) отображается с задержкой 1-2с, что очень доставало (лечилось перезапуском клавиатурного драйвера), но этот баг потом ушел сам после какого то обновления. UPD 1 - shell - bash. UPD 2 - заметил у тебя привязку клавиш к emacs - не проще вместо vim использовать emacs, если в нем этот баг не проявляется?
Ошибки не исчезают с опытом - они просто умнеют
|
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
В логах вряд ли что будет, но можно приаттачиться к vim и посмотреть вывод strace при перемещении верх/вниз по тексту открытого файла - vim <file> - pidof vim - 26707 - sudo strace -tt -p 26707 Вот мой нормальный кусок при перемещениях PS 1 - время покажет есть ли задержка
Ошибки не исчезают с опытом - они просто умнеют
|
wh75er |
|
![]()
Темы:
17
Сообщения:
86
Участник с: 25 февраля 2017
|
vasekВ emacs данного бага нет и там пашет все идеально и дико плавно, но привязку клавиш к emacs я испльзую по причине того, что в терминале дико неудобно использовать стрелочки на клавиатуре, так как они дико маленькие и ущербные, неудобно по ним попадать vasekРаньше сидел на баше и данная проблема уже была(попробую сейчас сменить шелик, глянуть чего как на всякий)\ vasekУ меня данная проблема наблюдается сразу же после запуска системы vasekТак, сейчас шел сменю, проверю как будет работать, а потом пришлю strace |
wh75er |
|
![]()
Темы:
17
Сообщения:
86
Участник с: 25 февраля 2017
|
vasek, собственно я сейчас проверил и этот баг сохраняется и на баше, но вот в чем фишка. Если зайти в вим, не заходя в иксы, то он работает идеально, никаких перескоков не наблюдается, но после того, как захожу в иксы, все начинается снова. Может дело в иксах? Вот мой .xinitrc: xset r rate 265 40 думал, что может быть в этой строчке дело, но я пробовал ставить на дефолт значение, проблема оставаласьUPD вообще запустил иксы без нее. Дело не в быстрой скорости каретки. Даже когда я зажимаю j и перемещаюсь на две строчки при этом резко отпуская, перескок все равно осущевствляется. На такой нииизкой скорости это на столько сильно заметно, что хочется просто выпилиться. |
wh75er |
|
![]()
Темы:
17
Сообщения:
86
Участник с: 25 февраля 2017
|
vasek, хм, ну у меня явно не все гладко. Вот момент с запечатленным "прыжком"(перемещал курсор только в одну сторону):
вот еще кусок:
Вот при перемещении влево вправо:
Я так понимаю всяких write/read быть не должно? |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
wh75erУ меня их не было, потому что я использовал команду sudo strace -tt -e select -p 26707 , отфильтровал по select, а тебе предложил полный вывод, на всякий случай. Вывод нормальный, ничего в нем криминального нет (в полном выводе у меня то же самое, так и должно быть). У меня тоже spectrwm. wh75erА вот это, мягко говоря, не совсем правильно (или привел не полный вывод?). На эту тему уже было несколько топиков. Привожу мой .xinitrc cat .xinitrc Попробуй все таки изменить .xinitrcUPD ... если тебе нравится vim и emacs и ты с ними в ладах, может попробовать exwm (WM на основе emacs) PS 1 wh75erСкорее всего так оно и есть.
Ошибки не исчезают с опытом - они просто умнеют
|
wh75er |
|
![]()
Темы:
17
Сообщения:
86
Участник с: 25 февраля 2017
|
vasekДа, я приводил полный .xinitrc, сейчас попробую поменять и перезапуститься Кстати, не знаю, что я такого сделал, но в этом запуске системы этот баг с вимом куда-то пропал 0_0. Сейчас сидел минут 10-ть, скролил файл. Он только один раз совершил "прыжок" из 100. Не знаю, что за прикол, но такое вроде как уже было. Сейчас посмотрим как будет себя вести после перезагрузки |
wh75er |
|
![]()
Темы:
17
Сообщения:
86
Участник с: 25 февраля 2017
|
vasek, я поменял свой .xinitrc: Проблема по прежнему осталась, но я заметил, что она не ограничивается только вимом. В терминале такая же проблема. Допустим я зажимаю клавишу и у меня начинают принтится буквы, как только я отпускаю клавишу, возникает такой же прыжок, только он дописывает ту клавишу, которую я нажимал(например: ппппппппппп(остановка, секундная задержка)п )Ну а так же, если использовать emacs хоткеи, чтобы передвигать каретку в терминале, то тоже совершаются такие же скачки.vasekв emacs я совсем плох, использую, как я уже писал, хоткеи, чтобы в терминале было удобнее работать. А на виме я новичек, поставил себе цель освоить даннаю програмку, да и писать там очень удобно, но с этой проблемой просто хочется себе глаза вырвать после часа или двух часов работы с ним, когда это все скачет, после каждого скролла Мне советовали переставить просто систему, но мне не нравится такой расклад, что из-за какого-то бага придется сносить систему и ставить ее снова. Еще не факт, что это поможет Мб дело связано все же с термитом? В других программах такой проблемы не наблюдается. Ни в браузере, ни в emacs том же, ни в qtcreator'e, но данная проблема есть в vim'e и в termite, через который, собственно, и открывается vim. Сейчас попробую другой терминал поставить и затестить |
wh75er |
|
![]()
Темы:
17
Сообщения:
86
Участник с: 25 февраля 2017
|
vasek, судя по всему трабл реально в termite, потому что на terminator'e все идеально работает без всяких пролагов. Но с чем может быть связано такое поведение термита? UPD cat .config/termite/config:
Пожалуй единственная вещь, которую я менял в термите UPD2 снес термит, который стоял из community репозитория и поставил termite-git из aur. Проблема осталась |