Problem mit beamer und dvipsnames in LyX

Editoren wie TexWorks, TeXmaker, TeXstudio, TeXnicCenter, Kile, LyX, vi, Emacs und Co.


regenpfeifer
Forum-Newbie
Forum-Newbie
Beiträge: 7
Registriert: Sa 11. Jun 2022, 23:44

Problem mit beamer und dvipsnames in LyX

Beitrag von regenpfeifer »

Hallo,

ich habe in LyX ein Problem mit beamer und dvipsnames, um damit Farboptionen für das beamer-Theme zu setzen.

In "reinem" TeX konnte ich das Problem, das offenbar durch einen Bug in beamer verursacht wird, durch Einfügen von
\RequirePackage[dvipsnames]{xcolor}
lösen, vgl.: viewtopic.php?f=22&t=24520

In Lyx habe ich dazu unter "LaTeX-Vorspann" folgendes definiert:
\RequirePackage[dvipsnames]{xcolor}
\usetheme{Malmoe}
\usecolortheme[named=RoyalBlue]{structure}
\useinnertheme{circles}
\usefonttheme{serif}
Leider erhalte ich damit aber trotzdem diese Fehlermeldung:
! Package xcolor Error: Undefined color `beamer@structure@color'.
Wenn ich die LyX-Datei in TeX exportiere, erhalte ich folgenden Code:
%% LyX 2.3.6 created this file.  For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass[ngerman,xcolor=dvipsnames]{beamer}
\usepackage{mathptmx}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{amssymb}

\makeatletter
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
% this default might be overridden by plain title style
\newcommand\makebeamertitle{\frame{\maketitle}}%
% (ERT) argument for the TOC
\AtBeginDocument{%
  \let\origtableofcontents=\tableofcontents
  \def\tableofcontents{\@ifnextchar[{\origtableofcontents}{\gobbletableofcontents}}
  \def\gobbletableofcontents#1{\origtableofcontents}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
\RequirePackage[dvipsnames]{xcolor}

\usetheme{Malmoe}
\usecolortheme[named=RoyalBlue]{structure}
\useinnertheme{circles}
\usefonttheme{serif}

\usepackage{blindtext}

\makeatother

\usepackage{babel}
\usepackage[style=din]{biblatex}
\addbibresource{\string"/home/hermannjosef/Eigene Dokumente/Literatur/Gesamte Bibliothek.bib\string"}
\begin{document}
\title[Kurzversion des Titels]{Titel}
\subtitle{Untertitel}
\author{Hermann J. Eckl}
\institute[Institution]{Institution 1\\
Institution 2}
\date[VER \today]{Veranstaltung \today}

\makebeamertitle

%\pgfdeclareimage[height=0.5cm]{institution-logo}{institution-logo-filename}
%\logo{\pgfuseimage{institution-logo}}

%\beamerdefaultoverlayspecification{<+->}
\begin{frame}

\frametitle<presentation>{Übersicht}

\tableofcontents{}
\end{frame}

\section{Einführung}

\subsection{Erster Aspekt}
\begin{frame}[<+->]{Überschrift}


\framesubtitle{Untertitel (optional)}
\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\subsection{Zweiter Aspekt}
\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\section{Hauptteil}

\subsection{Erster Aspekt}
\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\subsection{Zweiter Aspekt}
\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\section*{Zusammenfassung}
\begin{frame}{Zusammenfassung}

\begin{itemize}
\item Die \alert{erste Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
\item Die \alert{zweite Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
\item Die \alert{dritte Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
\end{itemize}

\medskip{}

\begin{itemize}
\item Ausblick

\begin{itemize}
\item Erste offene Frage
\item Zweite offene Frage
\end{itemize}
\end{itemize}
\end{frame}

\appendix

\section{Anhang}

\begin{frame}

\frametitle<presentation>{Literatur}

\newblock 
\end{frame}

\end{document}
Es zeigt sich, dass die Anweisung
\RequirePackage[dvipsnames]{xcolor}
ganz zu Beginn der LyX-Datei stehen müsste.

Gibt es eine Möglichkeit, wie ich LyX dies beibringen könnte?

regenpfeifer
Forum-Newbie
Forum-Newbie
Beiträge: 7
Registriert: Sa 11. Jun 2022, 23:44

Re: Problem mit beamer und dvipsnames in LyX

Beitrag von regenpfeifer »

Ich habe mittlerweile ausprobiert, die Anweisung
\RequirePackage[dvipsnames]{xcolor}
mit einem Texteditor direkt in die LyX-Datei zu schreiben. Ich erhalte dann einen Beginn der Lyx-Datei dieser Art:
#LyX 2.3 created this file. For more info see http://www.lyx.org/
\lyxformat 544
\begin_document
\begin_header
\save_transient_properties true
\origin unavailable
\textclass beamer
\begin_preamble
\RequirePackage[dvipsnames]{xcolor}
\usetheme{Malmoe}
% Copenhagen: mit Rahmen
% JuanLesPins: schattierter Rahmen (outer theme auf split setzen)
% Malmoe: ohne Rahmen
\usecolortheme[named=RoyalBlue]{structure}
Leider bringt auch das nichts LyX kann die veränderte Datei fehlerfrei öffnen, die Anweisung
\RequirePackage[dvipsnames]{xcolor}
hat aber hier leider keine Wirkung.

Das sieht nicht gut aus. Wenn jemand dennoch noch eine Idee hat, wie man LyX beibringen könnte, die Anweisung zu verarbeiten, freue ich mich natürlich!

ich meine ja nur

Re: Problem mit beamer und dvipsnames in LyX

Beitrag von ich meine ja nur »

Ich würde ja eher zu einem Update raten.Denn mit aktuellen TeX Live und damit aktuellem beamer funktioniert:
%% LyX 2.3.6 created this file.  For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass[ngerman,xcolor=dvipsnames]{beamer}
\usepackage{mathptmx}
\usepackage[T1]{fontenc}
%\usepackage[latin9]{inputenc}% Der Online-Editor verwendet sinnvoller Weise utf8, weshalb diese Zeile einen Fehler produziert.
\usepackage{amssymb}

\makeatletter
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
% this default might be overridden by plain title style
\newcommand\makebeamertitle{\frame{\maketitle}}%
% (ERT) argument for the TOC
\AtBeginDocument{%
  \let\origtableofcontents=\tableofcontents
  \def\tableofcontents{\@ifnextchar[{\origtableofcontents}{\gobbletableofcontents}}
  \def\gobbletableofcontents#1{\origtableofcontents}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
%\RequirePackage[dvipsnames]{xcolor}% Braucht es nicht, weil Option xcolor=dvipsnames durchaus funktioniert und es ohnehin erst nach dem Laden von xcolor durch beamer käme, also komplett unsinnig ist.

\usetheme{Malmoe}
\usecolortheme[named=RoyalBlue]{structure}
\useinnertheme{circles}
\usefonttheme{serif}

\usepackage{blindtext}

\makeatother% Das kommt hier eigentlich viel zu spät.

\usepackage{babel}
%\usepackage[style=din]{biblatex}% Funktioniert nicht, weil ein biblatex-Stil din unbekannt ist.
%\addbibresource{\string"/home/hermannjosef/Eigene Dokumente/Literatur/Gesamte Bibliothek.bib\string"}% Funktioniert natürlich erst recht bei uns nicht und ist damit für ein vollständiges Minimalbeispiel totaler Unfug.
\begin{document}
\title[Kurzversion des Titels]{Titel}
\subtitle{Untertitel}
\author{Hermann J. Eckl}
\institute[Institution]{Institution 1\\
Institution 2}
\date[VER \today]{Veranstaltung \today}

\makebeamertitle

%\pgfdeclareimage[height=0.5cm]{institution-logo}{institution-logo-filename}
%\logo{\pgfuseimage{institution-logo}}

%\beamerdefaultoverlayspecification{<+->}
\begin{frame}

\frametitle<presentation>{Übersicht}

\tableofcontents{}
\end{frame}

\section{Einführung}

\subsection{Erster Aspekt}
\begin{frame}[<+->]{Überschrift}


\framesubtitle{Untertitel (optional)}
\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\subsection{Zweiter Aspekt}
\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\section{Hauptteil}

\subsection{Erster Aspekt}
\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\subsection{Zweiter Aspekt}
\begin{frame}{Überschrift}

\begin{itemize}
\item Erster Punkt
\item Zweiter Punkt
\item Dritter Punkt
\end{itemize}
\end{frame}

\section*{Zusammenfassung}
\begin{frame}{Zusammenfassung}

\begin{itemize}
\item Die \alert{erste Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
\item Die \alert{zweite Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
\item Die \alert{dritte Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
\end{itemize}

\medskip{}

\begin{itemize}
\item Ausblick

\begin{itemize}
\item Erste offene Frage
\item Zweite offene Frage
\end{itemize}
\end{itemize}
\end{frame}

\appendix

\section{Anhang}

\begin{frame}

\frametitle<presentation>{Literatur}

\newblock 
\end{frame}

\end{document}
wie man auch hier im Online-Editor feststellen kann, ohne Fehlermeldung.

Ansonsten wäre es vielleicht ganz gut, wenn du deine angeblichen vollständigen Minimalbeispiel im Online-Compiler testen würdest, damit die auch wirklich bis auf das eigentliche Problem funktionieren und nicht schon vorher mit einem anderen Fehler abbrechen. :shock:

Antworten