metre-Package: tie-Befehle

Schriftbild, Absätze und Auflistungen einstellen


voyage200
Forum-Newbie
Forum-Newbie
Beiträge: 5
Registriert: Di 17. Dez 2013, 18:46

metre-Package: tie-Befehle

Beitrag von voyage200 »

Hallo liebe LaTeX-Teil-Gemeinde,

ich habe ein Problem mit dem metre-Package, v. 1.0. Alle tie-Befehle (tie, tie*, itie, itie*) funktionieren -- teilweise. Denn es wird zwar der Bogen zwischen zwei Vokalen gesetzt (auch das optionale Argument zur Angabe der Bogen-Größe geht), aber vor den ersten Vokal wird ein Counter, denke ich, ausgegeben.

Beispiel:
\documentclass{scrartcl}

\usepackage{metre}
\newcommand{\metrics}[1]{\begin{metrica}#1\end{metrica}}

%%%Dokumentenbeginn

\begin{document}

\metrics{n\=om\-in\-a, d\=ic \=ips\=os; n\-equ\itie[0.5]{e \-e}n\=im g\-en\-er\=os\-i\-or \=umqu\-am}

\end{document}
Hat jemand eine Lösung für das Problem? Das muss ja anscheinend an der metre.sty-Datei liegen, die wohl einen Fehler enthält, oder? :?

Noch so einer

Beitrag von Noch so einer »

Die Ursache des Problems. metre verwendet ein \relsize{-10}. Allerdings funktionieren offenbar bei \relsize nach dem Laden von metre nur noch Argumente bis -3:
\documentclass{article}
\usepackage{metre}

\begin{document}
\begingroup\relsize{-1}-1\endgroup

\begingroup\relsize{-2}-2\endgroup

\begingroup\relsize{-3}-3\endgroup

\begingroup\relsize{-4}-4\endgroup

\begingroup\relsize{-5}-5\endgroup

\begingroup\relsize{-6}-6\endgroup
\end{document}
Das Problem scheint aber an metre zu liegen, denn nur mit dem Paket relsize funktionieren auch kleinere Werte:
\documentclass{article}
\usepackage{relsize}

\begin{document}
\begingroup\relsize{-1}-1\endgroup

\begingroup\relsize{-2}-2\endgroup

\begingroup\relsize{-3}-3\endgroup

\begingroup\relsize{-4}-4\endgroup

\begingroup\relsize{-5}-5\endgroup

\begingroup\relsize{-6}-6\endgroup

\begingroup\relsize{-10}-10\endgroup
\end{document}
Demnach scheint metre relsize ins Handwerk zu pfuschen. Du solltest einen Bugreport an den Autor von metre schicken.

Die Ursache ist, dass metre in einem Anfall von üblem Hack \rs@rsize@warning, eine interne Anweisung von relsize, inkompatibel umdefiniert. Wenn man diese Umdefinierung beseitigt, funktioniert es:
\documentclass{article}
\usepackage{relsize}
\makeatletter
\let\saved@rs@size@warning\rs@size@warning
\makeatother
\usepackage{metre}
\makeatletter
\let\rs@size@warning\saved@rs@size@warning
\makeatother

\begin{document}
\begin{metrica}
n\=om\-in\-a, d\=ic \=ips\=os; n\-equ\itie[0.5]{e \-e}n\=im
g\-en\-er\=os\-i\-or \=umqu\-am
\end{metrica}
\end{document}
Wenn ein Paketautor so eine Umdefinierung von internen Anweisungen anderer Pakete vornimmt, sollte er zuvor wenigstens prüfen, ob die ursprüngliche Definition noch den Erwartungen entspricht und ggf. entweder einen Fehler oder eine Warnung ausgeben. Leider hat der metre-Autor diese Grundregel nicht beachtet.

voyage200
Forum-Newbie
Forum-Newbie
Beiträge: 5
Registriert: Di 17. Dez 2013, 18:46

Beitrag von voyage200 »

Hi Noch so einer,

Vielen Dank für die schnelle Antwort! Ich werden deinen Rat befolgen und dem Autor mal eine Nachricht schreiben. Zur Not Hilft ja aber auch dein Beispiel. Danke auch dafür. :wink:

Gruß,
voyage200

Noch so einer

Beitrag von Noch so einer »

BTW: Ohne Dein sehr passendes vollständiges Minimalbeispiel hätte ich keinerlei Ansatz gehabt, um den Fehler aufzuspüren. Du hast selbst also einen großen Anteil an der Lokalisierung des Problems.

Antworten