PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Querverweise in Lyx



battlepope
22-02-2012, 10:48
Hallo zusammen,
ich verfasse gerade eine größere Arbeit mit Lyx und bin auf ein Problem bei den Querverweisen gestoßen.
Ich nutze das Thesis-Template, das mit Lyx mitkommt.

Wenn ich einen Querverweis einfüge, der auf eine Marke in einem Abschnitt verweist, dann wird mir nicht nur die Gliederungszahl, also zB 2 angezeigt, sondern "Abschnitt 2".
Das ist erstmal kein Problem. Doof wirds wenn man auf Marken in Unterabschnitten verweist. Da kommt dann sowas wie "Unterunterabschnitt 2.2.1.1" raus.

Wie kann ich Lyx beibringen, dass er mir nur die Zahl, und nicht noch "Unterabschnitt" davor, ausgeben soll?

Danke für eure Hilfe im Voraus.
Gruß,
Simon

bobmalaria
22-02-2012, 11:08
hi,

in meinem lyx gibt es kein thesis-template, deshalb kann ich nicht wirklich nachsehen. lass dir mal den code in lyx anzeigen. klicke unten rechts auf "complete source". schau dir deine querverweise an und pruefe ob sie mit \autoref{key} gesetzt werden oder ob ein paket wie z.b. fancyref geladen wird.

gruss

battlepope
22-02-2012, 11:10
Hi, danke für deine Antwort. Wenn du möchtest kann ich das template zippen und anhängen. Liegt bei mir unter ../Resources/templates/thesis.
Querverweise werden bei mir mit \ref{Marke} gesetzt.

battlepope
28-02-2012, 13:50
Keiner sonst eine Idee? Konnte das Problem leider immer noch nicht lösen

Festus
28-02-2012, 14:04
Dann wird von diesem Template irgendwas umdefiniert:

Der folgende Code ergibt einen Verweis auf '1', nicht 'Kapitel 1' oder so.


\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage[ngerman]{babel}
\begin{document}
\chapter{Test}
\label{sec:CTest}
\section{Test}
\label{sec:STest}
Verweisen wir mal ganz normal auf \ref{sec:CTest}.
\end{document}

Vermutlich definiert dieses Template irgendwas um. Kannst du dir in Lyx anzeigen lassen, welche Pakete eingebunden werden? Oder steht da irgendwo ein \renewcommand{\ref}...?

rstuby
28-02-2012, 14:12
Du musst uns schon ordentlich Informationen an die Hand geben, damit wir dir helfen können. Kürze dein Dokument so weit es geht zusammen (aber so, dass das Problem noch sichtbar ist).
Dann öffne Dokument-Einstellungen-LaTeX-Vorspann und kommentiere dort Zeilen \usepackage{...} und Einstellungen von \makeatletter bis \makeatother aus und probiere jedes Mal, ob das Dokument a) noch läuft und b) den Fehler noch aufweist.

Dann exportiere es als .tex, öffne es in einem normalen Texteditor und kopiere es mit copy&paste vollständig hier ins Forum, wozu du die [ CODE]...[ /CODE] Umgebung (#-Zeichen in der Formatierungsleiste) benutzt. Dann haben wir ein lauffähiges .tex-Dokument, das hoffentlich klein ist und nicht zu viele irrelevante Pakete lädt und nicht zu viele irrelevante Einstellungen vornimmt und das wir in unseren Editoren kompilieren können - und dann Änderungsideen ausprobieren.
Die nächste Frage ist dann natürlich, wie diese Änderungen in LyX zu bewerkstelligen sind, aber da sehe ich eigentlich recht gute Chancen.

battlepope
28-02-2012, 14:14
Hi,
danke für eure Antworten.
Ich werd versuchen ein Minimalbeispiel herzustellen.

battlepope
28-02-2012, 14:24
Anbei der Latex-Code. Der Fehler tritt noch auf. Hab ne ganze Menge raus geschmissen, hoffe das ist kurz genug


\documentclass[12pt,a4paper,ngerman,intoc,bibliography=totoc,inde x=totoc,liststotoc,BCOR10mm,captions=tableheading, titlepage,fleqn]{scrbook}
\usepackage{lmodern}
\renewcommand{\sfdefault}{lmss}
\renewcommand{\ttdefault}{lmtt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{luainputenc}
\usepackage{fancyhdr}
\pagestyle{fancy}
\setcounter{secnumdepth}{3}
\setlength{\parskip}{\medskipamount}
\setlength{\parindent}{0pt}
\usepackage{babel}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[unicode=true,pdfusetitle,
bookmarks=true,bookmarksnumbered=true,bookmarksope n=true,bookmarksopenlevel=1,
breaklinks=false,pdfborder={0 0 0},backref=false,colorlinks=false]
{hyperref}
\hypersetup{
pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false}

\makeatletter

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands.
\pdfpageheight\paperheight
\pdfpagewidth\paperwidth


\@ifundefined{date}{}{\date{}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
% increase link area for cross-references and autoname them
\AtBeginDocument{\renewcommand{\ref}[1]{\mbox{\autoref{#1}}}}
\newlength{\abc}
\settowidth{\abc}{\space}




% avoid that floats are placed above its sections
\let\mySection\section\renewcommand{\section}{\sup pressfloats[t]\mySection}

\makeatother

\begin{document}

\chapter{Ein Kapitel\label{4}}


\section{Ein Abschnitt\label{1}}


\subsection{Ein Unterabschnitt\label{2}}


\subsubsection{Ein Unterunterabschnitt\label{3}}

Verweis auf ein Kapitel:\ref{4}

Verweis auf einen Abschnitt:\ref{1}

Verweis auf einen Unterabschnitt: \ref{2}

Verweis auf einen Unterunterabschnitt: \ref{3}
\end{document}

LuPi
28-02-2012, 14:32
Wenn Du diese Zeile auskommentierst


%\AtBeginDocument{\renewcommand{\ref}[1]{\mbox{\autoref{#1}}}}


läuft es wieder 'normal'.

P. S.: \subsubsection wird regulär nicht numeriert. Daher geht der entsprechende
Verweis auf den Unterabschnitt. Wenn Du diese Ebene auch numeriert haben
möchtest (ist Geschmackssache, wenn Du nicht gerade Jurist bist), schau Dir
mal secnumdepth an.

battlepope
28-02-2012, 14:37
In der Tat. Wieder was gelernt. Ein Nachteil bei Lyx. Alles was über die Standardfunktionalität rausgeht versteht man erstmal nicht. Werde jetzt wohl tiefer in die Materie einsteigen und auf TeXworks umziehen.

Danke euch!