[Migrated] Dynamic edit summary with external process
Open, Needs TriagePublic


Feature for an external process to designate an edit summary. Currently, edit summaries are either globally defined, or manually modified. Envision the edit summary passed as a filename similar to the "Input/Output filename" field in the Tools->External processing menu. @Green Cardamom 20:14, 27 January 2015 (UTC)

Reguyla updated the task description. (Show Details)
Reguyla raised the priority of this task from to Needs Triage.
Reguyla added a project: AutoWikiBrowser.
Reguyla moved this task to Edit summary on the AutoWikiBrowser board.
Reguyla added subscribers: Reguyla, Aklapper.
Reguyla added a subscriber: GoingBatty.

@GoingBatty 02:55, 28 January 2015 (UTC) wrote:

{{ping|Green Cardamom}} I hope you're also aware of the Options->Default Edit Summaries functionality, which allows you to have multiple edit summaries and choose the appropriate one before saving each edit.

@Green_Cardamom 13:17, 28 January 2015 (UTC) wrote:

Yes thanks. I'm using an external script (Tools->External processing) and would like the script to choose the edit summary. So I don't have to manually. This could be simply accomplished by adding a second "Input/Output filename" field in the Tools->External processing menu for the edit summary filename.

@Teslaton 14:02, 1 April 2015 (UTC) wrote:

The solution I'm using for years now is to have custom C# snippet (''Tools/Make module'') to call external filters. '''https://en.wikipedia.org/w/index.php?title=User:Teslaton/Test&oldid=654494441 Here is an example.'''. It solves multiple common external filters issues in AWB:

  • provides support for summary file
  • provides a command line template, to allow sending extra arguments to external script. Most useful are: article title (URL escaped, to allow safe transfer of UTF strings) and article namespace.
  • allows for custom control of child process creation details (e.g. minimized or no window at all)

That way, any script/languague/framework with CLI interface can be used to write a powerful external filter. Personally, I'm using PHP scripts most often, which allows for MW API calls, caching, functional regex replacements, transformations requiring parsing of wikimarkup and so on.

The only issue I know is, that System.Web.HttpUtility.UrlEncode() method requires System.Web assembly to be loaded. Which fortunately is the case in AWB, after logging into some wiki.

Maybe this kind of solution can be integrated directly into AWB, it's quite trivial, yet considerably more powerful than current external processing support.

This one looks a little different migrated because on Wiki this comment is a subsection of the Feature request.