
Schauen Sie sich das folgende minimale, nicht funktionierende Beispiel an. Es ist nicht korrekt, da das Ausgabe-PDF erstellt wird. Trotzdem erzeugt die Protokolldatei einen Fehler. Es hat mich viel Zeit gekostet und ich bin mir immer noch nicht sicher, ob es mein Fehler ist oder nicht.
Ich habe eine brandneue portable Version der MiKTeX 2.9.5105-Distribution heruntergeladen und das Paket aktualisiert. Ich kompiliere mit dvi-ps-pdf batchfile
Hier ist das MWE
\documentclass{scrreprt}
\usepackage[utf8]{inputenc} % Uses the utf8 input encoding
\usepackage{hyperref}
\usepackage{hypdvips}
\begin{document}
\chapter*{Impressum}
\chapter{Zu diesem Dokument}
Dieses Installationsanleitung erläutert alle Themen um den -Client installieren zu können und ist als Leitfaden mit Zusatzinformationen aufgebaut. Bestimmte abgebildete windowsspezifische Programmelemente können in den Windowsversionen abweichen, gelten aber sinngemäß.
\section{Symbole und Auszeichnungen}
\section{Want to use command from package hypdvips}
\attachfile[description={MNWEB.log},flags=0000000001, mimetype=application/txt]{MNWEB.log}
\end{document}
Die Fehlerdatei zeigt den folgenden Fehler.
LaTeX Info: Redefining \ref on input line 25.
LaTeX Info: Redefining \pageref on input line 25.
LaTeX Info: Redefining \nameref on input line 25.
[2
]
Chapter 1.
! Missing \endcsname inserted.
<to be read again>
\@ne
l.29 \section
{Symbole und Auszeichnungen}
The control sequence marked <to be read again> should
not appear between \csname and \endcsname.
! Missing \endcsname inserted.
<to be read again>
\@ne
l.29 \section
{Symbole und Auszeichnungen}
The control sequence marked <to be read again> should
not appear between \csname and \endcsname.
! Missing \endcsname inserted.
<to be read again>
\BKM@style@\@ne
l.29 \section
{Symbole und Auszeichnungen}
The control sequence marked <to be read again> should
not appear between \csname and \endcsname.
! Extra \endcsname.
\KVS@ProcessorDefault ...sname KV@#1@#2\endcsname
\unless \ifcsname KVS@#1@h...
l.29 \section
{Symbole und Auszeichnungen}
I'm ignoring this, since I wasn't doing a \csname.
! Package kvsetkeys Error: Undefined key `\BKM@style@\@ne '.
See the kvsetkeys package documentation for explanation.
Type H <return> for immediate help.
...
l.29 \section
{Symbole und Auszeichnungen}
The keyval family of the key `\BKM@style@\@ne ' is `BKM'.
The setting of the key is ignored because of the error.
Try typing <return> to proceed.
If that doesn't work, type X <return> to quit.
Package atveryend Info: Executing hook `BeforeClearDocument' on input line 30.
[3
Wenn niemand meinen Fehler sieht, könnte es sich um einen Fehler handeln. Ich werde ihn in ein paar Tagen melden.
Viele Grüße
EDIT2:
Mit diesen Befehlen kompilieren.
set B=C:\tex\miktex\bin\
set gs_path=d:\peter\Programme\gs\gs9.10\bin\
%B%latex --enable-write18 --src -interaction=nonstopmode --save-size=80000 MWE.tex
%B%dvips -P pdf -D1200 MWE.dvi"
%gs_path%gswin32c.exe -sPAPERSIZE=a4 -dNOSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFileMWE.pdf -c save pop -f MWE.ps
Peter
Antwort1
Der Fehler tritt bei der Verwendung auf scrreprt
, da es definiert
% scrreprt.cls, line 2874:
\newcommand\section{%
\@startsection{section}{\sectionnumdepth}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\ifnum \scr@compatibility>\@nameuse{scr@[email protected]}\relax
\setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@section}%
}
und auch
% scrreprt.cls, line 2397:
\newcommand*{\sectionnumdepth}{\@ne}
Wann das Lesezeichen für den Abschnitt erstellt wird, \BKM@currentlevel
wird definiert über
\xdef\BKM@currentlevel{<second argument to \startsection>}
was in diesem Fall dasselbe ergibt wie
\gdef\BKM@currentlevel{\@ne}
weil \@ne
nicht erweiterbar ist. \BKM@currentlevel
Wird dann aber innerhalb verwendet \csname...\endcsname
, wo \@ne
es unzulässig ist.
Hier ist eine Lösung (vorgeschlagen von Heiko Oberdiek): Nach dem Laden wird hypdvips
change how \@startsection
neu definiert mit
\makeatletter
\def\@startsection#1#2#3#4#5#6{%
\bookmarksetup{style=pp@bmstyle@empty}%
\ifx\@M#2%
\xdef\BKM@currentlevel{1}%
\else
\xdef\BKM@currentlevel{\number#2}%
\fi
\@ifundefined{BKM@style@\BKM@currentlevel}{}{\bookmarksetup{style=\BKM@currentlevel}}%
\pp@backup@@startsection{#1}{#2}{#3}{#4}{#5}{#6}%
}
\makeatother
Eine möglicherweise einfachere Problemumgehung besteht darin, \section
Folgendes zu patchen \number\sectionnumdepth
:
\documentclass{scrreprt}
\usepackage[utf8]{inputenc} % Uses the utf8 input encoding
\usepackage{etoolbox}
\usepackage[pdfencoding=auto]{hyperref} % don't forget the option
\usepackage{hypdvips}
\patchcmd{\section}{\sectionnumdepth}{\number\sectionnumdepth}{}{}
\begin{document}
\chapter*{Impressum}
\chapter{Zu diesem Dokument}
Dieses Installationsanleitung erläutert alle Themen um den -Client installieren
zu können und ist als Leitfaden mit Zusatzinformationen aufgebaut. Bestimmte
abgebildete windowsspezifische Programmelemente können in den Windowsversionen
abweichen, gelten aber sinngemäß.
\section{Symbole und Auszeichnungen}
\section{Want to use command from package hypdvips}
\attachfile[description={MNWEB.log},flags=0000000001, mimetype=application/txt]{MNWEB.log}
\end{document}