Skip to content

Chaoses-Ib/IbDOpusScripts

Repository files navigation

IbDOpusScripts

Languages: English, 简体中文

Some scripts for Directory Opus (中文介绍).

Buttons

  • SmartExtract

    Extract selected archive to subfolder if there's more than one file under the root path, otherwise (only one file) extract it directly.

    • Support multiple selection
    • Support selecting extracted file/directory after extraction
  • Everything 搜索

    通过 Everything 在当前文件夹下搜索文件。

    在首次使用时需要先点击“设置 Everything 路径”进行初始化。默认热键 Ctrl+E。

  • 控制面板-雨

    作者:雨浪飘零

  • PasteInto

    Paste files into every selected folder.

  • 系统管理-雨

    作者:雨浪飘零

  • CloseTabOrLister (built-in since DOpus v12.2.6)

    If there's only one tab, close the lister, otherwise close current tab. (This script is for reference only. Starting with DOpus v12.2.6, this feature can be implemented by turning on "Lister closes when last tab closes" under Preferences/Folder Tabs/Options.)

Commands

  • GetColumnValue

    Get the value of the specified column to glob:result.

    For example:

    • Copy files' names and MD5 to clipboard

      // The syntax is the same as the "New name" in the Advanced Rename dialog
      GetColumnValue "* {md5sum}"
      Clipboard SET {$glob:result}
      @set glob:result

      Corresponding result:

      .gitignore 3b121da4db64aa59864e9ed46fa68d0a
      LICENSE.txt dda85d3253cbd75fd74cceb14c1d8b02
      
    • Archive files with the name of the parent folder

      GetColumnValue "{parent}"
      Copy ADDTOARCHIVE CREATEFOLDER="{$glob:result}" HERE
      @set glob:result

    @set glob:result is used to clear the result. It is optional but recommended.

  • Output

    Output text to script log.

    e.g. Output "sourcepath: {sourcepath}"

  • ReplacePath

    Replace the current path.

    Switch between the same folders under C drive and D drive:

    @ifpath:C:\*
    ReplacePath C:\ TO D:\
    @ifpath:D:\*
    ReplacePath D:\ TO C:\

    Switch between Program Files and Program Files (x86):

    @ifpath:*\Program Files(\*|)
    ReplacePath "\Program Files" TO "\Program Files (x86)"
    @ifpath:*\Program Files '(x86')(\*|)
    ReplacePath "\Program Files (x86)" TO "\Program Files"
  • Sleep

    Sleep for the specified milliseconds.

    e.g. Sleep 3000

  • Speak

    Text to speech.

    e.g. Speak "My Moon My Man"

Scripts

To use a script, you need to download it and put it into /dopusdata\Script AddIns (except for DialogJump).

  • DialogJump

    When in the editor of the file dialog, press Ctrl+G to jump to the last activated folder of listers. If Ctrl+G does not work, type "//cur " to trigger it. (Download the executable file from Releases if you do not have AutoHotkey v2)

  • EventWatchers

    Output script event information when the event is triggered.

  • MaxViewerPane

    Maximize the viewer pane.

    Before After

    This script requires a supporting executable MaxViewerPane.exe. You need to download the archive from Releases and extract the folder next to the script (i.e. there should exist /dopusdata\Script AddIns\MaxViewerPane\MaxViewerPane.exe).

    Button: MaxViewerPane.dcf

  • ObjectViewers

    Output script object information.

  • SmartThumbnailSize

    Automatically adjust the thumbnail ratio according to the images in the folder or the selected images.

    Before After

    You can set the thumbnail to specified size by running a command like SmartThumbnailSize SIZE=256.

    You can also import the toolbar:

    Note that SmartThumbnailSize will only set the thumbnail size for the current file diaplay. This means that you can use it to set separate thumbnail sizes for each file display in a dual-display Lister:

  • TabColorizer

    Colorize the folder tab with the color of its label.

    Before After
  • SizeColByEverything (built-in since DOpus v13)

    Add a size column which retrieves sizes of files and folders from Everything. (This script is for reference only. Use IbDOpusExt's Size column instead.)

Non-DOpus scripts:

  • OpenFileInWorkspace

    Given a file path, open its parent folder (or Git root) and show the file in VS Code.

    Download

    To associate file types with this script, change their open action to wscript "...\OpenFileInWorkspace.vbs" "%1", where ...\OpenFileInWorkspace.vbs should be the absolute path to OpenFileInWorkspace.vbs.

    Can also be combined with ObsidianShell to try to open notes in Obsidian first and then fallback to VS Code workspace.

Rename Scripts

See Also