- Questo topic ha 30 risposte, 9 partecipanti ed è stato aggiornato l'ultima volta 15 anni, 7 mesi fa da
OldClaudio.
-
CreatoreTopic
-
15 Settembre 2009 alle 13:24 #36873::
`Underfull \vbox (badness 3158) has occurred while \output is active
Underfull \vbox (badness 1097) has occurred while \output is active`quando compilo mi da questi 2 avvisi che però non credo vadano a inficiare il risultato finale, però se qualcuno lo sa può dirmi come eliminarli??
Grazie
ps. sulla guida di Pantieri non mi pare ci sia scritto nulla in merito, ma potri sbagliarmi
-
CreatoreTopic
-
AutoreRisposte
-
-
15 Settembre 2009 alle 13:53 #36874::
`Underfull \vbox (badness 3158) has occurred while \output is active
Underfull \vbox (badness 1097) has occurred while \output is active`quando compilo mi da questi 2 avvisi che però non credo vadano a inficiare il risultato finale, però se qualcuno lo sa può dirmi come eliminarli??
La prossima volta che usi due punti interrogativi non ti rispondo. 🙂
Il messaggio ti dice che, probabilmente a causa di una riga orfana, la pagina non è “ben riempita”.
Soluzioni ce ne sono: cerca \enlargethispage nella guida; altrimenti puoi cercare di riscrivere qualche capoverso in modo che occupino una riga di più. Sono aggiustamenti da fare solo alla fine del lavoro.
Ciao
Enrico
-
15 Settembre 2009 alle 14:39 #36875::
La prossima volta che usi due punti interrogativi non ti rispondo. 🙂
Il messaggio ti dice che, probabilmente a causa di una riga orfana, la pagina non è “ben riempita”.
Soluzioni ce ne sono: cerca \enlargethispage nella guida; altrimenti puoi cercare di riscrivere qualche capoverso in modo che occupino una riga di più. Sono aggiustamenti da fare solo alla fine del lavoro.
Ciao
EnricoIl doppio punto interrogativo è una mia caratteristica, rafforza la domanda (deviazioni dei social network), comunque il problema è che con dà riferimenti al punto in cui si verifica l’ “errore”, ora farò un pò di prove. Grazie
-
15 Settembre 2009 alle 15:15 #36876::
Il doppio punto interrogativo è una mia caratteristica, rafforza la domanda (deviazioni dei social network),
Se hai deviato, torna sulla retta via. 🙂
comunque il problema è che non dà riferimenti al punto in cui si verifica l’ “errore”, ora farò un pò di prove. Grazie
Il punto in cui TeX si rende conto del problema è proprio quando deve decidere di formare una pagina. Non può dirti altro.
Tipicamente succede quando in fondo alla pagina ci potrebbe stare la riga iniziale di un capoverso, ma non di più (riga orfana) o, ancora peggio, quando in fondo alla pagina ci potrebbe stare un titolo di sezione (di qualsiasi livello) senza testo a seguire.
Per questo, allungare un paio di capoversi nella pagina incriminata può risolvere; si fa riscrivendo il testo o provando con \looseness. Un’altra possibilità è di accorciare o allungare di una riga la coppia di pagine affacciate, con \enlargethispage. Ovviamente ciò va fatto solo quando si ha la stesura definitiva del documento: cambiamenti successivi potrebbero infatti non solo rendere inutile l’aggiustamento, ma peggiorare la situazione.
Trovi \enlargethispage e \looseness nell’Arte. Nota che ti ho risposto nonostante tu abbia scritto una certa parola con l’accento invece dell’apostrofo. 🙂
Ciao
Enrico
-
15 Settembre 2009 alle 16:31 #36877
-
16 Settembre 2009 alle 8:47 #36878::
Che discorsi sono, scusa?
Se sono di fretta mica ti chiamo con il tuo nome al femminile, se sei un maschio, o al maschile se sei femmina, no?
La lingua scritta non ammette errori, perché il tempo a disposizione per pianificare il discorso è virtualmente illimitato.
Non si possono commettere devianze ortografiche, non si possono commettere e basta.
Non è questione di pignoleria. Certi errori non hanno ragione di esistere, tanto meno in un forum pubblico come il seguente.Ciao
TommasoPS: la pratica del tema è dannosa e obsoleta.
-
16 Settembre 2009 alle 10:03 #36879
-
17 Settembre 2009 alle 5:50 #36880
-
18 Gennaio 2011 alle 1:18 #36881::
`Underfull \vbox (badness 3158) has occurred while \output is active
Underfull \vbox (badness 1097) has occurred while \output is active`quando compilo mi da questi 2 avvisi che però non credo vadano a inficiare il risultato finale, però se qualcuno lo sa può dirmi come eliminarli??
Il messaggio ti dice che, probabilmente a causa di una riga orfana, la pagina non è “ben riempita”.
Soluzioni ce ne sono: cerca \enlargethispage nella guida; altrimenti puoi cercare di riscrivere qualche capoverso in modo che occupino una riga di più. Sono aggiustamenti da fare solo alla fine del lavoro.
Ciao, mi riallaccio alla discussione perchè, seppur esaurita, mi sembra mi riguardi. in effetti anche io sono vittima dello stesso errore e, nonostante i suggerimenti dell’arte (li ho provati praticamente tutti) non vedo spiragli.
Più che altro, si riferisce ad una fantomatica linea 56 che non esiste (sulla quale non ho scritto).
Grazie in anticipo,
Emanuele
-
18 Gennaio 2011 alle 6:53 #36882::
Ciao, mi riallaccio alla discussione perchè, seppur esaurita, mi sembra mi riguardi. in effetti anche io sono vittima dello stesso errore e, nonostante i suggerimenti dell’arte (li ho provati praticamente tutti) non vedo spiragli.
Più che altro, si riferisce ad una fantomatica linea 56 che non esiste (sulla quale non ho scritto).Come inserisci le tue figure e tabelle? Solo con oggetti mobili? Introdotti con [tb] se sono piccoli e con [p] se sono grossi?
Ci vogliono più informazioni per dirti qualcosa di più.
Ciao,
L.
-
18 Gennaio 2011 alle 18:10 #36883::
Come inserisci le tue figure e tabelle? Solo con oggetti mobili? Introdotti con [tb] se sono piccoli e con [p] se sono grossi?
Ci vogliono più informazioni per dirti qualcosa di più.
Ciao,
L.Ciao Lorenzo,
mah, per la verità di tutto questo ancora non ho inserito nulla. Ti basti pensare che sono ancora a pagina 4. Proprio per questo mi è sembrato strano quello che accadeva. Fino ad ora il testo è quanto di più lineare si possa immaginare.Ciao, Emanuele.
-
18 Gennaio 2011 alle 19:15 #36884::
`Underfull \vbox (badness 3158) has occurred while \output is active
Underfull \vbox (badness 1097) has occurred while \output is active`quando compilo mi da questi 2 avvisi che però non credo vadano a inficiare il risultato finale, però se qualcuno lo sa può dirmi come eliminarli??
Si tratta solo di avvisi piuttosto innocenti che informano il compositore (te, nella fattispecie) che ci sono due pagine che presentano un piccolo grado di “bruttezza”.
Ti da fastidio vedere queste informazioni? Metti nel preambolo il comando
`\vfuzz4000`Vuoi sapere perché ci sono due pagine con una eccessivo allargamento della gomma verticale tale da segnare una bruttezza al massimo del valore 3158?
Devi prima sapere che cos’è la bruttezza; è un parametro che grosso modo rappresenta di quanto TeX ha dovuto dovuto allargare la gomma complessiva della spaziatura verticale per allineare la pagina al fondo del blocco del testo. Precisamente la bruttezza è proporzionale al cubo dell’ammontare dell’allargamento rispetto al disponibile, cioè è proporzionale al cubo del rapporto fra l’allungamento che è stato necessario imporre alla gomma, rispetto a quanto la gomma era disponibile ad essere allargata.
Se tutte le righe della pagina fossero alte nelle stesso modo e l’altezza del testo \textheight fosse un multiplo intero dell’altezza della riga, (è solo una mezza verità) non ci sarebbe nessun bisogno di allargare la colla. Se la pagina contiene alcune cose la cui altezza non è un multiplo intero dell’altezza della singola riga, TeX è costretto ad allargare al colla.
Gli oggetti che possono avere altezze diverse da multipli interi di una riga di testo sono moltissimi, dalle equazioni, alle figure, tabelle, titoli si \section, \subsection, eccetera.
La colla da allargare generalmente si trova prima o dopo gli oggetti fuori testo, come le equazioni, le figure, le tabelle, i titoli delle \section, \subsection, eccetera; ma si trova anche un poco di colla nello spazio che precede ogni capoverso.
Inoltre esistono i vincoli per le righe vedove e le righe orfane; una riga vedova è l’ultima riga di un capoverso solitaria all’inizio di una pagina; una riga orfana è la prima riga di un capoverso solitaria alla fine di una pagina. Inoltre i titoli delle sezioni non possono essere separati dal primo capoverso del loro testo; quindi per evitare righe orfane il titolo di un paragrafo deve essere seguito da almeno due righe di testo del primo capoverso prima che possa aversi un cambio di pagina (e sempre che il capoverso non sia di sole tre righe — perché?),
Ne segue che per evitare le righe vedove ed orfane e per evitare salti di pagina dopo il titoli delle sezioni, TeX preferisce allargare la colla presente un una data pagina per poter spostare qualche riga nella pagina successiva.
Questo lungo spiegone, forse troppo tecnico, ti fa intravedere la complessità dei calcoli che TeX esegue dietro le quinte per comporre nella maniera eccellente che tutti conosciamo; naturalmente non sempre fa quello che ci piacerebbe che facesse e talvolta (quasi sempre) siamo noi a sbagliare le nostre pretese rispetto a quanto TeX sa fare eccellentemente da solo.
Spesso non è colpa altro che del testo; magari spostando una frase, aggiungendo un aggettivo (possibilmente non pleonastico) riformulando una frase, si riesce ad ottenere l’utile e il dilettevole (TeX compone il nostro testo come vogliamo noi e anche come vuole lui).
Tuttavia conoscendo le cause della formazione di scatole verticali (o orizzontali) troppo vuote, da un lato sappiamo come comportarci e nel caso possiamo ignorare i Warning come quelli che hai ricevuto tu; Se la badness valesse 10000 (nel gergo di TeX 10000 vuol dire “infinito”) allora dovremmo preoccuparci, altrimenti impostare \hfuzz e \vfuzz a valori di poche migliaia ci permette di non essere disturbati da informazioni spesso del tutto trascurabili; Non le dovremmo trascurare solo per una composizione perfettissima; talvolta TeX ci riesce, talvolta dobbiamo dargli una mano.
-
18 Gennaio 2011 alle 19:29 #36885
-
13 Febbraio 2011 alle 14:50 #36886::
Salve a tutti!Dunque, io ho ragione di essere preoccupato, visto quanto detto da OldClaudio, il quale ringrazio per la esauriente spiegazione.
Ebbene, vorrei imparare a correggere questo tipo di warning. È qualche anno che uso LaTeX con Kile, ma non ho mai capito come si risolve questo problema.
L’errore con cui ho molto spesso a che fare è appunto questo:
`Underfull \hbox (badness 10000) in paragraph at lines 67–70`
Ho provato a fare diverse prove, modificando quello che c’era scritto, commentando righe e il problema non sparisce. Anzi, a volte va alla riga successiva.Il problema ulteriore è che mi risulta quasi impossibile capire con esattezza cosa generi questo warning. Qualcuno mi può aiutare?
-
13 Febbraio 2011 alle 15:05 #36887::
Salve a tutti!
Dunque, io ho ragione di essere preoccupato, visto quanto detto da OldClaudio, il quale ringrazio per la esauriente spiegazione.
Ebbene, vorrei imparare a correggere questo tipo di warning. È qualche anno che uso LaTeX con Kile, ma non ho mai capito come si risolve questo problema.
L’errore con cui ho molto spesso a che fare è appunto questo:
`Underfull \hbox (badness 10000) in paragraph at lines 67–70`
Ho provato a fare diverse prove, modificando quello che c’era scritto, commentando righe e il problema non sparisce. Anzi, a volte va alla riga successiva.Il problema ulteriore è che mi risulta quasi impossibile capire con esattezza cosa generi questo warning. Qualcuno mi può aiutare?
In quelle righe per caso hai usato qualche “\\” di troppo? Cioè sei andato a capo con \\?
Ho letto (non ricordo dove) che le “\\” producono questo warning, innocuo si, ma sembra che rallenti la compilazione.
Per i dettagli aspetta gli esperti.Ciao,
ansys.
-
13 Febbraio 2011 alle 17:21 #36888::
No, \\ non c’entra niente.Quelle righe hanno la colla (o gomma) un po’ larga (essenzialmente lo spazio fra le parole) e quindi appare uno spazio bianco eccessivo fra una parola e l’altra.
Le cause possono essere molteplici; di solito si risolvono riformulando il capoverso; però ci sono situazioni, come la composizione i colonne strette, dove non è possibile riformulare il capoverso, perché è la colonna stratta che richiede più elasticità nella composizione; in questo caso sarebbe meglio comporre ragged right, magari usando il pacchetto ragged2e che lascia una tolleranze sulla lunghezza della riga in po’ inferiore a quella lasciata dal comune comando \raggedright, e talvolta, ragged2e, inserisce anche qualche punto di cesura.
Se scrivi qualcosa in carattere typewriter, ricordati che per questo è vietata la sillabazione; le righe che contengono tratti scritti in typewriter type (\ttfamily} di solito presentano gravi difetti di composizione.
Mandami un messaggio personale (qui in basso c’è il bottoncino mp per farlo) accludendo un file sorgente con il preambolo e un qualsiasi capoverso che ti mostri questo problema; è chiaro che come una rondine non fa primavere, un solo capoverso non fa la regola. Tuttavia merita vedere che cosa c’è sotto.
Grazie; aspetto i messaggio personale.
-
13 Febbraio 2011 alle 18:20 #36889::
`Underfull \vbox (badness 3158) has occurred while \output is active
Underfull \vbox (badness 1097) has occurred while \output is active`quando compilo mi da questi 2 avvisi che però non credo vadano a inficiare il risultato finale, però se qualcuno lo sa può dirmi come eliminarli??
[…].
Ti da fastidio vedere queste informazioni? Metti nel preambolo il comando
`\vfuzz4000`[…] Se la badness valesse 10000 (nel gergo di TeX 10000 vuol dire “infinito”) allora dovremmo preoccuparci, altrimenti impostare \hfuzz e \vfuzz a valori di poche migliaia ci permette di non essere disturbati da informazioni spesso del tutto trascurabili; […]
Mi permetto di correggere una piccola, ma potenzialmente fuorviante distrazione di OldClaudio: quando nomina \hfuzz e \vfuzz, intende evidentemente rfierirsi, invece, a \hbadness e \vbadness.
`
\vbadness = 4000
`
(ll’uguale è facoltativo). Il codice
`
\vfuzz = 4000
`
(o
`
\vfuzz4000
`
che dir si voglia) produce ovviamente un errore causato dalla mancanza di un’unità di misura (pt inseriti). E, naturalmente, \vfuzz è un’altra cosa: 4000 (pt inseriti) di fuzzyness sono veramente tanti!Ciao.
—
Gustavo
-
13 Febbraio 2011 alle 18:37 #36890::
Infatti! Chiedo scusa dell’errore comunicato urbi et orbi.\vbadness e \hbadness sono di valori di bruttezza sott la quale non avvisare la persona che sta componendo;
\vfuzz e \hfuzz sono delle misure di fuoriuscita da bordi sotto ai quali il compositore chiede di non essere informato.
Mettere \hfuzz=3pt (circa un millimetro) vuol dire essere molto di bocca buona; 1pt 1.5pt mi parrebbero il massimo accettabile.
per \vfuzz sarei più tollerante, visto che due pagine affacciate non hanno le griglie di stampa adiacenti come le righe di un capoverso; quindi 3pt o 4pt non li vede nessuno a meno che non metta un righello sotto al blocco di stampa di due pagine affacciate.
Per le bruttezze da specificare con ‘hbadness e \vbadness, anche qui la bruttezza orizzontale di 4000 unità è visibile ad occhio nudo, la stesa bruttezza per una pagina, specialmente se ha abbastanza gomma da allargare è quasi invisibile; Come Gustavo mi ha fatto osservare, e come sarà prossimamente corretto nell’Introduzione, la bruttezza è una funziona cubica dell’allargamento relativo della gomma complessiva che si trova in una riga o che si trova in una pagina. Di solito la bruttezza verticale è più tollerabile della bruttezza orizzontale. Ma questa potrebbe essere una mia impressione.
-
13 Febbraio 2011 alle 19:11 #36891::
[…]
\vfuzz e \hfuzz sono delle misure di fuoriuscita da bordi sotto ai quali il compositore chiede di non essere informato.
Nell’interesse della chiarezza, mi sia consentito aggiungere che esse riguardano esclusivamente la formazione di “scatole sovrariempite” (overfull boxes); in generale un problema concernente una “scatola sottoriempita” (underfull box) non viene influenzato da tali parametri.
Mettere \hfuzz=3pt (circa un millimetro) vuol dire essere molto di bocca buona; 1pt 1.5pt mi parrebbero il massimo accettabile.
per \vfuzz sarei più tollerante, visto che due pagine affacciate non hanno le griglie di stampa adiacenti come le righe di un capoverso; quindi 3pt o 4pt non li vede nessuno a meno che non metta un righello sotto al blocco di stampa di due pagine affacciate.
A titolo di paragone, il valore di default impostato da Plain TeX e da LaTeX è 0,1 punti (circa 0.03 mm).
Perdonate la pignoleria. Ciao.
—
Gustavo
-
13 Febbraio 2011 alle 21:49 #36892
-
13 Febbraio 2011 alle 22:47 #36893::
Continuo a dire che \\ non c’entra niente. Se levando quel \\ o; motivo per cui spariscono le righe underful è che il motore di composizione, che come not lavora sull’intero capoverso, e non sulla singola riga, ridistribuisce le sillabe delle varie parole in un altro modo.Di per sé \\ introduce una penalità negativa e la gomma di fine riga, non lascia allargare la riga troncata fino ad espandersi fino alla fine dlela giustezza, come farebbe per esempio \linebreak; questo infatti:
a) recupera un eventuale spazio emesso prima del comando;
b) inserisce una penalità derivante dall’opzione specificata come argomento facoltativo;
c) reinserisce lo spazio precedentemente tolto.Invece \\ agisce in modo molto più complicato perché accetta sia l’asterisco facoltativo sia l’ammontare dello spazio verticale da inserire dopo la nuova riga; tuttavia in modo testo e senza argomenti facoltativi mette una penalità positiva (non tagliare la riga) aggiunge una gomma orizzontale infinitamente allungabile, poi mette una penalità negativa (taglia qui).
Dunque \\ riempie il resto della riga con gomma infinitamente allungabile, mente \linebreak non lo fa. \linebreak, se non c’è nessuno spazio da recuperare, taglia la riga, ma pretende che arrivi a fine giustezza e la rende generalmente underful; invece \\ non lo da mai.
Questo è il motivo per cui ho detto che \\ non è responsabile di righe underful; ma la sua presenza o la sua assenza, eccezionalmente obbliga il motore di composizione a non avere abbastanza gomma su cui giocare per allungare le righe a piena giustezza, almeno tutte le restanti righe del capoverso, fino alla penultima compresa. Volendo questa mancanza di gomma potrebbe presentarsi anche nelle righe che precedono quella troncata.
Questo è anche il motivo per il quale si raccomanda sempre di non cominciare un “punto e a capo” con \\. questo comando, infatti non termina il capoverso, ma termina la riga.
-
14 Febbraio 2011 alle 8:29 #36894
-
14 Febbraio 2011 alle 9:13 #36895::
Questo è anche il motivo per il quale si raccomanda sempre di non cominciare un “punto e a capo” con \\. questo comando, infatti non termina il capoverso, ma termina la riga.
Ok, quindi in generale è sempre meglio mettere un \linebreak ?
No, una riga vuota; \linebreak va considerato come un comando di emergenza, come una frenata improvvisa in auto.
Ciao
-
14 Febbraio 2011 alle 14:59 #36896::
Evidentemente non mi sono spiegato bene.\linebreak non è da usare mai, se uno non ha una ruota bucata! Ma anche con la ruota bucata io non lo userei lo stesso.
O usi \\ con la sue opzioni, o usi \newline che equivale a \\ senza opzioni, o, meglio di tutto, cominci un nuovo capoverso con una riga vuota e la lettera maiuscola all’inizio della riga successiva alla riga vuota.
-
14 Febbraio 2011 alle 18:47 #36897::
Caro fbcyborg,forse riusciremmo a spiegarci meglio se tu inviassi un esempio concreto in cui ti si produce una scatola sottoriempita: ti faremmo vedere esattamente dove e perché, nel tuo esempio, essa si produce. Avevi parlato di una
`Underfull \hbox (badness 10000) in paragraph at lines 67–70`
ma precisando che era solo un esempio fra tanti; be’, non riesci a ricuperarlo? Sicuramente non ti limiti a scrivere un capoverso, perché la normale attività di composizione dei capoversi non produce — in caso di impossibilità a rispettare i rigidi criteri di \tolerance prescritti da LaTeX — scatole sottoriempite, bensì sovrariempite.
Ciao.
—
Gustavo
-
14 Febbraio 2011 alle 20:43 #36898::
OK! Le due righe incriminate sono queste:
`\vspace{3cm} \textsc{Nominativo 1:} nome cognome \hspace{3.0cm}\textsc{Nominativo 2:} nome cognome\\
\textsc{Nominativo 3:} nome cognome\\`
Togliendo l’ultimo “\\”, ovvero lasciando le righe in questo modo:
`\vspace{3cm} \textsc{Nominativo 1:} nome cognome \hspace{3.0cm}\textsc{Nominativo 2:} nome cognome\\
\textsc{Nominativo 3:} nome cognome`
Il warning sparisce.
-
14 Febbraio 2011 alle 22:03 #36899
-
14 Febbraio 2011 alle 22:09 #36900::
OK! Le due righe incriminate sono queste:
`\vspace{3cm} \textsc{Nominativo 1:} nome cognome \hspace{3.0cm}\textsc{Nominativo 2:} nome cognome\\
\textsc{Nominativo 3:} nome cognome\\`
Togliendo l’ultimo “\\”, ovvero lasciando le righe in questo modo:
`\vspace{3cm} \textsc{Nominativo 1:} nome cognome \hspace{3.0cm}\textsc{Nominativo 2:} nome cognome\\
\textsc{Nominativo 3:} nome cognome`
Il warning sparisce.Eh, be’, certo: non devi concludere un capoverso con \\ ! Se lo fai, LaTeX va a capo quando trova il \\, e il capoverso finisce con una riga vuota che deve essere stirata fino a occupare la normale larghezza di riga: ecco qui la tua underfull hbox. Poiché ti avevo promesso di indicare il punto esatto nel quale si verifica il problema, accludo le prove (peraltro del tutto superflue, in un caso di palmare evidenza come questo), cioè il listato prodotto da \tracingparagraphs=1:
`
@firstpass
[]\T1/cmr/m/sc/10 Nominativo 1: \T1/cmr/m/n/10 nome cognome \T1/cmr/m/sc/10 No
minativo 2: \T1/cmr/m/n/10 nome
@ via @@0 b=4 p=0 d=196
@@1: line 1.2 t=196 -> @@0
cognome
@\penalty via @@1 b=0 p=-10000 d=100
@@2: line 2.2 t=296 -> @@1
\T1/cmr/m/sc/10 Nominativo 3: \T1/cmr/m/n/10 nome cognome
@\penalty via @@2 b=0 p=-10000 d=100
@@3: line 3.2 t=396 -> @@2
@secondpass
[]\T1/cmr/m/sc/10 Nominativo 1: \T1/cmr/m/n/10 no-me co-gno-me \T1/cmr/m/sc/10
No-mi-na-ti-vo 2: \T1/cmr/m/n/10 no-
@\discretionary via @@0 b=114 p=50 d=27876
@@1: line 1.0- t=27876 -> @@0
me
@ via @@0 b=4 p=0 d=196
@@2: line 1.2 t=196 -> @@0
co-gno-me
@\penalty via @@1 b=0 p=-10000 d=10100
@\penalty via @@2 b=0 p=-10000 d=100
@@3: line 2.2 t=296 -> @@2
\T1/cmr/m/sc/10 Nominativo 3: \T1/cmr/m/n/10 no-me co-gno-me
@\penalty via @@3 b=0 p=-10000 d=*
@@4: line 3.2 t=296 -> @@3@\par via @@4 b=10000 p=-10000 d=*
@@5: line 4.0- t=296 -> @@4
`
In rosso, come sempre, il punto cruciale. Le cesure precedenti, e cioè @@4, @@3 e @@2 hanno, come puoi vedere, costi molto modesti.Forse ti chiederai che fine ha fatto la colla \parfillskip che conclude il capoverso, e che normalmente consente di stirarne l’ultima riga a costo zero; ma, ovviamente, essa è stata scaricata in quanto segue immediatamente un punto di cesura. (Aggiunta a messaggio già inviato: e non è essa stessa un punto di cesura.)
Penso di aver mantenuto la promessa di spiegare esattamente il dove e il perché. Ricorda: mai terminare un capoverso con \\ : il capoverso si termina da sé!
Ciao.
—
Gustavo
-
14 Febbraio 2011 alle 22:22 #36901::
Ciao!
Ringrazio per la spiegazione molto precisa e soprattutto tecnica. Devo ammettere però, che ancora non ho proprio l’esperienza per comprendere a fondo tutto quanto. Comunque credo di aver compreso il senso. Di sicuro terrò ben presente il consiglio pratico di non terminare mai un capoverso con “\\”. 🙂
-
15 Febbraio 2011 alle 12:36 #36902::
Mi stavo rileggendo tutto il filone, e mi è venuta in mente un’altra cosa.[In quelle righe per caso hai usato qualche “\\” di troppo? Cioè sei andato a capo con \\?
Ho letto (non ricordo dove) che le “\\” producono questo warning, innocuo si, ma sembra che rallenti la compilazione.
Per i dettagli aspetta gli esperti.Ciao,
ansys.È esattamente così, e il nostro esempio lo illustra alla perfezione; riprendiamo infatti in mano il tracciato:
`
@firstpass
[]\T1/cmr/m/sc/10 Nominativo 1: \T1/cmr/m/n/10 nome cognome \T1/cmr/m/sc/10 No
minativo 2: \T1/cmr/m/n/10 nome
@ via @@0 b=4 p=0 d=196
@@1: line 1.2 t=196 -> @@0
cognome
@\penalty via @@1 b=0 p=-10000 d=100
@@2: line 2.2 t=296 -> @@1
\T1/cmr/m/sc/10 Nominativo 3: \T1/cmr/m/n/10 nome cognome
@\penalty via @@2 b=0 p=-10000 d=100
@@3: line 3.2 t=396 -> @@2
`
@@3 è la cesura all’ultimo \\ (3a linea, decente); a questo punto TeX si accorge che la cesura successiva (obbligatoria, è la fine del capovero) produrrebbe una scatola la cui bruttezza eccede \pretolerance (è 10000), e quindi abbandona il primo passo e sottopone l’intero capoverso a sillabazione, processo oneroso in termini di tempo. Oltretutto, lo fa del tutto inutilmente, perché il capoverso alla fine viene spezzato in righe senza sfruttare alcuna delle cesure addizionali trovate con la sillabazione, e dunque il primo passo sarebbe stato sufficiente, se non ci fosse stato quel \\ .
`
@secondpass
[]\T1/cmr/m/sc/10 Nominativo 1: \T1/cmr/m/n/10 no-me co-gno-me \T1/cmr/m/sc/10
No-mi-na-ti-vo 2: \T1/cmr/m/n/10 no-
@\discretionary via @@0 b=114 p=50 d=27876
@@1: line 1.0- t=27876 -> @@0
me
@ via @@0 b=4 p=0 d=196
@@2: line 1.2 t=196 -> @@0
co-gno-me
@\penalty via @@1 b=0 p=-10000 d=10100
@\penalty via @@2 b=0 p=-10000 d=100
@@3: line 2.2 t=296 -> @@2
\T1/cmr/m/sc/10 Nominativo 3: \T1/cmr/m/n/10 no-me co-gno-me
@\penalty via @@3 b=0 p=-10000 d=*
@@4: line 3.2 t=296 -> @@3@\par via @@4 b=10000 p=-10000 d=*
@@5: line 4.0- t=296 -> @@4
`
(In rosso i punti di cesura che entrano a far parte della sequenza di punti scelta alla fine, in blu un ulteriore punto, ricavato dalla sillabazione, che però non viene utilizzato.)Conclusione: abbiamo riempito un’intera pagina di messaggi solo per accorgerci, alla fine, che ansys aveva già detto tutto quel che c’era da dire!
Ciao.
—
Gustavo
-
15 Febbraio 2011 alle 14:42 #36903::
Sì abbiamo tutti elucubrato troppo. Ma cerco le giustificazioni per me stesso: a tutto avrei pensato tranne che qualcuno potesse immaginare di indicare esplicitamente di andare a capo a fine capoverso 😯La prima cosa che si trova scritta su qualunque guida, anche elementare è appunto di terminare i capoversi con una riga vuota. Viene spiegato l’uso di \\ molto dopo. Forse non viene mai dato sufficiente rilievo al fatto che i capoversi si chiudono sempre e comunque solo e soltanto con una riga vuota 8)
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.