Please post which version of UltraEdit for Windows is used by you at the moment. The
Ctrl+Tab and
Ctrl+Shift+Tab behavior changed in the past as it can be read in the thirty posts of forum topic
Navigation between different file tabs. The last modification of
Ctrl+Tab and
Ctrl+Shift+Tab was with UltraEdit for Windows v26.00 documented in file
changes.txt in program files folder of UltraEdit with:
Code: Select all
- Modernized Key mapping
* Re-map Ctrl + Tab and Ctrl + Shift + Tab (provides browser-like tab switching behavior)
Ctrl+Tab and
Ctrl+Shift+Tab are not documented on help page
Keyboard Commands and also not listed in the text file created on pressing on button
Show key mapping in editor at
Advanced - Settings or Configuration - Key mapping as the behavior is smart coded now. There is no single command for
Ctrl+Tab.
The explanation below is for UltraEdit for Windows v26.00 and later versions.
Pressing once
Ctrl+Tab with leaving both keys results in using more or less the command
Next window which is as macro command
NextWindow. Doing this results in changing the last
access file windows list. So on pressing once again
Ctrl+Tab with leaving both keys the previous window is again made the active window and the last
access file windows list is updated once again. I recommend to do following to better understand here what happens on pressing
Ctrl+Tab:
- Close all opened files and then open four files at once in UltraEdit, for example C:\Temp\FileA.txt, C:\Temp\FileB.txt, C:\Temp\FileC.txt and C:\Temp\FileD.txt by using File - Open executed with Ctrl+O. Select first FileD.txt with left mouse button, then press and hold key Shift and click with left mouse button on FileA.txt, leave key Shift and click on button Open or press key RETURN.
- Now right click on a ribbon tab and left click in opened context menu in submenu Toolbar/menu mode on either Contemporary menus or Traditional menus. Don't worry if you favor the ribbon mode. You can later right click on menu bar and left click on Ribbon mode to switch back to this user interface mode. But for understanding what is going on a menu mode with menu Window is essential.
- The file tabs show now FileA.txt, FileB.txt, FileC.txt and FileD.txt with FileD.txt being the active file.
Click now on menu Window. There can be seen at bottom the windows of the files in last access order which is:
- C:\Temp\FileD.txt
- C:\Temp\FileC.txt
- C:\Temp\FileB.txt
- C:\Temp\FileA.txt
- Then click with left mouse button on file tab FileB.txt and open once again the menu Window.
There can be seen now at bottom:
- C:\Temp\FileB.txt
- C:\Temp\FileD.txt
- C:\Temp\FileC.txt
- C:\Temp\FileA.txt
- Press Ctrl+Tab and leave both keys. There is selected the file tab FileD.txt.
Open once again the menu Window and look on the list of file windows at bottom which is now:
- C:\Temp\FileD.txt
- C:\Temp\FileB.txt
- C:\Temp\FileC.txt
- C:\Temp\FileA.txt
- Press once again Ctrl+Tab and leave both keys. There is once more selected the file FileB.txt.
Open once again the menu Window and look on the list of file windows at bottom which is now:
- C:\Temp\FileB.txt
- C:\Temp\FileD.txt
- C:\Temp\FileC.txt
- C:\Temp\FileA.txt
I hope, everything described up to now is clear so far.
Ctrl+Tab toggles the first two items in last
access file windows list.
But what does happen on using a macro containing just the macro command
NextWindow or using the command
Next window with its hotkey
Ctrl+F6 or from menu
Window?
- Press Ctrl+F6 and selected is once again FileD.txt as being the second item in the list.
The menu Window lists the file windows as expected:
- C:\Temp\FileD.txt
- C:\Temp\FileB.txt
- C:\Temp\FileC.txt
- C:\Temp\FileA.txt
- Press next once again Ctrl+F6 and selected is FileC.txt and not FileB.txt as being the next file in last access file windows list.
The menu Window lists now:
- C:\Temp\FileC.txt
- C:\Temp\FileD.txt
- C:\Temp\FileB.txt
- C:\Temp\FileA.txt
Why this difference? Why is
FileC.txt and not
FileB.txt selected by using command
Next window?
Well, the reason is pretty simple. If the command
Next window would always select the next file window according to last
access list, it would be impossible to use this command to select ever any other file than the last two accessed files like on using all the time always just
Ctrl+Tab with leaving both keys. That is not good for users which would like the keyboard to switch between the opened files by pressing
Ctrl+F6 multiple times. That is also the reason why pressing
Ctrl+F6 a third time results in selecting next
FileA.txt. The command
Next window prevents selecting a file window which was selected already before in a series of
Next window executions. There is an internal, not visible
access file window list used by
Next window which prevents selecting a file which was selected with command
Next window before until each file was selected at least once in the rotation.
The behavior of the commands
Next file tab with hotkey
Alt+DOWN ARROW and
Previous file tab with hotkey
Alt+UP ARROW are much easier to understand as the order of the selected file window is always according to the
file tabs order of the windows. The last
access order of the file windows does not matter for these two commands.
What happens on pressing
Ctrl+Tab multiple times with holding key
Ctrl between each pressing of key
Tab?
Let us look on this file selecting behavior again with an example:
- Click with left mouse button on the file tabs in following order: FileA.txt, FileB.txt, FileC.txt, FileD.txt.
The Window menu lists the file windows now:
- C:\Temp\FileD.txt
- C:\Temp\FileC.txt
- C:\Temp\FileB.txt
- C:\Temp\FileA.txt
- Press key Ctrl, hold it and press Tab, but continue holding key Ctrl. The file FileC.txt is selected which is expected as it is the second item in last access list.
- But the key Ctrl is still hold. For that reason the last access file windows list is not updated intentionally.
Press next Tab while Ctrl is still hold and the third file in last access file windows list is selected which is FileB.txt.
- While the key Ctrl is still hold press once again on Tab and this time leave also key Ctrl. The file FileA.txt is selected as expected.
The Window menu lists the file windows now:
- C:\Temp\FileA.txt
- C:\Temp\FileD.txt
- C:\Temp\FileC.txt
- C:\Temp\FileB.txt
The temporary selection of
FileC.txt and
FileB.txt has not resulted in an update of the last
access file windows list. The key
Ctrl must be left to update the list.
Ctrl+Shift+Tab results in execution of
Previous window with the extra coded behavior of not updating the last
access file windows list as long as
Ctrl is hold. It is not possible with
Ctrl+Shift+Tab to switch permanently between the same two file windows. That is easy to see on looking on the list in menu
Windows. The entire list changes on using
Ctrl+Shift+Tab, not just the first two items like on using only
Ctrl+Tab.
How to toggle on macro execution between active file window on starting the macro and the next active window according to last
access file windows list ("previous active" file window) as shown in menu
Window without a command emulating
Ctrl+Tab behavior?
Well, the solution is quite simple. The first execution of macro command
NextWindow results in selecting the second item in the
Window list which is the file which was previously the active file before making the file active on which the macro was started. Then the macro must use the command
PreviousWindow to make active again the window of the file which was active on starting the macro.
So a macro must use alternately the commands
NextWindow for selecting the file which was the active file before the file became active on starting the macro and
PreviousWindow to select again the active file on starting the macro execution. I know that reads difficult, but it isn´t on using during macro recording
Ctrl+F6 and
Ctrl+Shift+F6 to toggle between the last two accessed files which results in recording the commands
NextWindow and
PreviousWindow accordingly.
Pressing
Ctrl+Tab results in no command recorded as there is not really a command available for the special behavior implemented most likely
(I can only suppose that) with extra code in program code of UltraEdit on pressing
Ctrl+Tab and leaving both keys.
I wrote many macros more than 10 years ago using in a loop
NextWindow and
PreviousWindow to switch between two opened files and many of them are even posted in the macros forum. Later I learned that switching often between two file windows during a macro execution increases dramatically the time required to finish the macro execution because of the very time consuming window updates. So I used wherever possible a method to get the lines of one file (list file) copied and pasted into the file to modify at top and used that pasted lines at top to update the lines of the file to modify below mainly with running find+replace all commands. That was already better, but resulted often still in lots of updates of active file window and of course in a massive undo history.
The usage of an UltraEdit script is nowadays preferred for a task on which two or more files are involved. It is possible with an UltraEdit script to modify the contents of any opened file according to file tab order (last access order is not available in UltraEdit script environment) without making it active. It is very efficient with maximized file windows if on execution of a script one or more files are modified with none of the modified files being the active file.
I wrote UltraEdit scripts which just open at script start a new file and closes on script end the newly created file without saving it to be able to modify files without any file window update as the window of the new file never modified during script execution is the only visible file window.
For small files with less than some MB it is even possible to load all lines of a file into memory of script interpreter, process them there using only JavaScript core methods and then finally output the completely reformatted file contents at once into the file. The main advantage on using this enhanced file update method using a script is that just one undo step is recorded by UltraEdit as the entire file contents is updated with one write or paste command. That decreases the time required to do a file reformat to a minimum and just one
Ctrl+Z must be used to restore the file contents before execution of the script on output is not as expected.