# Notepad3
[![Build status](https://img.shields.io/appveyor/ci/rizonesoft/notepad3/master.svg)](https://ci.appveyor.com/project/rizonesoft/notepad3/branch/master)
[![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
[![](https://img.shields.io/badge/Donate-PayPal-blue.svg)](https://www.paypal.com/donate/?hosted_button_id=7UGGCSDUZJPFE)
Notepad3 is a fast and light-weight Scintilla-based text editor with syntax highlighting. It has a small memory footprint, but is powerful enough to handle most programming jobs. [Download Notepad3 here](https://www.rizonesoft.com/downloads/notepad3).
> *Notepad3 is based on code from Florian Balmer's Notepad2 and XhmikosR's Notepad2-mod. MiniPath is based on code from Florian Balmer's metapath.*
## Important links!
* Download page - https://www.rizonesoft.com/downloads/notepad3
* Latest changelog (release notes) - https://www.rizonesoft.com/downloads/notepad3/update
* Full changelog (all versions/builds) - [Notepad3 - Full Changelog](https://raw.githubusercontent.com/rizonesoft/Notepad3/master/Build/Changes.txt)
* Documentation - https://www.rizonesoft.com/documents/notepad3
## Rizonesoft Support
* **[GET IN TOUCH](https://www.rizonesoft.com/#contact)**
* **Premium Support** - On Rizonesoft, support is free and we will assist you the best we can. Please be patient when contacting us; there are mainly volunteers working on Rizonesoft projects, and time is a precious commodity.
## Changes compared to Flo's official [Notepad2](https://www.flos-freeware.ch/notepad2.html) (made in [Notepad2-mod](https://xhmikosr.github.io/notepad2-mod/)):
* Code folding
* Support for bookmarks
* Option to mark all occurrences of a word
* Updated Scintilla component
* Word auto-completion
* Syntax highlighting support for AutoHotkey (AHK), AutoIt3, AviSynth, Bash, CMake, CoffeeScript,
Inno Setup, LaTeX, Lua, Markdown, NSIS, Ruby, Tcl, YAML and VHDL scripts.
* Improved support for NFO ANSI art
* Other various minor changes and tweaks
## Changes compared to the Notepad2-mod fork:
* Additional syntax highlighting support for Awk, D, golang, MATLAB
* Regular Expression search engine ([Oniguruma](https://github.com/kkos/oniguruma))
* New toolbar icons based on Yusuke Kamiyaman's Fugue Icons (purchased by [Rizonesoft](https://www.rizonesoft.com))
* Hyperlink hotspot highlighting (single-click Open in Browser (Ctrl) / Load in Editor (Alt)
* Syntax highlighting support for D Source Script, Go Source Script, JSON, Makefiles, MATLAB, Nim Source Code, Power Shell Script, Resource Script, Shell Script
* New program icon and other small cosmetic changes
* In-App support for AES-256 Rijndael encryption/decryption of files (incl. external command line tool for batch processing)
* Virtual space rectangular selection box (Alt-key down)
* High-DPI awareness, including high definition toolbar icons
* Undo/Redo preserves selection
* File history preserves caret position (optional) and remembers encoding of file
* Accelerated word navigation
* Preserve caret position of items in file history
* Count occurrences of a marked selection or word
* Count and mark occurrences of matching search/find expression
* Visual Studio style copy/paste current line (no selection)
* Insert GUIDs
* Dropped support for Windows XP
* Other various minor changes, tweaks, and bugfixes
## Supported Operating Systems:
* Windows 7, 8, 8.1, 10, and 11 (both 32-bit and 64-bit)
# References
Seen on Nsane Forums: [Notepad3 is an advanced text editor...](https://www.nsaneforums.com/topic/382910-guidereview-notepad3-is-an-advanced-text-editor-that-supports-many-programming-languages/), a review of **Notepad3** posted by the moderator [Karston](https://www.nsaneforums.com/profile/12756-karlston/) at [nsane.forums](https://www.nsaneforums.com/).
**Notepad3's review**: **[Notepad3 is an advanced text editor that supports many programming languages](https://www.ghacks.net/2020/08/11/notepad3-is-an-advanced-text-editor-that-supports-many-programming-languages/)**.
# **Notepad3 Settings (Notepad3.ini)**
## **`[Notepad3]`**
This section can be used to redirect to a settings file which will be used by Notepad3.
If a non-elevated user is not allowed to write to the program directory of Notepad3.exe,
the side-by-side Notepad3.ini can point to a place where the user is allowed to write their settings,
for example:
`Notepad3.ini=%APPDATA%\Rizonesoft\Notepad3\Notepad3.ini`
or a to have user-specific settings:
`Notepad3.ini=%WINDIR%\Notepad3-%USERNAME%.ini`
## **`[Settings]`**
These settings are read and written by Notepad3’s user interface.
For example, all Menu ? Settings will go here.
#### `SettingsVersion=5`
#### `Favorites=%APPDATA%\Rizonesoft\Notepad3\Favorites\`
## **`[Settings2]`**
This section offers some advanced Notepad3 program settings, and can only be edited manually.
Press Ctrl+F7 to open the Notepad3 ini-file. Most changes only take effect upon restarting Notepad3.
#### `PreferredLanguageLocaleName=en-US`
The default value for the already supported languages is defined by the: “OS language setting”.
- The fallback is: “en-US”.
##### Available languages:
```
English/United States (en-US) (internal default)
Afrikaans/South Africa (af-ZA)
Belarusian/Belarus (be-BY)
German/Germany (de-DE)
Greek/Greece (el-GR)
English/United Kingdom (en-GB)
Spanish/Spain (es-ES)
French/France (fr-FR)
Hindi/India (hi-IN)
Hungarian/Hungary (hu-HU)
Indonesian/Indonesia (id-ID)
Italian/Italy (it-IT)
Japanese/Japan (ja-JP)
Korean/Korea (ko-KR)
Dutch/Netherlands (nl-NL)
Polish/Poland (pl-PL)
Portuguese/Brazil (pt-BR)
Portuguese/Portugal (pt-PT)
Russian/Russia (ru/RU)
Slovak/Slovakia (sk-SK)
Swedish/Sweden (sv-SE)
Turkish/Turkey (tr-TR)
Vietnamese/Vietnam (vi-VN)
Chinese Simplified/China (zh-CN)
Chinese Traditional/Taiwan (zh-TW)
```
#### `IMEInteraction=0`
#### `DateTimeFormat=`
- (-> (Locale dependent short format)
#### `DateTimeLongFormat=`
- (-> (Locale dependent long format)
Specify the short/long date and time formats. This is the format parameter passed to
the `strftime()` function.
Note that the locale will be set to English (because of the English Visual C++ Run-time
Library used by Notepad3).
#### `TimeStampRegEx=`
- (-> \$Date:[^\$]+\$) (Find-Pattern to Update Stamps)
#### `TimeStampFormat=`
- (-> \\$Date:[^\\$]+\\$ | $Date: %Y/%m/%d %H:%M:%S $
- (-> $Date: %s $) (Print format should fit to TimeStampRegEx)
This parameter is used as a regex pattern to match time-stamps which will be updated to
current date-time by `Shift+F5`, e.g. `$Date: 2018/04/26 00:52:39 $`
- Default `DateTime` formats are:
1. SHORT: `[Settings2] DateTimeFormat=` (empty) - Notepad3's language locale short '