[PowerRename]Add random string values to file names (#32836)

* Add randomizer cheat sheet texts to UI tooltip

* Add randomizer icon (shuffle) + hint to main window

* Add randomizer logic + helpers, regex parsing

* Fix: remove unnecessary throw

* Fix: remove todo comment

* Fix: iffing logic

* Fix: add offset to randomizer onchange

* Update: guid generating to single function, handle bracket removing there

* Update: toggle off enum feat when random values are selected

* Update: main window UI tooltip texts to be more descriptive

* Update: remove unnecessary sstream include

* Fix: return empty string if chars has no value to avoid memory access violation

* Add unit tests

* Add PowerRename random string generating keywords

* Update: generating value names to be in line with POSIX conventions

* Allow to used with Enumerate at the same time

* Fix spellcheck

* Fix tests to take into account we no longer eat up empty expressions
with randomizer

---------

Co-authored-by: Jaime Bernardo <jaime@janeasystems.com>
This commit is contained in:
Jaakko Hirvioja
2024-06-20 18:26:31 +03:00
committed by GitHub
parent 1ae8327a43
commit c148b51698
16 changed files with 584 additions and 26 deletions

View File

@@ -151,7 +151,7 @@
<value>Replace with</value>
</data>
<data name="CounterCheatSheet_Title.Text" xml:space="preserve">
<value>Replace using advanced counter syntax.</value>
<value>Replace using advanced counter syntax</value>
</data>
<data name="CounterCheatSheet_Simple" xml:space="preserve">
<value>A simple counter that you can use anywhere in a replace string.</value>
@@ -295,10 +295,10 @@
<value>Capitalize each word</value>
</data>
<data name="ToggleButton_EnumItems.[using:Microsoft.UI.Xaml.Controls]ToolTipService.ToolTip" xml:space="preserve">
<value>Enumerate items</value>
<value>Enumeration features</value>
</data>
<data name="ToggleButton_EnumItems.[using:Microsoft.UI.Xaml.Automation]AutomationProperties.Name" xml:space="preserve">
<value>Enumerate items</value>
<value>Enumeration features</value>
</data>
<data name="SelectAllCheckBox.[using:Microsoft.UI.Xaml.Automation]AutomationProperties.Name" xml:space="preserve">
<value>Select or deselect all</value>
@@ -363,4 +363,25 @@
<data name="RenameParts_ExtensionOnly.Content" xml:space="preserve">
<value>Extension only</value>
</data>
</root>
<data name="RandomizerCheatSheet_Alnum" xml:space="preserve">
<value>Random string with uppercase letters, lowercase letters and 0-9 digits, customized length.</value>
</data>
<data name="RandomizerCheatSheet_Alpha" xml:space="preserve">
<value>Random string with uppercase letters and lowercase letters, customized length.</value>
</data>
<data name="RandomizerCheatSheet_Digit" xml:space="preserve">
<value>Random string with 0-9 digits, customized length.</value>
</data>
<data name="RandomizerCheatSheet_Title.Text" xml:space="preserve">
<value>Replace using random values</value>
</data>
<data name="RandomizerCheatSheet_Uuid" xml:space="preserve">
<value>Random UUID according to v4 specification.</value>
</data>
<data name="ToggleButton_RandItems.[using:Microsoft.UI.Xaml.Automation]AutomationProperties.Name" xml:space="preserve">
<value>Random string features</value>
</data>
<data name="ToggleButton_RandItems.[using:Microsoft.UI.Xaml.Controls]ToolTipService.ToolTip" xml:space="preserve">
<value>Random string features</value>
</data>
</root>