Skip to main content
Thoughts from David Cornelius

Category

UltraEditEmbarcadero's parent company, Idera, recently acquired UltraEdit which includes the company's namesake product, UltraEdit, a long-standing favorite text editor among many programmers, and some accompanying tools that have grown up around the main product, namely UltraCompare, UltraFTP, and UltraFinder. I decided to go through the feature set and compare this suite of tools with EditPad Pro the text editor I've used for several years from Just Great Software.

This review doesn't cover every feature of the two editors nor does it go into great depth as there are tutorials and videos on each of the respective sites. It also concentrates on just the task of editing files, mostly ignoring file comparison, FTP, and file-finding features of UltraEdit's companion tools. This review is the personal conclusion I came to based on my experience, interest, and needs--your view may be different. The bulk of my time is spent in the full-featured Delphi IDE; nevertheless, I do have need for a good-quality text editor in many circumstances and having several time-saving features built-in are well worth learning about and using.

First, I'll list the two products, their prices and licensing structure, and what machines I'm using them on, then go down through the list of features and compare as many as I can. At the end, I'll give a summary of the aspects of each that struck me as being unique or particularly positive for each editor.

Introduction and Pricing

In the following list of prices for both products, I've rounded the pricing to the nearest whole U.S. dollar.

UltraEdit has two different packages, or grouping of their products, and two different licensing models, perpetual or subscription. Perpetual is a one-time purchase with free updates for a year after which you can keep using the product without paying more for it--although you'll need to pay if you want further updates. Subscription is lower cost but the product stops working after a year if you let the subscription lapse.

  • UltraEdit/Ultra Compare - these two programs are always sold together and work on Windows, Mac, and Linux.
    • Perpetual: $150
    • Annual: $80
  • UltraEdit All Access - this package includes the UltraEdit/UltraCompare package and also UltraFinder & UltraFTP which run only on Windows
    • Perpetual: $238
    • Annual: $100

EditPad ProEditPad is a Windows-only product and has FTP and comparison features built-in. It has a free version, EditPad Lite, with a limited feature set that is a fine choice as a Notepad replacement. EditPad Pro is only sold with a perpetual license that provides free minor updates for as long as they're made; after that, discounts for major upgrades are available.

  • EditPad Lite
    • Free!
  • EditPad Pro
    • Perpetual: $60

When mentioning EditPad in the review below, only the paid version, EditPad Pro, is considered--no distinction is made for the feature set of EditPad Lite.

Installations

You can install UltraEdit on a maximum of 3 machines but if you contact them and explain you have multiple machines which are used only by yourself, they may negotiate a higher installation count.

EditPad is licensed per user and can be installed on as many machines as that one user exclusively uses.

My Working Environment

I mainly work on a Windows 10 desktop computer but have several virtual machines running Windows 10 and one running Windows 8.1; I also use a Mac Mini and installed UltraEdit/UltraCompare on it. When I'm out of the office, I use a Windows 11 laptop. These machines have varying amounts of RAM from the smallest VM with 3½ GB to my desktop machine with 32 GB; the amount of memory in the computers never affected the speed or operation of the applications.

Large Files and Memory Consumption

One thing I've often heard as a selling point of UltraEdit is that it can edit huge files without any problem. So one of the first things I tried was opening a fairly large CSV file I have that is 2.4 GB. Both UltraEdit and EditPad opened the file instantaneously. Just to satisfy my curiosity, I tried opening the same file with a few other editors:

  • Notepad: I knew this was going to fail but I wanted to see in what way. It was actually just an error message stating the file was too large and told me to use another editor!
  • Visual Studio Code needed to restart with higher memory usage; after I let it do that, it took about 11 seconds to load the file and let me know that tokenization and wrapping had been disabled.
  • Atom: I had read about this open source editor that many use for HTML editing and had installed it not too long ago to try out, so I tried this one as well. I immediately got a warning: "Atom will be unresponsive during the loading of very large files. Proceed?" I told it to go ahead and it took over a minute and consumed 5 GB RAM!

EditPad editing a PowerShell scriptAfter this initial test, I found a set of 9 files of various types to try out different features and loaded the same set of files in each editor:

  • CSV: A large file, 2.4 GB.
  • PY: A Python script for parsing I found in a library.
  • INI: A configuration file I found buried in Windows.
  • PS1: A PowerShell script I was building a few years ago to automate the installation of Delphi XE.
  • XML: A sample XML file used in the FishFact demo application that comes with Delphi.
  • MD: The README file (in Markdown format) for the DelphiMVCFramework open source project.
  • HTML: A tutorial web page from a Bootstrap class.
  • SQL: The Data Definition Language file for the sample EMPLOYEES InterBase database.
  • TXT: A new text file for taking notes for this blog.

You will see parts of some of these files in various screenshots. With all files loaded, including the large .CSV, memory consumption was very low in both programs:

  • UltraEdit: 112 MB
  • EditPad: 69 MB

Help/Documentation

Both products have local help files installed. I found EditPad's to be a little more thorough when explaining features and how to use them; UltraEdit seemed quite terse in some instances but they have several tutorial videos that help a lot.

UltraEdit has tips and language-based IntelliTips that pop up in various contexts with helpful suggestions that could save time for an action you just took. These are sometimes based on editor actions, and sometimes based on the coding language you're working with in the editor itself. They can be turned off but are incredibly useful for the newbie who is trying to wrap his/her head around the plethora of features.

EditPad has a random tip-of-the-day that displays when you start it up but can be disabled. It also has a built-in forum tool that allows you to login, view, and participate in online EditPad forums all within an EditPad window--no need to switch to a web browser!

Both products have built-in links to online help and various parts of their respective websites where you can find tutorials, contact support, and more.

Editor Tabs

Editor Tabs Compared

Both editors support multiple edit tabs that can be moved, shown above or below the edit area, and provide a right+click menu for additional operations including copy the file and path to clipboard, save as a different file, show in explorer, etc. UltraEdit's menu has more options including some shortcuts to menu items or changing how to manage more tabs than will fit in the window (e.g. multi-line or scrolling); you can also customize its right+click menu with any commands available in UltraEdit.

In EditPad, each tab's width fits the filename very tightly to allow the maximum visible tabs horizontally. Tab icons indicate the file type and correspond to the default application used to open that file if it wasn't being edited (e.g. your default browser for HTML files). The background color of the tab indicates whether the file is the active tab, is read-only, or has been modified (these colors can be configured in Preferences).

UltraEdit's tab icons indicate whether the file is read-only (with a lock), or modified (with a diamond); the background color is used only to indicate the active tab.

Color Themes

EditPad's Color CustomizationEditPad comes default with a light theme and the interface colors are fixed but there's a checkbox to enable the dark theme. That's all the customization you have for colorizing the menus and operation of the editor itself; however, color syntax highlighting for each file type is completely customizable and very advanced with a nice interface. For each file type (there are over 35 built in, including separate ones for Delphi .PAS and .DFM files, and more you can download or create), you select a color palette, whether it applies to a light or dark theme, and can see an example of highlighted code as you change colors.

UltraEdit's Theme ManagerUltraEdit comes with 13 themes built-in, 10 of them dark, all customizable; each theme allows coloring of all aspects of the interface and editor and defines the syntax color highlighting for all supported languages. There are 21 initially but many more (including Delphi .PAS/.DPR files) can be added. Once enabled, the color themes are configured in the Theme Manager where you select the theme and language, then select the named element you want to change, and click the colored rectangle to change it's color which is reflected immediately in the editor.

Syntax Highlighting and Parsing for Select File-Types

CSV

UltraEdit with a CSV selecting a columnI've used Visual Studio Code at times for editing CSV (Comma-Separated Values) files because it has a nifty plugin that highlights each CSV column in a different color making it really easy to spot fields that will be parsed to the the same columns in files with variable-width values. In looking for the similar functionality in these editors, I found neither of them have support for syntax color highlighting of CSV files by default. However, you can download a couple for EditPad right from within the Configure File Types dialog; one supports line-wrapped strings, the other doesn't but is recommended for large files. I downloaded and installed it in EditPad but was surprised by the bright background colors applied which clashed with my dark mode. I temporarily switched dark mode off and could see how this color scheme would be quite helpful with a light background.

XML

UltraEdit provides an XML Manager as a side-bar window to parse XML and list the nodes found, allowing you to double+click on one which jumps you to that spot in the XML. If the XML is poorly formatted or has no line breaks, you can click the button to format the XML into a beautifully indented list of nodes.

EditPad detects XML and if there are no line-breaks, prompts to add them for you and nicely indents it as well--nice! But if the XML file already has line breaks, it doesn't do the indenting and just displays the file as is--which is normally every line left-justified.

SQL

UltraEdit showing SQL with a drop-down for other SQL types UltraEdit has support for several different SQL dialects; they all may have the same .SQL extension but after loading, you can switch to a different loaded SQL language and see different syntax coloring and support for that vendor's SQL extensions.

EditPad also comes with support SQL but only generic SQL. To match UltraEdit and support various database vendors, you could create support for additional SQL dialects and change the File Type after loading in the same way as you would in UltraEdit.

Scripting and Macros

I have used EditPad's macro capability a few times over the years for repetitious editing tasks that don't fit the standard search-and-replace paradigm. Basically, you start recording, make some editing changes, then stop recording; you can then assign a hot-key to it and play it back as many times as you need. Each macro is named so you can keep a collection of them and use them later.

UltraEdit's macro function can also record, save, and play back a series of editing tasks but it throws in a few extra nice features. Not only can you edit the macro after saving (instead of needing to re-record it like you must in EditPad) but you can add conditional statements for greater flexibility. If that's not powerful enough, you can write full JavaScript functions, manipulating the editor sort-of like the DOM of a webpage.

FTP

Both UltraEdit and EditPad have support for uploading and downloading files via FTP; EditPad's comes built-in and uses a sidebar panel interface to manage FTP connections. UltraEdit's support is integrated through an external application, UltraFTP, that is sold separately or comes in the All Access package.

File Compare

Both UltraEdit and EditPad have support for comparing files and viewing/managing differences; EditPad's compare support comes built-in and can either display the difference lines within the editor tab of one of the files being compared or create a new editor tab with the merged results showing which lines were added or removed after the comparison.

UltraEdit's support is integrated through an external application, UltraCompare, which comes with UltraEdit. Not only can UltraCompare compare text in a file, it can also compare and synchronize files between folders or FTP sites, view differences in Excel and CSV files, and even help resolve conflicts with git merges. I haven't used UltraCompare yet but this sounds like a very powerful tool!

Live Preview and Embedded URLs

UltraEdit's Live Preview of a Markdown fileUltraEdit has a really awesome feature called Live Preview which adds a panel right in the editor and shows the rendered file you're editing. This works for Markdown and HTML files (there may be other file types supported but these were the only ones that worked for the set of files I tested).

EditPad does not have a live preview mode but you can double+click on a URL in both Markdown and HTML files to pull up the corresponding web page in your default browser--UltraEdit does not support this in the editor but does through its Live Preview feature.

Hex mode

EditPad's Hex Edit modeBoth editors use Ctrl+H to toggle the current document between hex mode and its standard text editor. UltraEdit's hex mode displays 1 block of 16 hex digits while EditPad shows 32 hex digits per line broken up into 4 blocks of 8 hex digits each making it much more readable and using the horizontal space of the editor much better; plus, EditPad preserves the color syntax highlighting for the selected file type!

File Manager side panel

Both editors have side-panels that provide browsing and selecting folders, files, and groups of files in projects. I don't use these features very much as I usually work on a single file at a time initiated from the Windows Explorer but I can see how these would be useful. I actually did try out the "Project" feature in both editors for working with a set of test files for writing this blog and while their interface for defining and managing projects is a little different, the overall concept of opening a set of files together proved to be quite convenient. If I used these editors for managing websites or for building apps in a language that didn't have a full-featured IDE like Delphi, I would likely use this feature quite a bit.

Sidebars in UltraEdit

UltraEdit with several sidebarsUltraEdit has several more sidebar panels than EditPad:

  • Tag list: switch between a list of HTML tags, special characters, and UltraEdit commands in this nice reference list.
  • Bookmarks list, Clipboard historyy: keep the most relevant list of what's important to you nearby.
  • Document Map: provides a mini map of the entire file in a sidebar allowing you to grab a dark box indicating the current section of the file showing in the editor and drag it up or down to quickly scroll the file in the editor up or down. This is a popular feature in modern text editors and this has been implemented in Delphi with the Parnassus plugins.
  • Function list: used when viewing files such as Python or SQL or even INI files where there are sections that can be grouped (like sections of an INI file or functions in a code file). This is a very compact list and double+clicking on the function or section will jump you to that spot in the editor.

The last one, Function list, is implemented as a "File Navigator" sidebar in EditPad.

But wait, there's more!

Both editors support code folding with slight variations how it's displayed. Both editors support multiple bookmarks: UltraEdit simply has a collection of bookmarks that you cycle through; EditPad has this as well but can also set numbered bookmarks (0-9) in a similar fashion to the way Delphi does. Both editors have column-mode editing, spell-check, character and word statistics, can show an ASCII chart (called Char Map in EditPad), have various ways to convert text to upper or lower case, spaces to tabs and vice versa, and several other miscellaneous convenient tricks. Both also support horizontal and vertical split editors with synchronized scrolling, and can run external tools.

UltraEdit's Build menuThis last point I should touch on a little more. UltraEdit's external tools support seems particularly geared for programmers in that it comes with a list of compilers (including some old ones no one hears about anymore) pre-configured for use in UltraEdit. There are buttons to Clean, Compile, Build, Regenerate Make File, and Debug your application--almost like it's trying to be an IDE. I believe those are simply assignable buttons to specific command-line tools you set up to simulate what a full IDE would do; in other words, you could use the command-line compiler of Delphi with one set of options for the "Compile" button and a slightly different set of options for a "Build all" button. With enough work, you could effectively replace the Delphi IDE (although it would be far inferior as a fully integrated development environment).

EditPad's website implies its external tools provide a similar feature and lists several simple configurations you can download to get up to speed quickly but using external tools from EditPad is quite simple in comparison--you simply select a preconfigured one from a list, very similar to the functionality in Delphi's Tools menu.

Summary and Conclusion

There are more features for both of these tools than listed here. Most people don't use all the capabilities of these powerful tools--I certainly haven't. Researching these two sets of products for this blog has actually revealed more functionality than I realized either product had and I'll certainly be taking advantage of more of the power than I had previously. (I haven't even looked deeply at UltraFinder yet, another one of the products in the All Access package from UltraEdit--it's advertised feature set looks appealing.)

I used both EditPad and UltraEdit extensively while writing this blog. I started out taking simple notes in EditPad and then moved them over to UltraEdit and used the Insert HTML buttons to add HTML tags quickly and Live Preview to view the HTML page as I was typing. When I started, I didn't understand all the shortcuts or how to perform certain tasks in UltraEdit and thought that EditPad actually did many things better but as I used UltraEdit more and more, I kept finding hidden productivity gems revealed through tips or by watching tutorial videos or just hunting through the menus.


I am now convinced the UltraEdit suite has far more to offer--learning and utilizing its extensive features will save me time in the long run.

So, what are the big five reasons I'm making the switch from EditPad to UltraEdit?

  1. Support for HTML and Markdown editing: There are many HTML editors out there--and probably several better at pure website building than a general-purpose editor with HTML editing added on, but easing both HTML and Markdown editing combined with live previewing in an editor I use frequently for a variety of tasks? I'll take it!
  2. Editable Macros and More: I haven't used the macro-recording feature of EditPad very often and then only for the shortest of tasks. The reason is that if I make a mistake in recording, I have to re-record the entire thing. Being able to see and edit the recorded tasks and even add conditional logic to a macro sounds like an order of magnitude more useful! And although I strongly dislike JavaScript, if I ever have a need for more advanced scripting in an editor, I can take it to the next level in UltraEdit.
  3. Simplified Editor Tab Colors: I was originally going to say that EditPad's multi-colored tabs are more useful--and there are likely people that would agree with that--but I'm partially color-blind and am not always sure when a tab is active or read-only or modified--I forget what the different colors mean. Having all the editor tabs the same background color except for the the active one makes it really obvious which one is active. And the little icons to represent read-only or modified states of the file are so cleanly implemented that just a quick glance at the editor tabs gives me instant and unquestioned status about each one.
  4. XML Formatting: This may sound like an insignificant reason to switch editors but I get really frustrated at frequently needing to reformat XML because its lines are too long or it isn't indented properly. I've used XML Notepad for a long time but it has some short-comings; this is one less program I need to install and I don't have to leave my (new) favorite editor.
  5. Tag List and File View: These I lumped together because I couldn't decide which I like better and I wanted to keep this list to five items. Neither by themselves are a deal maker but they do represent the plethora of tools UltraEdit provides as additional side-bars that aid the busy technical person with convenience or loads of handy reference information. I work with HTML just seldom enough that I forget the special HTML characters needed occasionally, so having the Tag List reference close by is nice. And being able to quickly scroll up and down a file using the mini map is a feature I've come to expect in modern editing tools.

Finally, will there be things I miss in EditPad? Certainly! And just because I'm switching to UltraEdit as my text editor of choice doesn't mean I have to stop using EditPad--I have a perpetual license, after all and can install it on remote servers that I don't use as often to preserve my installation limit of UltraEdit for my primary-use machines.

Here are some great things about EditPad:

  • Better Hex Mode display: I may occasionally still pull up EditPad in those instances where I need to scrutinize the individual bytes of a file.
  • Numbered Bookmarks: I use numbered bookmarks quite often and frequently have three or four bookmarks set in a file that I'm working in. I much prefer being able to jump directly to a specific bookmark rather than tediously cycle through them until I land on the one I need--and they're never in the right order!
  • It's Written in Delphi! Did you know that? Many years ago when I was looking for a Notepad replacement and comparing editors, I found out this one was written in Delphi, it supported all the functionality I needed, and I wanted to support my favorite programming environment. That may also reveal subtle user interface preferences that have made it feel comfortable, the hotkeys, numbered bookmarks, and even terminology or samples used in the documentation--it just feels natural.

I hope you find this article useful. I will likely learn a lot more about UltraEdit and the supporting tools over the next several months and my "Top Five" favorite features may change--or be greatly expanded!

If you use UltraEdit (or EditPad) and would like to share your favorite tip or ask why I didn't cover a particular feature, add a comment. I'd love to learn more!

Navid (not verified) Tue, 03/01/2022 - 12:41

I use EditPad Pro together with RegexBuddy, AceText and PowerGrep from Just Great Software. They complement each other and enhance productivity really well, especially when using Regular Expressions.

david Tue, 03/01/2022 - 21:17

In reply to by Navid (not verified)

Yes, EditPad Pro and the other products from JGSoft are high quality applications. I rarely need to use regular expressions, though.

Roy E (not verified) Wed, 09/21/2022 - 14:49

You said you also used VSCode.  How does that compare to these two programs?  (It's free -- and so is Notepad++, which I'd also love to hear compared.)

 

david Mon, 09/26/2022 - 07:49

VSCode is a great editor, full-featured, lots of community support, and the editor used in Visual Studio. But I don't have it installed anymore because every time I opened it, there'd be an update for the app or one of the plug-ins. I'm all for keeping things upgraded but it got to the point of such great annoyance, I ditched it. Part of the problem, I admit, is that I had several plug-ins but they supplied functionality I figured should be baked in the application itself, as is the case with EditPad and UltraEdit. I forget all the plug-in features I had but they were things like CSV column coloring, JSON formatting, Pascal-syntax highlighting, and so forth.

As far as Notepad++, I've used that a few times when I was on a computer that had it but never really spent much time with it as I discovered and used EditPad Lite many years ago before I heard of Notepad++.

Add new comment

The content of this field is kept private and will not be shown publicly.