code: def _display_matches_pyreadline(self, matches: List[str]) -> None:  # pragma: no cover
          
          if rl_type == RlType.PYREADLINE:
  
              # Check if we should show display_matches
              if self.display_matches:
                  matches_to_display = self.display_matches
              else:
                  matches_to_display = matches
  
              # Add padding for visual appeal
              matches_to_display, _ = self._pad_matches_to_display(matches_to_display)
  
              # Print the header if one exists
              if self.completion_header:
                  # noinspection PyUnresolvedReferences
                  readline.rl.mode.console.write('\n' + self.completion_header)
  
              # Display matches using actual display function. This also redraws the prompt and line.
              orig_pyreadline_display(matches_to_display)
docs: Prints a match list using pyreadline's _display_completions()
          This exists to print self.display_matches if it has data. Otherwise matches prints.
  
          :param matches: the tab completion matches to display