Re: Imakeidx e intoc=true ignorato

#91115
OldClaudio
Partecipante
    Up
    0
    Down
    ::


    Mi spiace, @Teodoro, ma senza un po’ di testo non vedo errori che possano far tremare \pageref fino a farlo scoppiare. Ci saranno di sicuro, perché lo fa, ma non li vedo.

    Invece vedo molto incongruenze.
    1) Scrivi che \hyphenation{qui-bus-dam} non funziona, e invece agginugi \hyphenation{sen-ten-za}; ma se usi le lingie italiane latina, ti assicuro che la divisione di sentenza avviene con i pattern di default in modo perfetto; siccome i pattern per l’italiano li ho fatti io (e anche quelli per il latino) so esattamente di che cosa parlo. Per il latino la cosa è diversa: certo la divisione che tu specifichi con \hyphenation è corretta, mentre i pattern latini darebbero qui-bu-sdam, chiaramante fonetica e non etimologica; questo è spiegato nella documentazione per il latino sia di babel sia di polyglossia; lavorando con bael si potrebbe usare il doppio apice [tt]quibus”dam{/tt] per indicare un punto di divisione filologica, ma poi con polyglossia non funziona; con entrambi funziona invece \hyphenation, ma va specificato entre è in vigre la lingua latina;non mentre è in vigire il mainlanguage; ogni lingua ha le sue regole di divisione in sillabe e le sue eccezioni specificate con il comando \hyphenation. questo per la stessa lingua può venire specificato più volte e le varie divisioni vengono cumulate in un un elenco senza che l’utente debba preoccuparsene; l’utente deve invece preoccuparsi di specificare hyphenation mentre è in vigore la lingua di cui si specifica uan eccezione.

    2) \endinput dopo \end{document} è del tutto inutile; \end{document} fa già da solo quello che fa \endinput; quest’ultimo è utile solo alla fine dei file inclusi con \input o con \include.

    3) continui ad usare il pacchetto idxlayout; Please, don’t do it: te lo scrivo in inglese sperando che tu lo recepisca, visto che in italiano non l’hai recepito; le sue opzioni totoc e font=footnotesize sono già realizzate con l’opzione intoc di \makeindex e con la rideifnizione di theindex; Che poi il pacchetto serva a comporre le voci dell’incide analitico con un solo capoverso è una cosa che non capisco, visto che lo fa già da solo con o senza imakeidx.

    4) L’uso di \@ nella ridefinizione di \see mi pare inconsistente; vedi la guida tematica Il LaTeX Hanbook Reference commentatoe tradotto in italiano nella pagina 13; vi si spiega che un punto dopo una lettera maisucola viene inteso come un punto di abbreviazione, se lo si vuoe come punto di fine periodo PRiMA del punto bisogna mettere \@; invece un punto dopo una lettera minuscola viene inteso come punto di fine periodo; con la lettera minuscola se vuoi che il punto sia di fi abbreviazione devi metterci uno spazio esplicito mediante “\ ” (senza virgolette; qui le ho indicate epr evidenziare che dopo la barra inversa c’è uno spazio), oppure con uno spazio indivisibile mediante la tilde di legatura [tt]v.~\fi#1[/tt]

    5) Andando all’inizio carichi il pacchetto setspace; all’inizio del documento specifichi \footnotesize(12}{15} Che viene reso attivo solo se seguito da \selectfont o da qualunque altra dichiarazione relativa ai font, non limitata da un gruppo o da un ambinete che esegua a sua volta il comando \selectfont. È una impostazione strana; di default la classe report con l’opzione 12pt compone con font “normali” di 12pt con un avanzamanto di riga di 14.5pt; basterebbe quella opzione alla classe per avere quello che tu desideri, a meno di mezzo punto di differenza ad ogni riga. Sì, quando hai completato la pagina che avrà una trentina di righe di sicuro avrai una riga in più in ogni pagina con un avanzamento di 14.5 pt rispetto a una avanzamanto di 15pt; ma tr nr accorgi? Oppure te l’anno prescritto? Se te l’hanno prescritto tieni presente che l’impostazione con ‘fontsize vale solo per il font corrente quando specifichi questo comando, ma non influisce sui copri che ottieni con \footnotesize, \small, \large, eccetera. Per farlo funzionare sempre devi impostare ‘linespread{1.0345}, dove quel valore non è altro che il rapporto fra 15 e 14,5.

    6) A cosa ti serve exludeonly? a ninete, perché faresti prima ad usare il comando \includenly, con un solo nome di file in ogni riga e moi mettere un segno di commento (un solo segno di commento invece dell’intero nome del file) davanti ai file che vuoi escludere;; se non metti comandi di \include, ma usi solo comandi \input, excludeonly è inefficace.

    7) i pacchetti dei font textcomp e lmodern non servono se usi fontspec con xelatex; (e usi certamente xelatex, altrimenti non potresti usare polyglossia e ti darebbe un errore grave se chiami fontpsec metre usi pdflatex); I font Latin Modern OpenType sono di default quando invochi fontspec; se invocho lmodern usa i font Type 1, invece dei font OpenType, quindi mi sembra un notevole regresso rispetto alle potenzialità di xelatex; di conseguenza il pacchetto slantsc potrebbe essere , anzi è superfluo, perché con in font OpenType puoi fare di tutto e di più, cisto che ogni font contiene migliaia se non deocne di migliaia di glifi e con i font Latin Modern Opentype hai già inclusi i segni del Text Companion Font e molto di più. (ti mancano solo gli alfabeti diversi da quello latino, ma ti mancano anche se usi il pacchetto lmodern.

    7) il pacchetto rotating serve a ben altro oltre a ruotare ciò che è rappresentato dal suo argomento; viene usata per ruotare tabelle, e altre cose simili; per ruotare figure, senza ruotare la didascalia, basta usare l’opzione angle=90 fra le opzioni di ‘includegraphics; visto che carichi il pacchetto graphicx, rotating solo per rutoare figure non ti serve a niente.

    8 ) il pacchetto multirow sarebbe da evitare, non perché non riesca a fare il suo lavoro, ma perché le celle di una tabella che si estendono per più righe non sono molto professionali; Enrico è esplicito su questo argomento; io sarei meno contrario, ma certamante eistono altri metodi per rimepire le caselel di una tablela che non siano coì antiestetici come quelli prodotti da \multirow.

    9) il comando \centerline è stigmatizzato nei vari testi come quello leggibile con texdoc l2tabu-italian Si sostituisce semplicemente con \makeboz[\textwidth]{…}

    Molti di questi appunt sono innocui; forse quello relativo a idxlayout potrebbe essere all’originae del tuo problema, ma se spiegi meglio cosa intendi per comperre in un solo capoverso, forse si più fare direttamente con \imakeidx, oppure ridefinendo i comandi \idx@iteme soci (che in parte ahi già fatto)

    Ciao
    Claudio

    Go to top