Before yesterday TL update my file compiled well. Today I got the error:

! LaTeX3 Error: Variant form 'n' deprecated for base form (LaTeX3)
'__exsheets_blank_skip:N'. One should not change an (LaTeX3)
argument from type 'N' to type 'n': base form only accepts a (LaTeX3) single token argument.

It is related to:

  % question numbering: »chapter.question«
  % use `ch.se.qu' for »chapter.section.question«
  counter-format = ch.qu,
  %auto-label = true,
  label-format = ch.qu:#1,

Maybe it is a temporary package dependency hickupt?

  • 6
    The package is no longer compatible with the current expl3 and must be adapted. Make a bug report at the issue tracker of the package. Jan 10, 2019 at 14:49
  • 1
    The function should be defined by \cs_new_protected:Npn \__exsheets_blank_skip:n #1 to begin with. The only place where the N version is used should become \__exsheets_blank_skip:n {\l__exsheets_blank_dim}.
    – egreg
    Jan 10, 2019 at 15:20
  • 1
    @egreg Why shouldn't it use a V variant? I always thought it was intended for passing the value of a variable…
    – TeXnician
    Jan 10, 2019 at 16:52
  • 1
    @TeXnician Is there a V variant? The error in the package is in doing \cs_generate_variant:Nn \foo:N {n}.
    – egreg
    Jan 10, 2019 at 17:23
  • 2
    @TheInventorofGod Oops, missed "the": sorry. I'm not sure what others can actually do here: there is an issue in release code, that release is down to the maintainer ...
    – Joseph Wright
    Mar 11, 2019 at 14:51

2 Answers 2


Just edited exsheets.sty, in line 2763, instead

\cs_new_protected:Npn \__exsheets_blank_skip:N #1


\cs_new_protected:Npn \__exsheets_blank_skip:n #1

as pointed by @egreg, and line 2794, instead

\cs_generate_variant:Nn \__exsheets_blank_skip:N { n }


\cs_generate_variant:Nn \__exsheets_blank_skip:n { n , V }

as insinuated by @TeXnician.

My document compiles again, don't ask me why!!!

(Made changes in texmf-local)

EDIT (Mar 13, 2019, 03:10 UTC-6):

Find my edited file, as described above, in this GitHub link.

Place this file in /usr/local/texlive/texmf-local/tex/latex/exsheets/ directory.

Update the database using the texhash (or mktexlsr) application.

  • 1
    You do not need a n variant if the base form is already n.
    – TeXnician
    Jan 10, 2019 at 20:29
  • 3
    Please get in touch with the package developer to ensure that his package is not using those deprecated functionality/(mis)features Jan 10, 2019 at 20:30
  • Sent two emails to @clemens yesterday, no response! May be he is out on vacation!
    – tatojo
    Jan 11, 2019 at 18:04
  • @TheInventorofGod Do you really want to compile your documents? Try my answer, it works!! Maybe we should start looking for an alternative package . . .!
    – tatojo
    Mar 11, 2019 at 9:57
  • I did not get notified with your @TheInventorofGod. I am looking for the latest info about this issue. Has it been fixed? Mar 11, 2019 at 10:38

Just want to extends the solution. On the line 2755/2756 of the file exsheets.sty instead of

{ \__exsheets_blank_skip:N \l__exsheets_blank_dim }

I changed it to

{ \__exsheets_blank_skip:n \l__exsheets_blank_dim }.

It works well for me when I use \blank[]{}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .