User to user discussion and support for UltraEdit, UEStudio, UltraCompare, and other IDM applications.

This forum is user-to-user based and not regularly monitored by IDM.
Please see technical support page on how to contact IDM.
9 posts Page 1 of 1
I am curious about other users' opinions on my feature requests.
Frankly, I'm disappointed they're not implemented yet.
Version 19.10 should indicate very mature piece of software.

These features are implemented in freeware text editor for some time now.

Copy non matching lines:
Image

Numbering:
Image

Remove blank lines and remove redundant blank lines:
Image

Remove accent from chars:
Image
UltraEdit is highly customizable and can be easily extended by UltraEdit macros and scripts. I don't see any reason for not getting what you want without the need of the IDM developers.

Copy non-matching

Does copy non-matching result in copying all lines not containing a search string?

If the answer is yes, then this can be done with UltraEdit with various methods. For example by using Advanced find command Hide Lines all lines containing the search string can be hidden. Next command Edit - Delete - Delete All Hidden Lines can be used and all lines not containing the search string remain in the file. You can next press Ctrl+A for selecting all remaining lines and Ctrl+C to copy all of them to clipboard. Using File - Revert to Saved restores original file content.

But most often the lines of no interest are deleted simply from active file by using a regular expression Replace All. With UltraEdit regular expression engine the search string is %*string*^p and with Unix/Perl regular expression engine the search string is ^.*string.*\r?\n while the replace string is an empty string.

However, with an UltraEdit script you can code a copy non-matching feature by yourself.


Numbering

Again I don't know what numbering really does, but there is Column - Insert Number, to insert numbers on all lines in current column from current line to end of file, or in all selected lines only, with or without replacing currently selected text (depends on kind of selection). Before this command can be used the column editing mode must be enable using Column - Column Mode or by pressing Alt+C.

In case the numbering feature works different, again an UltraEdit script can be surely written for this feature by yourself.


Remove blank lines

That is done by all UltraEdit users by using a regular expression Replace All. Usually it is best to use first Format - Trim Trailing Spaces to remove all spaces and tabs from lines not containing anything else. That makes the regular expression easier.

But it is also possibly to deleted blank lines without first deleting all trailing spaces and tabs. For example with the Perl regular expression engine you can search for ^(?:\h*\r?\n)+ and use as replace string an empty string and all blank lines are removed after pressing Replace All.

To remove only redundant DOS terminated blank lines without using Trim Trailing Spaces first you can for example use the Perl regular expression engine with search string ^(?:\h*\r\n){2,} and just \r\n as replace string. The advantage is that this Replace All removes also spaces and tabs from first blank line. For UNIX terminated lines not converted by UltraEdit to DOS on opening the file \r must be removed in search and replace string.

You can save those search strings as favorites or put those regular expression Find and Replace All also into an UltraEdit macro or UltraEdit script if you need them often and want to quickly execute them.

See also the large article Removing blank and empty lines.


Remove accent from chars

That feature is simple a set of character replaces, best stored in an UltraEdit macro or script for fast execution. See for example Accent to plain character replacement.
Mofi wrote: UltraEdit is highly customizable and can be easily extended by UltraEdit macros and scripts. I don't see any reason for not getting what you want without the need of the IDM developers.

And I don't see any reason why I should make scripts. I did pay for the software and I demand quality.
The features I've mentioned are implemented in many text editors. So they're not unique or demanded only by me.
BTW, script database user-submitted macros and scripts is very poor.

Mofi wrote: Again I don't know what numbering really does, but there is Column - Insert Number, to insert numbers on all lines in current column from current line to end of file or in all selected lines only with or without replacing currently selected text (depends on kind of selection). Before this command can be used the column editing mode must be enable using Column - Column Mode or by pressing Alt+C.
In case the numbering feature works different, again an UltraEdit script can be surely written for this feature by yourself.

How do I insert increment into existing first column?

Mofi wrote: You can save those search strings as favorites or put those regular expression Find and Replace All also into an UltraEdit macro or UltraEdit script if you need them often and want to quickly execute them.

Or implement it as native function, isn't it?
Please note that I'm just a user of UltraEdit like millions of other UltraEdit user. I'm not an employee of IDM. Send email(s) to IDM support if you want support by IDM and do not post in the user-to-user forum.

Scripts and macros are used by many UltraEdit users, but rarely made public as they are tailor made on the requirements of the script/macro author. That's the main target on writing a script/macro, getting something tailor made for myself and not for others. Therefore there are just a few scripts/macros made public by users which are designed for more general usage. Thousands of macros and scripts were posted in the user-to-user forum, but all being written for a special requirement of the questioner are deleted later so that only those scripts/macros remain which are hopefully of general interest mainly for other script or macro authors.

You can expect quality for an application paid for although you paid only for the license to use it, read the license agreement. But feature enhancements or new features have nothing to do with quality. Do you expect getting a better car in future with more features if you buy now a new car, too? If so you should wake up from your dream and see real world.

Inserting an incrementing number in first column on all lines of a file is very simple. Set caret to top of file by hitting Ctrl+Home. Turn on column editing mode with Alt+C or by clicking on Column - Column Mode. Now click on Column - Insert Number, select the options you want for the numbering and hit button OK. Done. Turn off column editing mode by pressing again Alt+C.

I have a different opinion on Find/Replace than you and I think IDM has the same opinion. There should be only options and features in the Find/Replace dialog which are of general usage and define the behavior of the Find/Replace. The Find/Replace dialog should not contain predefined finds/replaces just for users like you which do not want to use macros or scripts although the execution of a macro or script from the macro/script list with a double click is very simple. What is useful for you does not mean to be automatically useful for the majority of the millions of other UltraEdit users. That some editors have some replaces predefined does not mean it makes sense to predefine them in UltraEdit too. That's my opinion.
FWIW, I would also like the 'Remove blank lines' as a standard function. I did have that in DOS editors I used back in the early 90's, so I'm a little surprised it's not in UE still - it is a very commonly used feature. The numbering lines has been there for years though.
Thanks Mofi for the info and your long post on blank lines, though I'd have to say that the fact you wrote it suggests there is a wide need for it to be built in, rather than have to make macros or scripts. I think I'll add that to the list of requests to IDM :)

Mofi - After your macro in the 'big' post, you say "Note: Users of a version of UltraEdit or UEStudio where command PerlReOn switches the regular expression engine permanently to Perl instead of just temporarily for the macro execution should append either the command UnixReOff or UnixReOn for switching back to UltraEdit or Unix regular expression engine if one of the easier to use, but not so powerful legacy regular expression engines is the preferred engine."
If I want to retain the Ultraedit Regex normally (after the macro), does that mean I add UnixReOn ? Do I need to turn the PerlReOff or does it do that by default when doing UnixReOn?
Is there any advantage / disadvantage to a Macro compared to a Script?

Thanks again for all your help.
In more than 15 years of usage of UltraEdit daily, I can't remember having ever executed a replace to delete blank lines. It looks like I'm working mainly on well formatted text files.

I have not changed in the meantime my opinion about the need of a command in any menu to delete blank lines in a file. I still think it is better that those users often need to

  1. remove all blank lines, or
  2. remove all blank and all empty lines, or
  3. replace only all consecutive blank lines by a single blank line, or
  4. replace only all consecutive blank and empty lines by a single blank line
should use the replace command.

The find/replace window has the button with the star symbol to define and save favorite find and replace strings.

But even better is the usage of a script for such a task which is added to the list of scripts with or without hotkey/chord for very quick execution without the need to move one hand from the keyboard. Or the replace is written into a macro with or without a hotkey/chord assigned to it and stored into a macro file, perhaps together with other often needed macros, which is configured to be automatically loaded on startup of UltraEdit.

A fully customizable script or macro configured for quick and easy execution is in my point of view always better than a built-in command which is not customizable at all. Many other text editors use the same method for such enhancements. The difference is only that UltraEdit is shipped without a predefined list of macros or scripts configured to be ready for usage after startup. A big problem with installed macros and scripts would be how to handle them on updates or upgrades if user has changed the list of macros and scripts.

The macro commands UltraEditReOn (UnixReOff) and UnixReOn do not change the currently selected regular expression engine in Find/Replace window anymore since UE v21.10. Prior UE v21.10 those two commands switched the regular expression engine permanently as long as Perl was not configured respectively set in find/replace window. Therefore it does not matter anymore which regular expression engine is used in macros since UE v21.10.

The macro command PerlReOn has not changed the regular expression engine selected in configuration dialog respectively find/replace window at all, if I remember correct. But I'm not sure and I do not want to analyze this using archived UltraEdit versions. This was not of interest in the last 15 years and therefore it is not worth the time to deeply analyze it now.

The scripting commands to change regular expression engine always changed the expression engine only for script execution, but not selected engine outside script.

See topic When to use Scripts over Macros for an answer on your last question.
Best regards from Austria
Thanks, Yes I do see your point about the script/macro being customisable. I guess for me it was just that I had something long ago which did what I wanted and I do miss that in UE. I regularly get customers sending me specific files which has a blank line (usually CRLF) after every line and that is repeated hundreds or thousands of times. Other times the file has a mix of CR/LF and just LF, which is more mucking around. It's an unfortunate side effect of a popular (very old) specialised utility they use to get the file to send to me. I usually go in and do the characters for double CR/LF for search and Replace, But each time I have to recall what the control characters were, look it up, type it in and do the replace. I must admit I hadn't yet used the Favs, so I should do that or use a Script / Macro _ I've been using UE since the 90's, but have only tinkered with macros.
I looked at the article on when to use Scripts over Macros and that was quite helpful, makes a lot more sense to me now. Thanks for the great info.
Okay - enough excuses already. We NEED blank line removal to be added like the "Format - Trim Trailing Spaces" capability.

Yes you can use the "simple" search and replace all command with Perl expressions "^(?:[\t ]*(?:\r?\n|\r))+" (like I'd figure THAT out on my own)!

Why can't IDM just listen to the multitude and add this feature automatically? I went through the forum and this has been a need/request since as early as version 6 or before. I just upgraded to version 23 and it still isn't in there!!!

Come on IDM - add this already!!! :(
CyberDude, do you have requested this with a feature or enhancement request email to IDM support? This is the first necessary step to get in a future version a new feature. Next other users must request this feature also by email to IDM support. Why? Please read top of this page.

What I don't understand is that some users request a feature which can be added by themselves by using a macro or a script. I enhanced my UltraEdit with - lets call it commands - not available as built-in commands by writing a macro stored together with other often needed macros in a macro file being configured for being automatically loaded on startup of UltraEdit. Many of those macros have hotkeys assigned for quick execution. Other enhancements are made by me with scripts being added to the scripts list and of course some of them have also a hotkey for quick execution by key. The macro and the script list and of course the additional hotkeys are my method to enhance UltraEdit and UEStudio with features not built-in and most likely never needed by the majority of UE/UES users.
Best regards from Austria
9 posts Page 1 of 1