Lyx 上的章节标签问题

Lyx 上的章节标签问题

我正在使用标准书籍类在意大利语 Lyx 中创建书籍文档。

显示屏上显示的是意大利语章节标签(正确),但当我以 PDF 格式预览文档时,标签变为英文,我无法将其取出。

有人可以帮忙吗?

在此处输入图片描述

前言:

    %% LyX 2.3.2 created this file.  For more info, see http://www.lyx.org/.
    %% Do not edit unless you really know what you are doing.
    \documentclass[10pt,a4paper,oneside,italian]{book}
    \usepackage{bookman}
    \usepackage{avant}
    \usepackage{courier}
    \renewcommand{\familydefault}{\rmdefault}
    \usepackage[cp1252]{inputenc}
    \setcounter{secnumdepth}{3}
    \setlength{\parskip}{\smallskipamount}
    \setlength{\parindent}{0pt}
    \synctex=-1
    \usepackage{xcolor}
    \usepackage{pdfcolmk}
    \usepackage{amsmath}
    \usepackage[authoryear]{natbib}
    \PassOptionsToPackage{normalem}{ulem}
    \usepackage{ulem}
    \usepackage{microtype}
    
    \makeatletter
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands.
    \pdfpageheight\paperheight
    \pdfpagewidth\paperwidth
    
    \providecolor{lyxadded}{rgb}{0,0,1}
    \providecolor{lyxdeleted}{rgb}{1,0,0}
    %% Change tracking with ulem
    \DeclareRobustCommand{\lyxadded}[3]{{\color{lyxadded}{}#3}}
    \DeclareRobustCommand{\lyxdeleted}[3]{{\color{lyxdeleted}\lyxsout{#3}}}
    \DeclareRobustCommand{\lyxsout}[1]{\ifx\\#1\else\sout{#1}\fi}
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
    \numberwithin{equation}{section}
    \numberwithin{figure}{section}
    
    \@ifundefined{date}{}{\date{}}
    \makeatother
    
    \usepackage{babel}
    \begin{document}
    \pagebreak{}
    \title{\textbf{All'inizio la democrazia era diretta}\\
    \textbf{Moritz Rittinghausen}\\
    \textbf{\Large{}e la democrazia diretta nel mondo moderno}}
    \author{\pagebreak}
    
    \maketitle
    \tableofcontents{}
    
    \pagebreak{}
    
    \part*{PARTE PRIMA}
    
    \chapter{Introduzione}
    
    \section{La Germania e la democrazia: Il Vormärz più lungo}
\end{document}

答案1

这不是一个解决方案,而是快速测试的结果。

可能是使用 Lyx 是主要问题?

我尝试编译你的 MWE,但在 MiKTeX 上出现错误并失败。因此,为了定位问题,我注释掉了序言中的几乎所有内容,如下所示:

%% LyX 2.3.2 created this file.  For more info, see http://www.lyx.org/.
    %% Do not edit unless you really know what you are doing.
    \documentclass[10pt,a4paper,oneside,italian]{book}
%    \usepackage{bookman}
 %   \usepackage{avant}
%    \usepackage{courier}
%    \renewcommand{\familydefault}{\rmdefault}
%    \usepackage[cp1252]{inputenc}
%    \setcounter{secnumdepth}{3}
%    \setlength{\parskip}{\smallskipamount}
%    \setlength{\parindent}{0pt}
%    \synctex=-1
%    \usepackage{xcolor}
%    \usepackage{pdfcolmk}
%    \usepackage{amsmath}
 %   \usepackage[authoryear]{natbib}
%    \PassOptionsToPackage{normalem}{ulem}
 %   \usepackage{ulem}
 %   \usepackage{microtype}
    
%    \makeatletter
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands.
%    \pdfpageheight\paperheight
%    \pdfpagewidth\paperwidth
    
%    \providecolor{lyxadded}{rgb}{0,0,1}
%    \providecolor{lyxdeleted}{rgb}{1,0,0}
    %% Change tracking with ulem
%    \DeclareRobustCommand{\lyxadded}[3]{{\color{lyxadded}{}#3}}
%    \DeclareRobustCommand{\lyxdeleted}[3]{{\color{lyxdeleted}\lyxsout{#3}}}
%    \DeclareRobustCommand{\lyxsout}[1]{\ifx\\#1\else\sout{#1}\fi}
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
%    \numberwithin{equation}{section}
%    \numberwithin{figure}{section}
    
%    \@ifundefined{date}{}{\date{}}
 %   \makeatother
    
    \usepackage{babel}

\begin{document}
    \pagebreak{}
    \title{\textbf{All'inizio la democrazia era diretta}\\
    \textbf{Moritz Rittinghausen}\\
    \textbf{\Large{}e la democrazia diretta nel mondo moderno}}
    \author{\pagebreak}
    
    \maketitle
    \tableofcontents{}
    
    \pagebreak{}
    
    \part*{PARTE PRIMA}
    
    \chapter{Introduzione}
    
    \section{La Germania e la democrazia: Il Vormärz più lungo}
\end{document}

并且它编译成功了。以下是各个部分的屏幕截图:

在 MiKTeX 上编译

那么,也许替换 Lyx 是解决方案的一部分?序言可能会大幅增长,ONCE 内容也会增长。作为参考,在如此早期的阶段,我可能不会手动输入这么多代码行。但这只是我的工作方式……Lyx 似乎走的是一条不同的路线。

因此,目前我取消了进一步关注麻烦制造者的下一步措施,这本来是%'s逐步激活序言(即删除),直到再次报告错误。

附言:供您参考,我通过从顶部开始删除 来激活各个前导行%'s。所以基本上您的代码没问题,它会生成我之前发布的屏幕截图。

注释 #1-#4 可能与我的安装和所选选项有关。#5 但是才不是在标题页上打印日期。

正如所示,该版本在我的系统上编译。

%% LyX 2.3.2 created this file.  For more info, see http://www.lyx.org/.
    %% Do not edit unless you really know what you are doing.
    \documentclass[10pt,a4paper,oneside,italian]{book}
    \usepackage{bookman}    % #1 LaTeX Font Warning: Font shape `TU/pbk/m/n' undefined
    \usepackage{avant}
    \usepackage{courier}
    \renewcommand{\familydefault}{\rmdefault}
%    \usepackage[cp1252]{inputenc} % #2 ! Package inputenc Error: inputenc is not designed for xetex or luatex.
    \setcounter{secnumdepth}{3}
    \setlength{\parskip}{\smallskipamount}
    \setlength{\parindent}{0pt}
    \synctex=-1
    \usepackage{xcolor}
    \usepackage{pdfcolmk}
    \usepackage{amsmath}
    \usepackage[authoryear]{natbib}
    \PassOptionsToPackage{normalem}{ulem}
    \usepackage{ulem}
    \usepackage{microtype}
    
    \makeatletter
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands.
%    \pdfpageheight\paperheight % #3 ! Undefined control sequence. \pdfpageheight
%    \pdfpagewidth\paperwidth % #4 ! Undefined control sequence. \pdfpawidth
    
    \providecolor{lyxadded}{rgb}{0,0,1}
    \providecolor{lyxdeleted}{rgb}{1,0,0}
    %% Change tracking with ulem
    \DeclareRobustCommand{\lyxadded}[3]{{\color{lyxadded}{}#3}}
    \DeclareRobustCommand{\lyxdeleted}[3]{{\color{lyxdeleted}\lyxsout{#3}}}
    \DeclareRobustCommand{\lyxsout}[1]{\ifx\\#1\else\sout{#1}\fi}
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
    \numberwithin{equation}{section}
    \numberwithin{figure}{section}
    
%    \@ifundefined{date}{}{\date{}} % #5 no date on title, if active
   \makeatother
    
    \usepackage{babel}

\begin{document}
    \pagebreak{}
    \title{\textbf{All'inizio la democrazia era diretta}\\
    \textbf{Moritz Rittinghausen}\\
    \textbf{\Large{}e la democrazia diretta nel mondo moderno}}
    \author{\pagebreak}
    
    \maketitle
    \tableofcontents{}
    
    \pagebreak{}
    
    \part*{PARTE PRIMA}
    
    \chapter{Introduzione}
    
    \section{La Germania e la democrazia: Il Vormärz più lungo}
\end{document}

答案2

谢谢你的帮助。我尝试导出一个 tex 文件,编辑 babel 子句,添加 [italian]、[italiano] 等,然后将其重新导入 Lyx,但没有任何效果。然后,我碰巧更改了 Lyx 文档设置,将名为“语言包”的设置切换为“Always Babel”(在我的屏幕中:“Sempre babel”),看到问题解决了。至于意大利语的 svmono,我按照 Rich Shepard 的指示页面,你看,svmono 出现在 Lyx 书籍类别中。需要一些适应,但这已经是向人性迈出的一大步了!唯一让我睡不着觉的是,我使用了 Springer svmono 目录中数百个文件中的两个。等着看它是否会崩溃。

答案3

您的代码无法在 Linux 的 TexLive 2023 中使用 pdflatex,我正在使用这个,因为您cp1252DocumentSettings...→中设置了编码Language(或者 LyX 在您的计算机中默认设置了此编码?检查一下!)。无论如何,您确定您仍然需要此编码吗?

我不是 Windows 用户,但据我所知,utf8编码应该可以在任何当前具有现代 LaTeX 版本的操作系统上正常工作:


在此处输入图片描述


现在是uft8LaTeX 默认设置,因此代码中的修复只需删除此行:

\usepackage[cp1252]{inputenc}

不幸的是,LyX 默认强制设置编码,不幸的是,它再次不这样做utf8(可能latin9,至少在我的 Linux 中,将区域设置为LANG=es_ES.UTF-8仍然是这样)。因此,LyX 中的修复方法是通过菜单更改编码,即: DocumentSettings...LanguageEncodingdialog → Chek Other→ Select Unicode (utf8)。现在代码预览窗格必须显示不必要但无害的内容:

\usepackage[utf8]{inputenc}

现在它应该也可以在 LyX 中直接正确编译。否则,问题出在您的代码上,而不是 LyX 上,而可能是 LaTeX 安装(旧发行版、缺少软件包等...)或文件编码不是 utf8(警告:文件编码与上面的 LaTeX 设置无关inputenc。它是内部文件编码。大多数好的纯文本编辑器都会向您显示该信息,无论您是在编辑 .tex 文件还是只包含“hello”的“hello.txt”)。

相关内容