                                     (jump))
                                    (t (unless (or (looking-at "^-}$")
                                                   (looking-at "^{-$"))
-                                        (point))))))
+                                        (point)))))))
                          (goto-char (line-end-position))
                          (jump))
                        0))
             (end (progn (goto-char (1+ (point)))
-                        (or (flet
-                                ((jump ()
+                        (or (cl-letf
+                                (((symbol-function 'jump) #'(lambda ()
                                        (when (search-forward-regexp "[\n]+[^ \n]" nil t 1)
                                          (cond
                                           ((save-excursion (goto-char (line-beginning-position))

   ;; Otherwise we just do our line-based hack.
   (t
    (save-excursion
      (let ((start (or (flet
                           ((jump ()
                                  (search-backward-regexp "^[^ \n]" nil t 1)
                                  (cond
                                   ((save-excursion (goto-char (line-beginning-position))

                                          (t (forward-char -1)
                                             (search-backward-regexp "[^\n ]" nil t)
                                             (forward-char)
                                             (point)))))))
                              (jump))
                            (point-max)))))
        (cons start end))))))
