Risposte nei forum create
-
AutoreRisposte
-
::
Sì, ma \do non è un comando “usa e getta”, un po’ come \count@, \box0, ecc.? Per esempio, quando voglio fare qualcosa ai caratteri “speciali” definisco \do#1{…} in modo che faccia quello che voglio e chiamo \dospecials. È usato dappertutto in questo senso, fin dal formato plain TeX. Sono vent’anni che uso e vedo usare \do in questo modo, e non mi è mai andato a remengo niente; finito di usarlo, diligentemente lo rilascio:`\let \do = \@undefined`(lo fa anche letteracdp.cls, alla fine del file). Direi che in vent’anni dovrebbe ben essermi capitato di rompere qualcosa!Ciao.
—
Gustavo
::
Con la versione 0.36 del C.D.P. Bundle, tutti quesi maneggi contorti diventano inutili. Il problema di Alessandro è un buon esempio, perché si tratta di una carta intestata che integra figure caricate da file grafici ed elementi geometrici specificabili facilmente via LaTeX. Per risolverlo, si farà semplicemente la cosa ovvia: si usa un ambiente picture (abbiamo da realizzare un disegno elementare, quindi picture basta e avanza) assieme a comandi \includegraphics. Diciamo anche che non vogliamo produrre un solo documento, ma definire una classe di documento personale per le nostre lettera, chiamata per esempio, “letteratarta”. Anzi, diciamo, che vogliamo anche creare il nostro analogo personale della classe “articoletteracdp”, classe che decidiamo di chiamare “articoletteratarta”. Ecco come si fa.Innanzitutto, creiamo i file delle due classi. Prima il file “letteratarta.cls”:
`
\NeedsTeXFormat{LaTeX2e}\relax % LaTeX2e is required!
\ProvidesClass{letteratarta}
[2015/02/12 v0.01 (development)]
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{letteracdp}}
\ProcessOptions\relax
\LoadClass{letteracdp}[2015/02/08]
\input{tartarughe.def}
\endinput
`Poi il file “articoletteratarta.cls”:
`
\NeedsTeXFormat{LaTeX2e}\relax % LaTeX2e is required!
\ProvidesClass{articoletteratarta}
[2015/02/12 v0.01 (development)]
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{articoletteracdp}}
\ProcessOptions\relax
\LoadClass{articoletteracdp}[2015/02/08]
\input{tartarughe.def}
\endinput
`Come si vede, questi due file sono solo un involucro esterno che rimanda all’unico file dove viene effettivamente definita la carta intestata, il file “tartarughe.def”:
`
\ProvidesFile{tartarughe.def}[2015/02/12 v0.01 (development)]\RequirePackage[customletterhead]{cdpaddon}[2015/02/08]
% Per adesso niente colori, ma chissa`…
% \RequirePackage{color}
\RequirePackage{graphicx}
% Il pacchetto pict2e renderebbe piu` semplice ed elegante il tracciamento
% delle linee, ma diciamo che vogliamo fare economia e ci rinunciamo.
% (N.B.: se avessimo anche linee oblique, non ci converrebbe essere cosi`
% taccagni… 😉
% \RequirePackage{pict2e}\begin{customletterhead}{\textwidth}
\centering
\setlength{\unitlength}{1cm} % diciamo
% Origine delle coordinate al centro della linea di base della testatina;
% non ci interessa l'ingombro effettivo della costruzion.
\begin{picture}(0,0)
% Aggiustare, ovviamente, coordinate, fattori di scala, lunghezza delle
% linee eccetera, magari per tentativi ed errori.
%
% Prima tartaruga:
\put(.2,.3){\includegraphics[scale=.2]{Logo1-sx}} % meglio omettere l'estensione
%
% Seconda tartaruga:
\put(-2,-.1){\includegraphics[scale=.2]{Logo2-sx}}
%
% Linee a volonta`! Sarebbe piu` facile usare il comando \Line di
% pict2e, comunque…
\put(-2.5,0){\line(-1,0){5}}
\put(1,0){\line(1,0){3}}
% …
\end{picture}
\end{customletterhead}\begin{customletterfoot}{\textwidth}
\fontsize{5}{6}\usefont{T1}{pplx}{m}{n}
\ruleacrossheadorfoot
\noindent
\begin{minipage}[t]{.4\textwidth}
\raggedright \strut
Tartaruga Uno\\
Suo indirizzo\\
\ldots
\end{minipage}
\hfill
\begin{minipage}[t]{.4\textwidth}
\raggedleft \strut
Tartaruga Due\\
Suo Indirizzo\\
\ldots
\end{minipage}
\end{customletterfoot}\endinput
`
Naturalmente, bisogna che i file “Logo1-sx.png” e “Logo2-sx.png” esistano da qualche parte.Ecco fatto: mettiamo i tre file “letteratarta.cls”, “articoletteratarta.cls” e “tartarughe.def” in una delle nostre directory di input del LaTeX personali e vediamo se funzionano sul seguente file di prova:
`
\documentclass
[boldsubject,italicsignature,shortindent,signaturerule]
{letteratarta}
\usepackage[T1]{fontenc}
\usepackage[italian]{cdpbabel}
\usepackage{lipsum}\address{
Tartarughe Uno \& Due\\
Loro Indirizzo\\
\ldots
}
\signature{Tartaruga Uno\and Tartaruga Due}
\place{Fate Voi}
\date{12~febbraio 2015}\begin{document}
\begin{foldedletterhead}[R.~J.~Drofnats]{
Pinco \textsc{Pallino}\\
Viale Arcangelo Gabriele, 99\\
33170\quad PORDENONE\quad PN
}[
Carta intestata con immagini.
]\opening{Caro Pinco,}
\lipsum[1-2]
\closing{Cordiali saluti.}
\end{foldedletterhead}
\end{document}
`Be’, sarà il caso di posizionare al posto giusto immagini e linee, che ne dite?:smile:
Ciao.
—
Gustavo
12 Febbraio 2015 alle 15:57 in risposta a: [RISOLTO] letteracdp + fancyhdr: perchè non funziona? #99785::
Scusate, ma al momento sono proprio di corsa e non ho modo di entrare nei dettagli.Non riesco a capire bene che directory sia quella che mostra renareto, ma sicuramente non è la distribuzione della versione 0.36: ci sono file che facevano parte della 0.34 e ora eliminati, come il famigerato overview.pdf, e mancano tutti i nuovi. In particolare, manca il Makefile, e quindi è ovvio che `make code` non funziona!
Ripeto: dimenticate le istruzione date ieri, a beneficio degli impazienti, e usate i normali meccanismi di aggiornamento di MacTeX/MikTeX/TeXlive; almeno di MacTeX so con certezzza che ormai funziona, e immagino che sarà lo stesso anche per MikTeX. Qualcuno può confermare?
Ciao.
—
Gustavo
12 Febbraio 2015 alle 11:42 in risposta a: [RISOLTO] letteracdp + fancyhdr: perchè non funziona? #99782::
Ecco: ho appena constatato che sul mio Mac, che ha MacTeX e quindi TeXlive, il normale meccanismo automatico di aggiornamento dei pacchetti aggiorna il C.D.P. Bundle alla versione 0.36. La procedura di installazione manuale, sopra descritta per gli impazienti 🙂 , non è più necessaria.Ciao.
—
Gustavo
::
È molto semplice: quando definisci un ambiente, i comandi che compongono la definizione vengono meramente memorizzati nelladefinizione stessamacro definita, e non eseguiti. Quindi il tuo`\catcode`\%=12`non venendo eseguito, non cambia il \catcode di %; alla riga successiva, il % continua a essere un carattere di commento, cosicché il compilatore legge
`\immediate\write\provas{\string `
ed ecco qui ciò che causa il runaway argument.Devi cambiare il \catcode di % prima di definire l’ambiente, e ristabilirlo subito dopo aver completato la definizione.
Ciao.
—
Gustavo
::
Ho letto, naturalmente, le istruzioni per l’upload. Nel 2002, quando feci il primo del C.D.P. Bundle, mi sembrò del tutto ovvio che includere i documenti in italiano scritti per i dottorandi di Padova fosse completamente fuori luogo, anche per il loro tono assai frivolo. Questo pensiero, come a volte accade, si cristallizzò nella mia mente e, fino a oggi, l’ho sempre considerato un assunto indiscutibile. Oggi, per la prima volta dopo tredici anni, improvvisamente il messaggio di Tommaso mi ha fatto dire «ma, in fondo, perché no?», e in effetti, come dici, ci sono tanti altri casi. Però, da un lato mi sembra poco garbato mettere istruzioni che siano solo iningleseitaliano, dall’altro adesso non ho assolutamente tempo per mettermi a tradurre circa duecento pagine, oltretutto contenenti non pochi lazzi.:oops:Buona serata.
—
Gustavo
::illinguista1972″ post=99911[…] Nel messaggio #99842, Gustavo ha tentato di allegare i seguenti file:
1. [tt]esempi.pdf[/tt]
2. [tt]novita34.pdf[/tt]
3. [tt]nts2.pdf[/tt]
4. [tt]aq2.pdf[/tt]
5. [tt]rfc.pdf[/tt]
Essi costituiscono la documentazione originaria della classe, destinata ai dottorandi di Padova, ritoccata in qualche punto. Questi file sono disponibili richiedendoli direttamente a Gustavo. Ma credo che non sarebbe male aggiungerli al bundle: si dovrebbe poter fare e ti risparmierebbe un bel po’ di email a cui rispondere 🙂 […]
Sentite, si potrbbe fare così: nei prossimi giorni provo a scrivere ai responsabili del CTAN e a sentire il loro parere. Non procedo senza un permesso esplicito da parte loro.
Ciao.
—
Gustavo
11 Febbraio 2015 alle 15:05 in risposta a: [RISOLTO] letteracdp + fancyhdr: perchè non funziona? #99781::renareto” post=99908ma io ho scaricato e rinominato i file che hai aggiunto nel tuo post precedente.
Sì, ma quei file richiedono la presenza della versione 0.36 del C.D.P. Bundle. Ed è impossibile che la tua installazione la possieda, visto che è di ieri! Dovresti scaricarla e installarla tu.
renareto” post=99908Se non sbaglio emacs, cerca tutto nella cartella di lavoro…sbaglio?
Be’, non emacs: il compilatore TeX.
renareto” post=99908Altro prob:
molte prove, le faccio con writ4elatex (overleaf.com) che ovviamente, non dispone della 0.36. Sai mica come indicargliele?Grazie
Renato
Ripeto, bisogna scaricarla. Se il file docstrip.cfg del tuo sistema e i tuoi permessi in scrittura sullo stesso lo consentono, una volta scaricato l’archivio completo dal CTAN, decompresso l’archivio e fatto cd nella directory “cdpbundl” risultante dalla decompressione, basta dare alla shell il comando`make code`e la nuova versione verrà installata automaticamente (dovrai rispondere “y” a un po’ di richieste di conferma, però! 🙂 ). Ovviamente, questo causerà la sovrascrittura della versione precedente; in particolare verrà sovrascritto il file cdpshues.cfg, cosa di cui a te non dovrebbe importare assolutamente nulla (hai mai creato una tua versione personalizzata di questo file?). Se docstrip.cfg non permette l’installazione diretta (cosa probabilissima, e che io stesso raccomanderei), dovrai spostare manualmente i file DALLA directory “cdpbundl” ottenuta dalla decompressione IN una delle directory di input del LaTeX, preferibilmente (di gran lunga preferibilmente) nell’albero texmf “locale”. L’elenco completo dei file da spostare manualmente ti comparirà sul terminale.
Se invece dai il comando`make` verrà non solo “spacchettata” la distribuzione, ma anche generata la documentazione, sempre all’interno della directory “cdpbundl” ottenuta dalla decompressione.
Aggiunto successivamente: oppure, puoi aspettare che le distribuzioni TeXlive e MikTeX si aggiornino e usare le loro proprie funzionalità di aggiornamento per reinstallare il pacchetto; però, non so dirti quanto ci vorrà per questo.
Ciao.
—
Gustavo
::cfiandra” post=99910
Sul CTAN non c’è, né ci può stare, alcuna documentazione in italiano.
Questo è assolutamente falso. Tanto per citarne uno, fancyhdr, ha la documentazione scritta in diverse lingue, tra cui l’italiano. Moltissimi pacchetti hanno la documentazione anche in italiano e, tanto per andare oltre il confine e prendere un caso limite, esistono un sacco di pacchetti che hanno solo la documentazione in francese.
Quindi, il fatto di scrivere anche la documentazione in italiano dipende solo dall’autore.
Ciao
ClaudioIl problema nasce, per l’appunto, quando la documentazione è solo in una lingua che non sia l’inglese. Non so, io mi sono sempre fatto scrupolo di non fare, appunto, il “francese” e non ho mai osato proporre al CTAN la documentazione in italiano (però hai ben osato proporre letteracdp, direte voi!), ma se davvero pensate che potrei, be’…:)
Ciao.
—
Gustavo
::IL_MAGO_GANDALF” post=99909Grazie mille per la risposta.
Troverà allora la mia mail…(di stamattina) […]Proprio riguardo a quella, stavo per risponderti che è meglio che le domande vengano rivolte tramite un forum come questo, e non privatamente, in modo che la risposta possa servire anche ad altri che hanno un problema simile.
Adesso non ricordo e mi è scomodo leggere la posta, ma mi sembra che nel codice che mi hai mandato manchi la definizione di una delle macro che usi… Prova a controllare.
Ciao
—
Gustavo
::IL_MAGO_GANDALF” post=99889Ho letto il post che riguarda la nuova versione della classe letterCDP.
Non riesco invece a reperire la “corposa” documentazione tra cui NOVITA34.pdf NT..pdf etc etc.
E’ presente nel mirror con la nuova versione,si genera dal dtx, oppure può soltanto essere fornita dall’autore della classe medesima su richiesta?
Un saluto ed un grazie a tutti voi
A.Sul CTAN non c’è, né ci può stare, alcuna documentazione in italiano. Poiché i documenti che citi tu sono per l’appunto in italiano, per essi vale, temo, l’ultima che hai detto.:)
—
Gustavo
11 Febbraio 2015 alle 12:44 in risposta a: [RISOLTO] letteracdp + fancyhdr: perchè non funziona? #99779 -
AutoreRisposte