Portál AbcLinuxu, 8. května 2025 16:30
! Use of \@part doesn't match its definition. \@uclclist ->\oe \OE \o \O \ae \AE \dh \DH \dj \DJ \l \L \ng \NG \ss \SS \th... l.349 \cast{Teoretická část}překlad fungoval pak sem něco upravil a je to v háji a nemožu si stím poradit. překládám XeLaTeXem, ale chyba XeLaTeXu to nebude. takto je to makro ve zdroji.
\def\cast#1{% příkaz \cast jako alternativa k \part \part{#1} } \def\@part[#1]#2{% \ifnum \c@secnumdepth >\m@ne \refstepcounter{part}% \addcontentsline{toc}{section}{\protect\makebox[1cm][l]{\thepart}\MakeTextUppercase{#1}}% \else \addcontentsline{toc}{section}{\MakeTextUppercase{#1}}% \fi {\parindent \z@ \raggedright \interlinepenalty \@M \clearpage \normalfont \ifnum \c@secnumdepth >\m@ne \Large\bfseries \nobreak \fi \vspace*{9cm} \center\huge \bfseries\thepart. \MakeTextUppercase{#2}% \markboth{}{}\par}% \nobreak \clearpage \@afterheading }celou šablonu mám na githubu
Řešení dotazu:
\def\@part[#1]#2{...}je TeXovská definice příkazu, která pak vyžaduje, aby se argumenty použily stejným způsobem (the use of ... does not match its definition), tj. včetně hranatých závorek. Pokud chcete nadefinovat funkci s nepovinným parametrem v LaTeXu, pak použijte LaTeXovský \newcommand (viz dokumentace), který umí nepovinné parametry zpracovat. LaTeX zpracovává [...] nějakým vnitřním mechanismem, v čistém TeXu žádné nepovinné parametry v [] nejsou.
všechna písmena jsou velká, ale první je většíAch jo. To jsou přece kapitálky. Zřejmě tam někde bude \sc či \scshape...
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.