anchor.diff:       with widths = (make-array 1 :adjustable t :fill-pointer t)
        with tab-width
        for (start end object) in parts
  -     do (cond ((and object (eql object #\Tab))
  +     do (cond ((eql object #\Tab)
                  (incf width 
                        (- (or tab-width
                               (setf tab-width (tab-width stream (stream-default-view stream))))
  
positive.code:           (y2 dimensions) y2
            (center dimensions) center)))
  
  (defconstant +roman-face-style+ (make-text-style nil :roman nil)
    "A text style specifying a roman face, but with unspecified
  family and size.")
  
  (defun analyse-stroke-string (string)
    "Return a list of parts of `string', where each part is a continuous
  
negative.code: at (`cursor-x', `cursor-y'), but without actually drawing
  anything. Will use the function specified in the drawing-options
  of `stroke' to carry out the actual calculations."
    (unless (and (= cursor-x (x1 (stroke-dimensions stroke)))
                 (not (stroke-dirty stroke)))
      (invalidate-stroke stroke :modified t))
    (when (stroke-dirty stroke)
      (funcall (drawing-options-function (stroke-drawing-options stroke)) stream view stroke
  