Fusion “Change Strings” Script – Batch Change Names, Expressions, Filepaths

Page 2 – Download and Changelog

Download

Click here to learn how to install this Script.

Current Version:

Download on Gumroad:

Download Change Strings

Download on itch.io:

Changelog

MAJOR UPDATE!

ChangeStrings 2.0.0 (02.12.2022)

Most of Change Strings was rewritten completely to include bug fixes, new features, and a more robust search and replace operation. Some default behaviors have changed!

  • The main Search and Replace function has been completely rewritten. It is much more robust, versatile, and has been immensely simplified. It still builds upon the same principles but with much better execution.
  • The search will now work with spaces by default.
    • A new setting called Space Splitter has been added. This gives access to the previous Search and Replace behavior, still making it possible to switch patterns around.
    • This was the main cause of confusion in previous versions. And, unlike me, there seem to be people that use spaces in filepaths.
  • Even shortcodes like “%a” (all letters) will not trigger and fail to the Max Replace Limit thanks to new improvements.
    • The Max Replace Limit is only used for maximum searches at the same time. The maximum number of times that Change Strings repeats a search is now constrained by the length of the string it searches in. In real-life situations, this will not be reached.
  • If shortcode patterns are detected in the string you’re searching on then Change Strings disables shortcodes in the Search for field. Making it possible to replace texts with percentage signs.
  • The window will now always open in the middle.
  • A Notification Label was added to show helpful console tips on startup, the current status of your search, and error messages.
  • Most UI Elements now feature tooltips.
  • Tabs have been added to the UI to accommodate new features while keeping a familiar UI.
  • The possibility to save the settings in the Comp file in Fusion Studio has been removed. Global saving is now used in Fusion Studio and Resolve. The setting to change this has been removed.
    • This way, Change Strings no longer has to modify the fusion: and composition: variables. Simplifying the code and leaving less room for error.
    • This was also confusing for many users who did not know they could change this.
  • To compensate for the removal of Comp-specific saving, the Search for and Replace with text inputs are now drop downs that save up to six entries.
  • Two new X/Clear Buttons have been added next to the text inputs, which previously featured a clear button inside the text field.
    • These buttons save the previously cleared text which can be recovered by shift+clicking
  • A new Search QuickSelect Button has been added.
    • This uses the text in the Search For field to select all nodes containing the pattern.
  • All QuickSelect Buttons are now capable of adding or removing their respective tools to or from your selection. Hit Shift or Ctrl to see what they do.
  • A new Versioning Tab has been introduced to allow quick version increases and decreases.
    • This expects a “v” followed by numbers with consistent padding. For example “MyFile_v001_1001.exr”
  • A new Text Box Tab has been introduced to use Change Strings with texts from outside of Fusion or Text inputs not supported. Like the Custom Tools.
    • Several buttons are available to comfortably copy, paste and move the text around.
    • Hit Shift to recover text you previously pasted, copied, or moved.
  • Many under-the-hood improvements to the UI, variables, and functions.
  • Updated the manual.

ChangeStrings 1.5.2 (23.03.2021)

  • Fixed a bug that caused Change Strings to incorrectly search and replace when multiple Search for inputs were given
    • This was a hotfix update related to the changes in 1.5.1

ChangeStrings 1.5.1 (22.03.2021)

  • Fixed a bug that caused Fusion to incorrectly apply Loader GlobalIn and GlobalOut values when the Loader didn’t start at 0 or 1
    • Related to this bug fix, Change Strings will no longer save the intermediate results in the actual file paths of Loaders and Savers, instead, it will use a new variable. While this generally speeds up the script and removes possibilities of error, this hasn’t been tested with all fringe cases. Please let me know if you run into issues.
    • This change is currently only active for Loaders and Savers, as these share the same code, if this proves to be successful, I might update the other modes to use this variable as well.
  • Fixed a bug that caused Change Strings to sometimes not update the file paths on the first try despite a successful search and replace.

ChangeStrings 1.5 (24.10.2020)

  • Added the ability to search and replace in Alembic and FBX tools file paths (Thank you TheBloke for the great feature request)
  • Added the ability to search and replace in Alembic and FBX tools object identifiers
  • Added a QuickSelect Button for Alembic and FBX tools
  • Change Strings will indicate whether it was opened in Fusion Studio or in DaVinci Resolve (This is a preparation to add more functionality to Change Strings when DaVinci Resolve will have more Scripting commands available)
  • Until Change Strings in Davinci Resolve will be able to work on other Pages, it will jump to the Fusion Page if it is opened somewhere else. This is to prevent unexpected behavior and confusion for Resolve Users expecting it to work on Clip Names.
  • Updated the manual accordingly

ChangeStrings 1.4.1 (08.09.2020)

  • Fixed a bug that caused Change Strings to incorrectly check the Reverse checkbox on Loaders

ChangeStrings 1.4 (18.07.2020)

  • Fixed a rare bug that incorrectly renamed tools when not in case sensitive mode and tools had similar names
  • Fixed a rare bug when using shortcodes not in case sensitive mode
  • Changed some debugging messages to better reflect the current mode

ChangeStrings 1.3 (16.07.2020)

  • Fixed a bug that prevented the correct saving of inputs in Resolve when the About window was opened and saved
  • Fixed a bug that prevented Change Strings to search for single characters when not in case sensitive mode
  • Fixed a bug that prevented Change Strings to properly print the correct saving mode when in Fusion Standalone and Global Saving mode
  • Added support to search and replace percentage signs “%”. Both single percentage signs and strings containing them
    • This does not affect the shortcodes such as “%d”
  • The opposites of the shortcodes have been tested and work properly. For example, “%D” will search for all characters that are not digits
  • Fixed a typo

MAJOR UPDATE!

ChangeStrings 1.2 (06.07.2020)

  • Redesign of the UI to make space for all the new features
    • The UI now looks correct on a higher UI scale
  • All text inputs now have a clear button
  • Remember Inputs will keep its check status even if unchecked
  • Options to change Filepaths individually for Loaders, Proxys and Savers
  • Support for Styled Text in tools like the Text+ and Text3D
  • Quickselect:
    • Select Loaders, Savers or both with a single button click
    • Change Strings remembers your previous selection and can revert back to it
  • Support to search and replace in Modifier Names and Expressions
  • A new Tristate Checkbox is added for Modifiers
    • Toggle between no Modifiers, include Modifiers and only Modifiers
    • This will only change connected Modifiers not connected Tools in general
  • A new checkbox was added to keep Change Strings open even after clicking OK
  • A new checkbox was added to the Advanced Settings to reduce the console messages of Change Strings. It is on by default, meaning it will print its actions to the console.
  • The main Search and Replace operation was consolidated which makes it easier to add features and made the operation much more robust:
    • Change Strings can now properly find and replace single dots “.”
    • Previously working shortcodes such as “%l” are found and replaced much quicker without triggering a loop
    • Support for the uppercase letter shortcode “%u”
    • Support for all letters shortcode “%a”
    • Searching and replacing single characters is much more efficient
    • General improvements to the operation make it much more robust
    • Improvements to the loop counter make it pretty much impossible for Change Strings to fall into an endless loop or crash
    • The Max Replace Limit will now limit the replacements for each input as well
  • Due to these improvements, the default Max Replace Limit increased to 30
  • Change Strings handles the switching between Local and Global Saving modes much better (Fusion Standalone) and makes sure variables are correct once it closes (DaVinci Resolve and Fusion Standalone)
  • Fixed minor issues with the Resolve or Global Saving mode
  • Updated the manual for the new UI and features

ChangeStrings 1.1 (01.07.2020)

  • Change Strings now supports DaVinci Resolve’s Fusion Page (thanks Bryan Ray)
  • It automatically detects if it was opened in Fusion Standalone or DaVinci Resolve and changes its behavior to properly work in the corresponding software.
  • Added the possibility to save the Inputs globally (Fusion Standalone only)
  • Added a new “?” for this new setting
    • Updated the manual accordingly
  • Fixed a bug that prevented the Script to work when more Search for Inputs than Replace with Inputs were available

ChangeStrings 1.0 (29.06.2020)

  • The first (sort of) Open Beta release of ChangeStrings. (Fusion Standalone only)

Console Messages

Change Strings likes to communicate, this is why you will quickly fill your console with messages from it. Through it, you can exactly see how Change Strings sees the world/strings.

Besides telling you about the current Pattern Breaker and Max Replace Limit, Change Strings will also tell you which node, expression, or filepath it changes and how. Through the console messages, you will be able to tell exactly where a Pattern Breaker was placed and if it stopped because it couldn’t find the pattern anymore or because it reached the Max Replace Limit.

Without these many console messages, I wouldn’t have been able to debug the code and I also find it quite interesting to see what it does. But I also understand that this many console messages can be annoying. And with Change Strings 1.2 and upwads you are able to stop Change Strings from filling up your console if you choose so.

Disclaimer

Thank you for being interested in my script Change Strings.

All future updates will be logged on this page and I will make sure that previous versions are available as well.

I don’t know of any composition breaking issues, but of course, use at your own risk. If you do experience issues, try closing and opening the composition again.

This script was successfully tested in:

  • Fusion Studio 18
  • Fusion Studio 17
  • DaVinci Resolve 18
  • DaVinci Resolve 17

But please tell me of any issues or suggestions you have so I can improve the script.

How to report bugs

Please message me if you run into bugs or inconsistencies. For suggestions, you can use the comments under this post. Actual bug reports would be great as an email.

These things would be helpful to know:

  • Fusion Standalone or DaVinci Resolve?
  • Which version of the software?
  • Which Version of Change Strings?
  • What did you try to replace?
  • What happened? (Crash? Unsuccessful replacement? Endless loop?)
  • For critical bugs: Can you copy and paste the console messages in an email?

Quickly share this!

Subscribe
Notify of
11 Comments
Oldest
Newest
Inline Feedbacks
View all comments
Scroll to top