docs: def files_from_list(*paths):
      """
      Return a list of all file paths from a list of files or directories.
  
      For each path in the input: if it is a file, return it; if it is a
      directory, return a list of files in the directory.
  
      Arguments:
          paths (list of str): List of file and directory paths.
  
      Returns:
          list of str: Absolute file paths.
  
      Raises:
          File404: If any of the paths do not exist.
      """
      ret = []
      for path in paths:
          if isfile(path):
              ret.append(abspath(path))
          elif isdir(path):
              ret += [f for f in ls(path, abspaths=True, recursive=True)
                      if isfile(f)]
          else:
              raise File404(path)
      return ret