Skip to content

Add curses.nofilter() #151744

Closed
Closed

Description

@serhiy-storchaka

The curses module wraps filter() but not its inverse nofilter().

filter() puts curses into single-line mode — it forces LINES to 1 at the next initscr()/newterm(). nofilter(), an ncurses extension, undoes that effect.

Without it, code (or a test) that calls curses.filter() has no way to restore normal screen sizing for a later initscr()/newterm() in the same process.

Propose wrapping nofilter() as curses.nofilter(), guarded by a configure check, alongside the existing curses.filter().

Linked PRs

Activity

  1. lul-cas commented on Jun 19, 2026

    @lul-cas
    SponsorContributor

    Can I work in this?

  2. serhiy-storchaka commented on Jun 19, 2026

    @serhiy-storchaka
    MemberAuthor

    I already worked on it.

    This feature is a prerequisite for newterm(). It allows to make tests nicer.

  3. added
    type-featureA feature request or enhancement
    stdlibStandard Library Python modules in the Lib/ directory
    3.16new features, bugs and security fixes
    on Jun 19, 2026
  4. lul-cas commented on Jun 19, 2026

    @lul-cas
    SponsorContributor

    Nice!

  5. added a commit that references this issue on Jun 19, 2026
  6. added a commit that references this issue on Jul 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.16new features, bugs and security fixesextension-modulesC modules in the Modules dirstdlibStandard Library Python modules in the Lib/ directorytype-featureA feature request or enhancement

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions