\U wird sowohl von fontspec als auch von semtrans definiert.
Abhilfe: Sich für eines der beiden Definitionen entscheiden. Wenn man z.B. die von fontspec behalten möchte, kann man vor dem Laden von semtrans die Definition sichern, dem semtrans-Paket vorgaukeln, \U sei noch nicht definiert, und nach dem Laden die Definition restaurieren, z.B. so:
Code:
...
\let\SavedU\U % \U sichern
\let\U\undefined % Definition von \U löschen, damit semtrans nicht mosert
\usepackage{semtrans}
\let\U\SavedU % \U restaurieren
...
Alternativ könnte man auch die andere Definition retten, indem man sie via \let in ein anderes Makro kopiert, bevor man \U restauriert, etwa:
Code:
...
\let\SavedU\U % \U sichern
\let\U\undefined % Definition von \U löschen, damit semtrans nicht mosert
\usepackage{semtrans}
\let\SemtransU\U % \U nach \SemtransU kopieren
\let\U\SavedU % \U restaurieren
...
Anschließend wäre das \U von fontspec als \U verfügbar, das \U von semtrans als \SemtransU.
Das ganze läßt sich beliebig variieren, je nachdem, welches \U du gerne unter welchem Kommando haben möchtest.
Lesezeichen