Schriftartproblem bei Verwendung von mehrseitigem Code (geprägt)

Schriftartproblem bei Verwendung von mehrseitigem Code (geprägt)

Um mehrseitige Auflistungen hinzuzufügen, codewird die Umgebung verwendet. Der erste Seitenzahlenstil verwendet eine Monoschriftart. Der zweite Seitenzahlenstil verwendet eine Serifenschriftart. Ich brauche die Serifenschriftart für alle Seiten. Wo ist mein Fehler?

MWE:

% !TeX program = lualatex
% !TeX encoding = utf-8
%-----------------
\documentclass[oneside]{book}
\usepackage{polyglossia}
%-----------------
\setdefaultlanguage[spelling=modern]{russian}
\setotherlanguage{english}
\setmonofont{Courier New}
\newfontfamily\cyrillicfonttt[Script=Cyrillic]{Courier New}[Scale=0.976]
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{Times New Roman}
\newfontfamily\cyrillicfont{Times New Roman}[Scale=0.976]
\linespread{1.464}
%-----------------
\usepackage{lipsum}
%-----------------
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[C]{\thepage}
\renewcommand{\headrule}{}
\fancypagestyle{plain}{
    \fancyhead[C]{\thepage}
}
%-----------------
\usepackage[singlelinecheck=false]{caption}
%-----------------
\usepackage[newfloat]{minted}
\usemintedstyle{xcode}
\setminted{xleftmargin=0.5cm, linenos, numbersep=5pt, breaklines, breakanywhere, frame=single, framesep=1ex,  fontsize=\small}
%
\newenvironment{code}{\captionsetup{type=listing, belowskip=-14pt plus 2pt minus 2pt}}{}
\SetupFloatingEnvironment{listing}{name=сode}
\AtBeginEnvironment{code}{\vspace{28pt plus 2pt minus 2pt}}
%-----------------
\begin{document}
Listing usage example:
\begin{code}
    \caption{Listing foo (code) \thelisting}
    \inputminted{tex}{\jobname.tex}
\end{code}
\end{document}

Bildbeschreibung hier eingeben

Vielen Dank im Voraus.

Antwort1

Der Seitenkopf wird gesetzt, während die entsprechende Wortumgebung \inputmintedvorbereitet wird, sodass der Kopf in einer Monospace-Schriftart erstellt wird.

Das Deklarieren \normalfont\thepagesollte funktionieren, es gibt jedoch Komplikationen polyglossiaund ist in diesem Fall \cyrillicfontnicht erforderlich.

\documentclass[oneside]{book}
\usepackage{polyglossia}
\usepackage{fancyhdr}
\usepackage[singlelinecheck=false]{caption}
\usepackage[newfloat]{minted}

\usepackage{lipsum}

\setdefaultlanguage[spelling=modern]{russian}
\setotherlanguage{english}

\setmainfont{Times New Roman}
\setmonofont{Courier New}
\newfontfamily\cyrillicfont{Times New Roman}[
%  Scale=0.976
]
\newfontfamily\cyrillicfonttt{Courier New}[
  Script=Cyrillic,
  Scale=0.976
]

\fancyhf{}
\fancyhead[C]{\cyrillicfont\thepage}
\renewcommand{\headrulewidth}{0pt}% <--- not \headrule
\pagestyle{fancy}

\usemintedstyle{xcode}
\setminted{
  xleftmargin=0.5cm,
  linenos,
  numbersep=5pt,
  breaklines,
  breakanywhere,
  frame=single,
  framesep=1ex,
  fontsize=\small,
}

\newenvironment{code}
  {\captionsetup{type=listing, belowskip=-14pt plus 2pt minus 2pt}}
  {}
\SetupFloatingEnvironment{listing}{name=сode}
\AtBeginEnvironment{code}{\vspace{28pt plus 2pt minus 2pt}}

\linespread{1.464}

\begin{document}

Listing usage example:
\begin{code}
    \caption{Listing foo (code) \thelisting}
    \inputminted{tex}{\jobname.tex}
\end{code}

\end{document}

Ich würde verwenden babel. Wie auch immer, ich habe Ihre Präambel umgestaltet, um zuerst Pakete und später Einstellungen zu erhalten. Überprüfen Sie die kleinen Änderungen, die auf Einheitlichkeit, aber nicht nur, vorgenommen wurden.

Bildbeschreibung hier eingeben

Mit babelgibt es kein Problem.

\documentclass[oneside]{book}
\usepackage[main=russian,english]{babel}
\usepackage{fancyhdr}
\usepackage[singlelinecheck=false]{caption}
\usepackage[newfloat]{minted}

\usepackage{lipsum}

\babelfont{rm}{Times New Roman}
\babelfont{sf}[Scale=MatchLowercase]{Arial}
\babelfont{tt}[Scale=0.976]{Courier New}

\fancyhf{}
\fancyhead[C]{\thepage}
\renewcommand{\headrule}{}
\pagestyle{fancy}

\usemintedstyle{xcode}
\setminted{
  xleftmargin=0.5cm,
  linenos,
  numbersep=5pt,
  breaklines,
  breakanywhere,
  frame=single,
  framesep=1ex,
  fontsize=\small,
}

\newenvironment{code}
  {\captionsetup{type=listing, belowskip=-8pt plus 2pt minus 2pt}}
  {}
\SetupFloatingEnvironment{listing}{name=сode}
\AtBeginEnvironment{code}{\vspace{28pt plus 2pt minus 2pt}}

\linespread{1.464}

\begin{document}

Listing usage example:
\begin{code}
    \caption{Listing foo (code) \thelisting}
    \inputminted{tex}{\jobname.tex}
\end{code}

\end{document}

verwandte Informationen