- Questo topic ha 10 risposte, 6 partecipanti ed è stato aggiornato l'ultima volta 5 anni, 9 mesi fa da
OldClaudio.
-
CreatoreTopic
-
23 Gennaio 2006 alle 17:21 #7751::
Ho scoperto questo forum da poco (se lo avessi saputo prima chissà quanto tempo avrei risparmiato! Forse!!)
Sto scrivendo la mia tesi di dottorato, uso pdftex ed ho un problema con le intestazioni.
Non so se si tratta di un bug di Fancyhdr o di qualcosa che ho sbagliato io. E se c’è un modo per risolverlo.
Ho impostato fancyhdr per mettermi in alto a sinistra (destra) su pagina destra (sinistra) il nome del capitolo (sezione).
Nella tesi i nomi di alcune sezioni sono abbastanza lunghi, così per quelle sezioni uso il comando \sectionmark seguito dal nome abbreviato della sezione.
Nell’intestazione dovrebbe così comparire il nome abbreviato della sezione, ma purtroppo questo accade solo per le pagine successive a quella in cui la sezione inizia.Così, ad esempio, se a pagina 3 inizia una sezione tipo: “Input-output data and outsourcing: an application to some OECD countries” e il nome della sezione abbreviato che scelgo è ad esempio “An application to some OECD countries”. Il nome abbreviato appare correttamente a pagina 5, 7 e successive, ma non a pagina 3, in cui compare il nome per intero.
Ho provato a spostare il comando \sectionmark un pò in “giro” nei pressi di \section, ma senza risultati. Sapreste aiutarmi o dirmi di rassegnarmi perché si tratta di un bug?
Qui di seguito riporto il codice:
`\documentclass{book}
…
\usepackage{fancyhdr}
…\pagestyle{fancy}
\fancyhead{}
\fancyhead[RO]{\slshape \rightmark}
\fancyhead[LE]{\slshape \leftmark}
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0pt}
\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter.\ #1}{}}
\renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1}}…
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{2}\hypersetup{
pdfstartview=FitH,
colorlinks=true,
linkcolor=blue,
urlcolor=blue,
linktocpage=true
}\begin{document}
….\section{Input-output data and outsourcing: an application to some OECD countries}
\sectionmark{An application to some OECD countries}
`
Grazie in anticipo.
-
CreatoreTopic
-
AutoreRisposte
-
-
23 Gennaio 2006 alle 19:04 #7752::
Non si tratta di un bug e non devi nemmeno ridefinire \chaptermark e \sectionmark. Quello che non conosci è che i comandi di sezionamento (\section, \chapter…) hanno un argomento opzionale che è proprio il titolo corto. Scrivendo quindi:`\section[An application to some OECD countries]{Input-output data and outsourcing: an application to some OECD countries}`ottieni il risultato di cui necessiti. Fra l’altro, il titolo corto verrà utilizzato anche nell’indice generale del documento.Ciao.
-
23 Gennaio 2006 alle 19:36 #7753::
Conoscevo l’argomento opzionale. Ma usandolo, come hai ricordato anche tu, il titolo corto compare anche nell’indice, cosa che non voglio.
Vorrei che l’indice usasse il titolo esteso.C’é a questo punto qualche altro modo di evitare che l’indice utilizzi l’intestazione breve come riferimento?
In ogni caso grazie mille
-
23 Gennaio 2006 alle 19:47 #7754
-
23 Gennaio 2006 alle 21:31 #7755::
Forse questo topic può servire.
L.
A parte la soluzione di Lapo che funziona perfettamente e prontamente suggerita da Lorenzo c’è da dire che a me comunque questa marea di titoli fanno girare la testa.
Usa il pacchetto truncate ed il titolo lungo viene abbreviato con dei puntini ad esempio titolo lungo a piacere diventa titolo lungo a…Ecco un esempio pratico:
`\documentclass{article}
\usepackage[fit]{truncate}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{} % — clear all fields
\fancyhead[RO,LE]{\truncate
{.7\headwidth}{\leftmark}}
\fancyfoot[C]{\thepage}
\begin{document}
\section{Sezione con titolo lungo lunghissimo che non entra nell'intestazione }
bla bla bla
\end{document}
`Lo puoi adattare in qualsiasi maniera.
Ciao
Andrea
PS: il pacchetto truncate funziona ovunque anche con testo normale.
-
23 Gennaio 2006 alle 22:41 #7756::
Grazie mille a tutti.Ho notato che la soluzione di Lapo funziona solo se viene aggiunto l’argomento opzionale.
Cioé:
`
\section{Titolo lunghissimo%
\sectionmark{Titolo breve}}
\sectionmark{Titolo breve}
`dà errore, mentre
`
\section[Titolo lunghissimo]{Titolo lunghissimo%
\sectionmark{Titolo breve}}
\sectionmark{Titolo breve}
`funziona bene.
Per cui ho modificato il suo comando in:
`
\newcommand{\sezione}[2]{
\section[#1]{#1
\sectionmark{#2}}
\sectionmark{#2}
}
`dato che non ho necessità di modificare i titoli che compaiono nell’indice.
Ho preferito questa soluzione a quella suggerita da Andrea (anche se a dire la verità molto più elegante) perché mi permette un controllo più diretto su quello che appare senza dover compilare per decidere la lunghezza dell’intestazione.
PS la prossima volta controllo meglio l’archivio!!
-
27 Gennaio 2006 alle 9:34 #7757::
Ho notato che la soluzione di Lapo funziona… Ho preferito questa soluzione perché mi permette un controllo più diretto su quello che appare senza dover compilare per decidere la lunghezza dell’intestazione.
Personalmente, ho l’abitudine di scegliere per i capitoli e le sezioni titoli abbastanza corti: trovo che la sintesi sia preferibile – se un titolo è troppo lungo non è un titolo, è un paragrafo! Fra l’altro, così non ho problemi di titoli su più righe nell’indice e anche fancyhdr è a posto.
Ciao, L.
-
12 Dicembre 2020 alle 22:32 #7758::
\section[Titolo lunghissimo]{Titolo lunghissimo%
\sectionmark{Titolo breve}}
\sectionmark{Titolo breve}Ciao, ho provato il tuo codice e funziona abbastanza bene ma non benissimo…
Mi spiego meglio: se nella pagina il titoletto della nuova sezione cade a metà pagina, allora quale intestazione inserisce quella lunghissima. Poi per le pagine seguenti mette correttamente quella abbreviata.
Il problema quindi avviene solamente quando la sezione non inizia in una nuova pagina, e solo per quella pagina…
-
13 Dicembre 2020 alle 7:47 #7759::
@j.magno, ti sei collegato ad un post di 14 anni fa; direi completamente sorpassato e anche arcaico. Conteneva un barlume di verità ma era usato male.Allora, dovresti documentarti si documentazione moderna e aggiornata. Per esempio: nella sezione documentazione ci sono guide generali e tematiche da scaricare e leggere a piacimento. Una delle guide tematiche è intitolata Il LaTeX Reference Manual commentato che non è altro che la traduzione in italiano del manuale di Leslie Lamport, il creatore del linguaggio LaTeX,scritto nel 1994, quando uscì il LaTeX2e, che, moltoaggironato, è quello che si usa ancora oggi.Ma già allora la sintassi dei comandi di sezionamento (tutti, non solo \section} era comando[Titolo breve][Titolo lungo] e non c’era nessun bisogno di giostrare anche con \sectionmark o \chaptermark o \subsectionmark quelli che mettono il risultato nella testatina specifica.
Quale mark appare nella testatina? Dipende dalla classe che usi, ma di solito si tratta del titolo della sezione che è in vigore all’inizio della pagina; per documenti articolari può essere diverso. Ma il gioco dei mark è complicato: ne sono sempre disponibili tre diversi e LaTeX attraverso le impostazioni della classe provvede ad aggiornarli in modo adeguato. In un libro scritto in modalità “two side” nella pagina di sinistra (pari) appare il mark del capitolo e in quello di destra il titolo del paragrafo (non bisogna confondere paragraph con paragrafo), e nelle pagina di destra (dispari) appare il mark che corrisponde al titolo del paragrafo che era in vigore all’inizio della pagina; se a metà pagina comincia un nuovo paragrafo, il suo titolo comparirà solo sulla pagina dispari successiva se sarà ancora in vigore. Ma in un dizionario dove i vari lemmi siano introdotti con il comando \section, i due mark in vigore all’inizio della pagina e alla fine compaiono entrambi in ogni testatina di destra o di sinistra e non compariranno per niente i mark dei capitoli che non hanno molto senso in un dizionario; a tutto ciò provvede un’eventuale classe destinata allo scopo.
Esistono classi, come memoir, dove i comandi di sezionamento accettano due argomenti facoltativi:comando[titoloper l’indice][titolo per la testatina]{titolo per il documento} e puoi gestire i tre titoli in modo diverso perché ci pensa la classe a gestirli come si deve.
Se non ti sei modificato le funzionalità della tua classe, usando, per esempio, le funzionalità del pacchetto fancyhdr, e non stai scrivendo un dizionario, il tuo comando dovrebbe essere semplicemente `\section[Titolo breve]{Titolo lunghissimo}`e, tanto per riepilogare, il Titolo lunghissimo forma il titolo del paragrafo, mentre il Titolo breve va a finire nell’indice e nelle testatine. dovresti mettere le mani sul mark e su ciò che vuoi nell’indice solo se volessi tre titoli di diverse lunghezze. Ma mentre nelle testatine i titoli devono essere brevi, nell’indice possono essere meno brevi, ma è comunque consigliato che non superino la lunghezza di una riga.
Ragionamenti del tutto simili, solo che no riguardano le testatine, si applicano alle didascalie delle figure e delle tabelle il cui comando \captio accetta anche lui ina didascalia breve e una didascalia lunga; la seconda viene scritta sopra o sotto l’oggetto da descrivere, mentre la prima, quella breve, (facoltativa fra parentesi quadre) va nelle rispettive liste delle figure o delle tabelle.
-
13 Dicembre 2020 alle 13:59 #7760::
OldClaudio” post=119676@j.magno, ti sei collegato ad un post di 14 anni fa; direi completamente sorpassato e anche arcaico. Conteneva un barlume di verità ma era usato male.
Allora, dovresti documentarti si documentazione moderna e aggiornata. Per esempio: nella sezione documentazione ci sono guide generali e tematiche da scaricare e leggere a piacimento. Una delle guide tematiche è intitolata Il LaTeX Reference Manual commentato che non è altro che la traduzione in italiano del manuale di Leslie Lamport, il creatore del linguaggio LaTeX,scritto nel 1994, quando uscì il LaTeX2e, che, moltoaggironato, è quello che si usa ancora oggi.Ma già allora la sintassi dei comandi di sezionamento (tutti, non solo \section} era comando[Titolo breve][Titolo lungo] e non c’era nessun bisogno di giostrare anche con \sectionmark o \chaptermark o \subsectionmark quelli che mettono il risultato nella testatina specifica.
Quale mark appare nella testatina? Dipende dalla classe che usi, ma di solito si tratta del titolo della sezione che è in vigore all’inizio della pagina; per documenti articolari può essere diverso. Ma il gioco dei mark è complicato: ne sono sempre disponibili tre diversi e LaTeX attraverso le impostazioni della classe provvede ad aggiornarli in modo adeguato. In un libro scritto in modalità “two side” nella pagina di sinistra (pari) appare il mark del capitolo e in quello di destra il titolo del paragrafo (non bisogna confondere paragraph con paragrafo), e nelle pagina di destra (dispari) appare il mark che corrisponde al titolo del paragrafo che era in vigore all’inizio della pagina; se a metà pagina comincia un nuovo paragrafo, il suo titolo comparirà solo sulla pagina dispari successiva se sarà ancora in vigore. Ma in un dizionario dove i vari lemmi siano introdotti con il comando \section, i due mark in vigore all’inizio della pagina e alla fine compaiono entrambi in ogni testatina di destra o di sinistra e non compariranno per niente i mark dei capitoli che non hanno molto senso in un dizionario; a tutto ciò provvede un’eventuale classe destinata allo scopo.
Esistono classi, come memoir, dove i comandi di sezionamento accettano due argomenti facoltativi:comando[titoloper l’indice][titolo per la testatina]{titolo per il documento} e puoi gestire i tre titoli in modo diverso perché ci pensa la classe a gestirli come si deve.
Se non ti sei modificato le funzionalità della tua classe, usando, per esempio, le funzionalità del pacchetto fancyhdr, e non stai scrivendo un dizionario, il tuo comando dovrebbe essere semplicemente `\section[Titolo breve]{Titolo lunghissimo}`e, tanto per riepilogare, il Titolo lunghissimo forma il titolo del paragrafo, mentre il Titolo breve va a finire nell’indice e nelle testatine. dovresti mettere le mani sul mark e su ciò che vuoi nell’indice solo se volessi tre titoli di diverse lunghezze. Ma mentre nelle testatine i titoli devono essere brevi, nell’indice possono essere meno brevi, ma è comunque consigliato che non superino la lunghezza di una riga.
Ragionamenti del tutto simili, solo che no riguardano le testatine, si applicano alle didascalie delle figure e delle tabelle il cui comando \captio accetta anche lui ina didascalia breve e una didascalia lunga; la seconda viene scritta sopra o sotto l’oggetto da descrivere, mentre la prima, quella breve, (facoltativa fra parentesi quadre) va nelle rispettive liste delle figure o delle tabelle.Ciao OldClaudio, innanzitutto grazie per la pronta risposta. Ho provato a sfogliare la classe memoir e ripassare la classe book. Sto preparando la tesi magistrale in Economia, tre anni dopo aver preparato quella in Giurisprudenza. La prima tesi presentava numerosissimi elementi grafici: tabelle, grafici ma soprattutto infinite formule matematiche davvero complesse: Latex era sicuramente la soluzione ottimale. La tesi graficamente è uscita una meraviglia. In quella ho dovuto utilizzare Fancyhdr per il frontespizio, che doveva essere esattamente come da modello specifico dell’ateneo.
Questa è praticamente solo testo e qualche grafico. Al momento ho mantenuto tutto uguale alla prima. Mi sono accorto solo ora però che anche nella precedente tesi nell’indice riportava le intestazioni brevi che avevo utilizzato per le testatine, ma non è stato un problema.
Praticamente su ogni pagina in alto a sinistra mi compariva il nome breve della sezione, in alto a destra “Capitolo # nome breve del capitolo”. Nel caso di nuova sezione a metà pagina, inseriva nella testatina il nome breve della sezione nuova.
Nell’elaborato attuale invece non posso permettermi di accorciare le sezioni nell’indice, quindi la soluzione che mi hai indicato nella classe memoir sarebbe perfetta. Però mi resta il problema del frontespizio che devo impaginare nuovamente (ho cambiato ateneo), anche se ho visto che mamoir permette di gestire parecchio l’interfaccia, quindi potrei lavorare su quello. Ora provo a smanettarci un pochino. In ogni caso ti allego la parte iniziale:
[attachment=2573]GuIT.txt[/attachment]
[attachment=2574]TESI.pdf[/attachment]
Ciao, grazie ancora 😉
Attachments:
You must be logged in to view attached files. -
13 Dicembre 2020 alle 16:36 #7761::
L’errore più grosso è la stampa oneside; te lo impone la nuova università? Non credo.Dunque se non si possono abbreviare i titoli delle sezioni, li si scrive in minuscolo con le inziali maiuscole solo per i nomi propri. Quindi LA CONVENZIONE DI VIENNA E IL PROTOCOLLO DI MONTREAL, diventa La convenzione di Vienna e il protocollo di Montreal, corto quasi la metà di quello in tutte maiuscole.
Tuttavia anche in tutte maiuscole la testatina corta potrebbe essere semplicemente VIENNA E MONTREAL.Ma la soluzione è scrivere twoside che è di default sia con book, sia con memoir. Anche la documentazione di fancyhdr dice che se nella stessa testatine deve esserci sia illeftmark sia il rightmark, questi devono essere corti o bisogna configurare i relativi campi in modo che li possano scrivere su più righe, il che sarebbe comunque una schifezza.
Per il frontespizio non ci sono problemi; lo ocmponi con la classe che preferisci; usi il pacchetto frontespizio e te lo configuri come ti pare; Alla fine quest’unica pagina pdf contenente il frontespizio te la includi come prima pagina delle tesi come se fosse una figura, o meglio usando il pacchetto pdfpages.
Ho visto il file guit.tx che contiene cose poco chiare, ripetute e contrastanti; manon importa; chi pensa male spesso ci azzecca; pensando male, dubito che tu usi tutti quei pacchetti e specialmente non usi quelli che sono decisamante inutili o dei quali non conosci lo scopo; cioè si ratta di impostazioni che ti arrivano da altri attraverso una catena di passaggi che può risalire a parecchi anni fa; il sospetto nasce dall’uso del pacchetto epstopdf; che ha accanto l’annotazione: “per imprtare grafici pdf”. Questa annotazione è scritta da una persona che non ha la più vaga idea di che cosa faccia quel pacchetto: esso servirebbe per trasformare un file in formato Encapsulated PostScript (eps) in formato Portable Document Format (pdf); ne mporta anche il risultato. MA sono almeno una decina di anni, se non di più, che tutti e tre i motori di composizioni basati su LaTeX2e sono in grado di importare direttamante i file in formato eps, perché ci pensano loro stessi ad eseguire le trasformazioni necessarie; quindi è da più di 10 anni che epstopdf non dovrebbe essere nemmeno più nominato.
Ecco, scusa l’immeritata tiratina d’orecchi; ma quando vedo preamboli di quel genere mi viene la mosca al naso e non riesco a trattenermi.
Concludendo:se vuoi continuare a scrivere in oneside, sprecando la metà della carta che usi e componendo in modo non adatto alla qualità di LaTeX sei padronissimo, ma non chiedere aiuto nel forum per vandalizzare LaTeX. Io ti ho consigliato come fare, e spero che tu capisca il punto; la tipografia è un’arte, non è il risultato della composizione dei vari word processor, come Word, Writer, Pages, e compagnia; e te lo dico da ingegnere amante del bello, non da tipografo che per professione deve conoscere la sua arte. Se sei vincolato dalla tua università, direi che potresti tranquillamente fartene un baffo, visto che non si accorgeranno nemmeno delle differenze che ottieni con la composizione fronte-retro, cioè twoside.:) 😆
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.