2

Как говорит заголовок темы, есть ли у кого-нибудь какие-либо предложения о том, как добиться плавной прокрутки отображения текста в emacs?

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

Как давний пользователь Vim, я довольно удивлен, что Emacs не может плавно прокручиваться сам по себе.

4 ответа4

3

Как давний пользователь emacs, я редко думаю использовать колесо мыши для прокрутки ... однако, другие это делают. На вики Emacs есть страница с плавной прокруткой .

Обновление: я нашел лучший ответ на странице NextLineBehavior : «Измените scroll-conservatively на 1 или другое подходящее небольшое число, а не ноль».

0
 ;;; scrollers
 (global-set-key "\M-n" '"\C-u1\C-v")
 (global-set-key "\M-p" '"\C-u1\M-v")

Я использую это для прокрутки. Я помню, что скопировал это только с SO.

0

В моих поисках я нашел это:

(setq default-truncate-lines t)
(defun point-of-beginning-of-bottom-line ()
  (save-excursion
    (move-to-window-line -1)
    (point)))

(defun point-of-beginning-of-line ()
  (save-excursion
    (beginning-of-line)
    (point)))

(defun next-one-line () (interactive)
  (if (= (point-of-beginning-of-bottom-line) (point-of-beginning-of-line))
      (progn (scroll-up 1)
             (next-line 1))
    (next-line 1)))

(defun point-of-beginning-of-top-line ()
  (save-excursion
    (move-to-window-line 0)
    (point)))

(defun previous-one-line () (interactive)
  (if (= (point-of-beginning-of-top-line) (point-of-beginning-of-line))
      (progn (scroll-down 1)
             (previous-line 1))
    (previous-line 1)))

(global-set-key (kbd "<down>") 'next-one-line)
(global-set-key (kbd "<up>") 'previous-one-line)

Какой вид помог мне в Aquamacs и Mac OS X. Может быть, может быть полезно и для WIN.

Я взял это из вики Emacs

0

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

(global-set-key [(meta up)] '(lambda(amount) (interactive "p") (scroll-up amount)))
(global-set-key [(meta down)] '(lambda(amount) (interactive "p") (scroll-down amount)))

Это нормально работает для меня с обычной сборкой GNU win32 emacs.

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