Soul und Bidi (Xelatex) vertragen sich nicht mehr

Schriftbild, Absätze und Auflistungen einstellen


soulbidi-Michael

Soul und Bidi (Xelatex) vertragen sich nicht mehr

Beitrag von soulbidi-Michael »

Hallo,

ich nutze seit "Ewigkeiten" das Paket soul in meinen Xelatex Dokumenten. Seit heute erhalte ich die Fehlermeldung "reconstruction failed"

Ich konnte den Fehler auf Bidi zurückführen. Zumindest funktioniert das Setzen wenn ich Bidi deaktivieren. Ich brauche aber beide Pakete. Ich habe gestern aktuelle updates heruntergeladen, vielleicht kommt daher das Problem. Sicher bin ich aber nicht.

Weiß jemand rat? Danke und Gruß

Michael

\documentclass{scrreprt}
\usepackage{microtype}
\usepackage{soul}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{polyglossia}
\setmainlanguage[spelling=new,babelshorthands=true]{german}
\usepackage{bidi}


\begin{document}
Dies ist ein Beispieltext! \ul{Dies ist ein Beispieltext! Dies ist ein Beispieltext! Dies ist ein Beispieltext! Dies ist ein Beispieltext!}
\end{document}

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Gast

Beitrag von Gast »

Das Problem tritt erst mit einer neuen Version von bidi auf, in der ein Bug in Verbindung mitt minipages gefixt wurde, dabei wurde aber auch eine Zeile geändert, die Dir jetzt Probleme macht.

Du kannst das temporär mit
\makeatletter
\def\bidi@RTL@everypar{\if@RTL{\setbox\z@\lastbox\beginR\ifvoid\z@\else\usebox\z@\fi}\fi}
\makeatother
lösen, bis das Problem behoben wird.
\documentclass{scrreprt}
\usepackage{microtype}
\usepackage{soul}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{polyglossia}
\setmainlanguage[spelling=new,babelshorthands=true]{german}
\usepackage{bidi}

\makeatletter
\def\bidi@RTL@everypar{\if@RTL{\setbox\z@\lastbox\beginR\ifvoid\z@\else\usebox\z@\fi}\fi}
\makeatother

\begin{document}
Dies ist ein Beispieltext! \ul{Dies ist ein Beispieltext! Dies ist ein Beispieltext! Dies ist ein Beispieltext! Dies ist ein Beispieltext!}
\end{document}
 

Noch so einer

Beitrag von Noch so einer »

Ich kann bestätigen, dass dieses Problem seit der neusten Version von bidi auftritt. Du solltest einen Bugreport schreiben. Bis das Problem behoben ist – falls es das wird, kannst Du Dir mit ulem statt soul behelfen:
\documentclass{scrreprt}
\usepackage{microtype}
\usepackage[normalem]{ulem}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{polyglossia}
\setmainlanguage[spelling=new,babelshorthands=true]{german}
\usepackage{bidi}
\providecommand*{\ul}[1]{\uline{#1}}% Bei Verwendung von ulem die soul-Anweisung \ul mit Hilfe von \uline definieren.

\begin{document}
Dies ist ein Beispieltext! \ul{Dies ist ein Beispieltext! Dies ist ein Beispieltext! Dies ist ein Beispieltext! Dies ist ein Beispieltext!}
\end{document}
Es sei außerdem darauf hingewiesen, dass Unterstreichung in der Typografie normalerweise verpönt ist. Das ist eine Auszeichnungsform, die man bei Handschriften verwendet, weil man dort keine Möglichkeit hat, durch Verwendung von Schriftattributen auszuzeichnen.

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Vafa hat eine gefixte Version erstellt, welche demnächst auf CTAN und kurz darauf auch mit TeX Live verfügbar sein sollte.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Antworten