Problema di sorting con Imakeidx

  • Creatore
    Topic
  • #90881
    Up
    0
    Down
    ::


    Salve a tutti,
    Sembrerebbe che le voci di indice messe in corsivo (così come richiesto dalle convenzioni in uso per i nomi non latini nella diplomatica) finiscano ordinate prima di quelle in tondo.
    Come si fa a ovviare?

    Allego esempio minimo funzionante.
    Grazie!

    `\begin{filecontents}{archivio.bib}

    @book{Biz:Doc,
    Address = {Torino},
    Author = {Dina Bizzarri},
    Date-Added = {2013-07-31 14:34:36 +0200},
    Date-Modified = {2013-11-02 14:54:58 +0100},
    Number = {17},
    Publisher = {Istituto giuridico della Regia Universit{\`a}},
    Series = {Memorie dell'Istituto giuridico, Universit{\`a} di Torino, Serie 2},
    Title = {Il documento notarile guarentigiato, genesi storica e natura giuridica},
    Year = {1932}}

    @book{Ber:Reg,
    Address = {Paris},
    Author = {{\'E}lie Berger},
    Date-Added = {2013-07-25 23:50:52 +0200},
    Date-Modified = {2013-11-02 14:43:33 +0100},
    Publisher = {Ernest Thorin},
    Shorttitle = {Les Registres d'Innocent IV},
    Title = {Les Registres d'Innocent IV},
    Volume = {I-IV},
    Year = {1884-1921}}

    @article{Rei:Era,
    Author = {Bo Reicke},
    Date-Added = {2013-08-15 13:42:52 +0000},
    Date-Modified = {2013-08-15 13:44:01 +0000},
    Journal = {Theologische Zeitschrift},
    Number = {22},
    Pages = {254-265},
    Title = {Erasmus und die neutestamentliche Textgeschichte},
    Year = {1966}}

    \end{filecontents}

    %%%%%%%%%%%%%%%%%%%%%%%%%%% PREAMBOLO %%%%%%%%%%%%%%%%%%%%%%%%%%%
    \documentclass[a4paper]{report}
    \usepackage[a4paper,left=2.0cm,right=2.5cm,bindingoffset=18mm, top=2.5cm, includeheadfoot, heightrounded, bottom=2.5cm, footnotesep=0.5cm ]{geometry}
    \usepackage{comment}
    \usepackage{setspace} % Per gestire più facilmente l'interlinea
    \usepackage{fancyhdr}
    \usepackage{verbatim} % Per citazioni verbatim con caratteri speciali
    \usepackage{polyglossia} % Per le sillabazioni
    \setmainlanguage{italian}
    \setotherlanguage{latin}

    \usepackage{textcomp} % Per ottenere segni strani come la parentesi angolata larga
    \usepackage{fontspec} % Per caricare correttamente i font Garamond

    %%%%%%%%%%%%%%%%PACCHETTI E COMANDI DI NOTAZIONE%%%%%%%%%%%%%%%%%%%%%
    \usepackage{eledmac}
    \usepackage{perpage} % Per azzerare il counter delle note con lettera a ogni pagina
    \usepackage{alphalph} % Per poter andare oltre la “z” nelle note con lettera
    \MakePerPage{footnoteA} % azzera il contatore delle footnoteA (cioè le cri)
    \MakePerPage{footnoteB} % azzera il contatore delle footnoteB (cioè le com)

    \interparanoteglue{0.3cm plus .4em minus .4em} % Spazio tra una rif. e l'altra (in orizzontale)
    \addtolength{\skip\footinsA}{0.2cm} % Aggiunge spazio tra le note
    \addtolength{\skip\footinsB}{0.2cm}

    \newskip\prefootskip % the big initial skip
    \prefootskip=3.3em plus .6em minus .6em

    \setcounter{firstlinenum}{0} % Numera ogni linea a partire dalla zero
    \setcounter{linenumincrement}{10000} % Incrementa ogni 10.000 righe (per non stampare i numeri linea)

    \renewcommand{\thefootnoteA}{\alphalph{\value{footnoteA}}} % Mette note a piè di pagina contrassegnate da lettera, che va oltre la z (alphalph)
    \footparagraphX{A} % Note cri di seguito
    \foottwocolX{B} % Note com su due colonne

    \renewcommand*{\notefontsetup}{\normalsize} %%specifica la dimensione dei font per le note di 2a e 3a fascia
    \renewcommand*{\notenumfont}{\normalsize} %%specifica la dimensione dei font per i numeri di linea nelle note
    \newcommand{\notetextfont}{\normalsize}
    \renewcommand*{\numlabfont}{\normalfont\normalsize} %%specifica la dimensione dei font per i numeri di linea in margine
    \renewcommand*{\footnotesize}{\normalsize} % specifica la dimensione dei font per le footnote (1a fascia)

    \noendnotes %% no endnotes
    \setlength{\ledrsnotewidth}{4em} %% narrow sidenotes

    \newcounter{para} % Definisce un contatore che contenga i numeri dei capoversi
    \newcommand{\newpar}{\refstepcounter{para} % Queste due righe per numerare i capoversi
    \centerline{{\bfseries\Large\arabic{para}.\vspace*{2ex}}}}
    %{\parindent}\ignorespaces}

    \newcommand\NuovoPar{\pstart\newpar} %Definisco un nuovo comando con argomenti: \pstart e \newpar
    \newcommand\FinePar{\pend\vspace{4ex}} %Definisco un nuovo environment con argomenti: \pend e \vspace{4ex}

    %%%%%%%%%%%%%%%%%%%COMANDI DI BILIOGRAFIA%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \usepackage[style=philosophy-verbose, % Stile della bibliografia con citazioni estese, nome puntato
    scauthors=true, % Maiuscoletto Nome autore
    firstinits=true,
    language=italian,
    classical=true,
    useprefix=true,
    backend=biber, % Compilare l'aux con texworks e biber (NON bibtex!)
    publocformat=locpubyear,
    inbeforejournal=true, % Mette “in” prima del titolo della rivista
    latinemph=true]{biblatex}
    %Indexing (serve per fare gli indici dei nomi)
    \usepackage[autostyle=true]{csquotes} % Per citare in altre lingue
    \bibliography{archivio} % Specifica il nome del file di bibliografia

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%INDICI%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \usepackage{imakeidx} % Creazione di indici multipli
    \usepackage[font=footnotesize]{idxlayout} % Customizza la grafica degli indici (es. in un solo paragrafo-> itemlayout=singlepar, –> RIMETTII!!!!!)
    \makeindex[title=Rogatari dei documenti, columns=1] % Genera l'indice di default.
    \makeindex[name=nomi,title=Nomi propri e di luogo, columns=1] % Genera altro indice

    \newbibmacro*{cite:authortitle}{%
    \usebibmacro{cite:citepages}%
    \global\togglefalse{cbx:fullcite}%
    \global\togglefalse{cbx:loccit}%
    \bibhypertarget{cite\the\value{instcount}}{%
    \iffieldundef{shorthand}
    {\ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}
    {\usebibmacro{cite:idem}}
    {\usebibmacro{cite:name}}%
    \usebibmacro{cite:title:authortitle}%
    \usebibmacro{cite:save}}
    {\usebibmacro{cite:shorthand}}}}

    \newbibmacro*{cite:title:authortitle}{%OK
    \ifsingletitle{\usebibmacro{cite:opcit}}{%
    \printtext[bibhyperlink]{%
    \printfield[citetitle]{labeltitle}}}}

    \DeclareCiteCommand{\shortfootcite}[\mkbibfootnote]
    {\usebibmacro{prenote}}
    {\usebibmacro{citeindex}%
    \usebibmacro{cite:authortitle}}
    {\multicitedelim}
    {\usebibmacro{cite:postnote}}

    \DeclareCiteCommand{\shortcite}
    {\usebibmacro{prenote}}
    {\usebibmacro{citeindex}%
    \usebibmacro{cite:authortitle}}
    {\multicitedelim}
    {\usebibmacro{cite:postnote}}

    \makeatletter % Da qui in poi per customizzare l'indice: “vedi” diventa “v.” e si
    \let\orig@idxitem\@idxitem %eliminano i “v.” successivi al primo
    \def\@idxitem{\multipleseetrue\orig@idxitem}
    \makeatother
    \newif\ifmultiplesee
    \renewcommand{\see}[2]{%
    \ifmultiplesee\multipleseefalse\emph{v.\@} \fi#1}

    \DeclareFieldFormat
    [article,book,inbook,incollection,inproceedings,patent,thesis,unpublished]
    {title}{\mkbibemph{#1\isdot}} % titolo in enfatico, no caporale

    \DeclareFieldFormat
    [article,book,inbook,incollection,inproceedings,patent,thesis,unpublished]
    {citetitle}{\mkbibemph{#1\isdot}} % titolo in enfatico alla 2a citazione, no caporale
    %%%%%%Aggiornamenti di stile 7 nov 2013%%%%%%%%%%

    \DeclareFieldFormat{journaltitle}{\mkbibquote{#1}} % Titolo della rivista tra caporali
    \DeclareFieldFormat[book]{volume}{#1} % Elimina “vol.” prima del numero dei volumi:
    \renewbibmacro*{series+number}{% % Questa è la macro usata da @book per trattare le serie:
    \iffieldundef{series}{}{%
    \printtext[parens]{\printfield{series}%
    \setunit*{\addspace}%
    \printfield{number}}}%
    \newunit}

    % Il driver @book opportunamente ridefinito:
    \DeclareBibliographyDriver{book}{%
    \usebibmacro{bibindex}%
    \usebibmacro{begentry}%
    \usebibmacro{author/editor+others/translator+others}%
    \setunit{\labelnamepunct}\newblock
    \usebibmacro{maintitle+title}%
    \newunit
    \iffieldundef{maintitle}
    {\printfield{volume}%
    \printfield{part}}
    {}%
    \newunit
    \printlist{language}%
    \newunit\newblock
    \usebibmacro{byauthor}%
    \newunit\newblock
    \usebibmacro{byeditor+others}%
    \newunit\newblock
    \printfield{edition}%
    \newunit
    \printfield{volumes}%
    \newunit\newblock
    \printfield{note}%
    \newunit\newblock
    \usebibmacro{publisher+location+date}%
    \newunit\newblock
    \usebibmacro{chapter+pages}%
    \newunit
    \printfield{pagetotal}%
    \newunit\newblock
    \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
    \newunit\newblock
    \usebibmacro{doi+eprint+url}%
    \newunit\newblock
    \usebibmacro{addendum+pubstate}%
    \setunit{\addsemicolon\space}\newblock
    \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
    \usebibmacro{related}}
    {}%
    \newunit\newblock
    \usebibmacro{pageref}%
    \newblock\nopunct%
    \usebibmacro{series+number}%
    \newunit\newblock
    \usebibmacro{finentry}}

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \title{File di Prova}
    \author{}
    \date{}

    %%%%%%%%%%%%%%%%%%%%%%%%%%%% INIZIO DOCUMENTO %%%%%%%%%%%%%%%%%%%%%%%%%%%
    \begin{document}
    \fontsize{12}{15} % Dimensione del Font e Interlinea in punti. (20=doppia)
    %\maketitle % Stampa il titolo
    %\tableofcontents % Stampa l'indice generale

    %%%%%%%%%%%%%%%TESTO DI PROVA%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \chapter{Risolvere problemi di sorting}
    Sembrerebbe che le voci di indice messe in corsivo (così come richiesto dalle convenzioni in uso per i nomi non latini nella diplomatica) finiscano ordinate prima di quelle in tondo. \\
    A margine noto che in questo file di esempio nonostante si richieda una colonna, il testo viene organizzato in due. \\

    Ameria\index[nomi]{Amelia, Ameria, \textit{(Terni)}}
    Amatrix\index[nomi]{Amatrix, \textit{Amatrice (Rieti)}}
    Bractinum\index[nomi]{Bractinum, \textit{Brettino (Pesaro-Urbino)}}
    Bergamo\index[nomi]{\textit{Bergamo}}
    Bevagna\index[nomi]{\textit{Bevagna (Perugia)}}
    Rieti\index[nomi]{\textit{Rieti}}
    Tortoreto\index[nomi]{\textit{Tortoreto (Teramo)}}
    Alviano\index[nomi]{Castrum Alvianum, \textit{Alviano (Terni)}}
    Grazie!
    %%%%%%%%%%%%%%%%%%%%%%%%%BIBLIOGRAFIA%%%%%%%%%%%%%%%%%%%%%%%%
    \cleardoublepage
    \nocite{*}
    \addcontentsline{toc}{chapter}{\bibname} % aggiunge la voce Bibliografia all'Indice generale
    \addcontentsline{toc}{chapter}{\indexname} % aggiunge la voce Indice dei nomi all'Indice generale
    \printbibliography %compilare prima il file .aux con TexWorks (Biber)
    \printindex % Stampa l'Indice di default
    \printindex[nomi] % Stampa l'Indice dei nomi

    \end{document}
    \endinput
    `

Visualizzazione 1 filone di risposte
  • Autore
    Risposte
    • #90882
      Up
      0
      Down
      ::


      Il tuo esempio non è precisamente minimale. La sintassi di [tt]\index[/tt] prevede il caso

      `\index{pippo@\textit{pippo}}`

      Prima di [tt]@[/tt] metti ciò che viene usato per l’ordine alfabetico.

      Ciao
      Enrico

    • #90883
      Up
      0
      Down
      ::


      Perfetto, grazie!

Visualizzazione 1 filone di risposte
  • Devi essere connesso per rispondere a questo topic.

Go to top