bits-829 released with these changes:

The "lines and pages" release.

  • Fix readline for the case of multiple terminals with different sizes

    In particular, this fixes readline when simultaneously outputting to an 80x24 serial terminal and an 80x25 VGA terminal.

  • readline: Add Ctrl-Z as an alternative EOF

    Useful both for users of Python on Windows and as a workaround for some systems which had trouble recognizing the Ctrl-D key combination.

  • Sort and deduplicate readline completions

    Python's rlcompleter generates duplicate completions in arbitrary order, counting on readline to sort and deduplicate them. Do so in rlcompleter instead.

  • Support tab completion of expressions using subscripting with []

  • When completing, sort completions starting with '_' last.

    The current completion display goes through completions sequentially, so sort _internal and especially __magic__ methods last.

  • Rewrite pydoc's pager to work on a BITS terminal

    pydoc went through various contortions to detect a proper pager, including using the tempfile module (which BITS doesn't have) to create a temporary file that it didn't actually need. Pull out its ttypager (which almost works as-is) and rework it to run on BITS terminals (plural), with a few enhancements for usability.

  • Use the new ttypager to view logs, allowing page-up and quitting

    This one goes out to anyone who has ever viewed a huge logfile and ended up rebooting rather than paging through it all; we felt your pain.

  • README.txt: Rewrap to 77 character columns to avoid triggering GRUB word wrap

  • Use the new pager to show README.txt