von kannstmasehn » So 11. Okt 2015, 17:42
Moin,
folgendes Problem:
Ich möchte Tabellen-, Abbildungs- und Symbolverzeichnisse ausgeben. Komischerweise funktionierte das bis heute Mittag auch alles, jetzt geht es nicht mehr, dass alle drei Typen ausgegeben werden. Ich bekomme die Fehlermeldung "! No room for a new \write ."
Ich habe meine Arbeit auf folgendes Minimalbeispiel gekürzt (Ich weiß es ist sehr lang, aber wenn ich noch mehr rausnehme, dann kommt die Fehlermeldung nicht mehr):
\documentclass[12pt,a4paper,twoside,openright,BCOR=20mm,listof=totoc,bibliography=totoc,
numbers=noenddot,appendixprefix=true,titlepage]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
%% ========== Links innerhalb des Dokumentes
\usepackage[
pdftex=true,
colorlinks=true,
breaklinks=false,
citecolor=black,
linkcolor=black,
menucolor=black,
urlcolor=black
]{hyperref}
%% ========== Tabellen
\usepackage{multirow} %Mehrere Zeilen
\usepackage{booktabs} %Neue Tabellenbefehle (Toprule, Midrule, Bottomrule)
\usepackage{rotating} %Rotation innerhalb einer Zelle
\newcommand\tabrotate[1]{\begin{turn}{90}#1\end{turn}}
\usepackage{colortbl} % für die Hintergrundfarbe einzelner Zellen in Tabellen
\definecolor{dunkelgrau}{rgb}{0.8,0.8,0.8}
\definecolor{hellgrau}{rgb}{0.95,0.95,0.95}
\usepackage{varwidth}
\newcommand\tabvarwidth[2][3cm]{\begin{varwidth}[b]{#1}\centering\hspace{0pt}\ignorespaces#2\end{varwidth}}
\usepackage{csvsimple}
%% ========== Glossar
\usepackage{longtable}
\usepackage[
nonumberlist, %keine Seitenzahlen anzeigen
acronym, %ein Abkürzungsverzeichnis erstellen
%toc, %Einträge im Inhaltsverzeichnis
%section, %im Inhaltsverzeichnis auf section-Ebene erscheinen
sanitize={symbol=false} %
]
{glossaries}
\renewcommand*{\glspostdescription}{}
%%Neuer Eintragstyp
\newglossary[fog]{formelgr}{foi}{foo}{Formelzeichengr}
\newglossary[fogq]{formella}{foii}{fooo}{Formelzeichenla}
\newglossary[fogqg]{formelma}{foiii}{foooo}{Formelzeichenma}
\newglossary[fogqa]{formelzei}{foiia}{foooa}{Formelzeichenzei}
%Ein neuer Verzeichnisstil der auch die Einheit mit ausgibt
\newglossarystyle{mytab}{%
% Verzeichnis wird ein 'longtable' mit 5 Spalten
\renewenvironment{theglossary}%
{\begin{longtable}[l]{lllp{\glspagelistwidth}}}%
{\end{longtable}}%
% Kopf der Tabelle
\renewcommand*{\glossaryheader}{%
\bfseries Symbol
& \bfseries Einheit
& \bfseries Bedeutung
\\\endhead}%
% Kein Abstand zwischen Gruppen
\renewcommand*{\glsgroupheading}[1]{}%
%
\renewcommand*{\glossaryentryfield}[5]{%
% \glsentryitem{##1}% Entry number if required
\glstarget
{##3}{##4}% Name
& \glsentryuseri{##1}%Einheit
& ##3% Description
\\% end of row
}%
% The command \glsgroupskip specifies what to do between glossary groups.
% Glossary styles must redefine this command. (Note that \glsgroupskip
% only occurs between groups, not at the start or end of the glossary.)
\renewcommand*{\glsgroupskip}{\relax}
}
\makeglossaries
\newglossarystyle{mytab2}{%
% Verzeichnis wird ein 'longtable' mit 5 Spalten
\renewenvironment{theglossary}%
{\begin{longtable}[l]{llp{\glspagelistwidth}}}%
{\end{longtable}}%
% Kopf der Tabelle
\renewcommand*{\glossaryheader}{%
\bfseries Symbol
& \bfseries Bedeutung
\\\endhead}%
% Kein Abstand zwischen Gruppen
\renewcommand*{\glsgroupheading}[1]{}%
%
\renewcommand*{\glossaryentryfield}[5]{%
% \glsentryitem{##1}% Entry number if required
\glstarget
{##3}{##4}% Name
% & \glsentryuseri{##1}%Einheit
& ##3% Description
\\% end of row
}%
% The command \glsgroupskip specifies what to do between glossary groups.
% Glossary styles must redefine this command. (Note that \glsgroupskip
% only occurs between groups, not at the start or end of the glossary.)
\renewcommand*{\glsgroupskip}{\relax}
}
\makeglossaries
%% ========== Literaturverzeichnis
\usepackage[sorting=none, backend=biber,citestyle=numeric-comp,bibstyle=numeric-comp, bibwarn=true, bibencoding=utf8]{biblatex}
\usepackage[babel,german=quotes]{csquotes}
\addbibresource{docs/0sonstiges/0Literatur/Inhalt.bib}
\usepackage[german=quotes]{csquotes}
\DeclareNameFormat{author}{%
\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}%
\usebibmacro{name:andothers}}
\DefineBibliographyStrings{ngerman}{
andothers = {{et\,al\adddot}},
}
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}
\usepackage{tikz}
\begin{document}
\tableofcontents
\listoftables
\listoffigures
\glsaddall %% Alle Symbole ausgeben
\addchap{Symbolverzeichnis}
{
\setglossarysection{section}
\printglossary[title=Griechische Symbole,type=formelgr, style=mytab]
\vspace{2.5cm}
\printglossary[title=Lateinische Symbole,type=formella, style=mytab]
\vspace{1cm}
\printglossary[title=Matrizen und Vektoren,type=formelma, style=mytab2]
\vspace{1cm}
\printglossary[title=Formelzeichen,type=formelzei, style=mytab2]
}
\newpage
\glstoctrue
\printglossary[type=\acronymtype,style=long,title=Abkürzungsverzeichnis]
\end{document}
Wenn ich nun z.B. "Links innerhalb des Dokumentes" oder "Tabellen" in der Präambel auskommentiere, funktioniert alles wieder. Liegt es evtl. daran, dass ein Speicher überfüllt wird? Wenn ich einen großen Block in der Präambel rauskürze, funktioniert das Ausgeben wieder und es kommt keine Fehlermeldung. Woran kann das denn liegen? Und wie kann ich das beseitigen?
Ergänzung:
Wenn ich "\tableofcontents" auskommentiere, funktioniert alles wieder vollständig. Komisch...
Danke im Voraus.
Moin,
folgendes Problem:
Ich möchte Tabellen-, Abbildungs- und Symbolverzeichnisse ausgeben. Komischerweise funktionierte das bis heute Mittag auch alles, jetzt geht es nicht mehr, dass alle drei Typen ausgegeben werden. Ich bekomme die Fehlermeldung "! No room for a new \write ."
Ich habe meine Arbeit auf folgendes Minimalbeispiel gekürzt (Ich weiß es ist sehr lang, aber wenn ich noch mehr rausnehme, dann kommt die Fehlermeldung nicht mehr):
[code]
\documentclass[12pt,a4paper,twoside,openright,BCOR=20mm,listof=totoc,bibliography=totoc,
numbers=noenddot,appendixprefix=true,titlepage]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
%% ========== Links innerhalb des Dokumentes
\usepackage[
pdftex=true,
colorlinks=true,
breaklinks=false,
citecolor=black,
linkcolor=black,
menucolor=black,
urlcolor=black
]{hyperref}
%% ========== Tabellen
\usepackage{multirow} %Mehrere Zeilen
\usepackage{booktabs} %Neue Tabellenbefehle (Toprule, Midrule, Bottomrule)
\usepackage{rotating} %Rotation innerhalb einer Zelle
\newcommand\tabrotate[1]{\begin{turn}{90}#1\end{turn}}
\usepackage{colortbl} % für die Hintergrundfarbe einzelner Zellen in Tabellen
\definecolor{dunkelgrau}{rgb}{0.8,0.8,0.8}
\definecolor{hellgrau}{rgb}{0.95,0.95,0.95}
\usepackage{varwidth}
\newcommand\tabvarwidth[2][3cm]{\begin{varwidth}[b]{#1}\centering\hspace{0pt}\ignorespaces#2\end{varwidth}}
\usepackage{csvsimple}
%% ========== Glossar
\usepackage{longtable}
\usepackage[
nonumberlist, %keine Seitenzahlen anzeigen
acronym, %ein Abkürzungsverzeichnis erstellen
%toc, %Einträge im Inhaltsverzeichnis
%section, %im Inhaltsverzeichnis auf section-Ebene erscheinen
sanitize={symbol=false} %
]
{glossaries}
\renewcommand*{\glspostdescription}{}
%%Neuer Eintragstyp
\newglossary[fog]{formelgr}{foi}{foo}{Formelzeichengr}
\newglossary[fogq]{formella}{foii}{fooo}{Formelzeichenla}
\newglossary[fogqg]{formelma}{foiii}{foooo}{Formelzeichenma}
\newglossary[fogqa]{formelzei}{foiia}{foooa}{Formelzeichenzei}
%Ein neuer Verzeichnisstil der auch die Einheit mit ausgibt
\newglossarystyle{mytab}{%
% Verzeichnis wird ein 'longtable' mit 5 Spalten
\renewenvironment{theglossary}%
{\begin{longtable}[l]{lllp{\glspagelistwidth}}}%
{\end{longtable}}%
% Kopf der Tabelle
\renewcommand*{\glossaryheader}{%
\bfseries Symbol
& \bfseries Einheit
& \bfseries Bedeutung
\\\endhead}%
% Kein Abstand zwischen Gruppen
\renewcommand*{\glsgroupheading}[1]{}%
%
\renewcommand*{\glossaryentryfield}[5]{%
% \glsentryitem{##1}% Entry number if required
\glstarget
{##3}{##4}% Name
& \glsentryuseri{##1}%Einheit
& ##3% Description
\\% end of row
}%
% The command \glsgroupskip specifies what to do between glossary groups.
% Glossary styles must redefine this command. (Note that \glsgroupskip
% only occurs between groups, not at the start or end of the glossary.)
\renewcommand*{\glsgroupskip}{\relax}
}
\makeglossaries
\newglossarystyle{mytab2}{%
% Verzeichnis wird ein 'longtable' mit 5 Spalten
\renewenvironment{theglossary}%
{\begin{longtable}[l]{llp{\glspagelistwidth}}}%
{\end{longtable}}%
% Kopf der Tabelle
\renewcommand*{\glossaryheader}{%
\bfseries Symbol
& \bfseries Bedeutung
\\\endhead}%
% Kein Abstand zwischen Gruppen
\renewcommand*{\glsgroupheading}[1]{}%
%
\renewcommand*{\glossaryentryfield}[5]{%
% \glsentryitem{##1}% Entry number if required
\glstarget
{##3}{##4}% Name
% & \glsentryuseri{##1}%Einheit
& ##3% Description
\\% end of row
}%
% The command \glsgroupskip specifies what to do between glossary groups.
% Glossary styles must redefine this command. (Note that \glsgroupskip
% only occurs between groups, not at the start or end of the glossary.)
\renewcommand*{\glsgroupskip}{\relax}
}
\makeglossaries
%% ========== Literaturverzeichnis
\usepackage[sorting=none, backend=biber,citestyle=numeric-comp,bibstyle=numeric-comp, bibwarn=true, bibencoding=utf8]{biblatex}
\usepackage[babel,german=quotes]{csquotes}
\addbibresource{docs/0sonstiges/0Literatur/Inhalt.bib}
\usepackage[german=quotes]{csquotes}
\DeclareNameFormat{author}{%
\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}%
\usebibmacro{name:andothers}}
\DefineBibliographyStrings{ngerman}{
andothers = {{et\,al\adddot}},
}
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}
\usepackage{tikz}
\begin{document}
\tableofcontents
\listoftables
\listoffigures
\glsaddall %% Alle Symbole ausgeben
\addchap{Symbolverzeichnis}
{
\setglossarysection{section}
\printglossary[title=Griechische Symbole,type=formelgr, style=mytab]
\vspace{2.5cm}
\printglossary[title=Lateinische Symbole,type=formella, style=mytab]
\vspace{1cm}
\printglossary[title=Matrizen und Vektoren,type=formelma, style=mytab2]
\vspace{1cm}
\printglossary[title=Formelzeichen,type=formelzei, style=mytab2]
}
\newpage
\glstoctrue
\printglossary[type=\acronymtype,style=long,title=Abkürzungsverzeichnis]
\end{document}
[/code]
Wenn ich nun z.B. "Links innerhalb des Dokumentes" oder "Tabellen" in der Präambel auskommentiere, funktioniert alles wieder. Liegt es evtl. daran, dass ein Speicher überfüllt wird? Wenn ich einen großen Block in der Präambel rauskürze, funktioniert das Ausgeben wieder und es kommt keine Fehlermeldung. Woran kann das denn liegen? Und wie kann ich das beseitigen?
Ergänzung:
Wenn ich "\tableofcontents" auskommentiere, funktioniert alles wieder vollständig. Komisch...
Danke im Voraus.