Example :
% ------------------------------------------
\documentclass {minimal}
\usepackage [utf8]{inputenc}
\usepackage {etex}
\usepackage {pgfkeys}
\loggingall
\pgfkeysedef {/cle}{\noexpand \macro }
\pgfkeys {/cle/.append code=\MACRO }
\expandafter \show \csname pgfk@/cle/.@cmd\endcsname
% \pgfk@/cle/.@cmd is "\noexpand \macro \MACRO "
confer pgfkeys.code.tex line 608 :
\long\def\pgfkeysedef#1#2{%
\long\edef\pgfkeys@temp##1\pgfeov{#2}%
\pgfkeyslet{#1/.@cmd}{\pgfkeys@temp}%
\pgfkeyssetvalue{#1/.@body}{#2}%
}
/.@body is NOT expanded in the definition !!
Here is my proposed patch on
pgfkeys.code.tex(from v3.0.1a).I add the
\pgfkeyssetevaluemacro and modify the\pgfkeysedefand\pgfkeysedefargsmacros to use it.PS: you may thank wipet on stackexchange that finds the way to define
\pgfkeyssetevalue(http://tex.stackexchange.com/q/346779/14500).Here is a better patch.
PS: with a test document.
Last edit: Paul Gaborit 2017-01-08
Here is my last proposition for
pgfkeys.code.tex. I provide the entire file.Thank you for reporting and providing the patch. It is included now.