anchor.diff:    (if (minusp n)
         (scroll-up (- n))
         (dotimes (_ n t)
  -        (when (= (window-cursor-y-if-wrapping (current-window)) 0)
  +        (when (= (window-cursor-y (current-window)) 0)
             (unless (forward-line n)
               (return nil)))
           (let ((prev-linum (window-vtop-linum))
  
positive.code:   (if (minusp n)
        (scroll-down (- n))
        (dotimes (_ n t)
          (when (and (= (window-cursor-y-if-wrapping (current-window))
                        (- (window-height) 2))
                     (/= 1 (window-vtop-linum)))
            (unless (forward-line (- n))
  
negative.code:   (- (window-current-linum window)
       (window-vtop-linum window)))
  
  (defun window-cursor-y (window)
    (+ (window-cursor-y-not-wrapping window)
       (window-wrapping-offset window)))
  
  