使用预定义的非字母顺序索引列表按时间顺序进行索引

使用预定义的非字母顺序索引列表按时间顺序进行索引

在我的文档中,我需要使用该包,imakeidx因为我需要两个索引。我喜欢定义一个列表(如果可能的话,直接在序言中),该列表按以下非字母顺序列出索引条目:

Lukas\\ 
Johannes\\  
Römer\\
1. Korinther\\
2. Korinther\\ 
Galater\\
1. Johannes\\
2. Johannes\\

备注:此列表中的元素并未全部被使用。

需要非字母顺序排列是因为上面的条目是所谓的圣经书籍,这些书籍是按照特定结构在圣经中按时间顺序列出的,而不是按字母顺序排列。

我想要与非字母列表一起使用的代码:

\documentclass[a4paper,latin,fontsize=11pt,headsepline,parskip=half-,index=totoc,BCOR=5mm,DIV=15]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{babel}
\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{3}
\usepackage[normalem]{ulem}
\usepackage{fancybox,calc,etoolbox,lipsum,multicol}
\usepackage[osf,sc]{mathpazo}
\usepackage[intoc]{nomencl}
\renewcommand{\nomname}{Glossar}
\makenomenclature
\usepackage{scrlayer-scrpage}% scrpage2 is obsolete
  \pagestyle{scrheadings}
  \clearpairofpagestyles% \clearscrheadings, \clearscrplain are deprecated
  \automark[chapter]{chapter}
  \ihead[]{\headmark}
  \ohead[\pagemark]{\pagemark}
  \renewcommand*\partpagestyle{empty} % removes the pagenumbers of all part pages
\usepackage{imakeidx} % must always be loaded before the hyperref package, otherwise it can cause problems!
\makeindex[name=stichwort,title=Stichwortverzeichniss,options=-s ./main]
\makeindex[name=bibel,title=Bibelstellen,options=-s ./main]

\usepackage[colorlinks,pdfpagelabels,pdfstartview = FitH,bookmarksopen = true,bookmarksnumbered = true,linkcolor = black,plainpages = false,hypertexnames = false,citecolor = black] {hyperref}

\title{Einführung}
\author{Autor}
\date{1.Oktober 2014}

\newcommand{\nobreakword}[1]{\mbox{#1}}

\makeatletter
  \def\@idxitem{\par\addvspace{10\p@ \@plus 5\p@ \@minus 3\p@}\hangindent 40\p@}
  \def\subitem{\par\hangindent 40\p@ \hspace*{20\p@}}
  \def\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}}
  \def\indexspace{}
  \patchcmd\theindex{\indexname}{\indexname\vspace{12pt}}{}{}
\makeatother

% glossar
\renewcommand{\nompreamble}{\vspace*{-3mm}...Introducing Thoughts...\vspace*{4mm}} %text before glossar!
\makenomenclature % is obligatory to create the glossar!
\newcommand{\auferstehungtext}{Auferstehungstext} % is used for long glossar entries!

\begin{document}

\begin{titlepage}% if you need a custom layout - otherwise, use \maketitle
  \centering
  Titelseite
\end{titlepage}

\renewcommand{\contentsname}{Inhaltsverzeichnis}
\clearpage\pdfbookmark{\contentsname}{toc}
\tableofcontents\thispagestyle{empty}

\chapter{Gottes Liebe zu den Menschen(Seine Geschöpfe)}

\begin{flushright}\footnotesize\textit{ursprünglicher Beitrag vom 6. April 2014 überarbeitet}\end{flushright}

The text in the index

\doublebox{\begin{minipage}[t]{1\columnwidth}%
    "Denn so hat Gott die Welt geliebt, dass er seinen eingeborenen Sohn gab, damit jeder, der an ihn glaubt, nicht verloren geht, sondern ewiges Leben hat." \index[bibel]{Johannes!Johannes 3,16}\nobreakword{(Johannes 3,16)}%
    \end{minipage}}

    \section*{Gottes Liebe zu den Menschen}

    "Und wir haben die Liebe erkannt und geglaubt, die Gott zu uns hat. Gott ist Liebe, und wer in der Liebe bleibt, der bleibt in Gott und Gott in ihm" \index[bibel]{1. Johannes!1. Johannes 4,16}\nobreakword{(1. Johannes 4,16)}
    \index[stichwort]{Wachstum im Glauben!Glaube}

    "Der HERR ist mir erschienen von ferne: Ich habe dich je und je geliebt, darum habe ich dich zu mir gezogen aus lauter Güte."
    (Jeremia 31,3)

    "Denn so hat Gott die Welt geliebt, dass er seinen eingeborenen Sohn gab, damit jeder, der an ihn glaubt, nicht verloren geht, sondern ewiges Leben hat." \index[bibel]{Johannes!Johannes 3,16}\nobreakword{(Johannes 3,16)}

    "Gott aber erweist seine Liebe zu uns darin, dass Christus, als wir noch Sünder waren, für uns gestorben ist." \index[bibel]{Römer!Römer 5,8}\nobreakword{(Römer 5,8)}

    "Du kennst die Gebote: »Du sollst nicht töten; du sollst nicht ehebrechen; du sollst nicht stehlen; du sollst nicht falsch
    Zeugnis reden; du sollst niemanden berauben; ehre Vater und Mutter.« Er aber sprach zu ihm: Meister, das habe ich alles gehalten von meiner Jugend auf. Und Jesus sah ihn an und gewann ihn lieb und sprach zu ihm: Eines fehlt dir. Geh hin, verkaufe alles, was du hast, und gib's den Armen, so wirst du einen Schatz im Himmel haben, und komm und folge mir nach!" \index[bibel]{Markus!Markus 10,19-21}\nobreakword{(Markus 10,19-21)}
    \index[stichwort]{Lebensveränderung!Reden/Schweigen}

    "Gnade, Barmherzigkeit, Friede von Gott, dem Vater, und von Jesus Christus, dem Sohn des Vaters, sei mit uns in Wahrheit und in Liebe!" \index[bibel]{2. Johannes!2. Johannes 1,3}\nobreakword{(2. Johannes 1,3)}


    \section*{Liebe unter den Menschen}

    "Furcht ist nicht in der Liebe, sondern die vollkommene Liebe treibt die Furcht aus; denn die Furcht rechnet mit Strafe. Wer
    sich aber fürchtet, der ist nicht vollkommen in der Liebe. Lasst uns lieben, denn er hat uns zuerst geliebt. Wenn jemand spricht: Ich liebe Gott, und hasst seinen Bruder, der ist ein Lügner. Denn wer seinen Bruder nicht liebt, den er sieht, der kann nicht Gott lieben, den er nicht sieht. Und dies Gebot haben wir von ihm, dass, wer Gott liebt, dass der auch seinen Bruder liebe." \index[bibel]{1. Johannes!1. Johannes 4,18-21}\nobreakword{(1. Johannes 4,18-21)}
    \index[stichwort]{Lebensveränderung!Nächstenliebe}

    "Daran wird jedermann erkennen, dass ihr meine Jünger seid, wenn ihr Liebe untereinander habt." \index[bibel]{Johannes!Johannes 13,35}\nobreakword{(Johannes 13,35)}

    "Wie mich mein Vater liebt, so liebe ich euch auch. Bleibt in meiner Liebe!" \index[bibel]{Johannes!Johannes 15,9}\nobreakword{(Johannes 15,9)}

    "Ich beschwöre euch, ihr Töchter Jerusalems: Erregt und erweckt nicht die Liebe, Bis es ihr gefällt!" \index[bibel]{Hoheslied!Hoheslied 8,4}\nobreakword{(Hoheslied 8,4)}

    "Alle eure Dinge lasst in der Liebe geschehen!"
    (1. Korinther 16,14)

    "Die Frucht des Geistes aber ist Liebe, Freude, Friede,Langmut, Freundlichkeit, Güte, Treue, Sanftmut, Selbstbeherrschung."
    (Galater 5,22)

    \index[stichwort]{Bleibendes!Liebe}
    \index[stichwort]{Lebensveränderung!Freude}\index[stichwort]{Lebensveränderung!Friede}
    \index[stichwort]{Lebensveränderung!Freundlichkeit}
    \index[stichwort]{Begriffe!Treue}


\addtocontents{toc}{\textbf{\sffamily \textcolor{white}{.}}\protect\par} %gives an empty line between Appendy and last chapter
\shorthandon{"}

\cleardoublepage
\thispagestyle{empty}
\vspace*{\fill}
\begin{center}
    \Huge Anhang
    \addtocontents{toc}{%
        \protect\addvspace{0.5pc}% <------------- adjust to suit
        \textbf{\sffamily Anhang}\protect\par
    }
\end{center}
\vspace*{\fill}
\clearpage


\nomenclature{Begriff2}{Begriffserklärung2}
\nomenclature{Begriff3}{Begriffserklärung3}
% Glossar (define specifications and introducing text in preamble)
\printnomenclature[2.5 cm] % width of first column

% Index (define specifications and introducing text here)


\printindex[bibel]

\clearpage
\printindex[stichwort]

\end{document}

我知道我的代码并不完美(我使用了拉丁语,因为使用 \shorthandoff{"} 加载 \usepackage[babel]{ngerman} 不起作用)。但是,此代码在我的 TeXstudio 编辑器中可以使用:( pdflatex -synctex=1 -interaction=nonstopmode %.tex|makeindex %.nlo -s nomencl.ist -o %.nls -t %.nlg|pdflatex -synctex=1 -interaction=nonstopmode %.tex|"C:/Program Files (x86)/Adobe/Reader 11.0/Reader/AcroRd32.exe" %.pdf 每次翻译后关闭 PDF 查看器时,它都可以正常工作)

这个问题是我的旧问题的延续: 如何将文本放在一行的圆括号内,并使用预定义的索引搜索键将其添加到第二个索引中?

答案1

您可以使用数字定义非标准排序,使用@语法;我使用圣经索引命令解决了这个问题,其第一个参数是书名的缩写,第二个参数是诗句。

我已经从以下代码中删除了所有不必要的部分。您必须提供完整的圣经书籍列表(至少是那些您引用的书籍)。

\documentclass[
  a4paper,
  fontsize=11pt,
  headsepline,
  parskip=half-,
%  index=totoc,
  BCOR=5mm,
DIV=15]{scrreprt}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\usepackage{imakeidx}
\makeindex[name=stichwort,title=Stichwortverzeichniss,intoc]
\makeindex[name=bibel,title=Bibelstellen,intoc]

\usepackage[
  colorlinks,
  pdfpagelabels,
  pdfstartview = FitH,
  bookmarksopen = true,
  bookmarksnumbered = true,
  linkcolor = black,
  plainpages = false,
  hypertexnames = false,
  citecolor = black
] {hyperref}

\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{3}

\newcommand{\nobreakword}[1]{\mbox{#1}}

\makeatletter
  \def\@idxitem{\par\addvspace{10\p@ \@plus 5\p@ \@minus 3\p@}\hangindent 40\p@}
  \def\subitem{\par\hangindent 40\p@ \hspace*{20\p@}}
  \def\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}}
  \def\indexspace{}
  \patchcmd\theindex{\indexname}{\indexname\vspace{12pt}}{}{}
\makeatother

\makeatletter
\def\book@Mar{1@Markus!Markus}
\def\book@Luk{2@Lukas!Lukas}
\def\book@Joh{3@Johannes!Johannes}
\def\book@Rom{4@\detokenize{Römer}!\detokenize{Römer}}
\@namedef{book@1Kor}{5@1. Korinther!1. Korinther}
\@namedef{book@2Kor}{6@2. Korinther!2. Korinther}
\def\book@Gal{7@Galater!Galater}
\@namedef{book@1Joh}{8@1. Johannes!1. Johannes}
\@namedef{book@2Joh}{9@2. Johannes!2. Johannes}
\newcommand{\bibelindex}[2]{\index[bibel]{\@nameuse{book@#1}, #2}}
\makeatother

\title{Einführung}
\author{Autor}
\date{1.Oktober 2014}

\begin{document}

\tableofcontents

\chapter{Gottes Liebe zu den Menschen (Seine Geschöpfe)}

"`Denn so hat Gott die Welt geliebt, dass er seinen eingeborenen Sohn gab,
damit jeder, der an ihn glaubt, nicht verloren geht, sondern ewiges Leben hat."'%
\bibelindex{Joh}{3,16} \nobreakword{(Johannes 3,16)}

\section*{Gottes Liebe zu den Menschen}

"`Und wir haben die Liebe erkannt und geglaubt, die Gott zu uns hat. Gott ist 
Liebe, und wer in der Liebe bleibt, der bleibt in Gott und Gott in ihm"'%
\bibelindex{1Joh}{4,16} \nobreakword{(1. Johannes 4,16)}%
\index[stichwort]{Wachstum im Glauben!Glaube}

"`Der HERR ist mir erschienen von ferne: Ich habe dich je und je geliebt, 
darum habe ich dich zu mir gezogen aus lauter Güte."' (Jeremia 31,3)

"`Denn so hat Gott die Welt geliebt, dass er seinen eingeborenen Sohn gab, 
damit jeder, der an ihn glaubt, nicht verloren geht, sondern ewiges Leben 
hat."'\bibelindex{Joh}{3,16} \nobreakword{(Johannes 3,16)}

"`Gott aber erweist seine Liebe zu uns darin, dass Christus, als wir noch 
Sünder waren, für uns gestorben ist."'\bibelindex{Rom}{5,8}
\nobreakword{(Römer 5,8)}

"`Du kennst die Gebote: »Du sollst nicht töten; du sollst nicht ehebrechen; 
du sollst nicht stehlen; du sollst nicht falsch Zeugnis reden; du sollst 
niemanden berauben; ehre Vater und Mutter.« Er aber sprach zu ihm: Meister, 
das habe ich alles gehalten von meiner Jugend auf. Und Jesus sah ihn an und 
gewann ihn lieb und sprach zu ihm: Eines fehlt dir. Geh hin, verkaufe alles, 
was du hast, und gib's den Armen, so wirst du einen Schatz im Himmel haben, 
und komm und folge mir nach!"'%
\bibelindex{Mar}{10,19-21}\nobreakword{(Markus 10,19-21)}%
\index[stichwort]{Lebensveränderung!Reden/Schweigen}

\index[stichwort]{Bleibendes!Liebe}
\index[stichwort]{Lebensveränderung!Freude}\index[stichwort]{Lebensveränderung!Friede}
\index[stichwort]{Lebensveränderung!Freundlichkeit}
\index[stichwort]{Begriffe!Treue}

% Index (define specifications and introducing text here)

\printindex[bibel]

\printindex[stichwort]

\end{document}

这是生成的索引。

在此处输入图片描述

相关内容