anchor.diff:            (window-recenter window)
             (window-scroll window offset)))))
   
  -(defun split-window-after (new-window split-type)
  -  (let ((current-window (current-window)))
  -    (window-set-size current-window
  -                     (window-width (current-window))
  -                     (window-height (current-window)))
  -    (setf (window-vtop-linum new-window)
  -          (window-vtop-linum current-window))
  -    (setf (window-current-linum new-window)
  -          (window-current-linum current-window))
  -    (setf (window-current-charpos new-window)
  -          (window-current-charpos current-window))
  -    (multiple-value-bind (node getter setter)
  -        (window-tree-parent (window-tree) current-window)
  -      (if (null node)
  -          (setf (window-tree)
  -                (make-window-node split-type
  -                                  current-window
  -                                  new-window))
  -          (funcall setter
  -                   (make-window-node split-type
  -                                     (funcall getter)
  -                                     new-window))))
  -    t))
  +(defun split-window-after (current-window new-window split-type)
  +  (window-set-size current-window
  +                   (window-width (current-window))
  +                   (window-height (current-window)))
  +  (setf (window-vtop-linum new-window)
  +        (window-vtop-linum current-window))
  +  (setf (window-vtop-charpos new-window)
  +        (window-vtop-charpos current-window))
  +  (setf (window-current-linum new-window)
  +        (window-current-linum current-window))
  +  (setf (window-current-charpos new-window)
  +        (window-current-charpos current-window))
  +  (multiple-value-bind (node getter setter)
  +      (window-tree-parent (window-tree) current-window)
  +    (if (null node)
  +        (setf (window-tree)
  +              (make-window-node split-type
  +                                current-window
  +                                new-window))
  +        (funcall setter
  +                 (make-window-node split-type
  +                                   (funcall getter)
  +                                   new-window))))
  +  t)
   
   (defun split-window-vertically (window)
     (unless (minibuffer-window-p window)
  
positive.code:                                  (window-width window)
                                   winheight)))
          (decf (window-height window) winheight)
          (split-window-after newwin :vsplit)))))
  
  (define-key *global-keymap* (kbd "C-x 2") 'split-active-window-vertically)
  (define-command split-active-window-vertically () ()
  
negative.code:                                  (1- winwidth)
                                   (window-height window))))
          (decf (window-width window) winwidth)
          (split-window-after window newwin :hsplit)))))
  
  (define-key *global-keymap* (kbd "C-x 3") 'split-active-window-horizontally)
  (define-command split-active-window-horizontally () ()
  