1

So I have this letter template, which used to work fine until recently. I know there was a bug in the komascript classes <3.21. My distro maintainer (Arch Linux) has upgraded komascript to 3.21. Here is my MWE:

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{marvosym}
\usepackage{graphicx}
\usepackage{polyglossia}
\setmainlanguage{english}
\usepackage[english=british]{csquotes}


\pagestyle{empty}

\usepackage[scale=0.775]{geometry}
\setlength{\parindent}{0pt}
\addtolength{\parskip}{6pt}

\def\firstname{John}
\def\familyname{Doe}
\def\FileAuthor{\firstname \familyname}
\def\FileTitle{\firstname \familyname's }
\def\FileSubject{Letter}
\def\FileKeyWords{\firstname \familyname, Letter}

\renewcommand{\ttdefault}{pcr}

\usepackage{url}
\urlstyle{tt}
\ifpdf
  \usepackage[pdftex,pdfborder=0,breaklinks,baseurl=http://,pdfpagemode=None,pdfstartview=XYZ,pdfstartpage=1]{hyperref}
  \hypersetup{
    pdfauthor   = \FileAuthor,%
    pdftitle    = \FileTitle,%
    pdfsubject  = \FileSubject,%
    pdfkeywords = \FileKeyWords,%
    pdfcreator  = \LaTeX,%
    pdfproducer = \LaTeX}
\else
  \usepackage[dvips]{hyperref}
\fi


\begin{document}
\sffamily   % for use with a résumé using sans serif fonts;
%\rmfamily  % for use with a résumé using serif fonts;
\hfill%
\begin{minipage}[t]{.6\textwidth}
\raggedleft%
{\bfseries John doe}\\[.35ex]
\small\itshape%
Field Lane\\
 Austria\\[.35ex]
\Telefon~+43~730~1234756\\
\Letter~\href{mailto:john@doe.com}{john@doe.com}
\end{minipage}\\[1em]
%
\begin{minipage}[t]{.4\textwidth}
\raggedright%
{\bfseries T-Mobile}\\[.35ex]
\small\itshape%
Cross Lane\\
Vienna
\end{minipage}
\hfill % US style
%\\[1em] % UK style
\begin{minipage}[t]{.4\textwidth}
\raggedleft % US style
\today
%April 6, 2006 % US informal style
%05/04/2006 % UK formal style
\end{minipage}\\[2em]
\raggedright
Dear Sir or Madam,\\[1.5em]



%Yours sincerely,\\[2em] % if the opening is "Dear Mr(s) Doe,"
Yours faithfully,\\[2em] % if the opening is "Dear Sir or Madam,"
%
{\bfseries John doe}\\
%
\vfill%
%{\slshape Enclosure}
{\slshape Attachment:{Invoice}}
\end{document}

Here is the associated part of the error log:

! Undefined control sequence.
\PDF@SetupDoc ...pstringB {\@baseurl }\pdfcatalog 
                                                  {/PageMode/\@pdfpagemode \...
l.44 \begin{document}

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

! Undefined control sequence.
\PDF@SetupDoc ... \@pdfnumcopies \fi }\pdfcatalog 
                                                  {\ifx \Hy@temp \@empty \el...
l.44 \begin{document}

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

! Undefined control sequence.
\Hy@DestName #1#2->\pdfdest 
                            name{#1}#2\relax 
l.44 \begin{document}

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

! Missing number, treated as zero.
<to be read again> 
\relax 
l.44 \begin{document}

A number should have been here; I inserted `0'.
(If you can't figure out why I needed to see a number,
look up `weird error' in the index to The TeXbook.)

! Illegal unit of measure (pt inserted).
<to be read again> 
\relax 
l.44 \begin{document}

Dimensions can be in units of em, ex, in, pt, pc,
cm, mm, dd, cc, nd, nc, bp, or sp; but yours is a new one!
I'll assume that you meant to say pt, for printer's points.
To recover gracefully from this error, it's best to
delete the erroneous units; e.g., type `2' to delete
two letters. (See Chapter 27 of The TeXbook.)

! Undefined control sequence.
<argument> \pdfpageheight 

l.44 \begin{document}

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

! Missing number, treated as zero.
<to be read again> 
\relax 
l.44 \begin{document}

A number should have been here; I inserted `0'.
(If you can't figure out why I needed to see a number,
look up `weird error' in the index to The TeXbook.)

! Illegal unit of measure (pt inserted).
<to be read again> 
\relax 
l.44 \begin{document}

Is this error still caused by komascript or some other package? If I insert \usepackage{luatex85} it does compile, so I am wondering if this is another komascript related?!

Mensch
  • 65,388
  • 1
    This has nothing to do with KOMA (directly) but with changes in the luatex engine which do not preserve backwards compatibility. This is why loading the luatex85 package solves the problem. – Alan Munn Aug 23 '16 at 17:30
  • Thanks for your quick response! Do you have any idea to make the 'offending' code part compatible to the updated luatex engine? Or shall I just go the easy way and add this package to my old files? – blue_tiger300 Aug 23 '16 at 17:35
  • 2
    I think that adding the package is the simplest solution. – Alan Munn Aug 23 '16 at 17:38

0 Answers0