Skip to content

Conversation

@sdottaka
Copy link
Member

@sdottaka sdottaka commented Mar 15, 2024

This PR introduces new aliases (ALIAS_PACK_UNPACK, ALIAS_PREDIFF, ALIAS_EDIT_SCRIPT) as plugin types, enabling users to register them through the GUI. Users can register a specified plugin pipeline (plugin name + arguments, or plugin names + arguments concatenated with a pipe) as an alias, which can then be invoked as a plugin. For instance, a plugin pipeline that extracts columns 5 to 100 from a text file, sorts them in ascending order, and performs a comparison can be registered as the alias SelectColumn5100SortAscending in the following window. Once registered, this alias can be invoked from the plugin menu.

SelectColumns 5-100|SortAscending

image
image
image

The alias for this plugin is saved in APPDATA%\WinMerge\MergePlugins\Plugins.xml.

Additionally, the PR facilitates the creation of simple plugins directly from the GUI.

try
{
size_t size = internalPlugins.size();
try { parser.parse(ucr::toUTF8(pluginsXMLPath)); }

Check failure

Code scanning / CodeQL

XML external entity expansion

This [XML parser](1) is not configured to prevent an XML external entity (XXE) attack.
@sdottaka sdottaka changed the title WIP WIP: Add three types of aliases (ALIAS_PACK_UNPACK, ALIAS_PREDIFF, ALIAS_EDIT_SCRIPT) as plugin types and enable them to be registered on a GUI basis. Apr 15, 2024
@sdottaka sdottaka changed the title WIP: Add three types of aliases (ALIAS_PACK_UNPACK, ALIAS_PREDIFF, ALIAS_EDIT_SCRIPT) as plugin types and enable them to be registered on a GUI basis. WIP: Allow plugin pipeline aliases or simple plugins to be registered in the GUI Apr 15, 2024
@sdottaka sdottaka changed the title WIP: Allow plugin pipeline aliases or simple plugins to be registered in the GUI Allow plugin pipeline aliases or simple plugins to be registered in the GUI Apr 21, 2024
@sdottaka sdottaka added this to the v2.16.40 milestone Apr 21, 2024
@sdottaka sdottaka marked this pull request as ready for review April 21, 2024 11:51
@sdottaka sdottaka merged commit 768a6fa into master Apr 21, 2024
@sdottaka sdottaka deleted the add-plugin-pipepline-alias branch April 21, 2024 11:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants