Due problemi di «vedi» con Imakeidx (+1)

  • Creatore
    Topic
  • #86131
    Up
    0
    Down
    ::


    Buondì.
    Ho qualche problema di fine-tuning con Imekeidx. Le domande sono:

    1) Come posso sostituire il «vedi», con un «v.»? (forse se ne è già parlato sul forum ma non vedo un comando “cerca” sul forum)
    2) [più difficile] Come posso far sì che quando in una entry compaiono più «vedi» (v.) venga stampato solo il primo?
    3) Come mettere un punto alla fine di una voce?

    Esempio che racchiude tutti e tre le domande:

    Attualmente:
    notarius, vedi Pinco, vedi Pallino, vedi Mario

    Vorrei:
    notarius, v. Pinco, Pallino, Mario.

    Grazie!

Visualizzazione 7 filoni di risposte
  • Autore
    Risposte
    • #86132
      Up
      0
      Down
      ::

      Teodoro Studita” post=85591Buondì.
      Ho qualche problema di fine-tuning con Imekeidx. Le domande sono:

      1) Come posso sostituire il «vedi», con un «v.»? (forse se ne è già parlato sul forum ma non vedo un comando “cerca” sul forum)
      2) [più difficile] Come posso far sì che quando in una entry compaiono più «vedi» (v.) venga stampato solo il primo?
      3) Come mettere un punto alla fine di una voce?

      Esempio che racchiude tutti e tre le domande:

      Attualmente:
      notarius, vedi Pinco, vedi Pallino, vedi Mario

      Vorrei:
      notarius, v. Pinco, Pallino, Mario.

      Esempio minimo?

      Ciao
      Enrico

    • #86133
      Liverpool
      Partecipante
        Up
        0
        Down
        ::

        Teodoro Studita” post=85591forse se ne è già parlato sul forum ma non vedo un comando “cerca” sul forum

        [OT]
        Va’ all’indice del forum e comparirà un menù a schede in alto. L’ultima scheda è “Trova”. Fa attenzione che per impostazione predefinita la ricerca viene effettuata sui messaggi non più vecchi di un anno, ma puoi modificarlo agendo sulla casella di riepilogo.
        [/OT]

        Ciao

      • #86134
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          @Teodoro, il problema non è imakeidix, che si limita a eseguire la compilazione/trasformazione del o die file .idx in file .ind senza che l’utente debba preoccuparsi di lanciare makeindex oppure xindy oppure texindy.
          Quello che chiedi è un problema da risolvere con il file di stile dell’indice analitico (uno o più file di stile con estensione .ist); alcune cose sono contenture in macors \come \seename, e dipendono dalla classe o dal proprio preambolo; e questo ti risolve il Vedi –> v.; metterne uno solo e mettere il punot finale dipende dal/dai file .ist; forse qualche configurazione si può fare con certe impostazioni descritte nel documento da leggere con texdoc ind scritto da Cheng e Harrison; è un ottimo tutorial, ma credo che quel che chiedi sia impossibile.

        • #86135
          Up
          0
          Down
          ::

          egreg9″ post=85593

          Esempio minimo?

          Ciao
          Enrico

          Allora, ho ricreato l’esatta fattispecie del problema (trattasi della tesi di mia moglie)

          `%%%%%%%%%%%%%%%%%%%%%%%%%%% 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}
          \setotherlanguages{english,french}
          \usepackage{excludeonly}
          \usepackage{textcomp} % Per ottenere segni strani come la parentesi angolata larga
          \usepackage{fontspec} % Per caricare correttamente i font Garamond
          %\setmainfont[Ligatures=TeX]{Garamond Premier Pro} % Sceglie il Font di Studi sull'Oriente Cristiano

          %%%%%%%%%%%%%%%%PACCHETTI E COMANDI DI NOTAZIONE%%%%%%%%%%%%%%%%%%%%%
          \usepackage{ledmac}
          \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)

          \let\nota=\footnote % Nota normale, con numero, incolonnata
          \let\cri=\footnoteA % Nota con lettera
          \let\com=\footnoteB
          \let\marg=\ledrightnote % Note a margine dx, per indicare il foglio
          \let\ap=\textsuperscript % Per fare gli apici (es. recto e verso)
          \let\pasx=\textlangle % Per fare le parentesi angolate larghe
          \let\padx=\textrangle

          \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}

          %\setlength{\parindent}{0pt} %Non indenta la prima riga al di fuori dei paragrafi

          \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}

          \hbadness=10000 %non stampa nella console i messaggi Underfull hbox
          \vbadness=10000 %non stampa nella console i messaggi Underfull vbox

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

          \usepackage[style=philosophy-classic,scauthors=true,firstinits=true,useprefix=true]{biblatex} % Specifica lo stile della bibliografia con citazioni estese, nome puntato . Indexing serve per fare gli indici dei nomi; useprefix=true, style=authortitle-ibid; backend=biber
          \usepackage[babel]{csquotes} % Per citare in altre lingue
          \bibliography{Bibliociccia} % Specifica il nome del file di bibliografia
          %\renewcommand*{\bibfont}{\large} % Setta il font della bibliografia a “large” (circa 12pt)

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

          \usepackage{imakeidx} % Creazione di indici multipli con imakeidxx (file modificato ad hoc da OldClaudio)
          \usepackage[itemlayout=singlepar, font=footnotesize]{idxlayout} % Customizza la grafica degli indici (es. in un solo paragrafo)
          \makeindex[title=Rogatari dei documenti, columns=1] % Genera l'indice di default.
          \makeindex[name=nomi,title=Nomi propri e di luogo, columns=2] % Genera altro indice, che prende i nomi da bibLaTeX (vedi sopra e pacchetto Cevolani)

          %%%%%%%PACCHETTI CUSTOMIZZATI%%%%%%%%%
          \usepackage{StileTeo} % Stile delle testatine
          \usepackage{Citewa} % Cita senza stampare l'autore
          %\usepackage{Cevolani} % Mette i nomi degli autori nell'indice dei nomi automaticamente
          \usepackage{Bibliostileteo} % Maiuscoletto autori e curatori sia in citazione che in Bibliografia
          %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

          \title{}
          \author{}
          \date{}

          %%%%%%%%%%%%%%%%%%%%%%%%%%%% TEMPORANEO: COSA RICOMPILO %%%%%%%%%%%%%%%%%%%%%%%%%%%
          %\includeonly{Files/Saggiociccia}%, Files/Edizione}
          %\excludeonly{Files/Capitolo05, Files/Diataxis_Edizione, Files/Diataxis_Traduzione}

          %%%%%%%%%%%%%%%%%%%%%%%%%%%% 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

          A Pufflandia\index[nomi]{Pufflandia} c'è il carrozziere Filippo\index[nomi]{Pufflandia!carrozziere|see{Filippo}}, Mario\index[nomi]{Pufflandia!carrozziere|see{Mario}}, Gustavo\index[nomi]{Pufflandia!carrozziere|see{Gustavo}}

          %%%%%%%%%%%%%%%%%%%%%%%%%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!
          \printindex % Stampa l'Indice di default
          \printindex[nomi] % Stampa l'Indice dei nomi

          \end{document}
          \endinput
          `

          (spero che l’esempio minimo vada)

          È chiaro che se scrivesse |see{Pippo, Pluto, Paperino} la cosa si risolverebbe facilmente. Il problema è che questi nomi sono molto distanti nel testo, donde il casino. Qualche suggerimento (anche per gli altri punti) ?

        • #86136
          Up
          0
          Down
          ::

          Teodoro Studita” post=85607(spero che l’esempio minimo vada)

          Non proprio minimo.

          Aggiungi questo in fondo al tuo preambolo:
          `\makeatletter
          \let\orig@idxitem\@idxitem
          \def\@idxitem{\multipleseetrue\orig@idxitem}
          \makeatother
          \newif\ifmultiplesee
          \renewcommand{\see}[2]{%
          \ifmultiplesee\multipleseefalse\emph{v.\@} \fi#1}`
          Ciao
          Enrico

        • #86137
          Up
          0
          Down
          ::


          Grazie Enrico, appena la moglie riporta il mac a casa provo.
          Da quel che capisco del codice, questo dovrebbe risolvere due problemi.
          Sul terzo (punto alla fine della voce indipendentemente dal numero di sub-entries) si può fare qualcosa oppure è impossibile come dice Claudio?

        • #86138
          Up
          0
          Down
          ::

          Teodoro Studita” post=85632Grazie Enrico, appena la moglie riporta il mac a casa provo.
          Da quel che capisco del codice, questo dovrebbe risolvere due problemi.
          Sul terzo (punto alla fine della voce indipendentemente dal numero di sub-entries) si può fare qualcosa oppure è impossibile come dice Claudio?

          Il punto alla fine della voce è del tutto inutile, direi anzi che è sbagliato. Non è nemmeno previsto da MakeIndex.

          Ciao
          Enrico

        • #86139
          Up
          0
          Down
          ::

          egreg9″ post=85640
          Il punto alla fine della voce è del tutto inutile, direi anzi che è sbagliato. Non è nemmeno previsto da MakeIndex.

          È infatti ciò che le ho detto io. Si tratta infatti di una (assurda) convenzione dei diplomatisti che supereremo brillantemente ignorandola.
          Il codice che hai scritto per il resto va una favola, grazie mille!!!
          A presto,

      Visualizzazione 7 filoni di risposte
      • Devi essere connesso per rispondere a questo topic.

      Go to top