30 May 2020

Directory Opus 12.20.6 (Beta)

Directory Opus 12.20.6 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.


Changes since 12.20.5:

  • Added options to Preferences / File Displays / Mouse to turn off Mouse Wheel + Ctrl for changing font/thumbnail sizes and Mouse Wheel + Shift for navigating back and forward.
  • File display music columns now support yet another variant of MP4 music tags.
  • Fixed problem where the user-entered list of cloud folders would not be used unless OneDrive or Dropbox were also installed.
  • The Prefs PAGE command can now automatically select and display the configuration editor for a script, e.g. Prefs PAGE=scripts:dopstack to go to the Scripts page, select the DopStack.js script and open the editor for its configuration.
  • Script dialogs can now offer drag and drop of files using the new Dialog.Drag method.
    • Drag can be initiated either from a static control or a listview control. The new Drag Source property must be set to True on the control.
    • When the user initiates a drag, you'll receive a drag event. The value property indicates whether it's left or right button.
    • If you want to allow a drag and drop, call the Dialog.Drag method in response. The first parameter provides the files to be dragged (same as can be passed to DOpus.SetClip). The optional second parameter provides allowable actions for the drag - copy, move, link as a comma-separated string. The default is copy if not specified. You can also specify the default action by prefixing with a * (e.g. copy,*move,link to allow all three but make move the default).
    • Return value of the Drag method indicates the result of the drag - copy, move or link for a left button drag, drop for a right button drag, and cancel if the drag was aborted.


  • Added Report Clicks property for static controls in script dialogs. With this turned on, static controls will report click, dblclk and rclick events when clicked.
  • Added UnorderedSet script object. Similar to a string set except it can store any type of data, and doesn't sort the values you add to it.
  • Added script Vector.unique method to remove duplicate values from a Vector.
  • Script add-ins can now load data like images from a sub-folder in the script add-ins directory. The sub-folder must have the same name as the script itself (without the file extension). This might be useful while a script is under development, before you package it as a script package for distribution.
  • The script dialog editor now shows checkboxes in list mode listviews in the same location as the real dialog displayed them (top-left rather than centered).
  • The Vector script object can now be indexed in JScript using [] as well as () (e.g. vector[5]).
  • The Vector.assign method can now accept a JScript array to copy the contents to an Opus Vector object.
  • The DOpus.Create.Vector factory method can now accept another Vector or JScript array to initialise the new array from (equivalent to creating the Vector and then calling the assign method).

22 May 2020

Directory Opus 12.20.5 (Beta)

Directory Opus 12.20.5 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.


Changes since 12.20.4:

  • The dopusrt /col command can now be used to create "duplicate files" collections, similar to those produced by the duplicate file finder.
    • The /add command has new /dupeid and /name switches.
    • The /create command has a new /dupes switch.
    • The /import command allows duplicate IDs and group names to be assigned in the import file.

  • Fixed misdetection of mixed DPI mode in some situations, which sometimes meant transition animations were disabled when they would have worked OK.
  • You can now have Favorites menus using large icons by turning on the Large Image Size checkbox in the button which generates the list (or for the whole toolbar).
  • Improved autosizing of script dialog listview columns.

15 May 2020

Directory Opus 12.20.4 (Beta)

Directory Opus 12.20.4 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.


Changes since 12.20.3:

  • The FileType NEW command can now create directories by specifying directory as the file type to create. This lets you create multiple directories at once (e.g. FileType NEW=directory NEWCOUNT=10).
  • The FileType NEWNAME argument can now be used to specify a separate name that's used when the original name clashes, and to control where the incremental number is inserted. For example, FileType NEW=.txt NEWNAME="Text:Text Num %c" would use "Text" for the initial name, and then try "Text Num 1", "Text Num 2" etc. You can use %Nc to zero-pad the number to N digits (e.g. %3c to zero pad to three digits). The default behavior if a separate name isn't specified is still to append the incremental number in brackets.
  • The option to specify a single image (via name or wildcard) for folder thumbnails can now be used to allow up to 4 images per folder thumbnail that match the wildcard.
  • When dragging attachments from Outlook to an Opus Lister, Opus now detects the special 1/1/4501 timestamp that Outlook uses for some reason, and substitutes the current date and time instead.
  • If you turn on the Lister's Copy or Delete filter and then run a command which explicitly specifies a filter, the command will now use the filter it specifies without prompting. (Normal commands which don't specify a filter will still prompt you to choose or define one.)
  • If a copy/move operation uses a custom queue name this is now shown in the title bar of the progress dialog as described in the manual.
  • Fixed issue introduced in previous beta where folder tree branches would only fully populate when manually expanded.
  • Fixed issue introduced in previous beta which caused drive roots to be highlighted when viewing This PC with a filter that highlights recently modified folders.

12 May 2020

Directory Opus 12.20.3 (Beta)

Directory Opus 12.20.3 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.


Changes since 12.20.2:

  • A command that copies files into a file collection using {filepath} etc. codes now works correctly with more than one item selected.
  • Fixed the folder tree scrolling to the wrong position if both Expand selected branch when changing tabs and Position selected item in the middle of the tree were enabled at once.
  • Changing the advanced no_folder_cd_thumbs or cd_thumb_coverart_file settings now clears any cached folder thumbnails and does a refresh immediately.
  • Buttons can now use things like @ifpath:/trash to make commands conditional on being in virtual folders like Recycle Bin.
  • Using the Favorites FILTER argument no longer filters out separators from the Favorites list (other than to remove double separators where everything between them was filtered out).
  • Fixed a cosmetic issue with the Backup & Restore dialog at 125% DPI scaling.
  • Added LocalizedNameTest registry flag for testing alternative methods of retrieving localized names (re: Google Drive). See https://resource.dopus.com/t/dopus-slow-to-load-google-drive-file-stream-folder-with-many-items/35468 for details.

  • Added Dialog.WatchTab script method. Allows a (detached) script dialog to receive various notifications about a folder tab (file selection, file changes, etc).

  • Script dialogs shown as a checkbox list (using Dialog.choices) are now themed and resizable.

7 May 2020

Directory Opus 12.20.2 (Beta)

Directory Opus 12.20.2 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.


Changes since 12.20.1:

  • The FAYT field's Range Select mode (# key by default) now lets you select a range based on the current focus position. For example, #+10 will select the next 10 files from the current position, and #-5 will select the previous 5. You can also use, for example, #-5+5 to select 5 files either side.
  • Previously the Range Select mode required the Index column to be added before you could use it, but now the mode is always available (in details/power mode) and the Index column will be automatically added if needed, and removed again once the FAYT closes..
  • Background threads generating metadata now prioritise the active tab. When you switch tabs any outstanding threads are re-ordered so results for the newly active tab should start to be returned much more quickly.
  • A number of improvements to the Go FOLDERCONTENT command:
    • Go FOLDERCONTENT now sorts and filters items by their localized display names, not the underlying disk names.
    • Go FOLDERCONTENT=useshell now supports multiple folders. Also added support for merging the current folder "." with one or more fixed paths.
    • Go FOLDERCONTENT=useshell now shows better descriptions (on mouse hover) for shortcuts.
    • Go FOLDERCONTENT=useshell no longer treats zip files as folders.
    • Go FOLDERCONTENT without useshell now adds a separator between files and folders at the top level. (Previously, this only happened within sub-menus or when useshell was specified.)

  • If a folder tab shows a collection which is deleted, the tab now reacts by going up a level (if the collection stays deleted) or refreshing (if the collection is re-created immediately).
  • The dialog for creating new FTP site bookmarks no longer resets the password drop-down when you change the connection type drop-down.
  • Improved feedback if PDF metadata update fails.
  • Fixed a problem with the MD5 cache which could in some cases cause checksums to not be calculated (files would show as duplicates but with a zero checksum).
  • Improved compatibility with music tags in certain M4A files.
  • Resetting the Archives filetype group to its default settings now initialises the default file extensions for the group.
  • Fixed the Flat View state of the first folder carrying over to its replacement when loading a Folder Tab Group.
  • Documented the refreshsub action for the OnBeforeFolderChange and OnAfterFolderChange script events.
  • By default, Opus no longer overrides the font chosen by virtual folders which Opus does not handle itself. A new option Preferences / Display / Options / Enable custom fonts in virtual folders exists to turn this back on, but note that it can cause cosmetic issues or even crashes when going to those folders.
  • Fixed drop-downs at the bottom of Preferences / Display / Images not updating correctly when custom images were removed.
  • Fixed a crash that could occur if you rapidly refreshed a file collection.
  • The standalone viewer now adds the initial file it opens to the Windows recent documents list.
  • Fixed unnecessary null being added at end of IPTC string tags.
  • If a rename fails because a file is in-use Opus will now show the processes that have the file locked if possible (same as when trying to delete).
  • Fixed Go FROMSEL NEW=nodual opening a Lister with a second folder tree, if the default Lister had dual folder trees.
  • The Image Viewer toolbar now respects the icon size override on the Customize Toolbars page.
  • Fixed Customize Toolbars list in Opus Light showing the wrong checkbox state for the Images toolbar if it was turned on.
  • In Opus Light, you can now override the File Display Border toolbar's icon size and the setting will be saved to disk.
  • The Customize Toolbars list now shows File Display Border toolbars as in-use, to help identify them. They can also no longer be turned on as normal toolbars (although you can still do so via commands if you really want to for some reason).
  • If the File Display Border or Image Viewer toolbars are changed in Preferences while the Customize dialog is also open, the Customize dialog now updates itself.
  • When the standalone viewer is displaying something with the Text plugin, you can now close it with Esc.
  • Fixed a crash which could occur in the standalone viewer if you had the Reuse existing viewer windows option turned on and double-clicked the same image twice in extremely quick succession (e.g. due to a faulty mouse button).
  • When you right-click a file which is a member of multiple File Type Groups, the context menu items they add (if any) are now in the same order as the groups in the file type editor (i.e. by group name).
  • Improved Rename dialog's filtering of invalid characters to allow ":" to be typed after {scp even when not at the very end of the line.
  • The progress dialog's unattended mode errors dialog no longer shows itself when the progress dialog is minimized and restored if the unattended option has been turned off again.
  • The Command.AddFilesFromClipboard script method now works better when the clipboard files came from a library.
  • Fixed an issue where the standalone viewer could be blank after exiting fullscreen mode in specific situations.
  • Layouts applied to existing windows (Prefs LAYOUTTHISLISTER) should now work with Navigation Lock and Linked Folder Tabs.
  • If you have a toolbar with empty space on the right (or bottom, for vertical toolbars), and you move the mouse across the last button and into the empty space, the button will no longer be left highlighted.
  • Drive roots may now be added to file collections. (Primarily intended for scripts/commands.)
  • The Item.filegroup script property now works correctly in script functions run from a context menu.

21 April 2020

Raw Image Extension (Microsoft)

Microsoft have updated their Raw Image Extension with support for Canon's newer .CR3 images*.

This extension works in both File Explorer and Directory Opus, for thumbnail and viewer support.

While Opus comes with its own Raw Camera plugin, you may find Microsoft's codec works better for some camera models (or vice versa).

More detail here on the forum:

Viewer/VFS Plugins: Raw Image Extension (Microsoft)

Note that Windows 10 (1903) or above is required.

* Edit: It turns out the CR3 update is only for Windows Insider build users at the moment, but will presumably be released for everyone in time.

Directory Opus 12.20.1 (Beta)

Directory Opus 12.20.1 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.


Changes since 12.20:

  • Added columns to the native This PC view to show percentage space free and full as a number (instead of as a bar graph).
  • Added special handling when moving folders up to parents, where the same folder names appear both above and below the source level. (e.g. C:\A\A\A\A up to C:\A when C:\A\A\A\A\A\A exists.)
  • Added support for File Explorer's %V code. This inserts the selected file or folder if there is one, and the current folder path otherwise.
  • The Join dialog now puts the focus in the output filename field by default. If all input files have the same file extension, the default output filename will now be given that extension as well.
  • Library member folders are now shown in the tree in the order they're configured via the Properties dialog, rather than being sorted alphabetically.
  • The option to hide OneDrive for Business in the folder tree now applies to OneDrive for School as well.
  • In Windows 10, the folder tree no longer appends the drive letter (or share name) to the name of library member folders (this is to match what Explorer does).
  • When selected files are filtered out of the display by the filter bar (or the FAYT in filter mode), they are now deselected automatically.
  • Added alternative syntax for opening a specific file in the viewer pane. As well as the old Show VIEWPANECMD="open,C:\cat.jpg" you can also now use Show "C:\Cat.jpg" VIEWPANECMD=open.
  • Show VIEWPANECMD=open now works with filenames and relative paths; previously it required a full path.
  • A command like Delete FILE="coll://CollectionName" will no longer show any warning or confirmation dialogs if the collection already does not exist.
  • Fixed zip files appearing in breadcrumbs menus when archives were turned off for them.
  • The breadcrumbs option for showing This PC as an icon now only affects This PC, not other folders that are the first path branch (e.g. Network, or folders below Desktop).
  • Go OPENCONTAINER=target now selects the target file even if the OPENINDUAL argument is used to open the containing folder in the other file display.
  • The Preferences aliases list now selects the next alias after one is deleted.
  • Fixed incompatibility with PeaZip context menu.
  • Improved compatibility with context menus added by PotPlayer.
  • Added support for a type of nested context menu used by some software (e.g. the Sound Forge Convert To sub-menu).
  • Added support for a second type of nested context menu used by some software.
  • Fixed copy queue buttons looking incorrect at 125% DPI scaling.
  • Fixed Go FOLDERCONTENT menus which merge multiple paths together. (e.g. Start Menu Button)
  • Fixed crash if you used the mouse wheel over certain parts of the Customize > Context Menus UI.
  • Fixed a problem with automatic filename quoting getting confused by a = argument separator (e.g. CREATEFOLDER={file|noext} would put the quote before the CREATEFOLDER rather than after the =).
  • Fixed drag & drop into a file display with manual sort enabled, where dropping a file between two sub-folders now drops it to the current folder, consistent with what the visual preview indicates.
  • Added rotate property to the Control script object (for static controls set to image mode). This allows the script to rotate the displayed image.
  • Added protection against a crash that could be caused by having lots of tabs opening at once with a script that implements the OnBeforeFolderChange event. 
  • Script columns displayed in Listers now update their headings/names if the script is edited or calls Script.InitColumns or Script.RefreshColumn.
  • Scripts generated by the Create New Script dialog now escape or replace quotes, backslashes and other special or invalid code or path characters typed into the dialog.