anchor.diff:              (let ((num (gethash (string-downcase car-symbol-name)
                                   *lisp-indent-table*)))
                 (point-set point)
  -              (let ((num-spaces (delete-while-whitespaces t))
  +              (let ((num-spaces
  +                     (save-excursion
  +                      (skip-chars-forward '(#\space #\tab))
  +                      (window-cur-col)))
                       num-insert-spaces)
                   (cond
                    ((or not-list-p
  
positive.code: 
  (define-key *lisp-mode-keymap* (kbd "C-i") 'lisp-indent-line)
  (define-command lisp-indent-line () ()
    (beginning-of-line)
    (let ((point (point))
          (old-modified-p (buffer-modified-p (window-buffer))))
      (when (sexp-goto-car 2000)
        (let ((start-col (1- (window-cur-col)))
              (not-list-p (save-excursion
  
negative.code:                   (setq num-insert-spaces (+ start-col 4)))
                   (t
                    (setq num-insert-spaces (+ start-col 2))))
                  (let ((n (- num-insert-spaces num-spaces)))
                    (cond ((plusp n)
                           (insert-char #\space n))
                          ((minusp n)
                           (beginning-of-line)
                           (delete-char (- n) t)))
                    (if (< old-column num-spaces)
                        (back-to-indentation)
                        (goto-column (+ old-column n)))))))))))
    t)
  
  (define-key *lisp-mode-keymap* (kbd "C-j") 'lisp-newline-and-indent)
  