egreg9

Risposte nei forum create

Stai visualizzando 15 risposte – dal 9,316 al 9,330 (di 13,205 totali)
  • Autore
    Risposte
  • in risposta a: “L’arte di scrivere in greco con LaTeX” #29323
    Up
    0
    Down
    ::

    No! Questa volta niente pdf pronto da scaricare, ma solo un bel po’ di dubbi, senza chiarire i quali mi sarà impossibile ultimare l’articolo; ve li espongo di seguito. 😉

    Si consideri il seguente esempio:
    `
    \documentclass[12pt]{article}
    \usepackage[applemac]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[10pt]{type1ec}
    \usepackage[greek,italian]{babel}
    \languageattribute{greek}{polutoniko}
    \newcommand{\greco}[1]{%
    \begin{otherlanguage*}{greek}#1\end{otherlanguage*}}
    \begin{document}
    \greco{“i ~h}
    \textgreek{“i ~h}
    {\greektext “i ~h}

    \greco{\Digamma}

    \greco{c s cc ss}
    \end{document}`

    1. Supponiamo di compilare il documento precedente con una distribuzione TeX Live o con una MiKTeX completa. Quali font greci vengono caricati nel documento finale? I cb (ovvero i font greci di Claudio Beccari)? I CM-Super?

    Lo vedi dal log.

    2. I cb fanno parte della distribuzione CM-Super?

    Sì e no.

    3. Cambierebbe qualcosa (al fine dei font greci) sostituendo nel codice precedente la riga
    `\usepackage[T1]{fontenc}`
    con
    `\usepackage[T1]{fontenc}
    \usepackage{lmodern}`

    I font lmodern non hanno il greco.

    4. Ho notato che specificare
    `\usepackage[10pt]{type1ec}`
    è essenziale, altrimenti i caratteri greci composti con un corpo diverso da 10 punti appaiono sgranati 😕 (basta compilare il documento di prova togliendo la chiamata a type1ec per rendersene conto). Sulla guida di Beccari c’è scritto che è possibile, in alternativa, scaricare da CTAN i font greci vettoriali “completi” (quindi con tutti i corpi, non solo quelli di 10 punti), che però occupano molto spazio.

    Il risultato estetico in quest’ultimo caso è migliore? Se sì, perché?

    Scommetto che hai ancora la TeX Live 2007. Io ottengo font non sgranati anche senza type1ec.

    5. Che cos’è la codifca LGR? Bsogna selezionarla esplicitamente in
    `\usepackage[LGR,T1]{fontenc}`
    oppure (come credo) essa viene comunque impostata automaticamente caricando babel con l’opzione greek?

    Domanda un po’ sciocca, non credi? Visto che il greco viene senza doverla richiedere.

    6. Sbaglio, oppure il comando predefinito di babel
    `\textgreek`
    (come peraltro l’omologa dichiarazione \greektext) non funziona con gli accenti? Basta confrontare, nel documento che ho proposto,
    `\textgreek{“i ~h}`
    con
    `\greco{“i ~h}`
    Che succede?

    Che il comando sceglie il greco monotonico, dove c’è un solo tipo di accento (quello acuto, se non sbaglio). Per meglio dire, con \textgreek non disabiliti ” e ~ come caratteri attivi, ciò che invece succede con \begin{otherlanguage*}{greek} avendo richiesto polutonikogreek. Per esempio, \textgreek{>a} produce lo spirito sopra l’alfa. Infatti con
    `\def\mygreek{\afterassignment\disableactives\let\next= }
    \def\disableactives{\leavevmode\bgroup\shorthandoff”\shorthandoff~\greektext}
    \mygreek{“i ~h}`
    ottieni gli accenti corretti.

    7.
    `\greco{\Digamma}`
    non funziona (produce una normale F latina)! Perché? Come si fa per avere il digamma (naturalmente, non credo possa andare il $\digamma$ del pacchetto amssymb!).

    Il comando \Digamma sceglie il carattere “C3 della codifica LGR (font cb, per intenderci), dove c’è una F maiuscola. Esiste \ddigamma per il digamma minuscolo.

    8. Visto che la tilde ~ è usata per l’accento circonflesso, che cosa si usa in greco per lo spazio insecabile?

    Solo per il greco politonico; per il monotonico la tilde va bene per lo spazio indivisibile. Siccome la definizione di ~ in LaTeX è
    `\def~{\nobreakspace{}}`
    direi che puoi usare \nobreakspace. 🙂

    9. Avrei bisogno di inserire una sigma minuscolo da sola, ma non come se fosse l’ultima lettera di una parola. In altre parole, vorrei una $\sigma$ solitaria, ma usando i font non matematici (se scrivo \greco{s} ottengo lo stesso che \greco{c}, se scrivo \greco{sx} l’ultima lettera è di troppo)… non so se mi sono spiegato. 🙄

    s\noboundary{}

    Ciao
    Enrico

    in risposta a: doppia f nelle formule matematiche #29314
    Up
    0
    Down
    ::

    accetto la bacchettata… cmq avevo già letto la tua guida e conoscevo il comando \text, è solo che vorrei usare il font “matematico” (permettetemi l’imprecisione), quindi avere i caratteri in corsivo e più marcati… c’è un modo per averli?

    usando \text il codice diventa:
    `
    \begin{equation}
    label{eq:att-corr} \text{Quick ratio} = \frac{\text{Liquidità immediate} + \text{Liquidità differite}}{\text{Passività correnti}}
    \end{equation}`
    ma non è come lo volevo io! e chiunque conosce latex sà come questo sia fastidioso… 😈 😈

    Orrore. Più ancora che scrivere “sa” con l’accento.

    Ciao
    Enrico

    in risposta a: Biblio generale E per capitolo; stessa numerazione + natbib #29318
    Up
    0
    Down
    ::

    Ciao a tutti,
    ho una richiesta un po’ particolare a proposito della bibligrafia.

    Vorei avere una bibliografia classica alla fine del documento con la numerazione classica E una bibliografia per ogni capitolo che contiene solo le opere citate ma che usa la numerazione della bibliografia finale. I vari pacchetti che ho trovato possono solo fare una numerazione continua nel capitolo ma in questo modo uno stesso libro ha numeri diversi in capitoli diversi.
    Il tutto deve inoltre essere compatibile con narbib.

    È possibile fare quello che chiedo ? (cioè, si, sono sicura che è possible, ma come ?)

    Stai in Francia da troppo tempo e ti vengono strane idee, oltre all’orribile abitudine di lasciare uno spazio prima del punto interrogativo. 🙂 Io trovo che quelle spaziature siano bruttissime: i due punti sembrano appesi nel nulla e il punto interrogativo se ne sta là per conto suo a interrogarsi su chi è, da dove viene e dove va. 😀

    Credo che si possa fare usando multibib, scrivendo un .bst che compili la bibliografia scrivendo
    `\bibitem[\cite{]{} …`
    in modo che il numero venga preso dalla bibliografia principale. Userai questo .bst nelle bibliografie per capitolo e uno standard per quella principale. Auguri.

    Ma uno si domanda: perché i francesi amano complicarsi la vita? 🙂

    Ciao
    Enrico

    in risposta a: Espansione chiavi in xkeyval #29300
    Up
    0
    Down
    ::

    Benissimo, tuttavia ho scoperto che facendo una ricerca nel forum con \setkeys avrei scoperto un post che mi avrebbe indirizzato sulla soluzione con \edef.
    Sperando che questa discussione non sia del tutto inutile per il forum, vorrei domandare il perchè una normale espansione come questa non funziona:`\expandafter\expandafter\expandafter\space\csname ctref@#1\endcsname`

    L’ultimo \expandafter espande \csname e quindi viene creato il token complesso con uno \space davanti (xkeyval ignora gli spazi iniziali e finali), il secondo \expandafter espande il token complesso e quindi ricava i caratteri.
    Al termine rimane un \space da far digerire a \setkeys.

    Forse è proprio quel \space?

    Dove la metteresti? Dentro un \edef? Occorre già avere a disposizione qualcosa da mettere al posto di #1, altrimenti sei nei pasticci.

    Ciao
    Enrico

    in risposta a: Includere Programmi con scritte in grassetto e corsivo #735
    Up
    0
    Down
    ::

    Ciao! ritorno sul problema….

    ho un testo LaTex :

    `\chapter{Code de l'exemple Complet C}
    \label{ch:CodeDeLExempleYS}

    \pagebreak
    \section{Exemple complet C – main.c}
    \mylstinputlisting[]{code/ExCompletC/main.c}

    \pagebreak
    \section{Exemple complet C – callbacks.h}
    \mylstinputlisting[]{code/ExCompletC/callbacks.h}`

    Il primo \pagebreak sono obbligata a metterlo se no da 125 errori!! e questo solo perché il primo file del capitolo é su sue pagine…se metto un codice che sta sulla prima pagina tutto funziona..

    Strano perché tutti i file che metto dopo li taglia correttamente, senza dare errori….

    Per me é un po’ un problema perché devo mettere dei codici C in annesso al mio documento. E facendo in questo modo ho il titolo del capitolo da solo su una prima pagina e i codici iniziano solo dopo…

    Sarebbe meglio se riuscissi a togliere l’errore e far iniziare il primo codice sulla pagina del capitolo….

    Avete un’idea????

    p.s. mylstinputlisting vedi questo topic “egreg9”, Sab Nov 22, 2008 6:39 pm

    Se provo senza \pagebreak non ottengo alcun errore, con un file di codice che non sta in una pagina. Magari se provi a riportare almeno uno di quei 125 errori…

    Ciao
    Enrico

    in risposta a: Tabelle: due righe nella stessa cella #29287
    Up
    0
    Down
    ::

    Ho messo tabular dentro tabular, ma ho grossi problemi con il dimensionamento della tabella

    Mi dispiace che tu non abbia capito e abbia scritto quella cosa terrificante! L’idea era di usare la macro \valore; per esempio la prima riga (dopo l’intestazione) diventa
    `Costante & \valore{-1.250}{-0.808} & \valore{14.913}{7.205} &
    \valore{0.853}{0.427} & \valore{7.034}{2.469} &
    \valore{9.539}{3.850} & \valore{9.875}{3.966} &
    \valore{9.865}{2.452} \\`
    Visto che si tratta di numeri anche negativi, la definizione di \valore deve essere modificata (va data prima di \begin{document}):
    `\newcommand{\valore}[2]{%
    \begin{tabular}{@{}c@{}}$#1$\\($#2$)\end{tabular}}`
    Per il problema della dimensione, è evidente che se nella prima colonna vuoi farci stare tutto intero
    `Quota di investimento lordo reale rispetto al Pil`
    i problemi li avrai. Guarda su una guida di base; probabilmente la prima colonna andrà specificata con p{3cm} o qualcosa di simile:
    `\begin{tabular}{p{3cm}*{7}{c}}
    \toprule
    \textbf{Regressori} & \textbf{1} & \textbf{2} & \textbf{3} & \textbf{4} & \textbf{5} & \textbf{6} & \textbf{7} \\
    \midrule
    Costante & \valore{-1.250}{-0.808} & \valore{14.913}{7.205} &
    \valore{0.853}{0.427} & \valore{7.034}{2.469} &
    \valore{9.539}{3.850} & \valore{9.875}{3.966} &
    \valore{9.865}{2.452} \\
    … \\
    \bottomrule
    \end{tabular}`
    Come vedi è possibile specificare un certo numero di colonne con lo stesso tipo di specifica usando un’abbreviazione.

    I comandi \toprule, \midrule e \bottomrule sono forniti dal pacchetto booktabs che ti consiglio di usare.

    Ciao
    Enrico

    in risposta a: Espansione chiavi in xkeyval #29298
    Up
    0
    Down
    ::

    Se sei sicuro che l’espansione di \ctref@ siano solo caratteri, dovresti ottenere ciò che desideri con
    `\expandafter\edef\csname ctref@#1\endcsname{\ctref@temp}
    \define@key{ctfamLabel}{#1}[]{%
    \edef\next{\noexpand\setkeys{ctfamLabel}[id]{\csname ctref@#1\endcsname}}
    \next
    }`

    Si funziona, anche se definire un comando temporaneo con \edef che espande la definizione all’interno della quale troviamo un \noexpand, è proprio un paradosso.

    L’ipotesi che faccio sul perché funziona è questa: \edef espande la definizione ma incontra un \noexpand ed inserisce il token \setkeys come è, ma espande tutto quello che segue, con il risultato dell’espansione in caratteri degli argomenti del comando.

    Esattamente, con il trucco di mettere ciò che si vuole espandere nel testo di sostituzione di \edef\next, inibendo però l’espansione di \setkeys ottengo la lista di token che desidero; poi basta espandere \next. Ricordarsi sempre che \edef è una brutta bestia, però. 🙂

    Ciao
    Enrico

    in risposta a: Problemi con l’indice #29244
    Up
    0
    Down
    ::

    Lorenzo, sei sicuro che esista la classe bokok? 😯

    Dai, è solo un refuso, voleva scrivere `book’.

    Ciao
    Enrico

    in risposta a: Espansione chiavi in xkeyval #29296
    Up
    0
    Down
    ::

    Il problema è questo: le chiavi sono memorizzati in una macro, quindi in \setkeys non avviene la corretta lettura delle chiavi perché il token è espanso ma non correttamente riconosciuto come sequenza di caratteri.

    Ecco il codice:
    `\expandafter\edef\csname ctref@#1\endcsname{\ctref@temp}
    \define@key{ctfamLabel}{#1}[]{
    \setkeys{ctfamLabel}[id]{\csname ctref@#1\endcsname}
    }`

    Ottengo l’errore:
    Package xkeyval Error: `id=tot,c,s’ undefined in families `ctfamLabel’.

    Se nel codice inserisco i caratteri dell’espansione funziona tutto correttamente:

    `\expandafter\edef\csname ctref@#1\endcsname{\ctref@temp}
    \define@key{ctfamLabel}{#1}[]{
    \setkeys{ctfamLabel}[id]{id=tot,c,s}%\csname ctref@#1\endcsname}
    }`

    Come posso espandere la macro ctref@ in puri caratteri da far lavorare correttamente \setkeys?

    Il codice fa parte di un pacchetto a cui sto lavorando. Mi scuso se il post riguarda una questione poco utile agli altri utenti.

    Mi pare che tu ti stia complicando la vita, ma sono affari tuoi. 🙂

    Se sei sicuro che l’espansione di \ctref@ siano solo caratteri, dovresti ottenere ciò che desideri con
    `\expandafter\edef\csname ctref@#1\endcsname{\ctref@temp}
    \define@key{ctfamLabel}{#1}[]{%
    \edef\next{\noexpand\setkeys{ctfamLabel}[id]{\csname ctref@#1\endcsname}}
    \next
    }`
    Ciao
    Enrico

    in risposta a: Tabelle: due righe nella stessa cella #29285
    Up
    0
    Down
    ::

    Salve a tutti,
    sono alle prese con la creazione di alcune tabelle. Il mio problema è qello di riuscire ad inserire due righe nella stessa “cella”.
    Sto creando una tabella con i risultati di una regressione lineare, ed in ogni cella, oltre al valore del coefficiente stimato, vorrei inserire subito sotto, nella stessa cella in parentesi, il valore della statistica-t.

    Il modo più semplice è di definirsi un comando apposito:
    `\newcommand{\valore}[2]{\begin{tabular}{@{}c@{}}#1\\(#2)\end{tabular}}`
    Inserirai \valore{235}{42} nella cella.

    Nulla vieta tabular dentro tabular. 🙂

    Ciao
    Enrico

    in risposta a: lista delle figure #29282
    Up
    0
    Down
    ::

    \documentclass[a4paper,dvips,openright,12pt]{book} % openany toglie la pag bianche del cap
    \usepackage[latin1]{inputenc}
    \usepackage[italian]{babel}
    \usepackage[T1]{fontenc}
    \usepackage{fancyhdr}

    \usepackage[pdftex]{graphicx}
    \DeclareGraphicsExtensions{.jpg,.eps}
    \usepackage{SIunits}
    \pagestyle{empty}
    \usepackage[font=small,labelfont=bf,textfont=it,format=hang]{caption} %per le didascalie

    \usepackage{graphicx}
    \linespread{1.2}

    \begin{document}

    \tableofcontents
    \pagestyle{fancy}

    \fancyhead{}
    \fancyhead[RO]{\rightmark}
    \fancyhead[LE]{\leftmark}

    \input{pre/storia}
    \input{combustione/combustione}
    \input{polveri/polveri}
    \input{elettrostatica/elettrostatica}
    \input{rischio/rischio}
    \input{prevenzione/prevenzione}
    \input{protezione/protezione}
    \input{connessioni/connessioni}
    \input{granulatrice/ghibli}
    \input{simulazioni/simulazioni}
    \input{app1/appendice}
    %\listoffigures
    %\listoftables
    \addcontentsline{toc}{chapter}{Bibliografia}
    \bibliographystyle{unsrt}
    \nocite{*}
    \bibliography{biblio}
    \end{document}

    infatti il problema è iniziato con l’iserimento del capitolo “simulazioni”
    forse dovrei provare con quelle caption li

    Certo.

    Di quel preambolo non ci facciamo quasi nulla. Serve solo per dirti un paio di cose.

    (1) È perfettamente inutile dare l’opzione dvips in \documentclass e pdftex in graphicx. O usi l’una o usi l’altra. Ma in realtà è meglio non darne alcuna: toglile.

    (2) Dare \DeclareGraphicsExtensions{.jpg,.eps} è del tutto inutile. Se compili con latex i JPEG non saranno comunque leciti, se compili con pdflatex l’anatema cadrà sugli EPS.

    (3) Chiamare due volte graphicx non serve a niente.

    (4) Meglio mettere la roba di fancyhdr prima di \begin{document}; se non vuoi testatine nell’indice scrivi
    `\pagestyle{empty}
    \tableofcontents
    \cleardoublepage
    \pagestyle{fancy}`
    Ciao
    Enrico

    in risposta a: lista delle figure #29278
    Up
    0
    Down
    ::

    Ciao sono stefano e sto usando lateX per scrivere la mia tesi…
    é sorto recentemente un problema: quando compilo il mio file, ad un certo punto si pianta!
    Se fermo e provo togliendo listoffigure lo compila?? perche mai?
    Avete idee?

    Probabilmente hai un comando fragile in una delle didascalie. Puoi scovarlo commentando i comandi \caption negli ambienti “figure”, poi togliendo il commento a uno alla volta e compilando due volte.

    Procedura lunga, ma è possibile che la faccenda dipenda da qualcosa che è andato storto in una compilazione. Cancella il file “.lof” che c’è nella directory e riprova (devi compilare due volte per sapere se tutto fila liscio). Se non dovesse andare devi ricorrere al metodo indicato prima. Ma, se le didascalie non sono troppe, puoi anche mostrarle qui.

    Ciao
    Enrico

    in risposta a: ambienti per sistemi di equazioni #28983
    Up
    0
    Down
    ::

    `Temo che tu non abbia la minima idea di come funzioni \stackrel`
    Beh. . . in effetti non so come funzioni internamente, so solo quanto riportato sulle guide di base. Speravo fosse una buona idea quella di usare stackrel (in maniera non molto pulita) per aumentare invisibilmente l’altezza delle equazioni, di certo non avevo considerato che la prima non dovesse essere aumentata. 🙁

    Semplicemente dice di usare un certo simbolo di relazione in un certo punto e lo costruisce come indicato dagli argomenti. Non prende certo l’intera espressione che segue come secondo argomento.

    Ma c’è un altro modo

    Grazie Enrico. Rimango sempre più stupìto!
    (Non ti chiedo di spiegarla. Piano piano sto studiando, spero che un giorno riuscirò a capirla da solo!)

    Non c’è molto da spiegare. La macro \array usa internamente \ialign che ha la stessa definizione che do nell’ambiente a parte che pone \everycr={}. A noi serviva invece inserire a ogni cambio riga una spaziatura supplementare e questo si ottiene definendo \everycr={\noalign{\vskip1ex}}.

    C’è però il problema che questo inserisce lo spazio anche in testa e in coda all’allineamento. Perciò chiudo il tutto in un \vcenter (che è come \vbox ma centra il risultato rispetto all’asse delle formule); in questa box inserisco uno spazio negativo che compensi quello iniziale dell’allineamento, l’allineamento stesso (dentro una \hbox per non andare in modo orizzontale che creerebbe righe alla giustezza usuale) e uno spazio negativo simile al precedente.

    Ciao
    Enrico

    in risposta a: ambienti per sistemi di equazioni #28981
    Up
    0
    Down
    ::

    Che c’entra \stackrel? Perché non una \rule direttamente?

    Perché se metto una rule di altezza fissata, questa non andrebbe bene in tutte le situazioni (almeno credo…).
    In pratica se la rule è alta, ad esempio, 4ex, tutto filerebbe liscio nel caso di equazioni con frazioni (sto inventando). Se però poi scrivo equazioni senza frazioni, e quindi “meno alte”, allora la spaziatura sarà esagerata.

    L’escamotage di stackrel dovrebbe (spero) servire per aggiungere una quantità fissata all’altezza dell’equazione (che invece varia e dipende dall’input dell’utente).
    In questo modo sia che si stiano componendo equazioni corpose sia molto semplici, lo spazio tra le equazioni risulterebbe più o meno sempre uguale.

    Ovviamente tutto questo è pensato affinché chi usa l’ambiente non si debba preoccupare della spaziatura manualmente con \\[2ex] e simili…

    Spero di essermi spiegato… 😳

    Temo che tu non abbia la minima idea di come funzioni \stackrel. Se vuoi aggiungere una quantità fissa all’altezza dell’equazione, devi comporla in una \box, misurarla, e poi aggiungere a questa misura la tua lunghezza fissa. Ma naturalmente questo deve essere fatto solo dalla seconda equazione in poi.

    In alternativa, potresti provare a ridefinire \\ in modo che aggiunga la dimensione fissa: purtroppo \\ viene ridefinito nell’ambiente array. Ma c’è un altro modo.
    `\newenvironment{system*}
    {\def\ialign{\everycr{\noalign{\vskip10ex}}\tabskip0pt\halign}
    \begin{displaymath}
    \left\lbrace
    \vcenter\bgroup
    \vskip-10ex
    \hbox\bgroup$\begin{array}{@{}>{\displaystyle}l@{}}
    }
    {\end{array}$%
    \egroup
    \vskip-10ex
    \egroup
    \right.\end{displaymath}}`
    Ho usato 10ex per mostrare l’effetto. Tuttavia non può funzionare per l’ambiente con le equazioni numerate.

    Ciao
    Enrico

    in risposta a: ambienti per sistemi di equazioni #28979
    Up
    0
    Down
    ::

    Mi era sfuggito un post sul forum dove si parlava di array e displaystyle 🙁

    http://www.guit.sssup.it/phpbb/viewtopic.php?t=925

    Usando il pacchetto array come suggerito da Enrico si risolve il problema del displaystyle.

    `\usepackage{array}
    \usepackage{cases}

    \newenvironment{system}[1][]%
    {\begin{equation}#1\left\lbrace\begin{array}{@{}>{\displaystyle}l@{}}}%
    {\end{array}\right.\end{equation}}

    \newenvironment{system*}%
    {\begin{displaymath}\left\lbrace\begin{array}{@{}>{\displaystyle}l@{}}}%
    {\end{array}\right.\end{displaymath}}

    \newenvironment{subsystem}[1][]%
    {\begin{subnumcases}{#1}}%
    {\end{subnumcases}}
    `

    L’argomento opzionale serve per definire una label globale.

    Come si nota la spaziatura verticale non è sufficiente. In quel post Enrico usava dei rule che però non vanno bene in una definizione generica.
    Ho provato ad usare \arraystretch ma il risultato è comunque bruttino.

    Mi è venuta in mente un’idea ma non sono riuscito a metterla in pratica.
    Vorrei usare stackrel per aggiungere automaticamente un rule, ovviamente invisibile, sopra a ogni equazione.
    Ecco un esempio di codice (non funzionante).

    `\newenvironment{system*}%
    {\begin{displaymath}\left\lbrace\begin{array}{@{}>{\displaystyle\stackrel{\rule{0pt}{1ex}}{}}l<{[color=red]}[/color]}@{}}}% {\end{array}\right.\end{displaymath}} ` Spero sia una cosa fattibile!

    Che c’entra \stackrel? Perché non una \rule direttamente?

    Ciao
    Enrico

Stai visualizzando 15 risposte – dal 9,316 al 9,330 (di 13,205 totali)

Go to top▲