Can't access saved within entrydata*
up vote
1
down vote
favorite
Trying to loop over child entries within a modified set
driver in biblatex
I get a behaviour of entrydata*
I do not understand.
When calling
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
within the driver I get
xset Warning: inside loop for A:V1
xset Warning: entrydata check loop run for entrykey=A:V1 with savedentrykey=
xset Warning: inside loop for A:V2
xset Warning: entrydata check loop run for entrykey=A:V2 with savedentrykey=
where savedentrykey
should - as far as I understand it - be A
and not empty.
Even
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
does not work (which probably should???)...
Any idea what I am missing?
MWE:
documentclass{article}
usepackage[ansinew]{inputenc}
usepackage[ngerman]{babel}
usepackage[babel,german=quotes]{csquotes}
usepackage[doi=false,defernumbers=true,backend=biber,subentry,sorting=nyt,sortsets=true,style=numeric-comp]{biblatex}
usepackage{xpatch}
newlinechar=`^^J
makeatletter
begin{filecontents}{jobname.bib}
@Set{A,
entryset = {A:V1,A:V2,A:V3},
}
@Book{A:V1,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix der Gallier},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 01},
year = {1959}, isbn = {1234567890123},
publisher = {Dargaud}, location = {Paris},
volume = {1},
}
@Book{A:V2,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix und Kleopatra},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 02},
year = {1968}, isbn = {2345678901234},
publisher = {Dargaud}, location = {Paris},
volume = {2},
}
@Book{A:V3,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix als Gladiator},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 03},
year = {1969}, isbn = {3456789012345},
publisher = {Dargaud}, location = {Paris},
volume = {3},
}
end{filecontents}
DeclareBibliographyDriver{set}{%
message{^^Jxset Warning: entering set driver^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}^^J}%
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
newunitnewblock
usebibmacro{setpageref}%
finentry}
makeatother
addbibresource{jobname.bib}
begin{document}
nocite{*}
printbibliography
end{document}
Question Biblatex - How to access the “saveddate” using “entrydata*”? might be related...
biblatex
|
show 6 more comments
up vote
1
down vote
favorite
Trying to loop over child entries within a modified set
driver in biblatex
I get a behaviour of entrydata*
I do not understand.
When calling
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
within the driver I get
xset Warning: inside loop for A:V1
xset Warning: entrydata check loop run for entrykey=A:V1 with savedentrykey=
xset Warning: inside loop for A:V2
xset Warning: entrydata check loop run for entrykey=A:V2 with savedentrykey=
where savedentrykey
should - as far as I understand it - be A
and not empty.
Even
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
does not work (which probably should???)...
Any idea what I am missing?
MWE:
documentclass{article}
usepackage[ansinew]{inputenc}
usepackage[ngerman]{babel}
usepackage[babel,german=quotes]{csquotes}
usepackage[doi=false,defernumbers=true,backend=biber,subentry,sorting=nyt,sortsets=true,style=numeric-comp]{biblatex}
usepackage{xpatch}
newlinechar=`^^J
makeatletter
begin{filecontents}{jobname.bib}
@Set{A,
entryset = {A:V1,A:V2,A:V3},
}
@Book{A:V1,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix der Gallier},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 01},
year = {1959}, isbn = {1234567890123},
publisher = {Dargaud}, location = {Paris},
volume = {1},
}
@Book{A:V2,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix und Kleopatra},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 02},
year = {1968}, isbn = {2345678901234},
publisher = {Dargaud}, location = {Paris},
volume = {2},
}
@Book{A:V3,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix als Gladiator},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 03},
year = {1969}, isbn = {3456789012345},
publisher = {Dargaud}, location = {Paris},
volume = {3},
}
end{filecontents}
DeclareBibliographyDriver{set}{%
message{^^Jxset Warning: entering set driver^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}^^J}%
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
newunitnewblock
usebibmacro{setpageref}%
finentry}
makeatother
addbibresource{jobname.bib}
begin{document}
nocite{*}
printbibliography
end{document}
Question Biblatex - How to access the “saveddate” using “entrydata*”? might be related...
biblatex
It's late where I am and I might have missed something obvious but I getentrydata check loop run for entrykey=A:V1 with savedentrykey=A
etc. from theentrydata*
as I expected. From theentryset
I get emptysavedentrykey
s but that was sort of expected sinceentryset
does not save the parent data (remember that usually@set
is just a vessel for its children, it does not have meaningful data of its own). I should mention I tested withbiblatex
3.12/Biber 2.12 and an also otherwise up to date system. What versions do you run?
– moewe
1 hour ago
@moewe 3.8a/2.8 - I'll check that...
– AndiW
1 hour ago
The question you link sparked quite some changes inbiblatex
3.11 (github.com/plk/biblatex/pull/684, github.com/plk/biblatex/issues/690, github.com/plk/biblatex/pull/720), so it might well be that you discovered a bug withentrydata*
that was fixed already
– moewe
1 hour ago
Ah yes, see my comment: tex.stackexchange.com/questions/410977/…
– moewe
1 hour ago
@moewe If I recall correctly, most of the discussion then had to do with dates. But here, the OP is only trying to get the entrykey.
– gusbrs
1 hour ago
|
show 6 more comments
up vote
1
down vote
favorite
up vote
1
down vote
favorite
Trying to loop over child entries within a modified set
driver in biblatex
I get a behaviour of entrydata*
I do not understand.
When calling
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
within the driver I get
xset Warning: inside loop for A:V1
xset Warning: entrydata check loop run for entrykey=A:V1 with savedentrykey=
xset Warning: inside loop for A:V2
xset Warning: entrydata check loop run for entrykey=A:V2 with savedentrykey=
where savedentrykey
should - as far as I understand it - be A
and not empty.
Even
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
does not work (which probably should???)...
Any idea what I am missing?
MWE:
documentclass{article}
usepackage[ansinew]{inputenc}
usepackage[ngerman]{babel}
usepackage[babel,german=quotes]{csquotes}
usepackage[doi=false,defernumbers=true,backend=biber,subentry,sorting=nyt,sortsets=true,style=numeric-comp]{biblatex}
usepackage{xpatch}
newlinechar=`^^J
makeatletter
begin{filecontents}{jobname.bib}
@Set{A,
entryset = {A:V1,A:V2,A:V3},
}
@Book{A:V1,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix der Gallier},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 01},
year = {1959}, isbn = {1234567890123},
publisher = {Dargaud}, location = {Paris},
volume = {1},
}
@Book{A:V2,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix und Kleopatra},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 02},
year = {1968}, isbn = {2345678901234},
publisher = {Dargaud}, location = {Paris},
volume = {2},
}
@Book{A:V3,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix als Gladiator},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 03},
year = {1969}, isbn = {3456789012345},
publisher = {Dargaud}, location = {Paris},
volume = {3},
}
end{filecontents}
DeclareBibliographyDriver{set}{%
message{^^Jxset Warning: entering set driver^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}^^J}%
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
newunitnewblock
usebibmacro{setpageref}%
finentry}
makeatother
addbibresource{jobname.bib}
begin{document}
nocite{*}
printbibliography
end{document}
Question Biblatex - How to access the “saveddate” using “entrydata*”? might be related...
biblatex
Trying to loop over child entries within a modified set
driver in biblatex
I get a behaviour of entrydata*
I do not understand.
When calling
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
within the driver I get
xset Warning: inside loop for A:V1
xset Warning: entrydata check loop run for entrykey=A:V1 with savedentrykey=
xset Warning: inside loop for A:V2
xset Warning: entrydata check loop run for entrykey=A:V2 with savedentrykey=
where savedentrykey
should - as far as I understand it - be A
and not empty.
Even
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
does not work (which probably should???)...
Any idea what I am missing?
MWE:
documentclass{article}
usepackage[ansinew]{inputenc}
usepackage[ngerman]{babel}
usepackage[babel,german=quotes]{csquotes}
usepackage[doi=false,defernumbers=true,backend=biber,subentry,sorting=nyt,sortsets=true,style=numeric-comp]{biblatex}
usepackage{xpatch}
newlinechar=`^^J
makeatletter
begin{filecontents}{jobname.bib}
@Set{A,
entryset = {A:V1,A:V2,A:V3},
}
@Book{A:V1,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix der Gallier},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 01},
year = {1959}, isbn = {1234567890123},
publisher = {Dargaud}, location = {Paris},
volume = {1},
}
@Book{A:V2,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix und Kleopatra},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 02},
year = {1968}, isbn = {2345678901234},
publisher = {Dargaud}, location = {Paris},
volume = {2},
}
@Book{A:V3,
author = {Rene Goscinny and Albert Uderzo}, title = {Asterix als Gladiator},
maintitle = {Asterix und Obelix}, sorttitle = {Asterix und Obelix 03},
year = {1969}, isbn = {3456789012345},
publisher = {Dargaud}, location = {Paris},
volume = {3},
}
end{filecontents}
DeclareBibliographyDriver{set}{%
message{^^Jxset Warning: entering set driver^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}^^J}%
renewcommand{do}[1]{%
message{^^Jxset Warning: inside loop for ##1^^J}%
entrydata*{##1}{message{^^Jxset Warning: entrydata check loop run for entrykey=thefield{entrykey} with savedentrykey=thefield{savedentrykey}^^J}}}%
edefxset@tempa{thefield{entryset}}expandafterdocsvlistexpandafter{xset@tempa}%
entryset{message{^^Jxset Warning: entryset pre code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}
{message{^^Jxset Warning: entryset post code executed^^Jentrykey=thefield{entrykey} savedentrykey=thefield{savedentrykey}}}%
newunitnewblock
usebibmacro{setpageref}%
finentry}
makeatother
addbibresource{jobname.bib}
begin{document}
nocite{*}
printbibliography
end{document}
Question Biblatex - How to access the “saveddate” using “entrydata*”? might be related...
biblatex
biblatex
edited 1 hour ago
asked 2 hours ago
AndiW
1338
1338
It's late where I am and I might have missed something obvious but I getentrydata check loop run for entrykey=A:V1 with savedentrykey=A
etc. from theentrydata*
as I expected. From theentryset
I get emptysavedentrykey
s but that was sort of expected sinceentryset
does not save the parent data (remember that usually@set
is just a vessel for its children, it does not have meaningful data of its own). I should mention I tested withbiblatex
3.12/Biber 2.12 and an also otherwise up to date system. What versions do you run?
– moewe
1 hour ago
@moewe 3.8a/2.8 - I'll check that...
– AndiW
1 hour ago
The question you link sparked quite some changes inbiblatex
3.11 (github.com/plk/biblatex/pull/684, github.com/plk/biblatex/issues/690, github.com/plk/biblatex/pull/720), so it might well be that you discovered a bug withentrydata*
that was fixed already
– moewe
1 hour ago
Ah yes, see my comment: tex.stackexchange.com/questions/410977/…
– moewe
1 hour ago
@moewe If I recall correctly, most of the discussion then had to do with dates. But here, the OP is only trying to get the entrykey.
– gusbrs
1 hour ago
|
show 6 more comments
It's late where I am and I might have missed something obvious but I getentrydata check loop run for entrykey=A:V1 with savedentrykey=A
etc. from theentrydata*
as I expected. From theentryset
I get emptysavedentrykey
s but that was sort of expected sinceentryset
does not save the parent data (remember that usually@set
is just a vessel for its children, it does not have meaningful data of its own). I should mention I tested withbiblatex
3.12/Biber 2.12 and an also otherwise up to date system. What versions do you run?
– moewe
1 hour ago
@moewe 3.8a/2.8 - I'll check that...
– AndiW
1 hour ago
The question you link sparked quite some changes inbiblatex
3.11 (github.com/plk/biblatex/pull/684, github.com/plk/biblatex/issues/690, github.com/plk/biblatex/pull/720), so it might well be that you discovered a bug withentrydata*
that was fixed already
– moewe
1 hour ago
Ah yes, see my comment: tex.stackexchange.com/questions/410977/…
– moewe
1 hour ago
@moewe If I recall correctly, most of the discussion then had to do with dates. But here, the OP is only trying to get the entrykey.
– gusbrs
1 hour ago
It's late where I am and I might have missed something obvious but I get
entrydata check loop run for entrykey=A:V1 with savedentrykey=A
etc. from the entrydata*
as I expected. From the entryset
I get empty savedentrykey
s but that was sort of expected since entryset
does not save the parent data (remember that usually @set
is just a vessel for its children, it does not have meaningful data of its own). I should mention I tested with biblatex
3.12/Biber 2.12 and an also otherwise up to date system. What versions do you run?– moewe
1 hour ago
It's late where I am and I might have missed something obvious but I get
entrydata check loop run for entrykey=A:V1 with savedentrykey=A
etc. from the entrydata*
as I expected. From the entryset
I get empty savedentrykey
s but that was sort of expected since entryset
does not save the parent data (remember that usually @set
is just a vessel for its children, it does not have meaningful data of its own). I should mention I tested with biblatex
3.12/Biber 2.12 and an also otherwise up to date system. What versions do you run?– moewe
1 hour ago
@moewe 3.8a/2.8 - I'll check that...
– AndiW
1 hour ago
@moewe 3.8a/2.8 - I'll check that...
– AndiW
1 hour ago
The question you link sparked quite some changes in
biblatex
3.11 (github.com/plk/biblatex/pull/684, github.com/plk/biblatex/issues/690, github.com/plk/biblatex/pull/720), so it might well be that you discovered a bug with entrydata*
that was fixed already– moewe
1 hour ago
The question you link sparked quite some changes in
biblatex
3.11 (github.com/plk/biblatex/pull/684, github.com/plk/biblatex/issues/690, github.com/plk/biblatex/pull/720), so it might well be that you discovered a bug with entrydata*
that was fixed already– moewe
1 hour ago
Ah yes, see my comment: tex.stackexchange.com/questions/410977/…
– moewe
1 hour ago
Ah yes, see my comment: tex.stackexchange.com/questions/410977/…
– moewe
1 hour ago
@moewe If I recall correctly, most of the discussion then had to do with dates. But here, the OP is only trying to get the entrykey.
– gusbrs
1 hour ago
@moewe If I recall correctly, most of the discussion then had to do with dates. But here, the OP is only trying to get the entrykey.
– gusbrs
1 hour ago
|
show 6 more comments
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f461907%2fcant-access-savedkey-within-entrydata%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
It's late where I am and I might have missed something obvious but I get
entrydata check loop run for entrykey=A:V1 with savedentrykey=A
etc. from theentrydata*
as I expected. From theentryset
I get emptysavedentrykey
s but that was sort of expected sinceentryset
does not save the parent data (remember that usually@set
is just a vessel for its children, it does not have meaningful data of its own). I should mention I tested withbiblatex
3.12/Biber 2.12 and an also otherwise up to date system. What versions do you run?– moewe
1 hour ago
@moewe 3.8a/2.8 - I'll check that...
– AndiW
1 hour ago
The question you link sparked quite some changes in
biblatex
3.11 (github.com/plk/biblatex/pull/684, github.com/plk/biblatex/issues/690, github.com/plk/biblatex/pull/720), so it might well be that you discovered a bug withentrydata*
that was fixed already– moewe
1 hour ago
Ah yes, see my comment: tex.stackexchange.com/questions/410977/…
– moewe
1 hour ago
@moewe If I recall correctly, most of the discussion then had to do with dates. But here, the OP is only trying to get the entrykey.
– gusbrs
1 hour ago