Проблемы с автопрокруткой следующей строки - PullRequest
1 голос
/ 04 августа 2011

У меня проблема с автопрокруткой в ​​следующей строке в emacs. Когда я доберусь до края экрана http://i.stack.imgur.com/lfqEL.png и делая следующую строку, иногда я не прокручиваюсь, и указатель направлен на центр экрана CURRENT, а не на экран NEXT. http://i.stack.imgur.com/FPbuC.png (так что, если я буду держать C-n, указатель будет бесконечно бегать по этому экрану)

Я получаю то же самое с forward-line, иногда с forward-page. Я не получаю то же самое с предыдущей строкой автопрокрутки, она отлично работает.

Я не знаю почему. Я только заметил, что когда у меня более длинные строки и экран разделен по вертикали, это происходит очень быстро (Cx 3 Cx 3, прокрутка с начала моего 1000-строчного файла .emasc - быстрый способ воспроизвести эту ошибку) .

Emacs -Q, (setq truncate-lines nil) его не имеет. В Emacs, (setq truncate-lines t) его тоже нет.

Если вы знаете что-либо о том, что может вызвать эти проблемы, пожалуйста, ответьте.

Ответы [ 2 ]

1 голос
/ 24 августа 2011

После 2 часов использования eval-region (эту проблему было нелегко воспроизвести, макрос / elisp с (next-line) (sit-for 0.01) не дал никакого эффекта, поэтому я каждый раз проверял это, удерживая Cn, используя метод двоичного поиска для eval-region)

Итак, ответ:

http://www.emacswiki.org/emacs/HighlightParentheses

Оценка этого в *scratch*, начиная emacs с emacs -Q

(setq-default truncate-lines nil)
(setq truncate-partial-width-windows nil)
(add-to-list 'load-path "~/my_path_to_highlight-parentheses_script/")
(require 'highlight-parentheses)

Создайте некоторый буфер с длинными строками и сузьте его с помощью C-x 3 C-u 5 0 C-x }, затем C-x o M-x highlight-parentheses-mode и удерживайте C-n, чтобы воспроизвести ошибку.

Я прокомментировал все, что связано с выделенными скобками, и ошибка исчезла. Я думаю, я должен найти способ рассказать разработчикам об этой ошибке.

1 голос
/ 05 августа 2011

Одним из возможных источников этой проблемы является установка переменной scroll-conservatively.

http://groups.google.com/group/gnu.emacs.help/browse_thread/thread/0a7a9c730c037d57

Я заметил, что при перемещении по большим файлам, иногда курсор будет перескакивать с нижней части экрана на середину.

Есть идеи, почему это может происходить только иногда?

Поскольку повторное отображение Emacsне в состоянии удержаться с прокруткой.До 23.1 с консервативной прокруткой, установленной на большое значение, Emacs никогда не прыгал;сейчас он пытается не делать этого, но иногда это не удается.Я думаю, что соответствующая запись в ChangeLog такая:

2008-10-27 Чонг Ийдонг

    * xdisp.c (try_scrolling): When computing the distance from the
    scroll margin to PT, try moving some distance past the window
    bottom before giving up.

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