Risposte nei forum create
-
AutoreRisposte
-
::
sì infatti ero quello che pensavo anche io…volevo vedere in quale maniera \faketablofcontents poteva risolvere il problema.
Comunque facendo un po’ di prove commentando di qua e di là ho scoperto che proprio i due pacchetti minitoc e titletoc non si possono vedere proprio per il fatto della variabile “lofdepth” (o almeno credo che sia questo il problema…)
credo che al momento risolverò facendo \part{appendici}…anche perché ne ho abbastanza per motivare questa situazione. Intanto ringrazio appena provo un’altro documento senza minitoc faccio sapere 😉 ciao!
Credo che invece siano tocloft e titletoc che non si possono vedere: del resto agiscono sulla stessa cosa; da quello che ho visto, minitoc prende parecchie precauzioni per essere compatibile con altri pacchetti.
Ciao
Enrico
::Allora ho provato ad invertire il caricamento dei due pacchetti ma senza risultato, mi potresti spiegare meglio questa cosa di \faketableofcontents?
Mi sa che devo proprio abbandonare minitoc per far andare tutto…peccato mi piaceva molto come pacchetto…
L’errore è dovuto al fatto che, durante il caricamento di tocloft, LaTeX trova la definizione del contatore lofdepth che è già definito (la riga 608 di tocloft.sty contiene appunto \newcounter{lofdepth}).
Evidentemente c’è qualcosa che non va nel tuo preambolo, ma senza vederlo è difficile capire di che si tratta. Naturalmente basta vederne una versione ridotta: inutile metterci ciò che non serve a riprodurre l’errore. Facendo il lavoro per trovare l’esempio minimale, è possibile che tu stesso possa scoprire la causa dell’errore.
Il pacchetto minitoc ha bisogno, per i suoi mestieri, del file .toc che viene prodotto normalmente dal comando \tableofcontents. Siccome però tu non vuoi l’indice globale, puoi produrre il file .toc senza inserire effettivamente l’indice usando \faketableofcontents; mettilo subito dopo \begin{document}.
Ciao
Enrico
::pensavo di aver risolto leggendo questo topic ma mi vengono fuori degli errori, premetto che uso mintoc e penso che sia quello la causa degli errori e warning
`! LaTeX Error: Command \c@lofdepth already defined.
Or name \end… illegal, see p.192 of the manual.See the LaTeX manual or LaTeX Companion for explanation.
Type Hfor immediate help.
…l.608 \newcounter{lofdepth}
\setcounter{lofdepth}{1}
Your command was ignored.
Type Ito replace it with another command,
orto continue without it. ! LaTeX Error: Command \c@lotdepth already defined.
Or name \end… illegal, see p.192 of the manual.See the LaTeX manual or LaTeX Companion for explanation.
Type Hfor immediate help.
…l.609 \newcounter{lotdepth}
\setcounter{lotdepth}{1}
Your command was ignored.
Type Ito replace it with another command,
orto continue without it.`
e come warning
` Package minitoc(hints) Warning:
(minitoc(hints)) You have used \minitoc but not
(minitoc(hints)) \tableofcontents
(minitoc(hints)) nor \faketableofcontents.Package minitoc(hints) Warning:
(minitoc(hints)) Some hints have been written
(minitoc(hints)) in the tesina*or.log file.`Il messaggio di warning è chiaro: non puoi usare \minitoc (o \begin{minitoc}, non sono pratico del pacchetto) senza usare \tableofcontents; se non vuoi l’indice globale, devi inserire all’inizio del documento il comando \faketableofcontents.
Per il messaggio di errore direi che il problema nasce dal caricamento di minitoc prima di tocloft. Prova a invertire l’ordine con cui li carichi.
Ciao
Enrico
::Ho descritto più problemi in un solo post perchè pensavo di risparmiare spazio e fare meno confusione…cmq la prossima non sbaglierò.
tornando ai problemi che vi ho esposto, quando compilo il file tex mi da questo warning
Package babel Warning: No hyphenation patterns were loaded for
(babel) the language `greek’
(babel) I will use the patterns loaded for \language=0 instead.cmq se lascio la grandezza del carattere a 10, mi da il mess di warning, ma il testo in graco lo scrive correttamente. Se imposto 14pt tutte le scritte in greco vengono visualizzate in normalissimo times, ed il warning rimane.
La documentazione di babel l’ho spulciata un po’, ma non mi è sembrato di notare qualche rif a tale problema.Non hai detto che usavi il pacchetto times.
(1) Per evitare il messaggio “No hyphenation patterns” scrivi questo prima di caricare babel:
`\makeatletter
\chardef\l@greek=255
\makeatother`
oppure, anche meglio, abilita la sillabazione del greco. Questo dipende dal sistema operativo e dalla distribuzione che usi.(2) Per avere il greco correttamente, devi fare così: nel preambolo del documento scrivi
`\makeatletter
\newcommand{\greek@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}
{<-> #51000}{}}
\DeclareFontFamily{LGR}{cmr}{}
\greek@family{LGR}{cmr}{m}{n} {grmn}
\greek@family{LGR}{cmr}{m}{sl} {grmo}
\greek@family{LGR}{cmr}{m}{it} {grmi}
\greek@family{LGR}{cmr}{m}{sc} {grmc}
\greek@family{LGR}{cmr}{m}{ui} {grmu}
\greek@family{LGR}{cmr}{bx}{sc} {grxc}
\greek@family{LGR}{cmr}{bx}{n} {grxn}
\greek@family{LGR}{cmr}{bx}{sl} {grxo}
\greek@family{LGR}{cmr}{bx}{it} {grxi}
\greek@family{LGR}{cmr}{bx}{ui} {grxu}
\DeclareFontShape{LGR}{cmr}{b}{n}
{<->ssub*cmr/bx/n}{}
\DeclareFontShape{LGR}{cmr}{b}{sc}
{<->ssub*cmr/bx/sc}{}
\makeatother
\newenvironment{greek}
{\fontfamily{cmr}\selectfont \catcode`~=11
\begin{otherlanguage*}{greek}}
{\end{otherlanguage*}}`
e usare \begin{greek}…\end{greek} per scrivere in greco.Le prime misteriose righe servono perché i font greci non sono disponibili come Type1 a corpi maggiori di 10pt; così li scali, il risultato non è ottimale, ma almeno hai font chiari. Quei font non si combinano benissimo con Times, però.
(3) La documentazione di setspace è nel file setspace.sty stesso.
(4) Scrivi in italiano: le parole cmq e rif non esistono, che io sappia.
Ciao
Enrico
::Salve a tutti, perdonatemi se torno di nuovo a scocciarvi dopo un solo giorno, ma come ho già detto son nuovo e tante cose non mi tornano….avrei aclune cosette da chiedervi:
1. Il mio prof mi ha imposto 14pt come grandezza del carattere per la tesi (lo so…è assurdo, ma non ci posso fare niente). Per ovviare alle limitazioni della classe book, ho usato
`\documentclass[oneside, 14pt, openany]{extbook}`
il problema è che ora tutte le scritte in greco non le visualizza più in greco, ma in normale times, per scrivere in greco ho usato
`\usepackage[greek,italian]{babel}
\usepackage{upgreek}
\begin{otherlanguage*}{greek}nean\'ias\end{otherlanguage*}
`
mi sapete dire cosa posso usare per scrivere in greco antico (con accenti e spiriti) mantenendo il testo a 14pt?2. Le note a piè di pagina che ho inserite, latex me le mette attaccate alla barra che le separa dal testo, la quale a sua volta è quasi attaccata all’ultima riga della pagina. C’è un modo per distanziare almeno la barra dall’ultima riga di testo (e se possibile anche le note dalla barra)?
3. Come faccio a mettere i numeri di pagina in basso e centrati?
Un problema per ogni messaggio, la prossima volta.
1. Togli \usepackage{upgreek} e leggi la documentazione di babel sul greco. Cerca anche sul tuo sistema teubner-doc.pdf per le convenzioni da usare per spiriti e accenti. La tua parola, per esempio, si può scrivere “nean’ias”. Una delle mie citazioni preferite è
`\begin{otherlanguage*}{greek}
P~as k'uklos >'isos >est`i trig'wnw| >orjogwn'iw|, o>~i
ek to~u k'entrou >'ish mi~a| t~wn per'i t'en
>orj'en,::Tra l’altro su word non c’è nemmeno se la sogni di notte. 😀 😀 😀
Secondo me si potrebbe aggiungere anche se non è così importante.
Ti regalo questo “perfezionamento”
`\makeatletter
\def\ph@sefill{\leaders\hrule height .12ex\hfill}
\newcommand\phase[2][23]{\vcenter{\offinterlineskip
\ialign{##\cr
$\left/\raise.#1ex\hbox{$#2$}\right.$\cr
\noalign{\vskip-.1ex}
$\mkern1.3mu\ph@sefill\mkern4mu$\cr}\vskip-.#1ex}}
\makeatother`
Adesso prova con
`{\Large
\begin{equation}
\phase[60]{\dfrac{1+2\zeta\tfrac{j\omega}{\omega_n}}{1+2\zeta\tfrac{j\omega}
{\omega_n}+\big(\tfrac{j\omega}{\omega_n}\big)^2}}=\pi
\end{equation}
}\begin{equation}
\phase[60]{\vphantom{\dfrac{\tfrac{j\omega}{\omega_n}}{\tfrac{j\omega}{\omega_n}}}
\dfrac{1}{1+2\zeta\tfrac{j\omega}
{\omega_n}+\big(\tfrac{j\omega}{\omega_n}\big)^2}}=\pi
\end{equation}\begin{equation}
\phase{\dfrac{W(s)}{I(s)}}\dfrac{W(s)}{I(s)}\phase{W(j*\omega)}W(s)
\end{equation}`
Difficile tenere conto di tutto e, come vedi, qualche \vphantom mette le cose a posto. Ma almeno, per le cose più comuni, funziona senza aggiustamenti.Il comando \phase ha un argomento opzionale (default 23 perché .23ex = 1pt a corpo 10) e uno obbligatorio. L’argomento opzionale è un valore compreso fra 10 e 99 che serve per fare l’aggiustamento che tu facevi con il secondo argomento di \fasebig.
Ho espresso tutte le misure in ex, in modo che non dipendano dal corpo in uso; ho aggiustato lo spessore della riga orizzontale in modo che sia come quella obliqua. Se, senza argomento opzionale, la riga orizzontale si stacca, puoi usare quello per rimettere le cose a posto.
Fa’ un po’ di prove e vediamo che ne pensi.
Ciao
Enrico
::[quote]Ragazzi, insieme al mio prof., anzi l’ha fatta quasi tutta lui, ho provato a fare la funzione fase, con discreti risultati…
Ciao Andrea, scusa la banalità, ma sei sicuro che non esista un pacchetto apposito che eviti di procedere in modo così… “manuale”?
Ciao,
L.No, purtroppo no. E’ l’unica funzione che manca, per quel che so io.
Cè il comando
`
\angle(F(s))`
ma a me non piace affatto.Si potrebbe anche creare una funzione \DeclareMathOperator{\arg}{arg}, ma quella che dico io purtroppo non c’è. [/quote]
Dici che questo possa andare?
`\makeatletter
\def\fase#1{\vcenter{\offinterlineskip\vskip1pt
\ialign{##\cr
$\left/\raise.7pt\hbox{$#1$}\right.$\cr
\noalign{\vskip-.3pt}
$\mkern1.3mu\hrulefill\mkern4mu$\cr}}}
\makeatother`
Ciao
Enrico
::8) Prometti di usarlo solo se capisci ciò che fanno questii comandi 8)
Ti do la mia parola d’onore. Anzi, il minimo che posso fare per ringraziarti è spiegare cio che sono riuscito a capire della tua definizione agli altri lettori interessati:
…Solo alcune imprecisioni. Il comando \par termina un paragrafo, ma non ne comincia uno nuovo. TeX comincia un nuovo paragrafo quando incontra, dopo un \par, un carattere, il comando \indent o il comando \noindent (o ancora altre cose, per la verità).
Il comando \@ifnextchar prende quattro argomenti:
`\@ifnextchar`
il primo è un token, il secondo contiene ciò che si deve fare se il primo argomento coincide con il quarto, il terzo cioè che si deve fare altrimenti. Lo si usa al termine della definizione di un comando specificando solo i primi tre argomenti, in modo che ii quarto sia il token che segue. Esempio:
`\def\@pippo[#1]#2{…}
\def\pippo{\@ifnextchar[\@pippo{\@pippo[xxx]}}`
è equivalente a
`\newcommand{\pippo}[2][xxx]{…}`
Infatti, quando TeX espande \pippo, \@ifnextchar raccoglie i suoi quattro argomenti e il quarto sarà esattamente il token che segue \pippo. La cosa importante è che questo quarto argomento viene poi rimesso al suo posto nella lista di token. Esaminiamo i due casi: se scriviamo \pippo[aaa]{ciao}, \@ifnextchar si accorge che il quarto argomento è la quadra, quindi sostituisce il tutto con \@pippo; se scriviamo \pippo{ciao}, sarà emesso \@pippo[xxx]. Perciò:
`\pippo[aaa]{ciao} \@pippo[aaa]{ciao}
\pippo{ciao} \@pippo[xxx]{ciao}`
Va osservato che il token con cui fare il paragone non può essere uno spazio, per motivi TeXnici. Normalmente si fa il paragone con un carattere (può essere [ oppure * per definire comandi con la variante), ma un token qualunque va bene. Per capire la definizione di \@pippo, occorre conoscere nei dettagli il comando \def e il modo di specificare i parametri delimitati e non delimitati.Nel nostro caso invece di [ si usa \par per fare il confronto. Il fine riga dopo \begin{example} viene ignorato (\@ifnextchar si “mangia” gli spazi che seguono il terzo argomento e il quarto è il primo token “non spazio” che segue). L’eventuale riga vuota è trasformata in \par e rende vero il test; una riga non vuota invece rende falso il test. Il token che segue è rimesso al suo posto e tutto procede: nel caso “vero” diventa argomento di \@gobble e sparisce, nel caso “falso” è il punto da cui ricomincia la lettura dei token.
Certo, per definire un comando con un argomento opzionale non c’è da fare tutta quella fatica, visto che c’è \newcommand che può occuparsene. Ma se vogliamo due argomenti opzionali, \@ifnextchar dà il modo di risolvere. Si può usare anche per vedere se il token che segue è una graffa aperta, ma in questo caso il primo argomento deve essere specificato come \bgroup.
Il significato usuale di @ (cioè non fra \makeatletter e \makeatother) è “il carattere @”, semplicemente. Nei file richiamati con \usepackage o caricati da questi, il carattere @ è considerato una lettera (quindi con \makeatletter … \makeatother impliciti).
Ciao
Enrico
::Quindi??
Quindi che? Hai segnalato un comportamento che non riesco a riprodurre: che vuoi che faccia?
Per essere chiaro: ho esaminato il pdf prodotto con tre previewer; il testo appare in tonalità perfettamente normale in tutte le slide.
Sto facendo sorveglianza a un esame e la sfera di cristallo è di sopra; non posso mettermi a fare riti voodoo, ti pare? 😀
Ciao
Enrico
::Ciao a tutti,
sto utilizzando Beamer e mi pare di aver scoperto un comportamento che a me pare molto strano..Utilizzo latex nella sua distribuzione TexLive2007 su Mac. Il codice che scrivo è il seguente:
`
\documentclass{beamer}
\mode{
\usetheme{Warsaw}
}\usepackage[english]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}\begin{document}
\section{Una sezione}
\begin{frame}
Testo di prova
\begin{block}{}
Testo di prova
\end{block}
\end{frame}\begin{frame}
Altro testo di prova
\end{frame}\begin{frame}
\begin{itemize}
\item Altro testo di prova
\end{itemize}
\end{frame}
\end{document}
`Il comportamento strano è che, nella seconda slide, il testo appare “molto chiaro”, come se si dovesse ancora scoprirlo (scusate la descrizione).. Nella terza slide, utilizzando l’environment “itemize” tutto torna a funzionare, ma inserendo testo al di fuori di itemize questo è ancora sbiadito..
Se elimino l’environmento “block” dalla prima slide oppure non utilizzo nessun tema tutto torna tormale..
Che dite??
Che a me non fa nulla di strano.
Ciao
Enrico
::Salve a tutti, sono nuovo dell’ambiente ed avrei una domandina da porvi.
Sto scrivendo una tesi di lettere classiche ed avrei bisogno di utilizzare alcuni accenti particolari (non intendo accenti tipo greco antico, ma particolari accenti ancora usati nelle lingue dell’est europa).
Vi sarei grato se poteste indicarmi magari una tabella che riporta tutti gli accenti ed i caratteri speciali di latex (sempre ammesso che esista).
Ringrazio anticipatamente tutti voi guru… 😀 RISPONDETE VELOCI 😀Pagina 24 della (mica) tanto breve introduzione; trovi il link in alto su questa stessa pagina. Aggiungo solo, perché là non c’è \r{u} per il circoletto.
Ciao
Enrico
::[Gli ambienti] che permettono di lasciare una riga vuota sono quelli che mantengono TeX in “modo verticale”, dove i comandi \par sono ignorati. Il problema con il tuo è che l’inizio dell’ambiente forza il modo orizzontale.
Se ho capito bene, quello che dovrei fare io è studiare prima di tutto che cosa voglia dire «modo verticale» e poi realizzare un ambiente di questo tipo.
Si può fare, naturalmente, ma secondo me è una perdita di tempo.
🙂 Be’, vorrà dire che proverò a farlo da solo, magari a tempo perso.
8) Prometti di usarlo solo se capisci ciò che fanno questii comandi 8)
`\makeatletter
\newenvironment{esercizio}
{\par\addvspace{\medskipamount}\noindent\textbf{Esercizio.}\ %
\@ifnextchar\par{\@gobble}{}}
{\par\addvspace{\medskipamount}}
\makeatother`
Non garantisco nulla; il computer potrebbe sciogliersi o lo schermo diventare viola. A parte gli scherzi, quella roba strana non è sicura in tutte le situazioni, quindi usala con cautela.Ti spiego solo \addvspace: se hai due esercizi consecutivi, verrà emesso solo un comando di spaziatura. Quando LaTeX vede due \addvspace consecutivi, esegue solo quello che ordina la spaziatura maggiore (uno solo se viene ordinata la stessa spaziatura da ambedue).
Ciao
Enrico
::puoi scrivere`\int_{a}^{b}f(x)\,\diff x`
Ok, grazie. Onestamente pensavo che dichiarare un operatore matematico imponesse qualcosa di un po’ più complicato della semplice equivalenza con`\,\mathrm{operatore}\,`
Infatti, non è così semplice. Gli spazi sottili prima o dopo ci sono solo in situazioni particolari. Per esempio, in “x+\log x” lo spazio sottile c’è solo dopo “log” e prima c’è il normale spazio dei simboli di operazione; invece in “\log(a+b)” lo spazio sottile non c’è.
Automaticamente.La definizione proposta di \diff cerca di ottenere il meglio possibile automaticamente; a volte funziona, a volte no. Ma se si vuole ottenere il massimo tipograficamente, bisogna adattarsi a qualche raffinamento manuale ogni tanto: nessun sistema automatico può fare tutto.
Per il “dx” io, sinceramente, preferisco fare a mano, ma capisco chi cerca di risparmiare “fatiche”.
Non voglio abusare della tua pazienza, ma se scrivo`\newcommand{\diff}{\mathrm{d}}`come mi suggerisci tu, e aggiungo le definizioni`\newcommand*{\deriv}[3][]{%
\frac{\diff^{#1}#2}{\diff #3^{#1}}}\newcommand*{\pderiv}[3][]{%
\frac{\partial^{#1}#2}%
{\partial #3^{#1}}}
`è tutto ok anche per l’altezza degli esponenti delle derivate n-esime?Nessun problema. Adesso che conosci le alternative, scegli.
Ciao
Enrico
::Stavo pensando: si potrebbe dare un’occhiata a uno di quegli ambienti «sicuri» di cui parli tu, cercare di capire come sono fatti a vedere se quella porzione di codice è riadattabile (se non è TeXnicamente troppo difficile). A naso, mi pare che l’ambiente «document» di article.cls si comporti come voglio io.
Per essere pedanti, “document” non è un vero e proprio ambiente (per motivi TeXnici). Quelli che permettono di lasciare una riga vuota sono quelli che mantengono TeX in “modo verticale”, dove i comandi \par sono ignorati. Il problema con il tuo è che l’inizio dell’ambiente forza il modo orizzontale.
Si può fare, naturalmente, ma secondo me è una perdita di tempo.
Ciao
Enrico
-
AutoreRisposte