Repository navigation
Releases: yuruko/notepad-mint
Release list
notepad mint 1.3.0
notepad mint 1.3.0
- undo and redo with a real history: up to 128 steps. ctrl+z undoes, ctrl+y or ctrl+shift+z redoes, and both are in the edit menu and the right-click menu
- a run of typing is one step (a new step starts after a line break, an arrow or page key, a click, or a save); a run of backspaces or deletes is one step; replace all, cut, paste, clear line and drag and drop are one step each
- undo puts the caret and the selection back where they were: undoing a typed-over word selects the word again
- the history survives toggling word wrap, and undoing back to the saved text still clears the modified mark at any depth
- a new edit after an undo drops the redo steps, like every editor; opening or creating a file starts a fresh history
download
notepad-mint-1.3.0-setup.exe: installer and uninstallernotepad-mint-1.3.0.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.2.1
notepad mint 1.2.1
- menu bar text uses 80% opacity when idle, with full opacity on hover, keyboard focus or while its menu is open
- the default editor font size is now 11 pt; saved font preferences are retained
- the word wrap and theme buttons keep their existing appearance and behavior
download
notepad-mint-1.2.1-setup.exe: installer and uninstallernotepad-mint-1.2.1.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.2.0
notepad mint 1.2.0
drag and drop like notepad
- drop a file on the window and it opens: the first one in this window (after the save prompt), the others in new windows; folders are skipped, and more than 10 files asks first
- hold shift while dropping to insert the paths at the drop point instead, one per line (what a plain drop did before)
- drag selected text to move it, hold ctrl to copy it; drag text in from other programs and out to them (a move takes it out of this document); one undo takes a drop back
- a thin mark shows where the text will land, and the editor scrolls while you hold it near an edge
- the exe still imports only kernel32 / user32 / gdi32: ole32 is loaded once the window has painted
windows xp notepad parity
- page setup has a header and a footer:
&ffile name,&ppage number,&ddate,&ttime,&l/&c/&ralignment,&&an ampersand; defaults&fandpage &p, remembered - a small window with a cancel button stays up while a document prints
/pt file printer driver portprints on a named printer; theprintandprinttoverbs are registered by the installer and by help > set as default text editor- f3 searches in the direction picked in the find dialog, shift+f3 the other way; the search text, the replacement and the direction are remembered across sessions
- the
&underlines in the menus, dialogs and buttons stay hidden until you press alt or use the keyboard (always shown if windows is set to); find, replace, go to, font and message box buttons have them - a double click on the window icon closes the window; the tilt wheel scrolls sideways;
notepad-mint namefor a missing name without an extension offers to createname.txt - pasted text gets windows line breaks (lone lf / cr from other programs no longer run lines together)
saving through links
- a symbolic link saves into its target and stays a link
- a file with several hard links, or in a folder that refuses new files, is written in place, so every name sees the change
readable source
- cryptic local, parameter and struct member names were renamed (
h, m, w, ltohwnd, msg, wParam, lParamand so on); the exe came out byte for byte identical
Regression coverage: unit 451, gui 839, probe-build gui 217, printing suite 42 (all pass).
download
notepad-mint-1.2.0-setup.exe: installer and uninstallernotepad-mint-1.2.0.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.1.0
notepad mint 1.1.0
cleaner source
- every comment is gone from
src\; function braces sit on the same line as the function; statements and conditions are one line each; no blank lines inside functions (10,784 to 9,486 lines) - the cleanup was checked to change nothing: the release exe, three probe builds and the unit-test exe come out byte for byte identical (pe timestamps masked)
faster
- the editor's line height is measured once per font, not on every key, scroll bar update and resize
- the selection highlight in the editor uses the system highlight brush instead of creating and deleting a brush on every draw
- buttons no longer read their size on every mouse move, only while pressed; help > set as default text editor loads advapi32 once instead of twice
cleanup
- removed dead code: unreachable
WM_SIZEcases in the editor, an empty branch and a repeated store in the menus, an unused bevel style and triangle direction, a secondEM_LIMITTEXT, a redundant scroll bar refresh, unused variables and parameters, an unused list of line ending names, test-only search wrappers (now in the unit tests) - one error exit in
DocWriteinstead of eight copies of the cleanup, oneOtherFocushelper for select all / time and date / clear line, the font dialog uses the sharedClampInt
Regression coverage: unit 437, gui 820, probe-build gui 179, printing suite (all pass).
download
notepad-mint-1.1.0-setup.exe: installer and uninstallernotepad-mint-1.1.0.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.0.12
notepad mint 1.0.12
installer
- the last checkbox on the finish page is now just "set as default text editor" and fits on one line
- fixed: that checkbox was set up on the wrong installer page, so it was always ticked: on an update it opened default apps again, and it opened them even when "text file types" was unticked. it now follows the component and stays unticked on an update that already had the file types
- "run notepad mint" starts the editor as you, not elevated (an elevated editor can't take files dragged from explorer)
- uninstalling removes the per-user "set as default" entries only when they belong to the uninstalled copy, so a portable exe elsewhere keeps its own
faster
- repainting a small part of the editor (typing a character, moving the caret, a selection) costs half as much in a big window: 15.5 to 7.3 ms at 1772 x 914 (the whole window was drawn off screen each time, now only the part that changes)
- saving a file scans for line breaks with sse2 like opening does; the sun / moon / wrap icons in the menu bar are computed once per size, not on every repaint
fixes and cleanup
- a real windows "parameter is incorrect" error (87) is no longer shown as "that code page isn't installed"
- the print cursor is restored correctly when no cursor was set yet
- removed duplicated helpers (one
MpNotefor the 9 "ok" messages, oneClampInt), unused windows declarations, the editor colours mirrored in the settings struct, stale comments and a magic number
Regression coverage: unit 442, gui 820, probe-build gui 179, printing suite (all pass).
download
notepad-mint-1.0.12-setup.exe: installer and uninstallernotepad-mint-1.0.12.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.0.11
notepad mint 1.0.11
default text editor
- the installer has a new component, "text file types" (on by default): notepad mint is listed under open with and in settings > default apps for .txt .log .ini .cfg .conf .md .csv .nfo .diz and .text. nothing changes until you pick it: windows lets only you choose a default program, so the finish page offers to open default apps on notepad mint, where you set it (newer windows 11 builds have one "set default" button there, older ones a choice per extension)
- help > set as default text editor does the same for the current user (no admin; works for the standalone exe too) and opens that settings page
- the uninstaller removes all of it (only notepad mint's own entries)
untitled names
mint-0000is now midnight on 1 january 2026 (was 2000), still 32 minute steps and a 100 year cycle; today's names start with09. a counter left by 1.0.10 resyncs to the clock by itself
Regression coverage: the per-user registration is checked against a throwaway registry key (this pc's real associations are never touched); the name clock is checked for every day from 2026 to 2125, including 2100 (no leap year).
download
notepad-mint-1.0.11-setup.exe: installer and uninstallernotepad-mint-1.0.11.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.0.10
notepad mint 1.0.10
right to left
- a document whose first letter is hebrew, arabic or another right to left script opens right to left (text right aligned, scroll bar on the left); typing such a letter into an empty document switches it too, like
dir="auto" - ctrl+right shift / ctrl+left shift set right to left / left to right, like notepad; the edit menu item still toggles it, and a picked order stays until the next new or open
- right aligned text is no longer cut off at the right edge, and the left scroll bar is as thin as the right one
untitled names
mint-XXXXnow counts up frommint-0000at midnight on 1 january 2000 (only the last two digits of the year count) in steps of 32 minutes, so names sort by date and time and always start the same way for years (9...in 2026)- every new untitled document gets a higher name than the one before, in every window (the last one handed out is kept in settings.ini)
notepad features and fixes
/a fileand/w fileopen a file as ansi / utf-16 like notepad;/p fileprints without flashing the window- a file with a broken utf-8 sequence after its bom (or an odd number of bytes for utf-16) can be opened after a prompt instead of not at all
- the status bar shows the zoom (
120%) while ctrl+plus / minus is in effect; click it to go back to 100%, click the position to go to a line - a window closed later no longer overwrites settings another window changed (theme, font, word wrap ...); settings are saved at logoff / shutdown too; a window closed while minimized remembers it was maximized
- a file in file > recent that fails to open for a moment (locked, cancelled) stays in the list; only a missing file leaves it
- reopen with encoding: asks about unsaved changes first, and is grayed for an untitled document
- f5 in the find box no longer inserts the time into the document; ctrl+shift shortcuts (ctrl+shift+n ...) no longer change the reading order; alt+z keeps a backwards selection's caret where it was; enter opens the about box link; right arrow on a submenu item moves to the next menu; the scroll bars follow a dpi change; help topics shows f1
faster
- searching while ignoring case in non-latin text (cyrillic, greek ...) uses a lower case table instead of a system call per character: about 5.6x faster (18.4 to 3.3 ms per million characters)
- a new sse2 routine finds the next possible first character of a search and the line breaks of a file being opened
Regression coverage: new gui tests for right to left (T44, 22 checks) and the command line switches (T45); unit tests for the new name clock (every day of the century), the sse2 routine (every hit position and a protected page) and the lower case table (all 65,536 units).
download
notepad-mint-1.0.10-setup.exe: installer and uninstallernotepad-mint-1.0.10.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.0.9
notepad mint 1.0.9
- default font size is 10 pt
- the font dialog's preset grid is 6 columns by 4 rows, 8 to 48 pt, with half steps from 8 to 13.5 pt
- the font dialog size box accepts 7 to 100 pt, including one decimal digit (for example 8.5)
- sizes are stored in tenths of a point; an older settings.ini size is converted on load
- ctrl+plus / ctrl+minus / ctrl+wheel still step between 8 and 48 pt
Regression coverage: the font dialog, preset grid, typed decimal sizes, the zoom ladder and the saved size are checked on the real editor.
download
notepad-mint-1.0.9-setup.exe: installer and uninstallernotepad-mint-1.0.9.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.0.8
notepad mint 1.0.8
- mouse-wheel and scrollbar scrolling keep the cursor and selection at their original text positions
- pressing an arrow, home/end or page up/down after scrolling returns the view to the saved cursor before moving it; up/down move from the original line
- shift+arrow keeps the original selection anchor, and ctrl+up/down retain their native behavior without revealing the cursor
Regression coverage drives the real editor on an isolated desktop, including scrolling in both directions, wrapped multilingual text, backward selections, cursor visibility and undo preservation.
download
notepad-mint-1.0.8-setup.exe: installer and uninstallernotepad-mint-1.0.8.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.
notepad mint 1.0.7
notepad mint 1.0.7
- resizing the window or changing zoom scrolls the text caret into view, including wrapped multilingual text and backward selections
- caret visibility follows deferred wrapping and scrollbar changes while preserving document text, selection and undo
- source reorganized into focused modules for preferences, document state, status calculations, caret geometry/text helpers, buttons, dialogs and menu definitions, with clearer ownership comments
- fixed repeated-DPI dialog font leaks, retained valid help-window fonts, and released the scrollbar pattern bitmap
- print and page setup dialogs now hold the modeless find window so it cannot change the document during the operation
- button painting falls back to direct drawing when buffering resources are unavailable; document statistics retry failed text-buffer locks
Regression coverage includes actual caret geometry during resize and zoom, selection/undo preservation, rapid wrapping, repeated DPI resource ownership and native-dialog success/cancellation/error/retry paths. Smoke and GUI checks run on an isolated desktop with temporary settings.
download
notepad-mint-1.0.7-setup.exe: installer and uninstallernotepad-mint-1.0.7.exe: standalone executableSHA256SUMS.txt: download checksums
settings remain in %appdata%\notepad-mint\settings.ini.