The speciality of this notepad is having no speciality.
That is exactly what will make it the most popular notepad. Its goal is to have the fewest possible features because it should be a manifestation of the essence of what makes a notepad a notepad.
It is a plain text viewer and editor for short notes. A short note needs no search function, thus there is none.
- Open, edit and save text files
- Cut, copy and paste
- Monospace font
- Five encodings: UTF-8, UTF-8 BOM, UTF-16 LE, UTF-16 BE and Windows-1252
- LF and CRLF line ends
- Automatic detection of the encoding and the line end when you open a file
- Block indentation with
TabandSpace, andShiftfor the opposite direction - Whitespace view with
F9or theEditmenu - Nothing else
To open a file from a terminal, give the path as the first argument:
nnotepad notes.txtThese keys control the application:
| Key | Function |
|---|---|
Ctrl-N |
Start a new document |
Ctrl-O |
Open a file |
Ctrl-S |
Save the file |
Ctrl-Shift-S |
Save the file with a new name |
Ctrl-Q |
Close the application |
Ctrl-X |
Cut the selected text |
Ctrl-C |
Copy the selected text |
Ctrl-V |
Paste the clipboard content |
Tab |
Indent the selected lines with a tab |
Space |
Indent the selected lines with a space |
Shift-Tab |
Remove one indent level from the selected lines |
Shift-Space |
Remove one space from the start of the selected lines |
F9 |
Show the whitespace while the key stays down, or end a view from the menu |
Tab, Space, Shift-Tab and Shift-Space change the indentation only while the selection touches more than one line. A selection that stops in column 0 does not include that last line. Empty lines get no indent.
In one line, Tab and Space write their character, and Shift-Space writes a space. Only Shift-Tab also removes an indent there. It removes one tab, or a maximum of four spaces.
Keep F9 down to look at the whitespace, or select Show Whitespace in the Edit menu to keep the view on screen. F9 also ends a view that came from the menu.
A space becomes ·, and a tab becomes →. The view is read-only and changes no text. Movement keys keep it on screen, all other keys end it.
The last two menus show the encoding and the line end of the document. Open them to select a different one. The application detects both when it opens a file.
A save writes the selected line end for all lines. If the selected encoding changes characters, the application asks you first.
The application discards unsaved changes when you close the window. It does not ask you first. Push Ctrl-S to keep your work.
The build needs these components:
- CMake 3.13 or later
- A compiler with C++17 support
- wxWidgets 3.2 or later
- glib-2.0 and pkg-config (Linux only)
Install the components:
# Debian/Ubuntu
sudo apt install cmake pkg-config libglib2.0-dev libwxgtk3.2-dev
# Arch
sudo pacman -S cmake pkgconf wxwidgets-gtk3Then start the build script:
./build.shThe script writes the executable to build/nnotepad.
To install the executable, the desktop entry and the icon into ~/.local:
./install.shThe script installs into ~/.local by default. Set PREFIX for a different location. For a system-wide installation, use this command:
PREFIX=/usr/local sudo -E ./install.shbrew install cmake wxwidgets
./build.shThe script writes the application bundle to build/nnotepad.app.
The Windows build needs MSYS2 with the UCRT64 toolchain. Install the components with this command:
pacman -S mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-cmake mingw-w64-ucrt-x86_64-ninja mingw-w64-ucrt-x86_64-wxwidgets3.3-mswThen double-click build.bat, or start it from a terminal. The script writes the executable to build\nnotepad.exe.
The application needs Windows 10 or later. It gets the dark mode from the system setting.
./build-dmg.shThe script writes the DMG to build/nNotepad.dmg.
This script needs linuxdeploy and appimagetool in your PATH.
./build-appimage.shThe script writes the AppImage to build/nNotepad-x86_64.AppImage.
