anchor.diff:      (let ((c (character-at point))
             n pair)
         (let ((point
  -              (cond ((syntax-open-paren-char-p c)
  +              (cond ((multiple-value-setq (n pair) (syntax-start-block-string-p point))
  +                     (character-offset point n)
  +                     (if (search-forward point (cdr pair))
  +                         point
  +                         nil))
  +                    ((syntax-open-paren-char-p c)
                        (%skip-list-forward point 0))
                       ((or (syntax-symbol-char-p c)
                            (syntax-escape-char-p c))
  
positive.code:                      (character-offset point 1))
                      ((syntax-closed-paren-char-p c)
                       nil)
                      ((multiple-value-setq (n pair) (syntax-start-block-string-p point))
                       (character-offset point n)
                       (if (search-forward point (cdr pair))
                           point
                           nil))
                      ((syntax-string-quote-char-p c)
                       (%skip-string-forward point))
                      ((syntax-fence-char-p c)
  
negative.code:                      (character-offset point 1)
                       (when (zerop (decf depth))
                         (return point)))
                      ((syntax-string-quote-char-p c)
                       (%skip-string-forward point))
                      ((syntax-fence-char-p c)
  