- Questo topic ha 21 risposte, 6 partecipanti ed è stato aggiornato l'ultima volta 16 anni, 8 mesi fa da
admin.
-
CreatoreTopic
-
4 Aprile 2006 alle 17:39 #8652::
Un saluto a tutti.Sto redigendo un manuale e devo inserire una serie di righe di log.
Per motivi di larghezza pagina, cambio le dimensioni del font prima di \begin{verbatim}
e le ripristino dopo \end{verbatim}
Quello che ottengo però è una pagina dove l’interlinea dei paragrafi è visibilmente diversa.Sperando di non fare un post troppo lungo:
`
\documentclass[a4paper,12pt]{report}
\usepackage[latin1]{inputenc}
\usepackage[italian]{babel}
\usepackage{graphicx}
\usepackage{array}
\usepackage{colortbl}
\usepackage{color}
\usepackage[big,binding=0.0cm]{layaureo}
\usepackage{lscape}\title{aaaa}
\author{bbbb}\begin{document}
\maketitle
\begin{abstract}
aaaaaaaaa
\end{abstract}\section{Prova}
\subsection{clamd}
Il controllo antivirus \`e realizzato da un servizio che rimane in attesa che il server di posta interno gli passi un messaggio da controllare.\\
Se l'e-mail \`e pulita nel log compare:
\scriptsize
\begin{verbatim}
2006-03-31 10:25:18.358686500 Fri Mar 31 10:25:18 2006 -> Accepted connection on port 1152, fd 7
2006-03-31 10:25:18.362258500 Fri Mar 31 10:25:18 2006 -> stream: OK
\end{verbatim}
\normalsize
Se invece il messagio contiene un virus, clam lo segnala nel file di log ed elimina l'e-mail:
\scriptsize
\begin{verbatim}
2006-03-31 10:27:49.562901500 Fri Mar 31 10:27:49 2006 -> Accepted connection on port 1801, fd 7
2006-03-31 10:27:49.579161500 Fri Mar 31 10:27:49 2006 -> stream: Exploit.HTML.IFrame FOUND
\end{verbatim}
\normalsize
Occasionalmente clam non riesce ad allocare la memoria necessaria per il suo lavoro e si interrompe (ma viene subito dopo riavviato dai daemontools) e quindi il messaggio non viene esaminato prima di essere consegnato nella casella postale del destinatario:
\scriptsize
\begin{verbatim}
2006-03-31 10:27:19.781234500 Fri Mar 31 10:27:19 2006 -> Accepted connection on port 1581, fd 7
2006-03-31 10:27:20.327544500 LibClamAV Error: cli_realloc(): Can't re-allocate memory to 72 byte.
2006-03-31 10:27:20.327588500 realloc_problem: Cannot allocate memory
\end{verbatim}
\normalsize
Se l'errore non \`e ripetitivo \`e possibile ignorarlo, altrimenti bisogna indagare la causa del malfunzionamento.\end{document}
`Lo stesso risultato l’ottengo anche se uso:
`
\begin{scriptsize}
\begin{verbatim}
…
\end{verbatim}
\end{scriptsize}
`Come posso risolvere?
stefano
-
CreatoreTopic
-
AutoreRisposte
-
-
4 Aprile 2006 alle 18:31 #8653::
E’ stato detto molte volte che l’ambiente verbatim lascia un po’ a desiderare.
Usa il pacchetto fancyvrb. Esempio:
`
\documentclass[a4paper,12pt]{book}
\usepackage[latin1]{inputenc}
\usepackage[italian]{babel}
\usepackage{graphicx}
\usepackage{array}
\usepackage{colortbl}
\usepackage{color}
\usepackage[big,binding=0.0cm]{layaureo}
\usepackage{lscape}
\usepackage{fancyvrb}
\fvset{fontsize=\scriptsize, frame=single}\title{aaaa}
\author{bbbb}\begin{document}
\maketitle
\section{Prova}
\subsection{clamd}
Il controllo antivirus \`e realizzato da un servizio che rimane in attesa che il server di posta interno gli passi un messaggio da controllare.\\
Se l'e-mail \`e pulita nel log compare:
\begin{Verbatim}
2006-03-31 10:25:18.358686500 Fri Mar 31 10:25:18 2006 -> Accepted
connection on port 1152, fd 7 2006-03-31 10:25:18.362258500 Fri Mar
31 10:25:18 2006 -> stream: OK
\end{Verbatim}
Se invece il messagio contiene un virus, clam lo segnala nel file di
log ed elimina l'e-mail:
\begin{Verbatim}
2006-03-31 10:27:49.562901500 Fri Mar 31 10:27:49 2006 -> Accepted
connection on port 1801, fd 7 2006-03-31 10:27:49.579161500 Fri Mar
31 10:27:49 2006 -> stream: Exploit.HTML.IFrame FOUND
\end{Verbatim}
Occasionalmente clam non riesce ad allocare la memoria necessaria
per il suo lavoro e si interrompe (ma viene subito dopo riavviato
dai daemontools) e quindi il messaggio non viene esaminato prima di
essere consegnato nella casella postale del destinatario:
\end{document}`Prova e vedi se ti gusta. Se vuoi togliere la cornice, che comunque nei log la consiglio, togli frame=single dal comando \fvset. Nota che l’ambiente non è più verbatim ma Verbatim (la V maiuscola)
Un altro pacchetto (il mio preferito) è listings.
Leggi le documentazioni.
Ciao
Andrea
-
5 Aprile 2006 alle 7:35 #8654::
E’ stato detto molte volte che l’ambiente verbatim lascia un po’ a desiderare.
Usa il pacchetto fancyvrb. Esempio:snip
Prova e vedi se ti gusta. Se vuoi togliere la cornice, che comunque nei log la consiglio, togli frame=single dal comando \fvset. Nota che l’ambiente non è più verbatim ma Verbatim (la V maiuscola)
Un altro pacchetto (il mio preferito) è listings.
Leggi le documentazioni.
Ciao
Andrea
Grazie Andrea,
fancyvrb. risolve perfettamente il problema.
Ora bisogna che mi studio un po’ meglio la filosofia di LaTeX per risolvere un altro problema: ci sono dei punti del documento in cui una riga termina con due punti e subito dopo c’è il log che però va a finire nella pagina successiva.
Sarebbe carino, in questo caso, che anche la singola riga finisse a pagina nuova e l’uso di un \clearpage mi sembra una schifezza da word processor.
Ciao
stefano
-
5 Aprile 2006 alle 10:43 #8655::
Ti consiglio di lasciare lavorare latex. A me farebbe schifo vedere dello spazio bianco al posto di quella riga. Se proprio vuoi fare quello che desideri in maniera automatica si potrebbe fare un ambiente con dentro una minipage ma no ne vale la pena perché se il log è lungo più di una pagina non funge. E non usare \clearpage e, ripeto, lascia lavorare il buon caro e vecchio LaTeX che ci pensa lui.Ciao
Andrea
-
5 Aprile 2006 alle 13:34 #8656::
Un saluto a tutti.
Sto redigendo un manuale e devo inserire una serie di righe di log.
Per motivi di larghezza pagina, cambio le dimensioni del font prima di \begin{verbatim}
e le ripristino dopo \end{verbatim}
Quello che ottengo però è una pagina dove l’interlinea dei paragrafi è visibilmente diversa.Sperando di non fare un post troppo lungo:`…`Lo stesso risultato l’ottengo anche se uso:`\begin{scriptsize}
\begin{verbatim}
…
\end{verbatim}
\end{scriptsize}`Come posso risolvere?È troppo lungo. 😀
A parte che in questi casi è meglio usare fancyverb oppure più semplicemente il pacchetto verbatim che permette facilmente di modificare il corpo dei caratteri usati nell’ambiente verbatim, ti dico perché il tuo modo di scrivere non funziona.
Il comando \begin{verbatim} a un certo punto emette un \par, che fa terminare il paragrafo precedente. Solo che, a questo punto, è già in vigore \scriptsize, che modifica l’interlinea; quindi il paragrafo precedente viene composto con l’interlinea adatta a \scriptsize, che non è ciò che desideri. Il modo corretto è di scrivere \par\scriptsize. Con il pacchetto verbatim puoi fare meglio:`\usepackage{verbatim}
\newenvironment{smallverb}[1][\scriptsize]
{\par#1\verbatim}
{\endverbatim}`Se dopo \begin{smallverb} non metti niente, ottieni un verbatim in \scriptsize; se scrivi \begin{smallverb}[\footnotesize] ne ottieni uno in \footnotesize.Ciao
Enrico
-
5 Aprile 2006 alle 17:36 #8657::
A parte che in questi casi è meglio usare fancyverb oppure più semplicemente il pacchetto verbatim che permette facilmente di modificare il corpo dei caratteri usati nell’ambiente verbatim, ti dico perché il tuo modo di scrivere non funziona.
Il comando \begin{verbatim} a un certo punto emette un \par, che fa terminare il paragrafo precedente. Solo che, a questo punto, è già in vigore \scriptsize, che modifica l’interlinea; quindi il paragrafo precedente viene composto con l’interlinea adatta a \scriptsize, che non è ciò che desideri. Il modo corretto è di scrivere \par\scriptsize. Con il pacchetto verbatim puoi fare meglio:`\usepackage{verbatim}
\newenvironment{smallverb}[1][\scriptsize]
{\par#1\verbatim}
{\endverbatim}`Se dopo \begin{smallverb} non metti niente, ottieni un verbatim in \scriptsize; se scrivi \begin{smallverb}[\footnotesize] ne ottieni uno in \footnotesize.Ciao
EnricoOk, la tua spiegazione è un po’ troppo avanti per le mie conoscenze attuali, ma credo di aver capito quello che succedeva.
Mi sto rendendo conto che LaTeX è molto complesso.
Fortuna che esiste questo Forum, e soprattutto le persone che aiutano i novizi come me.
Ciao
stefano
-
5 Aprile 2006 alle 17:46 #8658::
Ti consiglio di lasciare lavorare latex. A me farebbe schifo vedere dello spazio bianco al posto di quella riga. Se proprio vuoi fare quello che desideri in maniera automatica si potrebbe fare un ambiente con dentro una minipage ma no ne vale la pena perché se il log è lungo più di una pagina non funge. E non usare \clearpage e, ripeto, lascia lavorare il buon caro e vecchio LaTeX che ci pensa lui.
Ciao
Andrea
Sì, in generale sono convinto anch’io che LaTeX è in grado di ottenere ottimi risultati.
Alcuni documenti però, per motivi di chiarezza o di praticità, possono anche essere brutti.
Una pagina mezza vuota non è il massimo, ma se nella successiva ho il log e la spiegazione del significato di ogni singola riga, tutto disponibile con un unico colpo d’occhio, penso che si possa passare sopra alle regole tipografiche a favore della praticità di lettura.
Ciao
stefano
P.s. ho provato a racchiudere tra \begin[minipage} \end{minipage} un parte del testo che volevo apparisse sulla stessa pagina, ma il paragrafo successivo a \end{minipage} risulta attaccato, senza rispettare l’interlinea, al contenuto precedente.
-
6 Aprile 2006 alle 8:14 #8659::
Sì, in generale sono convinto anch’io che LaTeX è in grado di ottenere ottimi risultati.
Alcuni documenti però, per motivi di chiarezza o di praticità, possono anche essere brutti.
Una pagina mezza vuota non è il massimo, ma se nella successiva ho il log e la spiegazione del significato di ogni singola riga, tutto disponibile con un unico colpo d’occhio, penso che si possa passare sopra alle regole tipografiche a favore della praticità di lettura.
Ciao
stefanoP.s. ho provato a racchiudere tra \begin[minipage} \end{minipage} un parte del testo che volevo apparisse sulla stessa pagina, ma il paragrafo successivo a \end{minipage} risulta attaccato, senza rispettare l’interlinea, al contenuto precedente.
L’ambiente minipage crea una “scatola”, cioè impacchetta il suo contenuto in un oggetto che viene trattato come se fosse un singolo carattere. Quindi non è perfettamente adatto a “tenere insieme il testo” così com’è.
Sulla questione dell’impaginazione hai insieme ragione e torto. È vero che, a volte, occorre passare sopra alla qualità dell’impaginazione avendo lo scopo di aumentare la chiarezza espositiva (l’esempio che fai è abbastanza azzeccato). Ma ci sono altri modi di procedere, per esempio racchiudendo la spiegazione con il log in un ambiente “galleggiante” (come table, per esempio).
Puoi scoprire parecchie cose frequentando questo forum.
Ciao
Enrico
-
6 Aprile 2006 alle 13:22 #8660
-
7 Gennaio 2010 alle 12:16 #8661::
Salve. Mi accodo a questa discussione perchè ho bisogno anche io di una interlinea variabile. Nel preambolo ho impostato
`\usepackage{setspace}
\doublespacing`.
La dichiarazione è chiaramente globale.Volevo chiedere come poter applicare tale tipo di interlinea solo al corpo del documento, e non ai vari indici e titoli.Grazie mille 😉 .
-
7 Gennaio 2010 alle 14:14 #8662
-
7 Gennaio 2010 alle 14:24 #8663::
Salve. Mi accodo a questa discussione perchè ho bisogno anche io di una interlinea variabile. Nel preambolo ho impostato
`\usepackage{setspace}
\doublespacing`.
La dichiarazione è chiaramente globale.Volevo chiedere come poter applicare tale tipo di interlinea solo al corpo del documento, e non ai vari indici e titoli.Grazie mille 😉 .
Per modificare l’interlinea di una parte del documento, hai due strade da seguire.
Se ti accontenti di interlinee predefinite, carica il pacchetto setspace e racchiudi il testo interessato in uno di questi ambienti`\begin{onehalfspacing}
parole parole
\end{onehalfspacing}`
per interlinea 1,5, oppure in
`\begin{doublespacing}
parole parole
\end{doublespacing}`
per interlinea doppia.
Se, invece, vuoi un fattore di interlinea ancora diverso, racchiudi il testo in
`\begin{spacing}{
} parole parole
\end{spacing}`
da impostare come il comando standard
`\linespread{
}` dove <fattore di scala> è il numero che rappresenta il fattore di scala per l’avanzamento di riga.
Ciao
Tommaso
-
7 Gennaio 2010 alle 14:24 #8664::
Salve. Mi accodo a questa discussione perchè ho bisogno anche io di una interlinea variabile. Nel preambolo ho impostato
`\usepackage{setspace}
\doublespacing`.
La dichiarazione è chiaramente globale.Volevo chiedere come poter applicare tale tipo di interlinea solo al corpo del documento, e non ai vari indici e titoli.Grazie mille 😉 .
Sperando di non incorrere nelle ire di Enrico, ci provo. Non mettere il comando \doublespacing nel preambolo. Lo inserisci dove vuoi la doppia interlinea e poi per tornare a quella normale usa \singlespacing.
LaTeX assegna automaticamente gli spazi prima e dopo i titoli in base al carattere usato (credo), scalando anche la dimensione del carattere stesso. Questo ‘elastico’ che vuoi fare tu non penso possa dare un risultato tipograficamente corretto e piacevole a vedersi. L’ultima parola, però, spetta a chi è più di me.Ciao,
GianniP.S.: mi spieghi come fai a far apparire nel profilo la parola ‘neofita’ sotto il nickname? Grazie mille. 😉
-
7 Gennaio 2010 alle 14:26 #8665
-
7 Gennaio 2010 alle 14:34 #8666::
A far comparire la parola neofita, intermedio e avanzato sotto il nick provvede il software che gestisce il forum in base al numero di messaggi che hai mandato. Dovrebbe essere così.
Ciao
TommasoGrazie infinite, Tommaso. Era solo una curiosità. Ci puoi dare un’idea di quando uscirà la nuova versione dell’Arte? 😀
-
7 Gennaio 2010 alle 14:38 #8667
-
7 Gennaio 2010 alle 14:39 #8668::
Salve. Mi accodo a questa discussione perchè ho bisogno anche io di una interlinea variabile. Nel preambolo ho impostato
`\usepackage{setspace}
\doublespacing`.
La dichiarazione è chiaramente globale.Volevo chiedere come poter applicare tale tipo di interlinea solo al corpo del documento, e non ai vari indici e titoli.Grazie mille 😉 .
Sperando di non incorrere nelle ire di Enrico, ci provo. Non mettere il comando \doublespacing nel preambolo. Lo inserisci dove vuoi la doppia interlinea e poi per tornare a quella normale usa \singlespacing.
LaTeX assegna automaticamente gli spazi prima e dopo i titoli in base al carattere usato (credo), scalando anche la dimensione del carattere stesso. Questo ‘elastico’ che vuoi fare tu non penso possa dare un risultato tipograficamente corretto e piacevole a vedersi. L’ultima parola, però, spetta a chi è più di me.La risposta è quasi corretta. 🙂 Questa procedura però richiede un lavoraccio e si rischia di dimenticarsi qualche comando. Vediamo i modi per risolvere il problema, in ordine di merito:
1. non usare interlinea ampliata, mai e per nessun motivo;
2. dare \onehalfspacing (\doublespacing è davvero troppo) e accorciare i titoli in modo che occupino una sola riga;
3. chiamare titlesec e definire i titoli in modo che usino \singlespacing;
4. dare \singlespacing prima di un titolo che occupi più di una riga e \onehalfspacing dopo.Ciao
Enrico
-
7 Gennaio 2010 alle 14:40 #8669
-
7 Gennaio 2010 alle 15:06 #8670
-
7 Gennaio 2010 alle 15:12 #8671::
[quote]Salve. Mi accodo a questa discussione perchè ho bisogno anche io di una interlinea variabile. Nel preambolo ho impostato
`\usepackage{setspace}
\doublespacing`.
La dichiarazione è chiaramente globale.Volevo chiedere come poter applicare tale tipo di interlinea solo al corpo del documento, e non ai vari indici e titoli.Grazie mille 😉 .
Sperando di non incorrere nelle ire di Enrico, ci provo. Non mettere il comando \doublespacing nel preambolo. Lo inserisci dove vuoi la doppia interlinea e poi per tornare a quella normale usa \singlespacing.
LaTeX assegna automaticamente gli spazi prima e dopo i titoli in base al carattere usato (credo), scalando anche la dimensione del carattere stesso. Questo ‘elastico’ che vuoi fare tu non penso possa dare un risultato tipograficamente corretto e piacevole a vedersi. L’ultima parola, però, spetta a chi è più di me.La risposta è quasi corretta. 🙂 Questa procedura però richiede un lavoraccio e si rischia di dimenticarsi qualche comando. Vediamo i modi per risolvere il problema, in ordine di merito:
1. non usare interlinea ampliata, mai e per nessun motivo;
2. dare \onehalfspacing (\doublespacing è davvero troppo) e accorciare i titoli in modo che occupino una sola riga;
3. chiamare titlesec e definire i titoli in modo che usino \singlespacing;
4. dare \singlespacing prima di un titolo che occupi più di una riga e \onehalfspacing dopo.Ciao
Enrico[/quote]1.La penso esattamente come te e gli altri. Non sono della nostra opinione i regolamenti di Facoltà sulla stesura delle Tesi;
2.Cambierò \doublespacing in \onehalfspacing. Di mio cercherò di essere sintetico con i titoli;
3.Ho caricato titlesec per altri motivi (opzione compact e opzione medium o small), ma non sò definire i titoli in modo che usino \singlespacing ; 😥
4.Questa và fatta se non faccio tutto il resto?Dall’ ecm vedete se ho ben capito:
`
\documentclass[12pt,a4paper,oneside,openany]{book}\usepackage[english, italian]{babel} % uso lingue non inglesi
\usepackage[latin1]{inputenc} % ins. caratteri accentati
\usepackage[T1]{fontenc} % codifica dei font
\usepackage{lmodern}
\usepackage[small,compact]{titlesec}
\usepackage{indentfirst} % rientra il primo capoverso
\usepackage{microtype} % microtipografia
\usepackage{lipsum}
\usepackage{setspace}
\begin{document}\frontmatter
\tableofcontents
\mainmatter
\singlespacing
\chapter[Titolo corto]{Titolo lunghissimo titolo lunghissimo titolo lunghissimo titolo lunghissimo titolo lunghissimo}
\onehalfspacing
\section{Lipsum 1-6}
\lipsum[1-6]
\section{Lipsum 6-12}
\lipsum[7-12]
\end{document}
`
Un grazie di cuore a tutti.
-
7 Gennaio 2010 alle 15:42 #8672::
1.La penso esattamente come te e gli altri. Non sono della nostra opinione i regolamenti di Facoltà sulla stesura delle Tesi;
2.Cambierò \doublespacing in \onehalfspacing. Di mio cercherò di essere sintetico con i titoli;
3.Ho caricato titlesec per altri motivi (opzione compact e opzione medium o small), ma non sò definire i titoli in modo che usino \singlespacing ; 😥
4.Questa và fatta se non faccio tutto il resto?Dall’ ecm vedete se ho ben capito:
`%*****************************************************************************%
\documentclass[12pt,a4paper,oneside,openany]{book}
\usepackage[top =3cm,%
bottom=3cm,%
right =3cm,%
left =3cm]{geometry} % layout pagina
\usepackage[english, italian]{babel} % uso lingue non inglesi
\usepackage[latin1]{inputenc} % ins. caratteri accentati
\usepackage[T1]{fontenc} % codifica dei font
\usepackage{lmodern}
\usepackage[small,compact]{titlesec}
\usepackage{indentfirst} % rientra il primo capoverso
\usepackage{microtype} % microtipografia
\usepackage{lipsum}
\usepackage{setspace}
\onehalfspacing
\begin{document}
%*****************************************************************************%
\frontmatter
\tableofcontents
\mainmatter
\singlespacing
\chapter[Titolo corto]{Titolo lunghissimo titolo lunghissimo titolo lunghissimo titolo lunghissimo titolo lunghissimo}
\onehalfspacing
\section{Lipsum 1-6}
\lipsum[1-6]
\section{Lipsum 6-12}
\lipsum[7-12]
\end{document}
%*****************************************************************************%`
Un grazie di cuore a tutti.Aggiungi questo prima di \begin{document}:
`\makeatletter
\let\latex@chapter\@chapter
\def\@chapter[#1]#2{\latex@chapter[#1]{#2}\endgroup}
\let\latex@schapter\@schapter
\def\@schapter#1{\latex@schapter{#1}\endgroup}
\let\latexchapter\chapter
\def\chapter{\begingroup\singlespacing\latexchapter}
\makeatother`
Con questo codice non hai problemi per i titoli di capitolo. Per sezioni con titolo lungo la faccenda diventerebbe molto più complicata. 🙁Occhio agli accenti: su “so” e su “va” non mi pare ci stiano così bene. 🙂
Ciao
Enrico
-
7 Gennaio 2010 alle 15:51 #8673::
Aggiungi questo prima di \begin{document}:
`\makeatletter
\let\latex@chapter\@chapter
\def\@chapter[#1]#2{\latex@chapter[#1]{#2}\endgroup}
\let\latex@schapter\@schapter
\def\@schapter#1{\latex@schapter{#1}\endgroup}
\let\latexchapter\chapter
\def\chapter{\begingroup\singlespacing\latexchapter}
\makeatother`
Con questo codice non hai problemi per i titoli di capitolo. Per sezioni con titolo lungo la faccenda diventerebbe molto più complicata. 🙁Non finirò mai di ringraziarvi.
Occhio agli accenti: su “so” e su “va” non mi pare ci stiano così bene. 🙂
Ciao
Enrico🙄 ….. 😳
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.