Предотвратить переупорядочивание в выводе производных?

В недавнем сообщении в блоге Wolfram Blog была предложена следующая функция для форматирования производных более традиционным способом.

pdConv[f_] := 
 TraditionalForm[
  f /. Derivative[inds__][g_][vars__] :> 
    Apply[Defer[D[g[vars], ##]] &, 
     Transpose[{{vars}, {inds}}] /. {{var_, 0} :> 
        Sequence[], {var_, 1} :> {var}}]
 ]

Пример использования, Dt[d[x, a]] // pdConv дает:

enter image description here

Не нарушая общих возможностей pdConv, может ли кто-нибудь изменить ее, чтобы сохранить заданный порядок переменных и получить вывод, показанный ниже? (конечно, это чисто из эстетических соображений, чтобы человеку было легче следить за выводами)

enter image description here

Я подозреваю, что это будет нетривиально реализовать - если только кто-то не знает волшебную опцию Global, которую можно временно отменить в Block.

Если интересно, эти вопросы SO могут быть связаны:

5
задан Community 23 May 2017 в 10:32
поделиться