notepad-plus-plus / notepad-plus-plus/notepad-plus-plus

[Feature request] Undo Checkpoints (Restore Points)

Open
#17,789 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
29.4k
Forks
5.4k
PR merge metrics
No merged PRs in 30d

Description

Is there an existing issue for this?
  • I have searched the existing issues
Description of the Issue

When making large or experimental edits, it can be difficult to safely try changes without manually stepping through many undo operations if the changes don’t work out.

Standard Ctrl+Z works well for linear undo, but it can be tedious and easy to overshoot a known “good” state after significant edits.

There is currently no way to mark a specific point in the undo history and quickly return to it.

Describe the solution you'd like.

Add support for Undo Checkpoints (Restore Points).

Suggested functionality:

  • Command: Set Undo Checkpoint (optionally named)
  • Command: Undo to Last Checkpoint (single action jump)
  • Optional behavior: when undo reaches a checkpoint, prompt:
    “Reached checkpoint ‘X’. Continue undoing past it?”
    With an option to remove the checkpoint

Behavior details:

  • Scope: per document/tab
  • Session-only is acceptable (no persistence required)
  • Redo should function normally
  • Minimal UI impact (menu/command-level feature is sufficient)

This would allow safe experimentation during large edits without losing a known good state.

Debug Information
Notepad++ v8.9.1   (64-bit)
Build time: Jan 18 2026 - 22:45:31
Scintilla/Lexilla included: 5.5.8/5.4.6
Boost Regex included: 1_90
pugixml included: 1.15
nlohmann JSON included: 3.12.0
Path: C:\Program Files\Notepad++\notepad++.exe
Command Line: 
Admin mode: OFF
Local Conf mode: OFF
Cloud Config: OFF
Periodic Backup: ON
Placeholders: OFF
Scintilla Rendering Mode: SC_TECHNOLOGY_DIRECTWRITE (1)
Multi-instance Mode: monoInst
asNotepad: OFF
File Status Auto-Detection: cdEnabledNew (for current file/tab only)
Dark Mode: ON
Display Info:
    primary monitor: 3840x2160, scaling 150%
    visible monitors count: 2
    installed Display Class adapters: 
        0000: Description - Intel(R) Arc(TM) Graphics
        0000: DriverVersion - 32.0.101.8132
OS Name: Windows 11 Pro N (64-bit)
OS Version: 25H2
OS Build: 26200.7840
Current ANSI codepage: 1252
Plugins: 
    ComparePlus (1.2)
    mimeTools (3.1)
    NppConverter (4.7)
    NppExport (0.4)
Anything else?

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by locating the existing undo/redo implementation and its per-document history handling. Done should include checkpoint commands, session-only per-tab behavior, preserved redo behavior, and the described optional prompt without significant UI expansion.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.