docs: def cablefiles_from_directory(directory, predicate=None):
      """\
      Returns a generator which yields absoulte filenames to cable HTML files.
      
      `directory`
          The directory.
      `predicate`
          A predicate that is invoked for each cable filename.
          If the predicate evaluates to ``False`` the file is ignored.
          By default, all files with the file extension ".html" are returned.
          I.e. ``cablefiles_from_directory('./cables/', lambda f: f.startswith('09'))``
          would accept only filenames starting with ``09``. 
      """
      pred = predicate or bool
      for root, dirs, files in os.walk(directory):
          for name in (n for n in files if '.html' in n and pred(n[:-5])):
              yield os.path.join(os.path.abspath(root), name)