Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Notepad3 Settings (Notepad3.ini) #611

hpwamr opened this issue Aug 19, 2018 · 7 comments

Notepad3 Settings (Notepad3.ini) #611

hpwamr opened this issue Aug 19, 2018 · 7 comments


Copy link

@hpwamr hpwamr commented Aug 19, 2018

Notepad3 Settings (Notepad3.ini)


This section can be used to redirect to a settings file which should 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 his settings,
for example :


or a to have user specific settings:



This settings are read and written by Notepad3’s user interface.
For examples all Menu ? Settings will go here.


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.


  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)
  English/United Kingdom (en-GB)
  Spanish/Spain (es-ES)
  French/France (fr-FR)
  Hungarian/Hungary (hu-HU)
  Italian/Italy (it-IT)
  Japanese/Japan (ja-JP)
  Korean/Korea (ko-KR)
  Dutch/Netherlands (nl-NL)
  Polish (Poland) (pl-PL)
  Portuguese (Brazil) (pt-BR)
  Russian/Russia (ru/RU)
  Chinese Simplified/China (zh-CN)



  The timeout (in milliseconds) to wait before automatically reloading modified files. 
  The default value of 2000 ms usually prevents read/write conflicts.



  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).  


  Specify the default directory for the open and save dialogs, used if no file is opened. 
  Path-names can be relative to the Notepad3 program directory.


  Specify the default extension for saved files (omit the leading dot, just like txt or html).




  Specify the path of an external program that is launched when pressing the Browse toolbar 
  button. Defaults to `minipath.exe`, which is the file browser plugin. You can specify 
  additional command line switches, and the file currently opened in Notepad3 will be 
  appended as the last command line parameter.      

  Note: Due to special treatment of quotes by the Win32 ini-file APIs, pathnames with spaces
  need to be quadruple-quoted (""path to/file.exe""), but only double-quoted if there's 
  additional command line arguments ("path to/file.exe" /arg).


  The interval (in milliseconds) to check for external modification of the currently 
  opened file. Defaults to 2000 ms.


  Specify filters for the open and save dialogs 
  (Example: `Text Files|*.txt;*.wtx;*.log;*.asc;*.doc;*.diz;*.nfo|All Files|*.*`).


  The size limit, in megabytes, to display a warning message for large files. 
  A value of 0 disables the warning.


  This parameter limits the number of occurrences compted and displayed in Status Bar in 
  “Section 5 = Occ : Number of Marked Occurrences”  (to display more than 2000 occurrences 
  changes this parameter in the ini file.


  Control if Notepad2 should allow multiple files on the command line (set to 1). 
  The default behavior is to accept only a single file, without quoted spaces, 
  like Windows Notepad (set to 0). 
  The command line switches + and - can be used to override this setting on the fly, 
  and the /z command-line switch has the same effect as the - switch.


  Set to 1 to disable simple language detection for cgi and fcgi files.


  Set to 1 to disable fading of hidden objects in file lists (such as Favorites, etc.).


  Set to 1 to disable file variable parsing. 
  Encoding tag parsing can be disabled in the Menu ? File ? Encoding ? Default dialog box.

  Notepad3 can parse a few of the Emacs variables that can be used in source code files. 
  The first 512 bytes of a file (and, if nothing is found, also the last 512 bytes) are 
  checked for the following constructs (can be manually disabled in the ini-file, or 
  the File, Encoding, Default dialog box, respectively):

  coding: utf-8;
  mode: python;
  tab-width: 8;
  c-basic-indent: 2;
  indent-tabs-mode:  nil;
  c-tab-always-indent: true;
  fill-column: 64;
  truncate-lines: false;
  enable-local-variables: true;

  coding: Serves as a file encoding tag. Details about using encoding tags are outlined in the 
  Notepad2 Encoding Tutorial.      
  mode: Indicates the syntax scheme to be used, and is either the name of a scheme, or a 
  file name extension.
  c-basic-indent: Denote tab and indentation settings.      
  indent-tabs-mode: Determines whether to insert tabs as spaces (nil, false or 0) 
  or not (true or 1).      
  c-tab-always-indent: Configures whether the tab key re-formats indenting white-space 
  (true or 1) or not (nil, false or 0).      
  fill-column: Sets the desired limit for long lines (but does not automatically display 
  the visual marker).      
  truncate-lines: Controls word wrap (enable: nil, false or 0; disable: true or 1).      
  enable-local-variables: Disables file variable parsing (nil, false or 0), but keeps 
  evaluating encoding tags.      

  To bypass both file variable and encoding tag parsing, reload the file with Alt+F8. 
  Adapt the settings mentioned above to permanently turn off file variables and encoding tags.


  Set to 1 to disable simple HTML/XML detection for files without extensions.


  If set to 1, recent files and other path settings referring to the `My Documents` directory 
  tree are stored relative to `My Documents`. This enhances USB stick portability between 
  different versions of Windows, which are using different locations for `My Documents`. 
  This setting has no effect if Notepad3.exe itself is located inside `My Documents` 
  (or a sub-directory thereof). 
  The default is 1 (enabled) if `RelativeFileMRU` is enabled, and 0 (disabled) otherwise.


  Opacity level (in %) of the Notepad3 window in transparent mode.


  Opacity level (in %) of the Find/Replace window in transparent mode.


  Set to 0 to disable recent files on the same drive or network share as Notepad3.exe being 
  saved with relative path-names. The default is 1 (enabled).




  Set to 1 to prevent indentation guides from jumping across empty lines.


  This items are managed by Notepad3.



  Application User Model IDs (AppUserModelIDs) are used extensively by the taskbar in Windows 7 
  and later systems to associate processes, files, and windows with a particular application. 
  In some cases, it is sufficient to rely on the internal AppUserModelID assigned to a process 
  by the system. However, an application that owns multiple processes or an application that is 
  running in a host process might need to explicitly identify itself so that it can group its 
  otherwise disparate windows under a single taskbar button and control the contents of that 
  application's Jump List.
  Most recently used (MRU) source lists are resident on the user's computer and contain 
  information about source paths used in previous installations. 
  This information can be used when prompting the user for a source path.
  Control system MRU, task-bar and jump list behavior. 
  See Replacing Windows Notepad for detailed explanations.


TimeStamp=\\$Date:[^\\$]+\\$ | $Date: %Y/%m/%d %H:%M:%S $

  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 $`











  This parameter is not used at the moment.


  This parameter is used to "debug"  UCHARDET and CED (Compact Encoding Detection)


[Statusbar Settings]

This section provides the ability to set the number, order and width of columns,
and the prefix text of the status bar fields.

VisibleSections=0 1 12 14 2 4 5 6 7 8 9 10 11 (internal default)

  This parameter is used to define, which fields of the Status Bar should be visible. 
  If used, this setting also defines the field ordering.
  • Section 0 = Ln : Line number of Caret position / Number total of lines in the file
  • Section 1 = Col : Column number of Caret position / Limit for Long Line settings
  • Section 2 = Sel : Number of characters selected
  • Section 3 = Sb : Number of bytes (Bytes in [UTF-8]) selected
  • Section 4 = SLn : Number of selected lines
  • Section 5 = Occ : Number of Marked Occurrences
    (to display more than 2000 occurrences changes this parameter in the ini file
  • Section 6 = Size of file in [UTF-8] Mode
  • Section 7 = Encoding Mode (double click to open Encoding F9 )
  • Section 8 = EOL Mode (Toggle CR+LF, LF, CR)
  • Section 9 = Toggle INS/OVR Mode
  • Section 10 = Toggle STD/2ND Text Mode (Default Text or 2nd Default Text)
  • Section 11 = Current Scheme (double click to open Select Scheme )
  • Section 12 = Character Count (per line)
  • Section 13 = Replaced Occurrences
  • Section 14 = TinyExpr Evaluation

SectionPrefixes=Ln ,Col ,Sel ,Sb ,SLn ,Occ ,,,,,,,Ch ,Repl ,Eval , (internal default)

  This parameter is used to redefines the displayed prefixes in the sections of the Status Bar
    A “,” (comma) is used as separator. Spaces are NOT ignored.

SectionPostfixes=,,,,,,,,,,,,,,, (internal default)

  This parameter is used to redefines the displayed postfixes in the sections of the Status Bar
    A “,” (comma) is used as separator. Spaces are **NOT** ignored.

SectionWidthSpecs=30 20 20 20 20 20 0 0 0 0 0 0 20 20 20 (internal default)

  This parameter is used to define the relative width of each field of the Status Bar
     0 = space optimized fit to text (dynamically adapted to width changes)
     -n (neg. val) = fixed width of section [pix] , longer text is truncated

  Fine tuning: increase, decrease or modify the value of numbers, e.g.: 
     `;;;;;;;;;;;;;;;;;  0  1  2  3  4  5 6 7 8 9 10  11 12 13  14`
     `SectionWidthSpecs=50 40 42 40 36 40 0 0 0 0  0 -10 40 40 -40`


  This parameter is used to define start counting of column (`Col`) at 0 or 1.


  This parameter is used to define start counting of characters (of current line) (`Ch`) 
  at 0 or 1.

[Toolbar Labels]

This section offers the possibility to display the name of the function to the right of its corresponding icon.

12=Word Wrap
13=Zoom In
14=Zoom Out
16=Customize Schemes
18=Save As
19=Save Copy
23=Add to Favorites
24=Toggle Folds
25=Execute Document
26=Focused View
27=Monitoring Log
29=Always On Top


The merit goes back to @RaiKoHoff for the collection and documentation of Notepad2 / Notepad2-mod settings and the creation of a lot new parameters in Notepad3.ini. 👍 ❤️

@everyone: Your questions and remarks are welcome.

Also feel free to add more documentation, comments, corrections, etc...


This comment has been minimized.

Copy link

@RaiKoHoff RaiKoHoff commented Aug 20, 2018

@hpwamr : nice piece of work 👍 😄
It rises (again) the question: Where should the documentation of Notepad3 be bundled?
Meanwhile we have several places:

We are missing a clear and straight concept here (and a voluntary to take this challenge 😉).


This comment has been minimized.

Copy link
Collaborator Author

@hpwamr hpwamr commented Aug 20, 2018

Hello @RaiKoHoff, I understand your preoccupation.
My preference goes to number 1:
Well, I'm going to ask "Derick Payne" @rizonesoft for a clear vision of the future of his Notepad3 ! 🤔


This comment has been minimized.

Copy link

@rizonesoft rizonesoft commented Aug 21, 2018

@hpwamr I am working on a solution to easily keeping the documentation up-to-date with little effort. @RaiKoHoff Thank you brother for all the hard work. I will keep you guys updated.


This comment has been minimized.

Copy link

@byuansh byuansh commented Sep 16, 2018

I add PreferredLanguageLocaleName=zh-CN within [Settings2] section in Notepad3.ini, however, the languange of UI doesn't become Chinese. What should I do?

The version of Notepad3 I am using is v4.18.512.992.


This comment has been minimized.

Copy link
Collaborator Author

@hpwamr hpwamr commented Sep 16, 2018

@byuansh , the version v4.18.512.992 is not localized.

  • Localized versions are still in beta development and are not yet published publicly. 😉
    Please test: beta_v4.18.914.1104 or higher and in its "Notepad3.ini", section [Settings2] change the setting: en-US to zh-CN.
    The latest beta can be found here: Notepad3 Development
@hpwamr hpwamr closed this Sep 16, 2018
@hpwamr hpwamr reopened this Sep 16, 2018

This comment has been minimized.

Copy link
Collaborator Author

@hpwamr hpwamr commented Sep 16, 2018

Sorry, closed by abuse.

@hpwamr hpwamr self-assigned this Sep 18, 2018
@hpwamr hpwamr closed this Sep 23, 2018
@hpwamr hpwamr changed the title [Information] Notepad3 Settings (Notepad3.ini) Notepad3 Settings (Notepad3.ini) Apr 27, 2019
@hpwamr hpwamr pinned this issue Apr 27, 2019

This comment has been minimized.

Copy link

@AlexIljin AlexIljin commented May 27, 2019

Could a link to this ini-file documentation be placed in a comment at the top of the "pristine" ini-file distributed with the app? This way users poking around in there could easily find it.

Repository owner locked and limited conversation to collaborators Aug 27, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.