- Questo topic ha 7 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 8 anni, 1 mese fa da
letteracdp.
-
CreatoreTopic
-
8 Agosto 2018 alle 6:26 #113673::
Salve,ho un problema sulle note a pié di pagina. Sto componendo un volume e in qualche capitolo le note appaiono in posizione errata, ossia non sulla pagina in cui sono richiamate ma nella pagina seguente. Premetto che uso il pacchetto bigfoot per inserire nella pagina iniziale di ogni capitolo una nota con segno asterisco. Io uso una macchina linux con ubuntu 18.4 e compilando tutto su un Mac l’anomalia non si presenta.
Il preambolo del file principale è il seguente:
`
\documentclass[11pt,openright,a4paper]{book}
\usepackage[T1]{fontenc}
\usepackage[english,italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{indentfirst}
\usepackage{enumitem}
\usepackage{url}
\usepackage{latexsym}
\usepackage{amsfonts,amsthm}
\usepackage{stmaryrd}
\usepackage{bussproofs}
\usepackage{graphicx}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{multirow}
\usepackage{rotating}
\usepackage{lscape}
\usepackage{nameref}
\usepackage{fancyhdr}
\usepackage{caption}
\usepackage{framed}
\usepackage{setspace}
\usepackage{tocloft}
\usepackage{titlesec}
\usepackage[scaled=.9]{helvet} % Helvetica per quelli senza grazie\makeatletter
\renewcommand\footnoterule{%
\kern-3\p@
\vspace*{3mm}
\hrule\@width 2cm \vspace*{3mm}
%\hrule\@width.08\columnwidth \vspace*{3mm} originale
\kern2.6\p@}
\makeatother\usepackage{bigfoot}
\DeclareNewFootnote{default}
\DeclareNewFootnote{B}
\renewcommand\thefootnoteB{*}\usepackage[a4paper,top=5.5cm,bottom=6cm,left=4cm,right=4cm]{geometry}
\makeatletter
\newcommand{\myfootnote}[2]{\begingroup
\def\@makefnmark{}%
\addtocounter{footnote}{-1}%
\footnote{#1 #2}%
\endgroup}
\makeatother
`
Qualche idea di come risolvere il problema? Grazie mille!
-
CreatoreTopic
-
AutoreRisposte
-
-
8 Agosto 2018 alle 9:03 #113674::
Uhmm…! LaTeX è progettato con estrema cura per dare risultati assolutamente identici quale che sia la macchina utilizzata per la compilazione; se davvero ottieni risultati diversi usando macchine diverse, questo può solo dipendere dal fatto che le due macchine contengono due diverse versioni del formato LaTeX. In effetti, a partire dall’inizio del 2015 il formato LaTeX ha subito un certo numero di rinnovamenti e modifiche, alcune delle quali possono produrre sottili differenze nel calcolo delle dimensioni verticali della gabbia del testo, differenze che, a loro volta, potrebbero benissimo spiegare la diversità di posizionamento delle note a piè di pagina che riferisci di avere osservato.Tutto ciò può essere facilmente accertato, perché la versione del formato LaTeX utilizzato durante la compilazione viene registrata nel transcript file principale, quello con estensione [tt].log[/tt]. Per fare un esempio, prendo a caso un file [tt].log[/tt] che ho sul computer, il primo che mi capita sottomano; esso comincia così:
`
This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018) (preloaded format=pdflatex 2018.7.30) 31 JUL 2018 11:03
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
%&-line parsing enabled.
**PeterNerlich.tex
(./PeterNerlich.tex
LaTeX2e <2018-04-01> patch level 5
`
Anche la prima decina di righe dei file [tt].log[/tt] prodotti dalla compilazione su entrambe le tue macchine dovrebbe avere un aspetto simile: prova ad affiggerle (intendo, a «postarle»… :wink:) entrambe, così da farcele leggere, e potremo aiutarti meglio. Ripeto, bastano le prime righe, esattamente fino a quella che comincia con`LaTeX2e <...>`inclusa.Comunque, permettimi di chiederti fin d’ora:
- Dove diavolo hai preso il preambolo che hai affisso? Sei consapevole del perché carichi ciascuno dei pacchetti che carichi?
- Dove hai preso le parti comprese fra [tt]\makeatletter[/tt] e [tt]\makeatother[/tt]?
- Perché hai bisogno del pacchetto bigfoot per apporre una semplice nota al titolo di un capitolo?
Ciao.
—
Gustavo
-
8 Agosto 2018 alle 10:33 #113675::
La ridefinizione di \footnoterule non è tratta dall’originale, perché l’originale dela classe book è questo:`\renewcommand\footnoterule{%
\kern-3\p@
\hrule\@width.4\columnwidth
\kern2.6\p@}`
Quello che hai definito tu, con quei \vspace*{3mm}, rompe il meccanismo di collocazione delle note, i quanto il comando che genera il filetto deve produrre un ingombro verticale nullo; Se vedi la definizione originale vera; si ha inizialmente uno spazio verticale negativo di -3pt, poi un filetto che ha uno spessore (verticale) di default di 0.4ptl, e infine un avanzamento verticale di 2.6pt; come puoi constatare lo spazio verticale complessivo vale -3pt+0,4pt + 2,6pt=0pt.Se hai scritto tu quella definizione hai agito senza sapere quello che stavi facendo. Se l’ha scritto qualcun altro, hai commesso l’errore di affidarti a chi non sapeva quello che stava facendo.
Non dico che la causa del tuo problema sia questa definizione balorda; che, tra l’altro, è balorda sia con Ubuntu sia col Mac.
LA differenza di comportamento, come ipotizza Gustavo, potrebbe essere causata da una differente versione dei sistemi TeX installata.
In particolare controlla la data del sistema TeX che hai installato su Ubuntu; il sistema operativo 18.4 è aggiornato, ma l’installazione del sistema TeX (la distribuzione Debian di TeXLive) potrebbe essere datata. Visto che specifichi il pacchetto per l’Helvetica, ma non specifichi altri pacchetti per i font, quello che ti succede potrebbe dipendera dai font usati che pottrebbero essere diversi; infatti l’installazione del sistema TeX sul Mac è completa, mentre la versione Debian di TeXlive generalmente è parziale e per renderla completa bisogna installare diverse pacchetti .deb.Un altro motivo di disuniformità è che di default la versione Debian di TeXLive imposta la carta in formato letter, mentre il Mac preimposta in Europa la carta A4. Sono circa 2 cm di differenza in altezza, quindi anche la gabbia del testo e delle note è diversa.
Del resto dal preambolo che hai allegato al tuo messaggio non si può ricavare molto di più. Se vuoi un aiuto vero dovresti allegare un Esempio Minimo Compilabile (EMC), un file completo da \documentclass a \end{document} che contenga il minimo dei pacchetti necessari per replicare il tuo problema; il corpo del documento deve essere il minimo necessario per replicare il problema. Chi riceve il tuo messaggio di richiesta d’aiuto non ha che da copiare l’EMC e incollarlo in suo nuovo file .tex che manda subito in esecuzione; se ci sono errori, li vede e li analizza; se ci sono difetti di impaginazione li vede e li sa segnalare subito.
Prova anche tu a creare e ad allegare un esempio minimo compilabile, “taggando” il codice con i debiti tag (guarda come ho fatto io per “taggare il tuo primo messaggio; Semplicemente seleziona il tuo messaggio e clicchi sul tasto Edit; ti si apre una finiesta con il contenuto del messaggio e lo puoi eventualmente modificare.Se non lo vui modificare clicca si “Do not send” (perdonami, io ho tutta la mia macchina che usa l’inglese sia per il sistema operativo sia nei programmi che uso).
Forse riusciamo a capire anche perché carichi il pacchetto bigfoot, perché a me e a Gustavo non è assolutamante chiaro.
Forse se leggi un po’ della documentazione liberamente scaricabile contenuta nella sezione Documentazione, capiresti anche un altro errore che hai fatto; non vedo caricato il pacchetto amssymb, e nemmeno amsmath; però carichi amasthm, amsfonts a latexsyb; il secondo collide con amsfonts, questo a sua volta verrebbe caricato da amssymb, il quale rende disponibili i comandi per accedere ai glifi matematici di amsfonts. Per questo motivo penso che se la dimenticanza è tua, dovrestirinfrescarti la memoria leggendola documentazione; se la dimenticanza è di chi ha scritto quel preambolo, ti sei affidato alla persona sbagliata.
Tutto ciò non è un rimprovero; chiunque di noi ha fatto errori simili; io in particolare,ma proprio per questo cerco di stimolare sempre a leggere la documentazione di ogni pacchetto e per evitare di caricare pacchetti in conflitto o di caricarne una pletora con la scusa che “potrebbe servire”. Ti assicuro che meno pacchetti si caricano meno rischi si corrono.
-
8 Agosto 2018 alle 10:47 #113676::
Intanto grazie mille per la risposta!
Le prime righe del log sulla mia macchina sono:This is pdfTeX, Version 3.14159265-2.6-1.40.18 (TeX Live 2017/Debian) (preloaded format=pdflatex 2018.8.8) 8 AUG 2018 09:28
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
**volume-droni-2017.tex
(./volume-droni-2017.tex
LaTeX2e <2017-04-15>Invece il log del Mac (sul quale funziona bene) riporta:
This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013) (format=pdflatex 2014.5.10) 19 JUL 2018 18:05
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
%&-line parsing enabled.
**volume-droni-2017.tex
(./volume-droni-2017.tex
LaTeX2e <2011/06/27>1. Dove diavolo hai preso il preambolo che hai affisso? Sei consapevole del perché carichi ciascuno dei pacchetti che carichi?
Confesso di aver ereditato il file da un collega che l’aveva preparato per una pubblicazione simile. Quindi so che alcuni pacchetti sono superflui ma ce li ho lasciati lo stesso 😳
2. Dove hai preso le parti comprese fra \makeatletter e \makeatother?
Il comando \myfootnote non viene mai utilizzato, quindi credo che non sia influente.
3. Perché hai bisogno del pacchetto bigfoot per apporre una semplice nota al titolo di un capitolo?
Pensavo di doverlo usare per mettere al titolo una nota con simbolo asterisco e poi ricominciare la numerazione delle note da 1. Non è così?
Grazie ancora
Pippi
-
8 Agosto 2018 alle 15:08 #113677::
Intanto vedi che sultuo Ubuntu hai TeXLive/Debian del 2017 (ormai superato da TeXLive 2018). Poi vedi che sul Mac hai una installazione di TeXLive del 2013; Le ipotesi di Gustavo sulla diverse età dei due sistemi sono una possibile spiegazione.Per mettere una nota ad un titolo, a parte i fatto che devi usare l’argomento facoltativo, puoi scriverla senza bigfoot semplicemente usando l’argomento facoltativo, per esempio[code]\chapter{Titolo per l’indice]{Titolo con nota\footnote[\star]{Nota}}]/code]
la ridefinizione di \footnoterule la usi ad ogni nota, mai esplicitamente, quindi quella definizione errata ti resta fra i piedi scombinandoti il meccanismo delle note.
-
9 Agosto 2018 alle 4:54 #113678::
Salve! Ora funziona tutto! Grazie infinite!!!
E’ stato sufficiente togliere il pacchetto \bigfoot e relativi comandi e usare
\renewcommand{\thefootnote}{\fnsymbol{footnote}}Avevo utilizzato \bigfoot perché nel post
http://guit.sssup.it/phpbb/viewtopic.php?t=4590
il prof. Gregorio aveva dichiarato corretto il codice
\usepackage{bigfoot}
\DeclareNewFootnote{default}
\DeclareNewFootnote{B}
\renewcommand\thefootnoteB{*}Ora ripulirò il mio preambolo e seguirò i suggerimenti ricevuti. Grazie a te e a Gustavo!
Pippi
-
9 Agosto 2018 alle 6:28 #113679::
Mmmmm!
Quel \renewcommand{\thefootnote}{…} mi lascia perplesso.
Certo ti produce l’asterisco ma tutte le note rimandono etichettate con simboli; l’inconveniente è che questi simboli per le note ti permettono di etichettare solo 9 note, perché \fnsymbol dispone solo di nove simboli.Vediamo se riesco a spiegarmi meglio. Quello che tu vorresti fare è di etichettare una nota ad un capitolo mediante un asterisco. Non entro nel merito sull’opportunità di fare una cosa del genere, ma sei tu che sai perché vuoi appendere un richiamo di nota al titolo di un capitolo.
Comunque lo stile di richiamo mediante \fnsymbol viene già eseguito dal comando \thanks; questo comando viene normalmente usato solo nella pagina del titolo per appendere un richiamo di nota ai nomi degli autori, volendo anche al titolo del documento; viene usato per specificare l’affiliazione degli autori, per specificare se il documento è stato finanziato da qualche ente o è stato redatto nell’ambito di qualche programma più ampio. Per questo motivo \thanks si può usare solo in congiunzione con i comandi \title e \author, che vengono usati da \maketitle, e infine \thanks viene globalmente disattivato e non è più disponibile.
Allora se tu prima di creare la pagina del titolo dell’intero documento, ti conservi la definizione di \thanks in un altra macro, dopo che \maketitle l’ha disattivato te lo ritrovi sempre a portata di mano con un altro nome; una cosa del genere:`\documentclass[…]{…}
…
\begin{document}
…
\let\OriginalThanks\thanks
\maketitle
…
\chapter[Titolo per l'indice]{Titolo con nota\OriginalThanks{nota}}
…` dovresti ottenere quello che desideri, non solo, ma le altre note conservano il richiamo numerico e, se vuoi, puoi usare ]OriginalThanks per altre annotazioni ad altri capitoli.
-
11 Agosto 2018 alle 7:21 #113680::
pippi.sabato” post=114039Salve! Ora funziona tutto! Grazie infinite!!!
E’ stato sufficiente togliere il pacchetto \bigfoot e relativi comandi e usare
\renewcommand{\thefootnote}{\fnsymbol{footnote}}A questo ha già risposto @OldClaudio, vedi sopra.
pippi.sabato” post=114039Avevo utilizzato \bigfoot perché nel post
http://guit.sssup.it/phpbb/viewtopic.php?t=4590
il prof. Gregorio aveva dichiarato corretto il codice
\usepackage{bigfoot}
\DeclareNewFootnote{default}
\DeclareNewFootnote{B}
\renewcommand\thefootnoteB{*}[…]
È corretto, nel senso che funziona e può essere un modo di ottenere il risultato che, forse, tu vuoi ottenere. Il punto è che tu, da un lato, non spieghi nei dettagli cos’è che, esattamente, vuoi ottenere (una nota apposta al titolo di ogni capitolo? sempre indicata da un asterisco, oppure il simbolo deve cambiare da un capitolo all’altro, pur restando non numerico? ci sono altre note nel documento? se sì, come devono essere contrassegnate?), dall’altro neppure esibisci un esempio compilabile che illustri il tuo problema; così, chi volesse aiutarti è costretto a tirare a indovinare, e capisci bene che uno deve proprio essere preso dalla noia di un pomeriggio d’estate per aver voglia di fare ciò… 😉
Avevo notato anch’io la assai maldestra ridefinizione del comando [tt]\footnoterule[/tt], ma non può essere quella la causa dell’errato posizionamento delle note, perché quel comando viene eseguito solo nell’output routine, cioè dopo che il costruttore di pagine ha preso le sue decisioni circa i punti dove tagliare le pagine stesse, decisioni che, dunque, tale comando non ha il potere di influenzare. È invece possibile che la causa sia proprio l’utilizzo del pacchetto bigfoot, il quale rimaneggia completamente il meccanismo con cui il LaTeX gestisce le note a piè di pagina, e del resto tu stessa/o confermi che, senza quel pacchetto, il problema sparisce.
Se (ripeto, se: come ho detto, sono costretto a tirare a indovinare… 🙂 ) quel che vuoi fare è solo “attaccare” a ciascun titolo di capitolo una nota contenente del semplice testo e contrassegnata da un asterisco, senza disturbare eventuali altre note a piè di pagina, e vuoi fare tutto ciò senza caricare il pacchetto bigfoot, il codice seguente potrebbe fornire un’idea da utilizzare come punto di partenza per uleriori raffinamenti:
`
\documentclass[a4paper]{book}
\usepackage[T1]{fontenc}\makeatletter
\newcommand*{\myChapterNote}{%
\gdef\@thefnmark{\textasteriskcentered}%
\@footnotemark\@footnotetext
}\makeatother
\begin{document}
\tableofcontents
\chapter
[First chapter]
{First Chapter\myChapterNote{With a footnote}}Contents of the first chapter. The footnotes\footnote{Like this one} in this
text are numbered correctly.\footnote{For example, this is numbered~“2''.} Yet
another footnote,\footnote{This one.} just to be sure.\chapter
[Second chapter]
{Second Chapter\myChapterNote{Also with a footnote}}Contents of the second chapter. Here is another footnote.\footnote{Here it is.}
What's its number?\end{document}
`Ciao.
—
Gustavo
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.