What’s New in EditPad Pro 8

EditPad Pro 8 is a major upgrade from previous releases with lots of new features and improvements. These release notes only explain the most significant ones.

New Since EditPad Pro 7

Installation

The Advanced Options button in the installer now gives you a choice between installing EditPad for all users and installing for the current user only. The latter option enables a proper installation of EditPad with desktop icons and file associations, without requiring administrator privileges.

Appearance

The most apparent change in EditPad 8 are the new toolbar icons. The new flat look of the icons better matches the flat look of Windows 10. EditPad includes them in 10 different sizes that cover all the scaling increments from 100% to 400% available in the basic display settings in Windows. EditPad can now correctly scale its toolbars on all PC and laptop displays, including small laptops with 4K screens. Toolbar icons can now be switched between small, medium, and large sizes by right-clicking the toolbar.

You can customize the mouse pointer on the Cursors page in the Preferences. You can now have a different pointer over selected text. Custom mouse pointers now support sizes larger than 32x32 when DPI scaling is set to 200% or more, supporting DPI scaling up to 400%. If you select a custom mouse pointer with inside and outside colors then those colors are also used for the mouse pointer that indicates scrolling when you click the editor with the mouse wheel. This scrolling cursor now supports all resolutions between 100% and 400% display scaling.

EditPad has a new dark theme that makes EditPad’s entire user interface use white text with black and dark gray backgrounds. You can toggle this theme with the View|Dark Theme menu item. The menu item also switches the color palettes assigned to file types between dark and light variants.

The Panels page in the Preferences has a new option to make the side panels use the same colors as the editor. This causes the side panels to change colors when switching between files that use different palettes. It makes EditPad’s colors more uniform.

Syntax Coloring and Color Palettes

You can select a syntax coloring scheme and a color palette for each file type on the Colors & Syntax page in the file type configuration. Many more predefined color palettes are now available. There are “Solarized” and “Harmonized” palettes with reduced contrast and monochrome palettes for which the color picker only shows a limited set of colors. For other palettes, the picker shows all the colors used in the selected palette in the order that they are first used so you can easily use exactly the same color for multiple elements. There are also new palettes optimized for the most common types of color blindness.

Each color palette now has an associated printing palette with black text on a pure white background. The printing palette is used as the default when printing. Selecting a palette with a colored background in the print preview now prints the file with that background color which may use a lot of ink.

Color palettes can now be exported into separate .ini files so you can easily share them with others.

The new “Editor: Extra space between lines” color allows you to display ruled lines by setting it to a different color than the plain text color and by adding extra space between lines in the text layout configuration.

You now have more options to customize individual colors. Many different underlining styles are now available, including a wavy underline typically used for misspelled words. Underline can now use a different color than the font. You can now add a strikeout, which can have the same or a different color as the font. Bold and italic now offer an “unchanged” choice that uses the style selected in the text layout configuration; this allows the “off” choice to force bold or italic to be off. The new Copy and Paste buttons make it easy to apply the same settings to the same named color. Selecting “default” as the background, text, or underline color for selected text now leaves that color unchanged when text is selected instead of using the highlighting colors of the Windows theme. This allows syntax coloring to remain visible when text is selected.

Many syntax coloring schemes have been improved. Batch file syntax coloring now supports bracket matching and better highlights environment variables. HTML and XML syntax coloring schemes now define entire opening tags including attributes as opening brackets rather than just the tag itself; in addition the angle brackets of opening and closing tags are now defined as brackets. This allows Block|Between Matching Brackets to properly select HTML tags and text between HTML tags. Whether angle brackets are matched separately can be chosen in the file type configuration. Perl syntax coloring now supports nested paired parentheses, brackets, and braces inside strings, regexes, and substitutions quoted with parentheses, brackets, or braces. PHP with JavaScript syntax coloring scheme can now highlight PHP code inside JavaScript.

File Types

With all the file types that EditPad Pro supports, the File|New and Options|File Type submenus and the drop-down lists in Open and Save dialogs can become very long. You can now reduce those lists by turning off the new “Show in file type selection lists” option on the Definition page in the file type configuration for file types that you don’t normally use. File types that you hide this way do remain functional. If you open a file that matches the file mask of a hidden file type, EditPad does use the hidden file type’s settings for that file.

Files normally have an extension such as .txt on the Windows platform. EditPad uses the extension to determine the file type, which determines the settings to use for the file. On UNIX platforms, text files often have no extension. EditPad now has a predefined “Without Extension” file type that determines EditPad’s settings for files without an extension. The file mask *. is now interpreted as a file masks for files without an extension (or any dot in their name at all) to make this file type possible.

Text Encoding

Setting a file type’s default encoding to Unicode could cause problems when opening a file that is not Unicode. Setting the default encoding to UTF-16 and then opening a file that has ASCII text would appear as Chinese gibberish until you used Convert|Text Encoding to reinterpret with the correct legacy code page. Now you can specify a non-Unicode encoding for each file type that has Unicode as its default encoding. EditPad will use this fallback encoding for files that aren’t valid Unicode files or that reference unassigned code points.

The ASCII section of the hexadecimal editor now uses the file type’s default encoding or non-Unicode encoding if they are 8-bit encodings. The encoding from the Editor Preferences is used if they are not. You can use Convert|Text Encoding to change the encoding used for the ASCII section in hexadecimal mode.

Text Layout

EditPad now better supports modern programming fonts like Fira Code, Monoid, and Hasklig that can form ligatures of ASCII characters. It even uses these fonts by default for its monospaced text layouts if they are available when you first run EditPad.

Complex script text layouts previously supported most ASCII ligatures. Now they also support ligatures with parentheses and angle brackets. They work correctly with all fonts that support ASCII ligatures. Ligatures remain when they are partially selected or when syntax coloring applies different colors to the characters that form the ligature.

The monospaced left-to-right text layout previously did not support ASCII ligatures. Now it does. But it only works correctly with fonts like Fira Code, Monoid, and Hasklig that use one glyph per character even for ligatures. It does not work with fonts like DejaVu Sans Code that use one glyph per ligature. Ligatures are broken (showing the original characters) when they are partially selected or when syntax coloring applies different colors to the characters that would have formed the ligature. This text layout no longer clips italic overhang at the end of words or at color changes, as was already the case for other text layouts.

All text layouts now have independent options for treating underscores, hyphens, other punctuation, currency symbols, math symbols, and/or symbols as word characters.

The monospaced left-to-right text layout now assumes that characters in right-to-left scripts are stored in visual order in the file. This allows files from old (DOS) systems that did not support modern bidirectional editing to be displayed correctly. As a consequence, the monospaced left-to-right text layout also disables automatic font substitution. Only characters supported by the font will be displayed.

The non-monospaced left-to-right text layout still allows Windows font substitution, and does not support ligatures. Complex script text layouts now always use the main font for visualized spaces and generic line breaks.

Text files normally don’t contain control characters other than tabs or line breaks. But when they do, they would often be invisible in previous versions of EditPad because most fonts can’t display them. Now the text layout configuration allows you to choose how EditPad should visualize control characters. The options that use letter pairs (like NU for NULL), hexadecimal numbers, or Control+Letter indicators work regardless of the font. Other options like the IBM PC glyphs or Unicode glyphs do depend on the font. The new “Editor: Control characters” color in the color palette allows you to show control characters in a different color or apply an underline or strikeout to mark them as inappropriate for text files. In hexadecimal mode, the ASCII part of the editor also uses the setting from the text layout configuration to display control characters instead of showing a little bullet for all of them. The hex editor does not use the special color for control characters.

Using the Options menu to select a text layout or font that is different from the file type’s default for an individual file is now remembered as part of the file’s status, if you enabled the option to preserve file status in Preferences|Save Files.

Tabbing and Indentation

EditPad’s ability to handle different tabbing and indentation styles has been greatly improved. The settings that deal with this have been moved onto a new Tabbing page in the file type configuration. The Tab Characters group has the options that determine the width of a tab. The Indentation group has the options that determine how many spaces or tabs are inserted or removed by Block|Indent and Block|Outdent.

Because other people may have their editors configured differently, you can now specify a regular expression that EditPad should use to detect the tab size. The regex needs to have a capturing group named “tab”. If this matches an integer between 2 and 32, that is taken as the tab size in spaces. Otherwise EditPad counts the number of characters matched by the group and takes that number as the tab size if it is between 2 and 8. If your regex also has a group named “tabspaces” then pressing the Tab key on the keyboard inserts spaces if that group finds a match other than “0”, “false”, “tab”, or “no”.

Turning on “elastic tab stops” makes EditPad dynamically calculate the width of tabs so that columns line up nicely for blocks of lines that have the same number of tabs, requiring only a single tab between the columns. Editing text that is followed by a tab on a particular line automatically adjusts the width of that tab on that line and all adjacent lines that have the at least that many tabs. When tab stops are elastic, the "tab size" setting applies only to tabs at the start of the line (indentation tabs). The "smallest gap between text" is the minimum tab size for other tabs. The key benefit of elastic tab stops is that it allows columns to line up neatly even with proportionally spaced fonts, and they will continue to line up neatly when you change the font or change the tab size. They will also line up neatly for other people, as long as you took care to only use one tab to delimit columns and indent lines only using tabs, and the other people’s editor also uses elastic tab stops.

Turn on “tab-separated values” to show tab-delimited, comma-delimited (CSV), or any-one-character-delimited files with properly aligned columns. You can enter any single character as the value delimiter. That character is then spaced like tab and shown with the color for visualized whitespace. You can also specify a quote and/or an escape character to be able to use the value delimiter within values as well. When you edit the file, the size of the tab that follows the edit is automatically adjusted throughout the entire file to make all the columns line up neatly. EditPad ships with predefined “comma-separated values” and “tab-separated values” file types for .csv and .tsv file types that use these options.

Turn on “keep the same level of indentation when pressing enter” to have the new line indented by the same amount as the previous line. This option was labeled “automatically indent new lines when pressing enter” in previous versions of EditPad. Options|Keep Indent toggles this option for the active file. This menu item was previously labeled Auto Indent.

The old “auto indent” feature was renamed to “keep indent” because that more accurately describes what it does and because EditPad Pro 8 now has real automatic indentation that can increase and decrease the amount of indentation. This requires a syntax coloring scheme that specifies which syntax in your file should increase or decrease indentation. Most of the schemes included with EditPad Pro 8 do this. Then you can turn on “automatically indent or outdent new lines based on the syntax coloring scheme” for the file type or toggle Options|Auto Indent for the file. If the scheme specifies that certain syntax should be treated like braces in C-style languages or like tags in markup languages then you can specify your indentation style on the new Brackets page in the file type configuration.

The Block|Indent and Block|Outdent can now detect the indentation size of text surrounding the block to be indented or outdented. They look at a block of 1,000 lines. If all the lines are indented by tabs, then the indentation size is one tab. If all the lines are indented by a multiple of the same number of spaces, then the indentation size is that number of spaces. Otherwise, the setting from the file type configuration is used.

When word wrap is on, you now have more options for indenting wrapped lines. Wrapped lines can be indented more or less than that line, relative to it. Or then can be indented a fixed amount.

On the Navigation page in the file type configuration, you can now enable indentation indicators. These are thin vertical lines or differently colored backgrounds that visualize how much lines are indented. You can enable them for all lines, or for lines surrounded by matching brackets or tags, or for lines inside a foldable range. You can configure their appearance via the four “Editor: Indentation level” colors in the file type’s palette. Options|Visualize Indentation lets you toggle the indentation indicators for the active file.

Editing Large Files

When you open a large file, you can now instantly jump to the end of the file by pressing Ctrl+End on the keyboard or by dragging the scroll bar’s thumb to the bottom. Previously you had to wait for EditPad to scan the whole file for line breaks to be able to access the end of the file. Now you only need to wait if you want to access the middle of the file and you only need to wait half as long. The Cursors page in the Preferences has a new option to place the cursor at the end of the file instead of at the top of the file when opening a file for which EditPad has not remembered an editing position.

File|Tail lets you load only the tail end of a large file. You can also use it to tell EditPad Pro that a file is only appended to when it grows. This way EditPad Pro only needs to load the newly added part instead of reloading the entire file. EditPad Pro can do so automatically on an interval, allowing you to monitor live log files. The Tail button on the FTP panel lets you do the same for files on an FTP server.

Hexadecimal mode now adds extra bytes to the address column as needed when opening files larger than 4 GB.

On the Open Files page in the Preferences, you can configure a threshold for huge files. Files smaller than that are kept in memory entirely. Files larger than that are loaded into memory as needed, allowing you to open files that are larger than the amount of RAM in your PC. New is that you can also configure how much memory EditPad Pro may use to keep the “needed” parts in memory. Increasing this limit improves performance as it reduces the need to reload these parts from disk as you move through the file, at a cost of making EditPad Pro use more memory. Also new is that EditPad Pro can swap modified parts of huge files out to disk when a chosen memory limit is reached. You can select the folder that should be used as temporary storage, preferably on your PC’s fastest drive.

Column Editing

Rectangular selections can now be zero columns wide. Those appear as a thick vertical line using the selection background color (or the selection underline or text color if no background color is used for selections). This enables direct column editing. If persistent selections are off, typing into a rectangular selection replaces the selection with the typed character on each line. Pressing Delete or backspace deletes the whole selection. If persistent selections are on, typing at the edge of a selection inserts the character on each line at that edge. Pressing Delete or Backspace deletes one character at the edge of the selection without otherwise changing the selection. That character may be inside or outside the selection. Pasting text that does not contain line breaks pastes it on each line (replacing the selected columns if selections are not persistent). After making an edit, a new selection is made that is zero columns wide so that editing can continue naturally.

Persistent selection mode can now be toggled via a menu item in the Block menu or its corresponding toolbar option, instead of having to go through the Preferences dialog. You may need to toggle this to make column editing or Instant Replace work for the task at hand.

Instant Search and Replace

The Instant Find Next/Previous and Instant Highlight commands now have icons so that you can place them as buttons on a toolbar. Some of these are on the main toolbar by default. This enables quick searches for other occurrences of the text under the cursor without using the Search panel at all. The new instant search options allow instant searches to be made case sensitive, restricted to whole words, or allowed to loop around the end of the file.

Instant Incremental Search allows you to search by typing in a search term without using the Search panel. Backspace goes to the previous search term. Arrow keys go to the following or preceding matches of the current search term.

Instant Replace allows you to replace all occurrences of a word or a selection by editing one of those occurrences. If there is a multi-line selection upon activation, then that becomes the search range. Editing any word within the search range automatically edits all occurrences of that word. Making a selection within the search range and editing it automatically edits all occurrences of the selected text. If selections are not persistent, moving the cursor outside the search range automatically ends Instant Replace. Regardless of whether selections are persistent, editing outside any highlighted matches automatically ends Instant Replace. If there is a non-multi-line selection upon activation, then all occurrences of the selected text are edited. Instant Replace works on the whole file and is automatically canceled when moving the cursor outside the text being edited. If there is no multi-line selection, and the selected text or the word under the cursor cannot be found, then Instant Replace is aborted as a failed search.

Backups and Working Copies

The Save Files page in the Preferences has new options for backups and working copies. Backup copies can now be limited by their total size. When restricting backups by age, backup copies older than a certain number of days are now reduced to one per day and backups older than a certain number of weeks are now reduced to one per week, instead of deleting all backups older than a certain number of days. This allows backups to be kept over a longer period without reaching the limit you set for their size or the number of copies.

If you select to keep multiple backups per file, you can now tell EditPad to automatically save the actual file every few minutes instead of saving a separate working copy. Separate working copies can now be saved in a specific folder or in a subfolder of the folder containing the original. Working copies are now saved when the system goes into standby or hibernation to prevent data loss if the system never resumes from standby or hibernation.

Preferences|Save Files now has separate options for closing files with unsaved changes and closing files that were never saved. This allows untitled files to be saved automatically without prompting. The choice for files with unsaved changes now affects files that were made empty.

When editing files via FTP, you can now tell EditPad Pro to use a local folder to save copies of the files you open. These local copies can be used to quickly reopen the same file later. They also enable local backup copies and local working copies according to your preferences for those. Local backups can be accessed via the History panel. In addition, you can configure each FTP connection to keep a single remote backup copy of each file that you save via FTP.

Line Break Styles

Previous versions of EditPad already recognized all Unicode line breaks. But the default line break style could only be set to CRLF pairs, LF-only, or CR-only. Now you can set any line break style as the default in the file type configuration. Previously, Ctrl+Enter always inserted a form feed character, which EditPad interprets as a page break. This is still the default. But in the file type configuration you can now select any line break style for Ctrl+Enter.

Previously, the Convert|Windows/UNIX/Mac menu items allowed you to convert between CRLF, LF-only, and CR-only line breaks. These commands left all other line breaks untouched. They have been replaced with a new Convert|Line Break Style menu item. When you select it you get a popup dialog that tells you how many line breaks of each style, including all the Unicode styles, your file contains. You can tick the line break styles you want to convert, and untick those you want to leave alone. You can select any line break style that you want to convert the selected styles to. This allows you to easily deal with errant line break styles in your file. You can still do the old Windows/UNIX/Mac conversion by selecting only CRLF, LF, and CR line breaks to be converted and selecting CRLF, LF, or CR as the new line break style.

The Convert|Line Break Style also allows you to select which line breaks are inserted by the Enter and Ctrl+Enter keys. You can select any line break style for these, regardless of which line breaks your file already contains. For the Enter key you can also choose “automatic” which is the old behavior of using the file’s dominant line break style. Line break style detection is now done whenever you insert or delete lines, possibly changing the status bar indicator and the line break style used by the Enter key if you choose the “automatic” option.

Straight Quotes, Smart Quotes, and Primes

EditPad Pro can now convert between straight quotes, smart quotes, and primes. Straight quotes are the ASCII single and double quotes, and optionally the ASCII backtick and less-than and greater-than signs. Smart quotes are the “typographical quotes” as well as «guillemets», 《angle brackets》, and 「corner brackets」. Primes are the proper symbols for inches, feet, minutes, seconds, etc. 5′8″ is five feet eight inches.

EditPad Pro can convert straight to smart quotes, smart to straight quotes, any quotes to primes, primes to straight quotes, and any set of smart quotes to any other set of smart quotes. You can independently configure the opening and closing quotes. Predefined styles include “outward commas”, „inward commas“, ”high commas”, „low and high commas”, «outward guillemets», »inward guillemets«, 《angle brackets》, 「corner brackets」, and 『white corner brackets』. EditPad also knows the difference between a single quote and an apostrophe, even at the start of a word. 2019 with the century omitted is correctly written as ’19 with an apostrophe. Most word processors get this wrong. EditPad Pro gets this right.

If your syntax coloring scheme supports it, EditPad Pro can also convert between straight and smart quotes according to its rules. The provided HTML schemes, for example, convert straight quotes to smart quotes only outside HTML tags. EditPad Pro can do this conversion as you type or on demand on the selected text.

Other Improvements

Files with paths longer than 260 characters are now opened and saved correctly. Previously EditPad acted as if such files did not exist.

Go|Go to Position replaces Go|Go to Line. In addition to moving the cursor to a specific line, you can now also move it to a specific column or move it to a specific byte offset. There are also options for selecting the text between the old and new cursor positions or expanding the existing selection to the new cursor position.

Extra|Sort Alphanumerically sorts numbers as a whole instead of sorting each digit separately. It sorts “A4” before “A10” because 4 is less than 10. Extra|Sort Alphabetically A-Z sorts “A10” before “A4” because 1 comes before 4.

Go|Back/Forward in Editing Position renamed from Previous/Next Editing Position to make it more obvious that these commands use chronological order like the Back/Forward in Edited Files commands and unlike the other Next/Previous commands.

Edit|Copy as Rich Text is now a separate menu item instead of a global preference in the Editor Preferences. Edit|Copy As HTML is a new command that complements it. You can use these commands to copy text with EditPad’s syntax coloring to paste into applications that support the RTF or HTML clipboard formats. File|Export to HTML or RTF and Block|Export to HTML or RTF allow you to save an HTML or RTF file that shows your text with EditPad’s syntax coloring.

Regular Expressions

EditPad’s regular expression syntax has been extended to support the newest features from other regex flavors. EditPad 8 uses exactly the same regex flavor as PowerGREP 5.

The Search toolbar now has a button labeled “Free” that enables free-spacing regular expressions.

EditPad now supports balancing groups like the .NET regex flavor and branch reset groups like Perl and PCRE. Also new is character class intersection using the [class&&[intersect]] syntax like Java and Ruby. The nested pair of square brackets is required. EditPad does not support the [class&&intersect] syntax as this could lead people to write [class&&intersect&&again] which behaves unpredictably in Java and Ruby.

In Perl and PCRE you can use \K to keep text out of the match to work around their restrictions on lookbehind. While \K is not really needed in EditPad with its unrestricted lookbehind, you can now use \K in EditPad like you would in Perl or PCRE if you are used to writing your regexes that way.

Perl, PCRE, and Ruby all support regular expression recursion and subroutines. These three have largely copied each others syntax, resulting in multiple ways to write recursion and subroutines. But these three have not copied each others matching behavior, resulting in clear behavioral differences despite the similar syntax. EditPad provides three sets of syntax for recursion and subroutine calls. Each set of syntax follows the matching behavior of one of these three flavors. Like in PCRE, (?P>name) does not capture, reverts capturing groups, and is atomic. You can remember this syntax by its similarity to that of atomic groups. Unlike PCRE, EditPad also supports (?P>1) and (?P>0) so you can specify this behavior for a numbered call and for recursion. Like in Perl, (?R), (?1), and (?&name) do not capture, revert capturing groups, and allow backtracking. You can remember this syntax by the ampersand that is used in &subroutine(); calls in Perl code. Finally, like in Ruby, \g<0>, \g<1>, and \g<name> capture the match of the subroutine call, do not revert capturing groups, and allow backtracking. You can remember this syntax by the fact that Ruby’s regex flavor does not support any other syntax for recursion and subroutine calls.

\h is a new shorthand character class for horizontal whitespace. It includes spaces, tabs, and all Unicode whitespace except line and paragraph breaks. \v used to be an escape that matches the vertical tab. Now \v is a shorthand for vertical whitespace. This includes the vertical tab, line breaks, page breaks, and paragraph breaks. \v matches CR and LF separately. \H and \V are the negated versions of these two new shorthands.

\R is a new special escape that matches any line break, including Unicode line breaks. What makes it special is that it treats CRLF pairs as indivisible. It matches CR and LF on their own when they occur in the subject string on their own. But when the subject string contains CRLF as a sequence, \R matches the entire CRLF pair.

\l and \u are now shorthands for \p{Ll} and \p{Lu}. These match any Unicode lowercase or uppercase character. These tokens are always case sensitive.

POSIX classes using the notation [[:alpha:]] now match only ASCII characters. The \p{Alpha} notation still matches Unicode characters. [[:d:]], [[:s:]], [[:w:]], [[:l:]], and [[:u:]] are now shorthands for [[:digit:]], [[:space:]], [[:word:]], [[:lower:]], and [[:upper:]]. You can treat them as ASCII-only versions of \d, \s, \w, \l, and \u.

\i and \c are now XML shorthand character classes. \cA through \cZ are no longer supported as control character escapes.

Octal escapes must now be written as \o{377}. The octal number can range from \o{0} to \o{177777}. The old \0377 syntax is now an error. EditPad has never supported \377 as that is too confusing with the syntax for backreferences. \0 too is now an error, instead of matching a literal zero. Use \x00 to match NULL bytes.

Replacement Strings

EditPad’s replacement string syntax has been extended with replacement string conditionals to make this possible. (?1matched:unmatched) and ${1:+matched:unmatched} insert matched if the first capturing group participated in the match or unmatched if it did not. Just like conditionals in the regular expression, a capturing group that finds a zero-length match is considered to have participated. The first syntax is borrowed from Boost. The second from PCRE2. When using named capturing groups, you can use (?{name}matched:unmatched) and ${name:+matched:unmatched} to reference them in replacement string conditionals. You can use the full replacement string syntax inside a conditional, including nested conditionals. Conditionals that reference non-existing groups are an error. If you want to insert the text captured by the group when it participated and something else when it did not, you can use ${group:-unmatched}.

As a consequence of adding this syntax, EditPad 8 treats \?, \:, \(, \), \{, and \} as escaped characters that insert one of these six punctuation characters literally. EditPad 7 and prior treated these as literal backslashes, inserting both the backslash and the following punctuation character literally into the replacement.

New Since EditPad Pro 6

When you start EditPad 7 you’ll immediately notice the updated interface. All the toolbars and side panels can be docked and floated freely. You can customize the toolbars and even the main menu by right-clicking on them and selecting Customize. You can add, remove, and rearrange everything as you like. You can save and restore the arrangement of panels and toolbars with the Custom Layouts item at the bottom of the View menu. The new interface scales properly and looks crisp when using the high DPI settings in Windows Vista and Windows 7. EditPad’s tabs have a new look and some new options. You can have an X button on each tab (off by default) and Ctrl+Tab can walk through the most recently accessed tabs (on by default) instead of walking from left to right.

The keyboard shortcut for the Redo command was changed to Ctrl+Y to be more in line with other Windows applications. The F5 shortcut is now assigned to Insert Date and Time as it was in EditPad 5 and prior instead of to Reload from Disk as it was in EditPad 6. You can change these and all other keyboard shortcuts via the Keyboard tab in the Preferences. When editing a file, you can now type various accented characters with Ctrl+punctuation key combinations. E.g. holding down Ctrl while pressing the apostrophe key and then typing an a inserts á. If your computer has a keyboard layout installed that uses the AltGr key to type special characters then EditPad removes any default Ctrl+Alt keyboard combinations that conflict with AltGr combinations.

EditPad 7 is a full Unicode application. You can use any mixture of any number of scripts anywhere in EditPad, including in file names. EditPad now supports bidirectional editing, so you can edit text written in right-to-left scripts such as Arabic or Hebrew or text written in a mixture of left-to-right and right-to-left scripts. You can configure text direction, cursor movement, fonts, and character spacing as part of the new text layout configuration system. You can assign two text layouts to each file type: one for left-to-right, and one for right-to-left. The Right-to-Left item in the Options menu toggles between the two.

EditPad 7 supports even more text encodings than EditPad 6. ASCII files that use \uFFFF or &#xFFFF; or &#65535; to encode Unicode characters can now be edited directly, showing the actual Unicode characters in EditPad instead of the character escapes or XML entities. Other new encodings that can be edited directly are the EUC encodings for Chinese, Japanese, and Korean, the classic Mac code pages, and a range of legacy code pages: ArmSCII (Armenian), GEOSTD8 (Georgian), ISCII (Indic), ISIRI-3342 (Persian), Kamenický (Czech and Slovak), KZ-1048 (Kazach), Mazovia (Polish), MIK (Bulgarian), PTCP 154 (Cyrillic Asian), various Vietnamese code pages, and YUSCII. A few new encodings cannot be edited directly. Those encodings are ISO 2022 for Chinese, Japanese, and Korean, HZ for Chinese, TSCII for Tamil, and UTF-7. EditPad converts those files to Unicode when you open them, and back to the target encoding when you save them. All encodings, including those that cannot be edited directly, can be set as the default encoding in the file type configuration. The convert menu also has commands for converting between \uFFFF, &#xFFFF;, and &#65535; and the characters they represent, or vice versa (for non-ASCII characters) regardless of the encoding the file uses.

EditPad Pro 7 can edit files that are larger than 2 GB, even on a 32-bit PC with less than 2 GB of RAM. The (theoretical) maximum sizes are now 9 billion GB (263 bytes) per file, 2 billion lines per file, and 2 billion bytes per line. In practice, on a modern PC, EditPad Pro 7 performs well with files well over 10 GB, millions of lines, and up to 100,000 characters per line.

The Project menu is now three times as long, reflecting the much improved project management in EditPad Pro 7. In EditPad Pro 6, opening and closing files automatically added them to and removed them from projects. EditPad Pro 7 does this too, until you turn on Managed Project in the Project menu. Then opening files does not add them to the project, and closing files does not remove them from the project. The Project menu has commands for adding files to managed projects with or without opening them, and for adding the files that you have already opened but not added to the project. You can close a file and remove it from the project, or remove all files that you have already closed but not removed. Projects can be exported to text files listing all the files in the project, and new projects can be created from text files with file listings.

The File Panel that lists all the projects, folders, and files you have open was improved significantly. Its performance has been improved dramatically. It no longer slows down EditPad even if you have many thousands of files open. You can toggle it between alphabetic order, tab order, and most recently edited order. You can show a flat list of files, folders relative to the project, or folders relative to the root drive. Files can be grouped by their file types. Folders can be listed before or after files. Closed files that are still part of projects can be shown or hidden.

The search toolbar can be shown and used for searching without showing the whole search panel. The search options are now toolbar buttons instead of checkboxes. They have Alt+Letter key combinations that take precedence over the main menu when the search toolbar or panel has keyboard focus. New options are a line-by-line option that searches lines separately and selects the whole line when a match is found. The invert option selects lines that have no search matches. The closed option searches through all files in a project, including files that are closed but still part of the project.

There are two new commands for cutting and copying all search matches to the clipboard. You can use this with or without the “line-by-line” and “all files” options. You can use placeholders such as %MATCH%, %MATCHN%, %LINE%, %LINEN%, and %FILE% with padding and arithmetic options in the search term and/or replacement text. They represent the search match, match numbers, matched lines, line numbers, and path or file names. Highlighting search matches is now done in the background just as syntax highlighting is, so it doesn’t slow EditPad down even when editing huge files. The new List All Matches command lists all search matches in the active file, the active project, or all projects, in a side panel with one line of context. The new Find on Disk command searches through a folder and opens the files containing matches, lists all matches in a side panel, or both.

When you copy and paste whole lines of text, including the final line break, then EditPad always inserts the line as a whole when pasting even when the cursor is in the middle of a line, rather than breaking up that line. Combined with the existing ability to cut and copy a single line without selecting anything, this allows you to easily move lines around without always having to put the cursor at the start of the line. EditPad Pro now places text on the clipboard as rich text. If you paste it into a word processor that supports RTF, the pasted text will have syntax coloring just like it does in EditPad. The RTF is only rendered when another application requests it, so this does not slow down copy and paste within EditPad. EditPad Pro now also copies folding to the clipboard. If you copy a block of lines and some of them are folded, those lines remain folded when you paste them back into EditPad.

Files are now added to the File|Open menu when you close them rather than when you open them. When you open a file (through the Reopen menu or otherwise) it is removed from the Reopen menu. This makes it much easier to reopen recently closed files. Files that were opened as part of a project are not added to the Reopen menu, as was the case in EditPad 6. The Project menu has its own Reopen menu that works the same as File|Open but lists projects instead of files.

EditPad’s FTP panel now supports SFTP and FTP over an encrypted SSL, TLS or SSH channel. You can keep a list of favorite files and folders for each FTP server. UNIX file permissions can be set. SMTP connections for sending email can now be encrypted using SSL or TLS.

In Options, Configure File Types you can now select multiple file types at the same time. Any changes you make are applied to all selected file types and all selected file types can be exported into a single .ini file. The color preferences were move to the file type configuration. You can create any number of color palettes, and select a different palette for each file type. You can make EditPad emulate the colors of the various other applications you use to edit different kinds of files.

In Tools, Configure Tools you can now select multiple tools at the same time. Any changes you make are applied to all tools. All selected tools can be exported into a single .ini file. EditPad Pro 7 has additional command line placeholders to pass the cursor position, the selected text, the word or line the cursor is on, or the file’s encoding on the tool’s command line. EditPad Pro 7 automatically substitutes environment variables in tool configurations. You can use custom placeholders that EditPad prompts for when you run the tool, including placeholders that show a file selection screen so you can pass multiple files on the tool’s command line. EditPad Pro can download web pages if you specify a URL as the command line and tell EditPad to capture standard output.

The options that determine the location of new EditPad instances created with the View, New Editor item have been moved from the preferences to a submenu of View, New Editor. If you select to split the running instance, it automatically reverts to its old size when the new instance is closed. This means you can quickly split EditPad in two to view two files side by side and go back to a single view, without having to manually arrange the two instances. If you want to have two views of the same file side by side, use the new Split Editor command in the View menu. It works just like the New Editor command, except that it splits the editor control within the running EditPad instance rather than starting a new instance. You can use the Split Editor and New Editor commands together to have two views each of multiple files at the same time. Both commands can be set to use your computer’s second monitor. Turn on View, Joint Scrolling to scroll the split views simultaneously. Turn on View, Other Editor Joint Scrolling to scroll all other EditPad instances in which you’ve enabled this option simultaneously with the active instance. This makes it easy to compare two parts of the same file or compare parts of different files, even when those parts don’t fit on your screen.

In hexadecimal mode you can now choose to show only the hexadecimal section or only the ASCII section. If you split the view, you can have the hexadecimal section in one view and the ASCII section in the other view. You can set a record length that determines how many bytes are shown on a line, rather than always showing the smallest multiple of 8 bytes that fits within the width of the editor.

The Insert Date and Time item in the Edit menu no longer uses a fixed date/time format. This setting was removed from the preferences screen. Instead, the menu item itself has a submenu that you can use to select a recently used date/time format, or specify a new one. If you click the Insert Date and Time item directly, the most recently used date/time format is inserted.

Bookmark icons are now displayed using the same font as the file you’re editing, so they don’t appear tiny on high resolution screens. Bookmarks are now associated with a character position rather than with a line so they can point to the middle or the end of a line instead of always pointing to the start of the line. Bookmarks now work in hexadecimal mode too. The Mark menu has commands for setting numberless bookmarks so you’re no longer restricted to 10 bookmarks per file. You can jump to these bookmarks with the new Next Bookmark and Previous Bookmark commands, which work with both numbered and numberless bookmarks.

Visualizing line breaks can now be done using generic paragraph markers like in EditPad Pro 6, or with specific line break symbols that indicate the style of each individual line break (CR, LF, CRLF). When highlighting search matches that span across lines, the line break symbols are now also highlighted to make it clear whether they are part of the search match or not.

The print preview now has checkboxes for printing with or without line numbers and with or without visualized spaces or line breaks. You can select a different color palette for the printout. The print preview remembers these settings separately for each file type.

If you run into any problems with EditPad Pro or just want to share your experiences, you can now connect with other EditPad Pro users on the EditPad Pro forum. It is built right into EditPad Pro itself. Simply select Forum in the Help menu. Your EditPad Pro license automatically gives you access to the forum. The forum is an official venue for technical support from Just Great Software. All questions will be answered by our staff, unless another EditPad Pro user provides a proper answer before we can get to it.