anchor.diff:              (ecase x
                 ((open-paren closed-paren)
                  (unless in-string-p
  -                 (let ((at-char
  -                        (if (plusp dir)
  -                          (following-char)
  -                          (preceding-char))))
  +                 (let ((at-char (sexp-at-char dir)))
                      (when (or (when (null paren-char)
                                  (setq paren-char at-char))
                                (char= paren-char at-char)
  
positive.code:       (point-set point)
        (return nil))))
  
  (macrolet ((def (name &body body)
                  `(defun ,name (point dir)
                     (point-set point)
                     (if (do-scan outer
                                  dir
  
negative.code:                  (string-quote
                    (next-char dir)
                    (return-from outer
                                 (and (scan-string (point) dir (sexp-at-char (- dir)))
                                      (next-char dir))))
                   (space
                    nil)
  