Risposte nei forum create
-
AutoreRisposte
-
::
grazie mille per il suggerimento.
Ora però nascono i probelmi. Come prima cosa devo specificare che sono su una macchina linux e come strumenti per lavoreare ho :
-installato latex digitando da console -> sudo apt-get install texlive (come SO ho ubuntu 8.4);
– installato Kile come editor;
Quando provo a compilare il file tesi.tex che trovo nel pacchetto che mi hai segnalato Kile mi segnala questo errore :
`[LaTeX] tesi.tex => tesi.dvi (latex)
[LaTeX] finished with exit status 1
/usr/share/texmf-texlive/tex/generic/babel/italian.ldf:0: No hyphenation patterns were loaded for(babel) the language `Italian'(babel) I will use the patterns loaded for \language=0 instead.
tesi.tex:95:File `tocbibind.sty' not found. ^^M
[LaTeX] 1 error, 1 warning, 0 badboxes`Ora mi piacerebbe capire da dove deriva, sapreste aiutarmi???
Dal fatto che hai installato solo una parte della texlive, probabilmente. Usa Synaptic o come diavolo si chiama per avere un’interfaccia grafica e installare tutti i pacchetti necessari.
Ciao
Enrico
::eh si, ma non me li mette in ordine alffabetico!
Credo di aver già risposto a una domanda del genere. Siccome TeX ha un linguaggio Turing-completo è possibile implementare un algoritmo di sorting che potrebbe fare al caso tuo. Ora, però, siamo realistici: quanti acronimi hai? Più di venti? Più di cento? E non possiedi una semplice funzione di ordinamento nel tuo editor? O non puoi inserirli a manina nell’ordine giusto?
Ciao
Enrico
::Buongiorno a tutti.
Ho cercato un po’ nel forum alcune soluzioni che però non rendono ciò che voglio far io.
Dovrei dare la descrizione di un manoscritto in modo che al numero della carta faccia seguito il suo contenuto, che a volte può essere disposto su più righe.
Avevo pensato ad una tabella, ma mi sembrava troppo laborioso ed inutile. Description sembrava la soluzione migliore. Solo non riesco a trovare il modo di allineare il testo che viene dopo il parametro opzionale di \item, che ovviamente varia di volta in volta.Se vuoi allineamenti, fa’ una tabella. In questo caso può tornare utile tabularx fornito dall’omonimo pacchetto:
`\begin{tabularx}{\textwidth}{lX}
Numero & contenuto \\
…
\end{tabularx}`
È impossibile ottenere questo effetto con description, che compone un \item alla volta e non può avere cognizione di ciò che viene dopo. Una tabella invece viene composta solo quando tutti i dati sono stati accumulati.Ciao
Enrico
::Ciao,
Quando compilo mi genera i corrispettivi .aux di tutti i file.tex tranne di uno. Non riesco a capire il motivo. Ho provato a spostare \include{nomefile.tex} in altre posizioni del documento ma non me lo legge.
Cosa può essere?
uso sia Kile che texmaker con codifica utf8.
Non è che per caso hai un \include dentro un file che richiami con \include?
Ciao
Enrico
::\usepackage{ragged2e}
\justifyingLa risposta è corretta, naturalmente. Ma sconsiglio di usare la giustificazione nelle presentazioni; primo perché i caratteri grandi danno difficoltà a ottenerla, secondo perché il testo apparirebbe troppo formale. Non si dovrebbe nemmeno lasciare a LaTeX il compito di dividere le righe: ogni diapositiva va riguardata e le righe divise “a mano”.
Ciao
Enrico
::aaah.. per l’opzione autolanguage basta scrivere
\usepackage[autolanguage]{numprin} giusto?
Iopensavo venisse messo il punto per le migliaia etc…
La sintassi è giusta.
Il punto come separatore delle migliaia è un’usanza da evitare. Il pacchetto, come avrai visto, separa le migliaia con uno spazio sottile. Non sapendo di che ti occupi, ti indico l’opzione “nosepfour” per evitare di separare le migliaia nei numeri di quattro cifre. Ovviamente dipende da quanti e quali numeri usi: se sono molti con più di quattro cifre, uniformità vorrebbe che andassero separati anche quelli da quattro.
Ciao
Enrico
::leggendo “come scrivere una tesi in Latex” ho notato il suggerimento del pacchetto numprint per scrivere i numeri.
solo che se scrio \numprint{10.500} diecimilacinquecento
viene fuori 10,500 (dieci virgola 500)ma se scivo \numprint{2,3}
viene fuori 2,3 (due virgola tre)e non si capisce la differenza tra il primo e il secondo numero!
Per scrivere diecimilacinquecento va usato \numprint{10500}. Il punto o la virgola servono per separare la parte decimale, verrà stampato il simbolo giusto se usi babel e dai a numprint l’opzione autolanguage.
Ciao
Enrico
::Sembra che il pacchetto caption vari la didascalia a seconda della lunghezza della prima linea.
Ho infatti incluso in un documento due figure caricando il caption con alcune opzioni come da codice seguente:`
\usepackage[format=hang,
margin=6pt,
font=small,
labelfont=bf,
labelsep=endash
]{caption}… nel documento:
\begin{figure}[p]
\centering
\includegraphics{pdf/vol00.pdf}
\caption{Piano interrato — platea di fondazione\\
Superficie: $1{,}45 \times 5{,}52 + 7{,}75 \times 14{,}75 = 122{,}32$\\
Scala: 1:100.}
\label{fig:00}
\end{figure}\begin{figure}[p]
\centering
\includegraphics{pdf/vol01.pdf}
\caption{Piano terra — primo impalcato\\
Superficie: $7{,}75 \times 14{,}75 = 114{,}31$\\
Scala: 1:100.}
\label{fig:01}
\end{figure}`Ecco che la prima didascalia è allineata a sinistra mentre la seconda è centrata sulla pagina.
Basta togliere una parola dalla prima riga che anche la prima si allinea al centro:` \caption{Piano interrato — platea\\% prima linea accorciata
Superficie: $1{,}45 \times 5{,}52 + 7{,}75 \times 14{,}75 = 122{,}32$\\
Scala: 1:100.}`Non trovate che sia bizzarro?
No. È il comportamento normalissimo, anche se appare “bacato”. Ciò che non dovresti fare è usare \\ nella didascalia. Puoi correggere con
`\captionsetup{singlelinecheck=false}`
Ciao
Enrico
::Salve a tutti, avrei un problemino con Latex (uso MikTex sotto Vista): mi sono definito un newcommand per sostituire \begin e \end tabular e un newenvironment per crearmi delle tabelle in testo. Ho dei problemi però per quanto riguarda l’output delle tabelle (ne ho create 2), le quali non mi vengono centrate come vorrei; inoltre la descrizione \caption mi appare sballata, ovvero non la visualizzo a capo ma bensì di seguito alla tabella.
La prima tabella è in testo e la visualizzo non centrata con la didascalia che non va a capo, mentre la seconda è una tabella in corpo, definita con il newenvironment, anch’essa non è centrata ma però la didascalia la visualizzo correttamente a capo.
Questo di seguito è il codice, spero che possiate aiutarmi a risolvere:`
\newcommand{\btab}[2] {\begin{tabular}{c|c|c}} {\centering}
\newcommand{\etab}[1] {\end{tabular}}\newenvironment{tabella}
{\begin{table} \btab}
{\etab\caption {\footnotesize Tabella 2 – Esempio di tabella fuori testo costruita con newenvironment}
\end{table}
}\begin {document}
\title {}
\author {}
\date {}
\maketitle\btab
\multicolumn{1}{c}{DATA} & \multicolumn{1}{c}{CITTA'} & \multicolumn{1}{c}{LOCATION} \\
\hline
…
\hline
\etab
\caption {\footnotesize Tabella 1 – Esempio di tabella non fuori testo costruita con un newcommand}\begin{tabella}
\multicolumn{1}{c}{DATA} & \multicolumn{1}{c}{CITTA'} & \multicolumn{1}{c}{LOCATION} \\
\hline
…
\hline
\end{tabella}\end {document}`
Stai facendo pasticci notevoli. Con \newcommand{\xxx}[2]{,,,} definisci un comando con due argomenti. Il tuo {\centering} non fa assolutamente nulla, perché compare nel preambolo e certamente non fa parte della definizione. Ovviamente TeX si mangia i suoi argomenti e ti trovi con qualcosa di inaspettato. Per esempio,
`\btab
\multicolumn{1}{c}{DATA} & …`
diventa
`\begin{tabular}{c|c|c}{c}{DATA} &`
perché \multicolumn e {1} sono i due argomenti del comando \btab.Mi chiedo dove sia la convenienza di fare definizioni del genere, quando
`\begin{table}[htp]
\centering
\begin{tabular}{…}
…
\end{tabular}
\caption{…}\label{…}
\end{table}`
non è più complicato di quanto vuoi ottenere. Che fra l’altro ti obbligherebbe (se le definizioni fossero corrette) a sole tabelle di tre colonne. Perché poi definire l’ambiente “tabella” con una didascalia fissa? A che serve? A mettere il testo della didascalia nel preambolo e non nel documento?Ciao
Enrico
::Vorrei definire un ambiente che legge le righe in formato csv in esso contenute, e le elabori nella maniera voluta, per esempio creando un database con il pacchetto datatool o semplicemente salvando il testo in una serie di macro per usi successivi.
Per capirci, il seguente esempio potrebbe comportare la creazione del database (datatool) di nome mydata:
`\begin{dbtable}{mydata}
Sara, 45 , 60
Antonio, 78 , 89
Giuseppe, 45 , 12
\end{dbtable}
`
Il pacchetto datatool non permette questa efficace sintassi perché prevede che i dati csv debbano essere posizionati solo in un file esterno (ne sono abbastanza sicuro), altrimenti è necessario utilizzare un numero elevato di comandi (un comando per ciascun campo di ciascuna riga, intervallati dai comandi di nuova riga).Nel caso delle macro, l’ambiente dbtable dovrebbe invece memorizzare i campi in macro (globali) per esempio per inserirne i valori in una tabella:
Per esempio, dopo l’ambiente precedente, la macro \data@mydata@row1@field1 dovrebbe espandersi in “Sara”.Ho pensato che \scantokens di e-tex potrebbe essere la soluzione perché lavora aprendo un file virtuale, ma non saprei proprio come impostare l’implementazione.
Purtroppo non puoi farlo con \scantokens; infatti datatool usa \openin e \read per leggere il file .csv, mentre con \scantokens{…} leggi la lista di token argomento di \scantokens come se fosse un file soggetto a \input.
Un modo per definire i comandi che vorresti è
`\newcount\row
\newcount\col\newenvironment{dbtable}[1]
{\setbox0=\vbox\bgroup\setupdbtable{#1}%
\halign\bgroup&\relax\processentry{##}\crcr}
{\crcr\egroup\egroup}
\def\processentry#1{%
\global\advance\col by 1
\expandafter\gdef\csname data@\tablename@row\number\row@field\number\col\endcsname{#1}}
\def\setupdbtable#1{\def\tablename{#1}%
\catcode`,=4 \catcode`\ =9
\row=0 \col=0 \everycr{\noalign{\global\advance\row 1 \global\col 0 }}}\begin{dbtable}{mydata}
Sara, 45 , 60 \cr
Antonio, 78 , 89 \cr
Giuseppe, 45 , 12 \cr
\end{dbtable}`Puoi controllare che la cosa funzioni dando
`\def\x#1#2{%
\expandafter\show\csname data@mydata@row#1@field#2\endcsname}\x{1}{1}
\x{1}{2}
\x{1}{3}
\x{2}{1}
\x{2}{2}
\x{2}{3}
\x{3}{1}
\x{3}{2}
\x{3}{3}`
Ci sono vari difetti che forse possono essere corretti: gli spazi sono ignorati, quindi non puoi usarli all’interno di un argomento; occorre una terminazione delle righe. Ho provato rendendo attivo \endlinechar, ma non ci sono riuscito. Puoi evitare di dover ignorare gli spazi mettendo la virgola subito dopo il contenuto della cella:
`\begin{dbtable}{mydata}
Sara, 45, 60\cr
Antonio, 78, 89\cr
Giuseppe, 45, 12\cr
\end{dbtable}`
L’uso di \halign è solo per avere a disposizione i vari argomenti uno alla volta.Ciao
Enrico
::È del tutto evidente a chi prova con \markboth che il risultato è scorretto, infatti la testatina non è composta con lo stile delle altre. Occorre
`\markboth{\MakeUppercase{}}{\MakeUppercase{ }}`
Rimango del mio parere che nella classe report non ci devono essere capitoli non numerati, a meno che la parte relativa non sia composta sotto \pagestyle{plain}.Sarà comunque meglio dire: “i capitoli non numerati vanno inseriti con il comando \chapter (senza asterisco) dopo la dichiarazione \frontmatter e prima di \mainmatter”
Riprovo:
Se si sta scrivendo un libro, una tesi o una relazione e si desidera un capitolo non numerato, come ad esempio una prefazione o numerati dei ringraziamenti (mentre è consigliabile numerare normalmente l’eventuale introduzione, che è un capitolo come gli altri), è decisamente preferibile che nei capitoli non numerati non vi sia alcuna testatina. Se si usano le classi standard, a tal fine è sufficiente impostare per essi lo stile di pagina plain (vedi il paragrafo 4.5 a pagina 29).
Se si desiderano comunque le testatine nei capitoli non numerati, va tenuto presente che nelle classi standard il comando \chapter* richiede che i contenuti delle testatine ottenute con lo stile headings vengano forniti manualmente. A tal fine si usa il comando \markboth:
`\markboth{\MakeUppercase{}}%
{\MakeUppercase{}}`
Per esempio:
`\chapter*{Prefazione}
\markboth{\MakeUppercase{Prefazione}}{\MakeUppercase{Prefazione}}`
Questo problema non si presenta se i capitoli non numerati vengono inseriti usando l’apposita dichiarazione \frontmatter, messa a disposizione dalla classe book (i capitoli non numerati vanno inseriti con il comando \chapter, senza asterisco, dopo \frontmatter e prima di \mainmatter), oppure se si usano le classi AMS.Che ne pensi?
Il paragrafo in rosso è da rivedere.
Ciao
Enrico
::salve a tutti, c’è un problema che mi assilla: ho bisogno di creare un elenco con i punti rossi e il testo nero. Sono riuscita a farlo con il seguente codice:
`
\textcolor{red}{\begin{itemize}
\item \textcolor{black}{testo}
\item \textcolor{black}{testo}
\end{itemize}}
`
pensavo di aver risolto, ma andando avanti mi è capitato di trovare parti del testo in rosso, come ad esempio il titolo di un capitolo e il testo successivo. ho cercato di capire il motivo ma niente, la cosa strana è che subito dopo l’itemize, c’è del testo tranquillamente scritto in nero, poi all’improvviso comincia a scrivere in rosso per poi riprendere in nero.
quello che chiedo è se c’è un modo per creare un punto elenco rosso nel preambolo, che venga poi automaticamente inserito ogni qualvolta uso un itemize.
grazieSe vuoi tutti i tuoi pallini rossi (cosa che mi lascia alquanto perplesso, se ti devo dire la verità), la soluzione è di scrivere nel preambolo
`\renewcommand{\labelitemi}{\textcolor{red}{\textbullet}}`
Altrimenti puoi definire un ambiente
`\newenvironment{reditemize}
{\renewcommand{\labelitemi}{\textcolor{red}{\textbullet}}%
\begin{itemize}}
{\end{itemize}}`
Occhio che le etichette vengono rosse solo nelle liste di primo livello.Ciao
Enrico
::Grazie, ragazzi.
Chiedo ancora due cose. Esiste una lista dei comandi italiani che offre babel se impostato con l’opzione italian?E ancora: ho visto che molti problemi si possono risolvere con i comandi \makeatletter e \makeatother. Non ho la minima idea di cosa vogliano dire, né credo che sarei mai capace di usarli per risolvere i problemi. Però, se un noto autore 8) volesse usarmi la cortesia di spiegarmeli succintamente, leggerei il chiarimento con molto piacere.
È un analogo LaTeX dell’usanza alchimistica di fare gli esperimenti all’iinterno di un pentagramma. 🙂
Di per sé i due comandi non risolvono nulla, ciò che fanno è di permettere l’uso del carattere @ come se fosse una lettera che quindi può far parte del nome di un comando. Così si può accedere all’area “privata” dei comandi di LaTeX; nel caso specifico ci occorrono i comandi privati \m@th, \sf@size e \z@.
Si segue poi la pratica LaTeX di definire due versioni di ogni comando: una “esterna” che è \textsubscript, e una “interna”, cioè \@textsubscript. Non sarebbe necessario; è una tradizione che ha però i suoi vantaggi.
Ciao
Enrico
::Buongiorno a tutti.
In linguistica testuale esiste la consuetudine di segnalare la mancanza superficiale del soggetto grammaticale di una frase (quella che si chiama “ellissi del soggetto”) con un simbolo che somiglia molto a quello dell’insieme vuoto in matematica.Io me la sono cavata così:
`\textbf{\O}`
se il simbolo in questione compare una sola volta. in quest’altro modo:
`{\textbf{\O}\ped{1}}`
se ne compare più d’uno, e in questo caso le successive occorrenze debbono essere numerate progressivamente in pedice. Il grassetto (che so doversi evitare come le tabelle su più pagine 😀 ) è soltanto per evidenziare la presenza dell’ellissi alla prima occhiata (tenete presente che il documento è costituito da una serie di esempi destinati a una classe di prima superiore). In altri casi ho dovuto anche sottolinearlo, ma questo non è un problema.
È corretto il codice che ho usato?
Sconsiglierei la “O barrata”, meglio il simbolo dell’insieme vuoto:
`\usepackage{bm}
\newcommand{\szero}[1]{%
\ensuremath{\bm{\emptyset}_{#1}}}`
L’impiego del comando è semplice: \szero{1} per mettere il pedice, \szero{} per non metterlo.Ciao
Enrico
-
AutoreRisposte