Commit 0f202d5d authored by Stefan Monnier's avatar Stefan Monnier
Browse files

(move-to-window-line-last-op): Remove.

(move-to-window-line-top-bottom): Reuse recenter-last-op instead.
parent 216349f8
2009-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
* window.el (move-to-window-line-last-op): Remove.
(move-to-window-line-top-bottom): Reuse recenter-last-op instead.
2009-11-23 Deniz Dogan <deniz.a.m.dogan@gmail.com> (tiny change)
Make M-r mirror the new cycling behavior of C-l.
* window.el (move-to-window-line-last-op): New var.
(move-to-window-line-top-bottom): New command.
(global-map): Bind M-r move-to-window-line-top-bottom.
......
......@@ -1653,34 +1653,30 @@ Top and bottom destinations are actually `scroll-margin' lines
(define-key global-map [?\C-l] 'recenter-top-bottom)
(defvar move-to-window-line-last-op nil
"Indicates the last move-to-window-line operation performed.
Possible values: `top', `middle', `bottom'.")
(defun move-to-window-line-top-bottom (&optional arg)
"Position point relative to window.
With an argument, acts like `move-to-window-line'.
With a prefix argument ARG, acts like `move-to-window-line'.
With no argument, positions point at center of window.
Successive calls positions point at the top, the bottom and again
Successive calls position point at the top, the bottom and again
at the center of the window."
(interactive "P")
(cond
(arg (move-to-window-line arg)) ; Always respect ARG.
((or (not (eq this-command last-command))
(eq move-to-window-line-last-op 'bottom))
(setq move-to-window-line-last-op 'middle)
(eq recenter-last-op 'bottom))
(setq recenter-last-op 'middle)
(call-interactively 'move-to-window-line))
(t
(let ((this-scroll-margin
(min (max 0 scroll-margin)
(truncate (/ (window-body-height) 4.0)))))
(cond ((eq move-to-window-line-last-op 'middle)
(setq move-to-window-line-last-op 'top)
(cond ((eq recenter-last-op 'middle)
(setq recenter-last-op 'top)
(move-to-window-line this-scroll-margin))
((eq move-to-window-line-last-op 'top)
(setq move-to-window-line-last-op 'bottom)
((eq recenter-last-op 'top)
(setq recenter-last-op 'bottom)
(move-to-window-line (- -1 this-scroll-margin))))))))
(define-key global-map [?\M-r] 'move-to-window-line-top-bottom)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment