% \iffalse % % guit.dtx % Copyright 2003-2006, 2009, 2012, 2019, 2020 Gruppo Utilizzatori % Italiani di TeX % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either % version 1.3a of this license or (at your option) any % later version. % The latest version of the license is in % https://www.latex-project.org/lppl.txt % % Author: Emanuele Vicentini % (emanuelevicentini at yahoo dot it) % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work is Emanuele Vicentini. % % This work consists of the files: README, guit.dtx, guit.ins and the % derived files guit.sty, guit.cfg and guittest.tex % %<*driver> \documentclass[10pt, a4paper]{ltxdoc} \usepackage[italian]{babel} \usepackage{booktabs, guit, subfig, tabularx, hyperref, footnote} \makesavenoteenv{table} \EnableCrossrefs \CodelineIndex \RecordChanges \OnlyDescription \begin{document} \DocInput{guit.dtx} \end{document} % % %<*test> \documentclass[11pt, a4paper]{article} \usepackage[margin=1in, noheadfoot]{geometry} \usepackage{booktabs, guit, rotating, hyperref} \pagestyle{empty} \setupguit[link] \begin{document} \section*{Piccolo test per \guit} Vediamo un po' come si comporta in una footnote\footnote{\guit~\guit\ldots direi che \`e passabile, no?}. Diamoci\footnote{Un'altra nota: \fontfamily{pzc}\fontseries{mb}\fontshape{it}\selectfont\guittext} dentro con qualche cosa\footnote{Un ultima nota: Copyright 2003-2006, 2009, 2012, 2019, 2020 \guittext} di ``strambo'': \begin{center} \itshape\guit~agus \TeX~go br\'ach!\\ $==$\\ \rmfamily\bfseries\guit~and \TeX~forever! \end{center} Una piccola ``spirale'' colorata e divertente: \begingroup \setupGuIT[color=yes] \GuITcolor[rgb]{1, 0, 0} \newcount\wang \newsavebox{\wangtext} \newdimen\wangspace \def\wheel#1{\savebox{\wangtext}{#1}% \wangspace\wd\wangtext \advance\wangspace by 1cm% \centerline{% \rule{0pt}{\wangspace}% \rule[-\wangspace]{0pt}{\wangspace}% \wang=-180 \loop \ifnum\wang<180 \rlap{\begin{rotate}{\the\wang}% \rule{0.75cm}{0pt}#1 \end{rotate}}% \advance\wang by 20 \space \guitcolor*{coloredelGuIT!90!green}% \repeat}} \wheel{\guit} \endgroup Ed ora una tabella riepilogativa parziale dei font supportati dalla versione attuale. \begin{center} \begin{tabular}{lc} \toprule Font & Logo \\ \midrule Computer Modern Roman & \guit[family=cmr] \\ Latin Modern & \guit[family=lmr] \\ Times New Roman & \guit[family=ptm] \\ Palatino & \guit[family=ppl] \\ NewCentury Schoolbook & \guit[family=pnc] \\ Charter & \guit[family=bch] \\ Bookman & \guit[family=pbk] \\ \bottomrule \end{tabular} \end{center} Per finire, un sfilza di \guit: \begingroup \let\pippo\par \makeatletter \@tfor\famiglia:={cmr}{lmr}{ptm}{ppl}{pnc}{bch}{pbk}\do{% \noindent \setupGuIT[family=\famiglia] \@tfor\dimensione:=\tiny\scriptsize\footnotesize\small\normalsize \large\Large\LARGE\huge\do{% \dimensione\guit~}% \Huge\guit\pippo}% \endgroup \begin{center} \Huge Venite tutti al prossimo \guitmeeting[color] \end{center} \end{document} % % \fi % % % % \CheckSum{546} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z % Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z % Digits \0\1\2\3\4\5\6\7\8\9 % Exclamation \! Double quote \" Hash (number) \# % Dollar \$ Percent \% Ampersand \& % Acute accent \' Left paren \( Right paren \) % Asterisk \* Plus \+ Comma \, % Minus \- Point \. Solidus \/ % Colon \: Semicolon \; Less than \< % Equals \= Greater than \> Question mark \? % Commercial at \@ Left bracket \[ Backslash \\ % Right bracket \] Circumflex \^ Underscore \_ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % % % % \GetFileInfo{guit.sty} % % % % \newcommand*{\pacchetto}[1]{\textsf{#1}} % \newcommand*{\altro}[1]{\texttt{#1}} % % % % \changes{v0.1}{2003/02/15}{Prima release pubblica del pacchetto} % \changes{v0.2}{2003/02/21}{Arricchito il file di test del pacchetto} % \changes{v0.5}{2003/09/04}{Aggiunta tutta la gestione del colore nel logo} % \changes{v0.6}{2003/09/16}{Effettuate un paio di modifiche al file di % test} % \changes{v0.7}{2003/10/10}{Rimossi dal file di test gli usi del font % Utopia} % \changes{v0.7}{2003/10/13}{Integrato il pacchetto \pacchetto{hyperref} su % richiesta di Fabiano Busdraghi} % \changes{v0.7.2}{2004/09/16}{Aggiornata la documentazione riferentesi a % \pacchetto{xcolor}} % \changes{v0.7.2}{2004/09/16}{Personalizzati indice e change history} % \changes{v0.7.3}{2004/10/11}{Alcune piccole modifiche al file di test} % \changes{v0.8}{2004/10/28}{Riallineato il file di test all'ultima modifica % della sintassi di \cs{GuIT}} % \changes{v0.8.2}{2005/04/08}{Aggiunto il file di configurazione esterno} % \changes{v0.9}{2005/11/21}{Modificata l'interfaccia in modo da fare ampio % uso di chiavi definite tramite \pacchetto{xkeyval} (ora ricorda molto lo % ``stile'' di Con\TeX t); mantenuta la compatibilit\`a quasi totale con % le versioni precedenti, ma \cs{swapGuITcommands} \`e stato % definitivamente rimosso} % \changes{v0.9}{2005/11/27}{Il logo ora pu\`o essere composto anche usando % la serie \altro{bx}} % \changes{v0.9}{2005/12/03}{Nel file di test ora viene impostata % globalmente la chiave \altro{link}} % \changes{v1.0.0}{2012/11/03}{Aggiunto il supporto per Latin Modern} % % % % \title{Documentazione del pacchetto \pacchetto{guit}\thanks{Il numero di % versione di questo file \`e \fileversion; l'ultima revisione \`e avvenuta % in data \filedate.}} % \author{Emanuele Vicentini\\(\texttt{emanuelevicentini at yahoo dot it})} % \date{\filedate} % % % % \maketitle % \begin{abstract} % Questo piccolissimo pacchetto permette di riprodurre il logo del % \emph{\guittext} (\emph{\guittexten}) in maniera sufficientemente % indipendente dal font utilizzato, cercando di mantenerne l'aspetto % originale. % \end{abstract} % \tableofcontents % \clearpage % % % % \section{Introduzione} % Questa documentazione \`e stata scritta seguendo le convenzioni % dell'applicazione \LaTeX~\textsc{docstrip} che permette l'estrazione % automatica del codice \LaTeX~dal file di documentazione~\cite{GOOSSENS94}. % % % % \iffalse\section{I logo}\fi % % % % \section{Il logo del Gruppo} % Per riprodurre il pi\`u fedelmente possibile il logo del \guit~ho deciso % che la soluzione migliore per ottenere gli effetti desiderati fosse quella % di utilizzare solo font con Caps \& Small Caps. I font attualmente % supportati\footnote{Il font Utopia non \`e presente in tutte le % distribuzioni di \TeX/\LaTeX~per motivi legali e non \`e pi\`u considerato % un componente fondamentale, quindi nel file di esempio che accompagna % questo pacchetto il font Utopia non \`e stato utilizzato. Se qualche % persona volenterosa potesse controllare i coefficienti utilizzati per % questo font e volesse contribuire con i coefficienti per usare Utopia con % la serie \altro{bx}, sarebbe sempre ben accetta.} sono elencati nella % tabella~\ref{tab:font}. % % \begin{table}[!h] % \centering % \begin{tabular}{l>{\ttfamily}cc>{\scshape}c} % \toprule % \itshape Font & \normalfont\itshape Famiglia & \itshape Bx & \itshape Provenienza \\ % \midrule % Computer Modern Roman & cmr & No & \normalfont Standard \\ % Latin Modern & lmr & S\`\i\footnote{In realt\`a viene usata solo la serie \altro{m}.} & lm \\ % Times & ptm & S\`\i & psnfss \\ % Palatino & ppl & S\`\i & psnfss \\ % New Century Schoolbook & pnc & S\`\i & psnfss \\ % Utopia & put & S\`\i\footnote{In realt\`a viene usata solo la serie \altro{m}.} & psnfss \\ % Charter & bch & S\`\i & psnfss \\ % Bookman & pbk & S\`\i & psnfss \\ % \bottomrule % \end{tabular} % \caption{Font attualmente supportati} % \label{tab:font} % \end{table} % % Per evitare spiacevoli ed inaspettati effetti dovuti a combinazioni dei % parametri \textsc{nfss2} indicanti font inesistenti nella famiglia % Computer Modern originale (esempio: \altro{OT1/cmr/bx/sc} non esiste e % viene sostituito automaticamente con \altro{OT1/cmr/bx/n}), tutte le % occorrenze del logo composte con la famiglia Computer Roman usano il font % \altro{OT1/cmr/m/sc}. Le altre famiglie, laddove esista il font % appropriato, possono essere utilizzate anche con serie e codifiche % diverse, ma questo pacchetto fornisce solo le istanze preconfezionate per % le serie \altro{m} e \altro{bx}. Il pacchetto \`e stato testato solo con % le codifiche \altro{OT1} e \altro{T1}; conferme riguardanti il corretto % utilizzo del pacchetto con codifiche diverse saranno sicuramente % benvenute. % % L'idea di utilizzare la codifica \altro{T1} per la famiglia Computer % Modern (perch\'e esiste il font \altro{T1/cmr/bx/sc}) \`e stata scartata a % priori perch\'e i font in formato Type1 di tale famiglia non sono ancora, % a mio parere, sufficientemente diffusi. % % % % \section{Il logo del convegno} % Per cercare di alleviare parte del lavoro degli organizzatori, ho cercato % di riprodurre, per quanto mi \`e possibile, il logo del convegno periodico % del \guittext\ usato a partire dal meeting svoltosi a Pisa il 10 ottobre % 2004. % % Il logo producibile da questo pacchetto, esemplificato nella % figura~\ref{fig:guitmeeting}, \`e il risultato di un gran numero di % tentativi di riprodurre correttamente quello originariamente utilizzato % per il poster-programma del meeting di quell'anno. Per questa ragione, il % logo viene sempre composto usando la famiglia Computer Modern, % indipendentemente dalla famiglia principale usata nel documento. % % Come molti processi automatici, anche questo non \`e perfetto. Si % accettano molto volentieri suggerimenti per migliorarlo (possibilmente in % forma di codice gi\`a funzionante o patch per l'ultima versione di questo % pacchetto). % % \begin{figure} % \centering % \Huge\guitmeeting\qquad\guitmeeting[year=2010]\\[10pt] % \guitmeeting[style=inline]\quad\guitmeeting[year=2010, style=inline] % \caption{Visione d'insieme del logo del convegno periodico} % \label{fig:guitmeeting} % \end{figure} % % % % \section{Il logo della rivista} % A partire dall'aprile del 2006, il \guittext realizza una rivista dedicata % a \TeX, \LaTeX\ e la tipografia digitale; maggiori informazioni sono % reperibili nelle pagine dedicate del sito del Gruppo: % \guiturl[document=home/it/arstexnica]. Nella figura~\ref{fig:arstexnica} sono % raccolte diverse istanze e varianti del logo di \Ars\ ed i comandi % correlati, la cui ideazione e realizzazione sono dovute a Massimo % Caschili. % % \makeatletter % \newcommand*{\loghetto}[2][1]{% % \subfloat[\cs{#2}]{\scalebox{#1}{\csname #2\endcsname}}} % \makeatother % \begin{figure} % \centering\Huge % \loghetto[2]{Ars}\qquad % \loghetto[2]{Arsob}\\ % \loghetto[2]{ars}\qquad % \loghetto[2]{tecnica}\\ % \loghetto[2]{arsta}\qquad % \loghetto[2]{arstb}\\ % \loghetto[2]{arstv}\qquad % \loghetto[2]{arsto}\\ % \loghetto[2]{Arsto} % \caption{Il logo della rivista e le sue varianti}\label{fig:arstexnica} % \end{figure} % % % % \section{Comandi} % % % % \subsection{Il logo del Gruppo} % \changes{v0.8}{2004/10/28}{Ristrutturata l'implementazione di \cs{GuIT} % per l'aggiunta dell'argomento opzionale per indicare la famiglia di font % da utilizzare} % \DescribeMacro{\GuIT}\oarg{famiglia, keywords}\newline % \DescribeMacro{\GuIT*}\oarg{famiglia, keywords}\newline % \DescribeMacro{\guit}\oarg{famiglia, keywords}\newline % \DescribeMacro{\guit*}\oarg{famiglia, keywords}\newline % Per riprodurre il logo di \guit~l'utente ha a disposizione il comando % \cs{GuIT} che si prende cura di controllare la famiglia di font utilizzata % e cerca di produrre il risultato migliore. Anche se \`e tecnicamente % errato, per comodit\`a l'utente pu\`o usare anche l'equivalente forma % \cs{guit}. Entrambi i comandi dispongono di una versione ``stellata'' che % riproduce il logo con uno schema di colori simile a quello usato nel sito % di \guit~(\guiturl). % % Desidero richiamare l'attenzione sul fatto che in molti casi non \`e % possibile giungere al risultato \emph{perfetto} in quanto le grazie della % G e della U non sono necessariamente sovrapponibili senza % ``sbavature''. Questi difetti non sono eliminabili, ma \`e stato fatto il % possibile per minimizzarli. % % Il font utilizzato per comporre il logo \`e, normalmente, il font attivo % nel punto in cui compare l'occorrenza di \cs{GuIT}, ma pu\`o essere % modificato utilizzando gli argomenti opzionali nei seguenti modi: % % \begin{itemize} % \item indicando direttamente il nome della famiglia di font da utilizzare % (esempio: \cs{GuIT[ppl]}); % \item indicando direttamente il nome della famiglia e della serie da % utilizzare separati dal carattere ``\altro{/}'' (esempio: % \cs{GuIT[ppl/bx]}); % \item assegnando alla chiave |family| (vedere \S\ref{sec:keywords}) il % nome della famiglia di font da utilizzare (esempio: % \cs{GuIT[family=ppl]}); % \item assegnando alla chiave |series| (vedere \S\ref{sec:keywords}) il % nome di una serie da utilizzare (esempio: \cs{GuIT[series=bx]}). % \end{itemize} % % Ovviamente, in tutti questi casi il font indicato viene utilizzato solo se % \`e presente nella lista di quelli supportati dal pacchetto, altrimenti si % ricade sul classico Computer Modern Roman. Gli effetti di queste % alterazioni sono limitati alla singola occorrenza di \cs{GuIT} nella quale % compaiono. % % % % \subsection{Selezione del colore} % Con entrambi i seguenti comandi \`e possibile usare le espressioni % ``estese'' fornite dal pacchetto \pacchetto{xcolor}~\cite{Kern05}. % % \medskip % % \noindent\DescribeMacro{\GuITcolor}\oarg{modello}\marg{dichiarazione}\newline % \DescribeMacro{\guitcolor}\oarg{modello}\marg{dichiarazione}\newline % Il colore utilizzato da \cs{GuIT*} e da \cs{guit*} pu\`o essere modificato % con questo comando. Se l'argomento opzionale viene omesso si assume l'uso % del modello \emph{cmyk}. Il colore definito in questo modo \`e accessibile % con il nome \altro{coloredelGuIT}. % % \medskip % % \noindent\DescribeMacro{\GuITcolor*}\oarg{modello}\marg{espressione xcolor}\newline % \DescribeMacro{\guitcolor*}\oarg{modello}\marg{espressione xcolor}\newline % Questo comando permette di operare sul colore utilizzato da \cs{GuIT*} % utilizzando le espressioni supportate dal comando \cs{colorlet}; per una % discussione pi\`u ampia e dettagliata si rimanda alla documentazione del % pacchetto \pacchetto{xcolor}. \cs{GuITcolor*} agisce implicitamente su % \altro{coloredelGuIT}, quindi \`e essenzialmente equivalente a % \begin{quote} % |\colorlet{coloredelGuIT}|\marg{espressione xcolor} % \end{quote} % L'argomento opzionale specifica il modello di colore in cui % \meta{espressione xcolor} deve essere trasformata prima dell'applicazione % a \altro{coloredelGuIT}. % % In entrambi i casi, si sconsiglia l'uso del modello \emph{named}. Come per % il comando \cs{GuIT} anche in questo caso si possono usare le equivalenti % forme \cs{guitcolor} e \cs{guitcolor*}. % % % % \subsection{Dicitura completa del Gruppo} % \changes{v0.2}{2003/02/17}{Aggiunti due nuovi comandi per indicare la % denominazione completa del \guittext} % \DescribeMacro{\GuITtext}\oarg{keywords}\newline % \DescribeMacro{\guittext}\oarg{keywords}\newline % Per evitare errori nel riportare la denominazione ufficiale e completa del % Gruppo (\guittext) l'utente pu\`o utilizzare il comando \cs{GuITtext} che % fornisce l'espansione corretta dell'acronimo \guit: \guittext. Notate che % il comando non effettua alcuna modifica al font ed al colore attualmente % in uso e non assume l'uso di alcun font particolare. Come per il comando % \cs{GuIT} anche in questo caso si pu\`o usare l'equivalente forma % \cs{guittext}. % % \medskip % % \changes{v0.9}{2005/10/29}{Aggiunti due nuovi comandi per indicare la % denominazione completa anglicizzata del \guittext\ (o \guittexten\ che % dir si voglia) su espressa richiesta di Gustavo Cevolani} % \noindent\DescribeMacro{\GuITtextEn}\oarg{keywords}\newline % \DescribeMacro{\guittexten}\oarg{keywords}\newline % I comandi appena illustrati hanno la loro controparte in \cs{GuITtextEn} e % nell'immancabile \cs{guittexten}, i quali si comportano esattamente nello % stesso modo per quanto riguarda font e colori, ma producono l'equivalente % inglese di \guittext: \guittexten. % % Per quanto riguarda l'argomento opzionale \meta{keywords}, vedere % \S\ref{sec:keywords}. % % % % \subsection{Indirizzo del sito internet e del forum pubblico} % \DescribeMacro{\GuITurl}\oarg{keywords}\newline % \DescribeMacro{\guiturl}\oarg{keywords}\newline % Per evitare errori nel riportare l'indirizzo completo del sito internet % del Gruppo (\guiturl) l'utente pu\`o utilizzare il comando \cs{GuITurl} % che scrive l'indirizzo corretto sfruttando il pacchetto \pacchetto{url} % presente nella dotazione standard di qualunque distribuzione di % \TeX\,/\LaTeX. Come per il comando \cs{GuIT} anche in questo caso si pu\`o % utilizzare l'equivalente forma \cs{guiturl}. % % \medskip % % \noindent\DescribeMacro{\GuITforum}\oarg{keywords}\newline % \DescribeMacro{\guitforum}\oarg{keywords}\newline % Questo comando permette l'inserimento dell'indirizzo completo del forum % pubblico (\guitforum), sfruttando nuovamente il pacchetto \pacchetto{url}. % Come per il comando \cs{GuIT} anche in questo caso si pu\`o utilizzare % l'equivalente forma \cs{guitforum}. % % Desidero richiamare l'attenzione sul comportamento di alcuni programmi di % visualizzazione di documenti in formato \textsc{pdf}, i quali analizzano % il testo dei documenti alla ricerca di elementi che rispecchino la % struttura di un \textsc{url} ed interpretano automaticamente tali elementi % come link realmente funzionanti. Questo fatto non \`e alterabile tramite % comandi od altri costrutti di \LaTeX, quindi, se doveste riscontrare % ``anomalie'' negli effetti dei due comandi appena illustrati, esaminate la % configurazione del programma che usate ed eventualmente alteratela di % conseguenza. % % Per quanto riguarda l'argomento opzionale \meta{keywords}, vedere % \S\ref{sec:keywords}. % % % % \subsection{Il logo del convegno} % \DescribeMacro{\GuITmeeting}\oarg{keywords}\newline % \DescribeMacro{\GuITmeeting*}\oarg{keywords}\newline % \DescribeMacro{\guitmeeting}\oarg{keywords}\newline % \DescribeMacro{\guitmeeting*}\oarg{keywords}\newline % Per riprodurre il logo del periodico convegno l'utente ha a disposizione % il comando \cs{GuITmeeting}; trattandosi di un'entit\`a grafica % particolare, non \`e possibile alcuna personalizzazione del risultato ad % eccezione dello schema di colori. Come per gli altri comandi, anche in % questo caso si pu\`o utilizzare l'equivalente forma \cs{guitmeeting}. % Entrambi i comandi dispongono di una versione ``stellata'' che % riproduce il logo a colori con uno schema di colori simile a quello usato % nel sito di \guit~(\guiturl). % % Per quanto riguarda l'argomento opzionale \meta{keywords}, vedere % \S\ref{sec:keywords}. % % % % \subsection{Il logo della rivista} % \changes{v0.9}{2006/05/17}{Inglobati i comandi per generare i logo della % rivista ideati da Massimo Caschili} % I comandi per riprodurre le diverse istanze e varianti del logo della % rivista sono illustrati direttamente nella % figura~\ref{fig:arstexnica}; questi comandi non hanno alcun % parametro. L'autore ed ideatore dei comandi, per conto del \guittext, \`e % Massimo Caschili. % % % % \subsection{Usare le chiavi}\label{sec:keywords} % Il pacchetto fa ampio uso di chiavi, definite tramite % \pacchetto{xkeyval}~\cite{Adriaens05}, in modo da rendere l'utilizzo dei % vari comandi pi\`u flessibile. Applicare una chiave ad uno dei comandi % visti in precedenza pu\`o potenzialmente modificare la relativa % caratteristica \emph{solo ed esclusivamente per quell'istanza del % comando}. % % \begin{table} % \centering % \begin{tabularx}{0.91\textwidth}{ll>{\raggedright\arraybackslash}X} % \toprule % \itshape Chiave & \itshape Valori & \itshape Applicabilit\`a \\ % \midrule % color & \textit{yes}, true, no, false & \cs{GuIT}, \cs{GuITmeeting} \\ % link & \textit{yes}, true, no, false & \cs{GuIT}, \cs{GuITmeeting}, \cs{GuITtext}, \cs{GuITtextEn}, \cs{GuITurl}, \cs{GuITforum} \\ % family & \meta{famiglia} & \cs{GuIT} \\ % series & \meta{serie} & \cs{GuIT} \\ % url & \meta{indirizzo} & \cs{GuIT}, \cs{GuITmeeting}, \cs{GuITtext}, \cs{GuITtextEn}, \cs{GuITurl}, \cs{GuITforum} \\ % document & \meta{documento} & \cs{GuITurl} \\ % year & \meta{anno} & \cs{GuITmeeting} \\ % style & display, inline & \cs{GuITmeeting} \\ % \bottomrule % \end{tabularx} % \caption{Chiavi definite dal pacchetto \pacchetto{guit}} % \label{tab:keywords} % \end{table} % % Le chiavi attualmente definite sono riportate nella % tabella~\ref{tab:keywords} assieme ai valori che possono assumere e ad % un'indicazione dei comandi sui quali hanno un qualche effetto. I valori in % corsivo sono i valori di default assegnati implicitamente alle chiavi % corrispondenti se quest'ultime vengono usate senza indicare esplicitamente % alcun valore. % % Alcune annotazioni sulle chiavi: % % \begin{description} % \item[|color|] permette di controllare l'uso del colore per il logo del % Gruppo; da notare che sono possibili combinazioni ``strane'' come % |\GuIT*[color=no]|, la quale, nonostante l'utilizzo della versione % ``stellata'', produrr\`a un'istanza del logo non colorata; % \item[|link|] permette di controllare la generazione di un link alla % pagina principale del sito del \guit\ in corrispondenza di ogni % occorrenza del logo e dell'espansione della dicitura completa del Gruppo % tramite l'uso di \pacchetto{hyperref}, \emph{che deve essere caricato % esplicitamente} nel preambolo del documento; come effetto collaterale, i % prodotti di \cs{GuITurl} e \cs{GuITforum} diventano automaticamente % \textsc{url} realmente funzionanti; % \item[|family|] \`e un modo pi\`u esplicito e prolisso di impostare il % font con il quale viene composto il logo del Gruppo; assegnare a questa % chiave un valore nullo fa si che il font utilizzato per comporre il logo % di \guit\ sia quello attivo nel punto in cui compare il comando % \cs{GuIT}; % \item[|series|] permette di impostare la serie con la quale viene composto % il logo del Gruppo; assegnare a questa chiave un valore nullo fa si che % la serie utilizzata per comporre il logo sia quella attiva nel punto in % cui compare il comando \cs{GuIT}; % \item[|url|] permette di definire od alterare l'indirizzo del sito % internet del Gruppo usato dai vari comandi che producono testo o link al % sito stesso; assegnare a questa chiave un valore nullo sopprimer\`a % l'output di \cs{GuITurl} e disabiliter\`a la creazione di link da parte % di \pacchetto{hyperref}; % \item[|document|] permette di indicare pagine o sezioni del sito del % Gruppo facendo in modo che il risultato si comporti in maniera % automatica esattamente come \cs{GuITurl} per quanto riguarda % l'interazione con \pacchetto{hyperref} e la creazione di link; assegnare % a questa chiave un valore nullo disabilita la visualizzazione di % quest'estensione dell'indirizzo; % \item[|year|] permette di impostare l'anno che comparir\`a nel logo del % convegno periodico in una posizione simile a quella in cui compare nei % poster, accanto all'illustrazione realizzata per il Gruppo da Duane % Bibby\footnote{Se gi\`a si poteva sconsigliare l'uso di \cs{GuITmeeting} % all'interno di un paragrafo o di un qualsiasi altro blocco di testo, % l'aggiunta dell'anno crea un'entit\`a decisamente ingombrante e porta a % rafforzare il consiglio: \emph{non usate \cs{GuITmeeting} all'interno di % un blocco di testo}.}; assegnare a questa chiave un valore nullo % disabilita la visualizzazione dell'anno; % \item[|style|] permette di modificare l'aspetto del logo del convegno % alterando il modo nel quale vengono assemblati i sui componenti: i primi % due esempi che compaiono in figura~\ref{fig:guitmeeting} sono composti % con |style=display|, gli ultimi due con % |style=inline|\footnote{L'aspetto del logo prodotto da |inline| potrebbe % non essere molto stabile e subire drastiche variazioni nelle prossime % versioni del pacchetto.}. % \end{description} % % Non \`e strettamente necessario attenersi alle indicazioni d'uso delle % chiavi riportate nella tabella~\ref{tab:keywords} ed \`e quindi possibile % utilizzarle liberamente, con l'avvertenza che le chiavi i cui effetti non % sono applicabili al comando di cui sono argomento non produrranno alcun % risultato mentre tutte le altre avranno effetto solo su quella particolare % istanza del comando a cui sono legate. % % \medskip % % \changes{v0.9}{2005/10/29}{Aggiunto un nuovo comando per gestire in % maniera ``globale'' le chiavi} % \noindent\DescribeMacro{\setupGuIT}\oarg{keywords}\newline % \DescribeMacro{\setupguit}\oarg{keywords}\newline % Oltre ad essere utilizzabili direttamente nei comandi indicati in % precedenza, tutte le chiavi appena illustrate possono essere usate come % argomenti di \cs{setupGuIT}, che provveder\`a ad elaborarle e ad % applicarne gli effetti \emph{a tutto ci\`o che segue, tenendo conto delle % normali regole di scoping}. % % Utilizzare questo comando senza alcun argomento equivale a disabilitare % l'utilizzo del colore e la generazione dei link, ad impostare il font % usato per il logo a quello attivo in quel punto del documento, ad % impostare l'indirizzo del sito internet del Gruppo a quello attuale, a % disabilitare la visualizzazione del documento che estente \cs{GuITurl} e % dell'anno e ad impostare lo stile |display| per \cs{GuITmeeting}. % % Giova rimarcare la differenza tra l'applicazione delle chiavi a % \cs{setupGuIT} ed agli altri comandi: % % \begin{itemize} % \item l'esecuzione di un'istanza di \cs{setupGuIT} ha effetto \emph{su % tutti i comandi di questo pacchetto fino al termine del documento o del % pi\`u piccolo gruppo che lo contiene}; % \item applicare una chiave ad un qualsiasi altro comando di questo % pacchetto pu\`o potenzialmente produrre un qualche effetto % \emph{solamente su quella particolare istanza di quel particolare % comando}. % \end{itemize} % % % % \subsection{Creare nuove realizzazioni del logo del Gruppo} % \DescribeMacro{\DeclareGuITLogoCommand}\marg{famiglia}\oarg{serie}\marg{u-h}\marg{u-v}\marg{i-h}\marg{t-h}\newline % Il numero di font supportati da questa versione del pacchetto non \`e % molto alto; per gli utenti desiderosi di usare font non previsti % dall'autore, \`e disponibile il comando \cs{DeclareGuITLogoCommand}, % utilizzabile solo nel preambolo del documento o nel file di configurazione % \altro{guit.cfg}. % % Tenendo ben presente che sia la \meta{famiglia} tanto quanto la % \meta{serie} sono da considerarsi nell'accezione tipica dei termini del % sistema \emph{NFSS2}, i sei parametri rappresentano: % % \begin{enumerate} % \item il nome della famiglia di font; % \item la serie (valore di default: \altro{m}, cio\`e il tradizionale % valore di \cs{mddefault}); % \item lo scartamento orizzontale della \emph{u}; % \item lo scartamento verticale della \emph{u}; % \item lo scartamento orizzontale della \emph{i}; % \item lo scartamento orizzontale della \emph{t}. % \end{enumerate} % % Valori negativi degli ultimi quattro parametri indicano spostamenti verso % sinistra o, dove applicabile, verso l'alto; valori positivi indicano, % ovviamente, spostamenti nelle direzioni opposte. Usando % \cs{DeclareGuITLogoCommand} \`e possibile ridefinire le realizzazioni del % logo fornite dalla versione attuale del pacchetto, con l'unica eccezione % del logo composto con la famiglia Computer Modern\footnote{Un eventuale % tentativo di ridefinizione avrebbe conseguenze deleterie sul risultato % finale.}. % % \medskip % % \noindent\DescribeMacro{\AliasGuITLogoCommand}\marg{fam1}\marg{ser1}\marg{fam2}\marg{ser2}\newline % Per evitare che il pacchetto utilizzi il font Computer Modern Roman in % sostituzione di un font non supportato, \`e possibile creare un alias per % la particolare combinazione inesistente di famiglia e serie. I primi due % argomenti rappresentano la famiglia e la serie che devono essere % rappresentate dal font identificato dagli ultimi due parametri e per il % quale \emph{deve} essere gi\`a stata creata un'istanza del logo (tramite % \cs{DeclareGuITLogoCommand} oppure tramite un altro alias). % % A titolo d'esempio, la definizione per il font Utopia, serie \altro{bx}, % \`e attualmente un alias creato in questo modo: % \begin{quote} % |\AliasGuITLogoCommand{put}{bx}{put}{m}| % \end{quote} % % % % \section{Configurazione}\label{sec:config} % Il pacchetto \`e corredato di un piccolo file di configurazione, % \altro{guit.cfg}, nel quale l'utente pu\`o impostare un colore di default % per il logo diverso dall'originale, definire nuove realizzazioni del logo % o ridefinire quelle esistenti. % % Il file cos\`{\i} come viene distribuito \`e praticamente vuoto, in quanto % tutte le dichiarazioni utili sono state commentate perch\'e riprendono % semplicemente quanto gi\`a definito nel codice del pacchetto e servono % unicamente da esempio. % % % % \section{Opzioni} % Il pacchetto ha tre opzioni, ma il loro uso \`e sconsigliato a favore del % comando \cs{setupGuIT}, che permette una maggiore flessibilit\`a: % % \begin{description} % \item[color] forza la colorazione di tutte le occorrenze del logo, % indipendentemente dalla forma del comando usata; \emph{prestate bene % attenzione al fatto che il significato di quest'opzione \`e % radicalmente cambiato rispetto alle versioni precedenti alla 0.7 e % che l'uso di \cs{setupGuIT} pu\`o annullarne l'effetto}; % \item[nocolor] disattiva il supporto del colore; quando viene specificata % quest'opzione \cs{GuIT*} e \cs{guit*} producono gli stessi risultati % di \cs{GuIT}, cio\`e il colore del logo non viene alterato in alcun % modo; \emph{prestate bene attenzione al fatto che a partire dalla % versione 0.9 l'uso di \cs{setupGuIT} pu\`o annullare l'effetto di % quest'opzione}; % \item[link] abilita l'uso di \pacchetto{hyperref}, \emph{che deve essere % caricato esplicitamente} nel preambolo del documento) per trasformare ogni % occorrenza del logo del Gruppo e dell'espansione della dicitura % completa in un link al sito di \guit; prestate attenzione al fatto % che l'aspetto del logo \emph{non muta} minimamente; inoltre, come effetto % collaterale dell'uso di \pacchetto{hyperref}, \cs{GuITurl} diventa % automaticamente un link al sito internet di \guit; \emph{prestate % bene attenzione al fatto che a partire dalla versione 0.9 l'uso di % \cs{setupGuIT} pu\`o annullare l'effetto di quest'opzione}. % \end{description} % % % % \section{Dipendenze da altri pacchetti} % La lista dei pacchetti da cui questo codice dipende \`e, per ora, molto % breve e si tratta di pacchetti fondamentali oppure estremamente comuni: % % \begin{itemize} % \item \pacchetto{hyperref}; % \item \pacchetto{graphics}; % \item \pacchetto{url}; % \item \pacchetto{xcolor}, versione 2.00 o successive; % \item \pacchetto{xkeyval}, versione 2.5 o successive. % \end{itemize} % % \pacchetto{hyperref} non viene pi\`u caricato automaticamente a partire % dalla versione 0.9.1. % % Ad accezione di \pacchetto{url}, tutti gli altri pacchetti vengono % caricati senza indicare esplicitamente alcuna opzione, ma questo non % significa che ci\`o non possa causarvi problemi: laddove \`e perfettamente % lecito tentare di caricare due o pi\`u volte lo stesso pacchetto \emph{con % le stesse opzioni}, non \`e possibile farlo cambiando le opzioni, quindi % il codice seguente \`e errato: % % \begin{verbatim} % % ... % \usepackage{graphics} % \usepackage[draft]{graphics} % % ... % \end{verbatim} % % Per semplificare al massimo il problema, se doveste incontrare messaggi % d'errore che menzionano i pacchetti elencati in precedenza alterate % l'ordine di caricamento dei pacchetti nel vostro documento in modo che % questo pacchetto si trovi dopo quello indicato dai messaggi. % % % % \StopEventually{% % \bibliographystyle{alpha} % \begin{thebibliography}{GMS94} % \addcontentsline{toc}{section}{\refname} % \bibitem[Adr05]{Adriaens05} Hendri Adriaens, \emph{The % \pacchetto{xkeyval} package}, v2.5e, 2005/11/25 (disponibile presso % \textsc{ctan} in \url{macros/latex/contrib/xkeyval}). % \bibitem[GMS94]{GOOSSENS94} Michel Goossens, Frank Mittelbach e Alexander % Samarin. \emph{The \LaTeX\ Companion}. Addison-Wesley Company, 1994. % \bibitem[Ker05]{Kern05} Dr.~Uwe Kern, \emph{Extending \LaTeX's color % facilities: the \pacchetto{xcolor} package}, v2.09, 2005/12/21 % (disponibile presso \textsc{ctan} in % \url{macros/latex/contrib/xcolor}). % \bibitem[Knu86]{CMT} Donal E. Knuth. \emph{Computer Modern Typefaces}, % volume E di \emph{Computer \& Typesetting}. Addison-Wesley % Publishing, 1986. % \end{thebibliography}} % % % % \section{Il codice} % % % % \subsection{Il pacchetto} % \changes{v0.2}{2003/02/17}{Corretti un paio di errori nel codice} % \changes{v0.9}{2005/11/19}{I pacchetti \pacchetto{xcolor} e % \pacchetto{hyperref} vengono ora caricati di default; \pacchetto{color} % \`e stato definitivamente rimosso} % \changes{v0.9.1}{2009/07/31}{\pacchetto{hyperref} non viene pi\`u caricato % automaticamente; suggerimento e codice di Enrico Gregorio} % \changes{v1.0.0}{2019/07/08}{\pacchetto{url} viene caricato con l'opzione % \altro{hyphens}} % \changes{v1.0.0}{2020/07/03}{\pacchetto{url} viene caricato solo se non % \`e gi\`a stato fatto} % Richiediamo espressamente l'uso di \LaTeXe, ci annunciamo al mondo e % carichiamo tutti i pacchetti necessari. % \begin{macrocode} %<*style> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{guit}[2020/07/03 v1.0.0-alpha.4 Logo del GuIT] \RequirePackage{graphics} \@ifpackageloaded{url}{}{\RequirePackage[hyphens]{url}} \RequirePackage{xcolor}[2004/07/04] \RequirePackage{xkeyval}[2005/05/07] % \end{macrocode} % % \changes{v0.7}{2003/10/17}{Modificata la semantica di \altro{color}: ora % forza la colorazione di tutte le occorrenze del logo} % \changes{v0.9}{2005/11/21}{Semplificata la gestione delle opzioni} % Le tre opzioni che il pacchetto presentava fino alla versione 0.8.2 sono % da considerarsi obsolete, ma il loro effetto \`e, almeno parzialmente, % ancora onorato. % \begin{macrocode} \newif\if@guit@colorized \newif\if@guit@link \DeclareOption{color}{\AtEndOfPackage{\setupGuIT[color=yes]}} \DeclareOption{nocolor}{\AtEndOfPackage{\setupGuIT[color=no]}} \DeclareOption{link}{\AtEndOfPackage{\setupGuIT[link=yes]}} \ProcessOptions\relax % \end{macrocode} % % \begin{macro}{\setupGuIT} % \changes{v0.9.2}{2012/08/17}{Aggiornato l'indirizzo del sito internet} % \changes{v1.0.0}{2012/08/17}{Aggiornato l'indirizzo del sito internet} % \begin{macro}{\setupguit} % Il comando per gestire le varie chiavi \`e un semplice wrapper alla macro % \cs{setkeys*} (ho optato per usare questa macro in quanto non genera alcun % messaggio d'errore se le chiavi che riceve in input non esistono nella % famiglia sotto esame). % \begin{macrocode} \DeclareRobustCommand{\setupGuIT}[1][color=no, link=no, family=, series=, url=https://www.guitex.org, document=, year=, style=display]{% \setkeys*{guit}{#1}% \ignorespaces} \let\setupguit\setupGuIT % \end{macrocode} % \end{macro} % \end{macro} % % Alcune delle chiavi usate nel codice vengono definite qui, altre sono % definite durante la generazione delle macro interne che si occupano di % comporre il logo (vedere pagina~\pageref{p:fntcmd}). % \begin{macrocode} \define@choicekey*{guit}{color}[\val\nr]{yes,true,no,false}[yes]{% \ifcase\nr\relax \@guit@colorizedtrue \or \@guit@colorizedtrue \or \@guit@colorizedfalse \or \@guit@colorizedfalse \fi} \define@choicekey*{guit}{link}[\val\nr]{yes,true,no,false}[yes]{% \ifcase\nr\relax \@guit@linktrue \or \@guit@linktrue \or \@guit@linkfalse \or \@guit@linkfalse \fi} \define@key{guit}{family}{\def\@guit@family{#1}} \define@key{guit}{series}{\def\@guit@series{#1}} % \end{macrocode} % % Il caricamento automatico di \pacchetto{hyperref} ha causato qualche % problema, quindi a partire dalla versione 0.9.1 \`e stato rimosso. Di % seguito viene effettuato il controllo sul fatto che il pacchetto sia stato % caricato esplicitamente dall'utente. % \begin{macrocode} \def\@if@guit@link@or@hyperref#1#2{% \if@guit@link \@if@guit@hyperrefloaded{#1}{#2}% \else #2% \fi} \AtBeginDocument{% \@ifpackageloaded{hyperref} {\let\@if@guit@hyperrefloaded\@firstoftwo} {\let\@if@guit@hyperrefloaded\@secondoftwo}} % \end{macrocode} % % \begin{macro}{\GuITcolor} % \changes{v0.6}{2003/09/16}{Esteso con una versione ``stellata'' che % beneficia delle funzionalit\`a di \pacchetto{xcolor}} % \changes{v0.7}{2003/09/26}{Trasformato in un comando \emph{robusto} (mea % culpa)} % \changes{v0.8.2}{2005/04/08}{Modificata la dichiarazione del colore di % default} % \changes{v0.9}{2005/11/19}{Eliminate le definizioni riguardanti % esclusivamente \pacchetto{color}} % \begin{macro}{\guitcolor} % Procediamo alla definizione di un nuovo comando per alterare il colore % utilizzato da \cs{GuIT*} e \cs{guit*}. Definiamo anche il colore % utilizzato di default. % \begin{macrocode} \DeclareRobustCommand*{\GuITcolor}{% \@ifstar\x@guit@color@imp\@guit@color@imp} % \end{macrocode} % Teniamo conto della presenza delle estensioni fornite dal pacchetto % \pacchetto{xcolor} e realizziamo le implementazioni del comando % precedente\footnote{In realt\`a, quel \cs{definecolor} proviene da % \pacchetto{xcolor}, versione 2.00 o successiva}. % \begin{macrocode} \newcommand*{\@guit@color@imp}[2][cmyk]{% \definecolor{coloredelGuIT}{#1}{#2}} \newcommand*{\x@guit@color@imp}[2][\@empty]{% \edef\@tempa{#1}% \ifx\@empty\@tempa \colorlet{coloredelGuIT}{#2}% \else \colorlet{coloredelGuIT}[#1]{#2}% \fi} \GuITcolor{1, 0, 1, 0.6} \let\guitcolor\GuITcolor % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@guit@url} % \changes{v0.9}{2005/12/26}{Trasformata in una ``chiave'' creata tramite % \pacchetto{xkeyval}} % L'impostazione dell'indirizzo avviene tramite \cs{setupGuIT} prima % dell'inizio del documento. % \begin{macrocode} \define@cmdkey{guit}[@guit@]{url}{\relax} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guitimp} % \changes{v0.8}{2004/10/28}{Aggiunto un argomento} % \changes{v0.9}{2005/11/21}{Spostato in questa macro il controllo sul % colore a causa delle modifiche imposte dall'uso delle chiavi} % \changes{v0.9}{2006/05/03}{Sostituiti i due \cs{normalcolor} con il nulla % quando il logo non deve essere colorato} % Questa macro fornisce un primo livello di astrazione dalla vera % implementazione del logo, permettendo di attivare opzionalmente la % colorazione ed il meccanismo che trasforma ogni logo in un link al sito di % \guit. Volendo evitare intromissioni di \pacchetto{hyperref} nell'aspetto % del logo si \`e disabilitata la colorazione dei link (anche se % \pacchetto{hyperref} venisse caricato con l'opzione |colorlinks=true|) e % la creazione del box che \altro{Acrobat Reader} e qualche altro previewer % visualizzano attorno ai link. % % Al livello inferiore dell'implementazione viene passato come unico % argomento la giustapposizione di \cs{@guit@family}, che contiene il nome % della famiglia di font attualmente in uso oppure di quella scelta % dall'utente tramite la chiave |family| oppure tramite l'uso diretto della % chiavi implicitamente associate ad ogni famiglia, e \cs{@guit@series}, % l'analogo di \cs{@guit@family} per ci\`o che riguarda le serie. % \begin{macrocode} \def\@guitimp#1{% \begingroup \setkeys*{guit}{#1}% \if@guit@colorized \def\@colorize@guit{\color{coloredelGuIT}}% \def\@decolorize@guit{\normalcolor}% \else \def\@colorize@guit{}% \def\@decolorize@guit{}% \fi \edef\@tempa{\@guit@family}% \ifx\@empty\@tempa \let\@guit@family\f@family \fi \edef\@tempa{\@guit@series}% \ifx\@empty\@tempa \let\@guit@series\f@series \fi \@if@guit@link@or@hyperref {\Hy@colorlinksfalse \def\@pdfborder{0 0 0}% \href{\@guit@url}{\@@guitimp{\@guit@family\@guit@series}}} {\@@guitimp{\@guit@family\@guit@series}}% \endgroup} % \end{macrocode} % \end{macro} % % Iniziamo ora a preparare i comandi da utilizzarsi in combinazione con i % font attualmente supportati. Il codice poteva probabilmente essere scritto % in maniera diversa e maggiormente compatta, ma ho preferito adottare un % approccio modulare e pi\`u semplice. % % \begin{macro}{\DeclareGuITLogoCommand} % \changes{v0.8.2}{2005/04/08}{Nuovo comando per l'utente finale per creare % nuove realizzazioni del logo} % Il lavoro necessario alla creazione delle diverse realizzazioni del logo % viene interamente demandato ad una macro interna. Per mantenere un minimo % di coerenza, quanto meno all'interno del singolo documento, permettiamo % l'uso di questo comando solo nel preambolo e, di conseguenza, anche nel % file di configurazione esterno. % \begin{macrocode} \DeclareRobustCommand*{\DeclareGuITLogoCommand}{% \@gen@guit@fntcmd} \@onlypreamble\DeclareGuITLogoCommand % \end{macrocode} % \end{macro} % % \begin{macro}{\@gen@guit@fntcmd}\label{p:fntcmd} % \changes{v0.7.1}{2004/02/28}{Aggiunta questa macro per generare le macro % interne per i vari font; semplificate le macro dei font (con l'eccezione % di quella per il Computer Modern Roman)} % \changes{v0.8}{2004/10/28}{Alterata la selezione del font da usare} % \changes{v0.9}{2005/11/21}{Aggiunta la definizione contestuale di una % chiave con lo stesso nome della famiglia di font} % \changes{v0.9}{2005/11/27}{Riscritta per gestire come secondo argomento % opzionale la serie} % \begin{macro}{\@gen@guit@fntcmd@imp} % Nell'ottica di voler semplificare il codice del pacchetto viene fatto % largo uso di questa macro per generare ``automaticamente'' le macro % interne che si occupano di comporre il logo nella maniera pi\`u corretta % possibile a seconda del font in uso. % % Vengono anche create due chiavi: una con il nome uguale al nome della % famiglia, che ignora qualunque valore eventualmente assegnatole ed imposta % \cs{@guit@family} in modo che sia utilizzabile in seguito, e la seconda % con il nome formato dalla giustapposizione del nome della famiglia, del % carattere \altro{/} e della serie, che ignora qualunque valore % eventualmente assegnatole ed imposta \cs{@guit@family} e \cs{@guit@series} % in modo che siano utilizzabili in seguito. % \begin{macrocode} \def\@gen@guit@fntcmd#1{% \@ifnextchar[% {\@gen@guit@fntcmd@imp#1}% {\@gen@guit@fntcmd@imp#1[m]}} \def\@gen@guit@fntcmd@imp#1[#2]#3#4#5#6{% \define@key{guit}{#1}[#1]{\def\@guit@family{#1}}% \define@key{guit}{#1/#2}[#1/#2]{% \def\@guit@family{#1}% \def\@guit@series{#2}}% \@namedef{@guit#1#2}{% \fontfamily{#1}\fontseries{#2}\scshape \@colorize@guit g\kern #3\lower #4\hbox{u}% \@decolorize@guit\kern #5 I\@colorize@guit\kern #6 t}} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\AliasGuITLogoCommand} % \changes{v0.9}{2005/11/30}{Nuovo comando per l'utente finale per creare % alias di nuove realizzazioni del logo} % La creazione di un alias non si discosta molto da quanto appena visto, se % non fosse per il fatto che l'ultima riga di \cs{AliasGuITLogoCommand} non % \`e di immediata lettura. % \begin{macrocode} \DeclareRobustCommand*{\AliasGuITLogoCommand}[4]{% \define@key{guit}{#1/#2}[#1/#2]{% \def\@guit@family{#3}% \def\@guit@series{#4}}% \expandafter\let\csname @guit#1#2\expandafter\endcsname\csname @guit#3#4\endcsname} \@onlypreamble\AliasGuITLogoCommand % \end{macrocode} % \end{macro} % % \begin{macro}{\@guitcmrm} % \changes{v0.3}{2003/06/12}{Aggiunta l'indicazione esplicita della famiglia % \textsf{cmr}; in precedenza si usava la famiglia di font con grazie % predefinita, qualunque essa fosse} % \changes{v0.7.3}{2004/10/11}{Un minimo aggiustamento al coefficiente di % traslazione orizzontale della ``u''} % \changes{v0.9}{2005/11/27}{Modificato il nome aggiungendo la serie} % Se il logo deve essere scritto utilizzando il Computer Modern Roman % richiediamo espressamente l'uso del font originale di Knuth impostando per % l'encoding il valore OT1: questo ci permette di produrre documenti in % formato \textsc{pdf} utilizzando font PostScript\texttrademark~anche senza % dover usare la collezione \altro{cm-super}. Questo comando viene usanto % anche quando il font principale usato dall'utente non \`e tra quelli % supportati dal pacchetto. \emph{Non \`e possibile creare questa macro con % \cs{@gen@guit@fntcmd}}. % \begin{macrocode} \def\@guitcmrm{% \fontencoding{OT1}\fontfamily{cmr}\fontseries{m}\scshape \@colorize@guit g\kern -0.26em\lower 0.714ex\hbox{u}% \@decolorize@guit\kern -0.125em I\@colorize@guit\kern -0.125em t} \define@key{guit}{cmr}[cmr]{\def\@guit@family{cmr}} \define@key{guit}{cmr/m}[cmr/m]{% \def\@guit@family{cmr}% \def\@guit@series{m}} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guitlmrm} % Questa macro viene utilizzata se l'utente usa il font Latin Modern. % \begin{macrocode} \@gen@guit@fntcmd{lmr}{-0.26em}{0.714ex}{-0.125em}{-0.125em} \AliasGuITLogoCommand{lmr}{b}{lmr}{m} \AliasGuITLogoCommand{lmr}{bx}{lmr}{m} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guitptmm} % \changes{v0.7.3}{2004/10/11}{Un minimo aggiustamento al coefficiente di % traslazione orizzontale della ``u''} % \changes{v0.9}{2005/11/27}{Modificato il nome aggiungendo la serie} % \begin{macro}{\@guitptmbx} % Questa macro viene utilizzata se l'utente usa il font Times. % \begin{macrocode} \@gen@guit@fntcmd{ptm}{-0.27em}{0.5475ex}{-0.125em}{-0.125em} \@gen@guit@fntcmd{ptm}[bx]{-0.345em}{0.68ex}{-0.125em}{-0.125em} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@guitpplm} % \changes{v0.7.3}{2004/10/11}{Minimi aggiustamenti ai coefficienti di % traslazione orizzontale e verticale della ``u''} % \changes{v0.9}{2005/11/27}{Modificato il nome aggiungendo la serie} % \begin{macro}{\@guitpplbx} % Se viene usato Palatino \cs{GuIT} user\`a questo comando. % \begin{macrocode} \@gen@guit@fntcmd{ppl}{-0.276em}{0.717ex}{-0.125em}{-0.125em} \@gen@guit@fntcmd{ppl}[bx]{-0.33em}{0.689ex}{-0.125em}{-0.125em} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@guitpncm} % \changes{v0.7.3}{2004/10/11}{Minimi aggiustamenti ai coefficienti di % traslazione orizzontale e verticale della ``u''} % \changes{v0.9}{2005/11/27}{Modificato il nome aggiungendo la serie} % \begin{macro}{\@guitpncbx} % Se il font attualmente in uso \`e il New Century Schoolbook verr\`a usata % questa macro. % \begin{macrocode} \@gen@guit@fntcmd{pnc}{-0.322em}{0.678ex}{-0.125em}{-0.125em} \@gen@guit@fntcmd{pnc}[bx]{-0.36em}{0.656ex}{-0.125em}{-0.125em} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@guitputm} % \changes{v0.9}{2005/11/27}{Modificato il nome aggiungendo la serie} % Per il font Utopia si usano i valori di questo comando. % \begin{macrocode} \@gen@guit@fntcmd{put}{-0.285em}{0.61ex}{-0.125em}{-0.125em} \AliasGuITLogoCommand{put}{bx}{put}{m} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guitbchm} % \changes{v0.9}{2005/11/27}{Modificato il nome aggiungendo la serie} % \begin{macro}{\@guitbchbx} % Nel caso si usi il font Charter questa \`e la macro utilizzata. % \begin{macrocode} \@gen@guit@fntcmd{bch}{-0.28em}{0.58ex}{-0.125em}{-0.125em} \@gen@guit@fntcmd{bch}[bx]{-0.31em}{0.56ex}{-0.125em}{-0.125em} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@guitpbkm} % \changes{v0.9}{2005/11/27}{Modificato il nome aggiungendo la serie} % \begin{macro}{\@guitpbkbx} % L'ultimo comando ``interno'' viene usato per il font Bookman. % \begin{macrocode} \@gen@guit@fntcmd{pbk}{-0.3em}{0.59ex}{-0.125em}{-0.125em} \@gen@guit@fntcmd{pbk}[bx]{-0.34em}{0.52ex}{-0.125em}{-0.125em} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@@guitimp} % \changes{v0.8}{2004/10/28}{Enormemente semplificata grazie ai preziosi % suggerimenti del Prof.\ Enrico Gregorio; aggiunto un argomento} % L'implementazione del comando a disposizione dell'utente \`e molto % semplice: se non esiste la macro interna associata alla famiglia di font % selezionata si ricade sull'onnipresente Computer Modern Roman, altrimenti % si utilizza la macro appropriata. % \begin{macrocode} \def\@@guitimp#1{% \@ifundefined{@guit#1}{\@guitcmrm}{\@nameuse{@guit#1}}} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guit@color@on} % \changes{v0.7}{2003/10/17}{Estratto il controllo sul valore di % \cs{@guit@colorized} in modo da effettuare l'operazione una volta sola} % \changes{v0.8}{2004/10/28}{Aggiunto un argomento opzionale} % \changes{v0.9}{2005/11/21}{Eliminati i controlli sull'uso del colore a % causa delle modifiche imposte dall'uso delle chiavi} % La porzione dell'implementazione di \cs{GuIT} che attiva la colorazione % del logo in seguito alla presenza del carattere \altro{*}. % \begin{macrocode} \newcommand*{\@guit@color@on}[1][]{% \@guitimp{color, #1}\ignorespaces} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guit@color@off} % \changes{v0.8}{2004/10/28}{Aggiunto un argomento opzionale} % \changes{v0.9}{2005/11/21}{Eliminati i controlli sull'uso del colore a % causa delle modifiche imposte dall'uso delle chiavi} % La porzione dell'implementazione di \cs{GuIT} che potenzialmente non % altera la colorazione del logo. % \begin{macrocode} \newcommand*{\@guit@color@off}[1][]{% \@guitimp{#1}\ignorespaces} % \end{macrocode} % \end{macro} % % \begin{macro}{\GuIT} % Alla fine, ecco il comando a disposizione dell'utente finale per scrivere % il logo del \GuIT. L'implementazione gestisce unicamente la presenza % dell'asterisco, demandando il controllo dell'eventuale argomento opzionale % allo strato sottostante. % \begin{macrocode} \DeclareRobustCommand*{\GuIT}{% \@ifstar\@guit@color@on\@guit@color@off} % \end{macrocode} % \end{macro} % % \begin{macro}{\guit} % Per semplificarci (o, piuttosto, semplificarmi) la vita ecco la versione % del comando precedente con il nome completamente in lettere minuscole. % \begin{macrocode} \let\guit\GuIT % \end{macrocode} % \end{macro} % % \begin{macro}{\GuITtext} % \changes{v0.4}{2003/07/15}{Modificato il testo prodotto da questo comando % per aderire perfettamente alla dizione ufficiale del Gruppo} % \changes{v0.7}{2003/10/15}{Sdoppiata la definizione per tenere conto % dell'uso di \pacchetto{hyperref}} % \changes{v0.9}{2005/11/21}{Unificata la definizione per poter influenzare % la generazione del link tramite l'uso delle chiavi} % Il comando per indicare la denominazione completa e corretta del % Gruppo. L'unica chiave che ha effetto su questo comando \`e |link|. % \begin{macrocode} \DeclareRobustCommand*{\GuITtext}[1][]{% \begingroup \setkeys*{guit}{#1}% \@if@guit@link@or@hyperref {\href{\@guit@url}{Gruppo Utilizzatori Italiani di \TeX}} {Gruppo Utilizzatori Italiani di \TeX}% \endgroup \ignorespaces} % \end{macrocode} % \end{macro} % % \begin{macro}{\guittext} % Come per \cs{GuIT} forniamo la versione con il nome completamente in % lettere minuscole. % \begin{macrocode} \let\guittext\GuITtext % \end{macrocode} % \end{macro} % % \begin{macro}{\GuITtextEn} % \begin{macro}{\guittexten} % Per il comando che riporta la denominazione anglicizzata del \guit\ vale % quanto riportato per \cs{GuITtext} e \cs{guittext}. % \begin{macrocode} \DeclareRobustCommand*{\GuITtextEn}[1][]{% \begingroup \setkeys*{guit}{#1}% \@if@guit@link@or@hyperref {\href{\@guit@url}{Italian \TeX\ User Group}} {Italian \TeX\ User Group}% \endgroup \ignorespaces} \let\guittexten\GuITtextEn % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\GuITurl} % \changes{v0.7}{2003/10/15}{Aggiunto questo comando per scrivere % l'indirizzo del sito internet di \guit~senza troppi errori} % \changes{v0.9}{2005/11/25}{Aggiunto un argomento opzionale per gestire le % chiavi} % Il comando per scrivere automaticamente l'indirizzo del sito internet di % \guit~``subisce'', implicitamente, l'effetto del caricamente del pacchetto % \pacchetto{hyperref}, quindi il comando scriverebbe sempre l'indirizzo del % sito come collegamento al sito stesso: per evitare questo effetto % collaterale \`e stato realizzato un accrocchio ad hoc. L'argomento % opzionale viene considerato un'estensione dell'indirizzo (una pagina, una % sezione, etc.) e composto di conseguenza. % \begin{macrocode} \DeclareRobustCommand*{\GuITurl}[1][]{% \begingroup \setkeys*{guit}{#1}% \@if@guit@link@or@hyperref {\let\@guit@url@imp\url} {\let\@guit@url@imp\@guit@url@nolink}% \edef\@tempa{\@guit@url}% \ifx\@empty\@tempa \relax \else \edef\@tempa{\@guit@document}% \ifx\@empty\@tempa \expandafter\@guit@url@imp\expandafter{\@guit@url}% \else \expandafter\expandafter\expandafter\@guit@url@imp% \expandafter\expandafter\expandafter{% \expandafter\@guit@url\expandafter/\@guit@document}% \fi \fi \endgroup \ignorespaces} \DeclareUrlCommand\@guit@url@nolink{} \define@cmdkey{guit}[@guit@]{document}{\relax} % \end{macrocode} % \end{macro} % % \begin{macro}{\guiturl} % Come per \cs{GuIT} forniamo la versione con il nome completamente in % lettere minuscole. % \begin{macrocode} \let\guiturl\GuITurl % \end{macrocode} % \end{macro} % % \begin{macro}{\GuITforum} % \changes{v0.7.2}{2004/09/16}{Aggiunto questo comando per scrivere % l'indirizzo del forum di \guit~senza troppi errori} % \changes{v0.9}{2005/11/27}{Reimplementato usando \cs{GuITurl} ed il nuovo % argomento opzionale; modificato l'indirizzo del forum su suggerimento di % Emiliano Giovanni Vavassori e Maurizio W. Himmelman} % \changes{v1.0.0}{2012/08/17}{Aggiornato l'URL del forum} % Quanto detto per \cs{GuITurl} vale anche per questo comando. % \begin{macrocode} \DeclareRobustCommand*{\GuITforum}[1][]{% \guiturl[#1, document=home/it/forum/index]} % \end{macrocode} % \end{macro} % % \begin{macro}{\guitforum} % Come per \cs{GuIT} forniamo la versione con il nome completamente in % lettere minuscole. % \begin{macrocode} \let\guitforum\GuITforum % \end{macrocode} % \end{macro} % % \begin{macro}{\GuITmeeting} % \changes{v0.7.3}{2004/10/11}{Aggiunto questo comando ed alcune macro % accessorie per realizzare il logo del convegno periodico} % \begin{macro}{\@guit@meeting@color@on} % \changes{v0.7.4}{2004/10/15}{Corretta una svista clamorosa nella selezione % del font da usare} % \changes{v0.7.5}{2004/10/17}{Ri-corretta questa macro (si spera per % l'ultima volta)} % \changes{v0.8.1}{2004/11/15}{Aggiunta l'indicazione dell'encoding da % usare} % \changes{v0.9}{2005/11/21}{Isolato praticamente tutto il codice in % un'altra macro} % \begin{macro}{\@guit@meeting@color@off} % \changes{v0.7.4}{2004/10/15}{Corretta una svista clamorosa nella selezione % del font da usare} % \changes{v0.7.5}{2004/10/17}{Ri-corretta questa macro (si spera per % l'ultima volta)} % \changes{v0.8.1}{2004/11/15}{Aggiunta l'indicazione dell'encoding da % usare} % \changes{v0.9}{2005/11/21}{Isolato praticamente tutto il codice in % un'altra macro} % L'implementazione del logo del convegno \`e stata partizionata per % realizzare una versione a colori duplicando poco codice. % \begin{macrocode} \DeclareRobustCommand*{\GuITmeeting}{% \@ifstar\@guit@meeting@color@on\@guit@meeting@color@off} \newcommand*{\@guit@meeting@color@on}[1][]{% \@guit@meeting@imp{*}{#1}} \newcommand*{\@guit@meeting@color@off}[1][]{% \@guit@meeting@imp{}{#1}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % Definiamo due chiavi per gestire l'anno e lo stile del logo. % \begin{macrocode} \define@cmdkey{guit}[@guit@]{year}{\relax} \newif\if@guit@inline \define@choicekey*{guit}{style}[\val\nr]{inline,display}{% \ifcase\nr\relax \@guit@inlinetrue \or \@guit@inlinefalse \fi} % \end{macrocode} % % \begin{macro}{\@guit@meeting@imp} % In questa macro gestiamo le chiavi (|#2|) e l'asterisco (|#1|), impostiamo % il font da usare ed ordiniamo la macro con \textit{meeting} e quella che % si occupa dell'anno in base allo stile di visualizzazione attivo. % \begin{macrocode} \def\@guit@meeting@imp#1#2{% \begingroup \setkeys*{guit}{#2}% \fontencoding{OT1}\fontfamily{cmr}\fontseries{m}\selectfont \guit#1 \if@guit@inline \@guit@meeting@part\@guit@meeting@year \else \@guit@meeting@year\@guit@meeting@part \fi \endgroup \ignorespaces} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guit@meeting@part} % \changes{v0.9}{2005/11/21}{Modificata per tenere conto dei due stili del % logo} % Se il valore di |style| \`e |display|, allora la parte % ``\textit{meeting}'' del logo viene traslata usando per entrambe le % direzioni, come unit\`a di misura, \emph{ex} per cercare di limitare al % minimo le deformazioni dello spazio dovute alla definizione di \emph{em} % (che nella famiglia Computer Modern varia in maniera non proporzionale % alla dimensione nominale del font~\cite{CMT}). % \begin{macrocode} \def\@guit@meeting@part{% \if@guit@inline \textit{meeting}% \else \kern -2.02ex\lower 1.25ex\hbox{\textit{meeting}}% \fi} % \end{macrocode} % \end{macro} % % \begin{macro}{\@guit@meeting@year} % \changes{v0.9}{2005/11/21}{Aggiunto questo comando per gestire l'anno su % esplicita richiesta di Maurizio W.~Himmelmann} % \begin{macro}{\@guit@meeting@year@imp} % Se il valore di |style| \`e |display|, allora l'anno viene traslato e % ridimensionato usando \cs{scalebox}. % \begin{macrocode} \def\@guit@meeting@year{% \edef\@tempa{\@guit@year}% \ifx\@empty\@tempa \relax \else \@guit@meeting@year@imp{\@guit@year}% \fi} \def\@guit@meeting@year@imp#1{% \if@guit@inline \fontfamily{pzc}\selectfont #1 \else \rlap{% \hskip0.7em\fontfamily{pzc}\selectfont \raise 0.5ex\hbox{\scalebox{0.85}{#1}}}% \fi} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\guitmeeting} % Come per \cs{GuIT} forniamo la versione con il nome completamente in % lettere minuscole. % \begin{macrocode} \let\guitmeeting\GuITmeeting % \end{macrocode} % \end{macro} % % % \`E essenziale che vengano impostate alcune chiavi in modo da creare % alcune macro d'uso interno prima di proseguire; per fare questo \`e % sufficiente utilizzare \cs{setupGuIT} con le impostazioni di default. % \begin{macrocode} \setupGuIT % \end{macrocode} % % Il codice seguente \`e stato integrato da \pacchetto{arslogo}, v0.1.3, % scritto da Massimo Caschili, dietro esplicita richiesta del \guittext, % detentore del copyright. % \begin{macrocode} \DeclareRobustCommand*{\Ars}{% \textsf{\lower -.48ex\hbox{\rotatebox{-20}{A}}\kern -.3em{rs}}% \kern -.05em\TeX\kern -.17em\lower -.357ex\hbox{nica}} \DeclareRobustCommand*{\Arsob}{\rotatebox{20}{\Ars}} \DeclareRobustCommand*{\ars}{% \textsf{\lower -.48ex\hbox{\rotatebox{-20}{A}}\kern -.3em{rs}}} \DeclareRobustCommand*{\tecnica}{% \TeX\kern -.17em\lower -.357ex\hbox{nica}} \DeclareRobustCommand*{\arsta}{% \ars \kern -0.65em\lower -1.3ex\hbox{\scalebox{0.18}{\hbox{% \TeX\kern -.17em\lower -.357ex\hbox{nica}}}}} \DeclareRobustCommand*{\arstb}{% \ars \kern -0.65em\lower -1.25ex\hbox{\scalebox{0.34}{\hbox{% \TeX\kern -.17em\lower -.357ex\hbox{nica}}}}} \DeclareRobustCommand*{\arstv}{% \ars \kern -0.05em\lower -1.818ex\hbox{\rotatebox{-90}{\hbox{% \scalebox{0.225}{\hbox{% \TeX\kern -.17em\lower -.357ex\hbox{nica}}}}}}} \DeclareRobustCommand*{\arsto}{% \rotatebox{49}{\lower -.84ex\hbox{\scalebox{0.214}{\hbox{% \TeX\kern -.17em\lower -.357ex\hbox{nica}}}}}% \kern -.74em\hbox{\ars}} \DeclareRobustCommand*{\Arsto}{% \rotatebox{49}{\lower -.84ex\hbox{\scalebox{0.214}{\hbox{% \TeX\kern -.17em\lower -.357ex\hbox{nica}}}}}% \kern -.74em\hbox{\Ars}} % \end{macrocode} % % Terminiamo leggendo il file di configurazione. Nel caso non si riuscisse a % trovarlo, ci limitiamo ad avvertire l'utente. % \begin{macrocode} \InputIfFileExists{guit.cfg}% {\relax}% {\PackageInfo{guit}{Configuration file not found}} % % \end{macrocode} % % % % \subsection{Il file di configurazione} % Il file di configurazione \`e, in realt\`a, vuoto e fornisce solo qualche % esempio. La definizione delle realizzazioni del logo e del colore % predefinito del logo non \`e inserita veramente nel file di configurazione % per diminuire il rischio che l'utente le modifichi o le rimuova % accidentalmente. % \begin{macrocode} %<*cfg> \ProvidesFile{guit.cfg}[2020/07/03 v1.0.0-alpha.4 File di configurazione di guit.sty] %% Esempi: %% \GuITcolor{1, 0, 1, 0.6} %% \DeclareGuITLogoCommand{lmr}{-0.26em}{0.714ex}{-0.125em}{-0.125em} %% \AliasGuITLogoCommand{lmr}{b}{lmr}{m} %% \AliasGuITLogoCommand{lmr}{bx}{lmr}{m} %% \DeclareGuITLogoCommand{ptm}{-0.27em}{0.5475ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{ptm}[bx]{-0.345em}{0.68ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{ppl}{-0.276em}{0.717ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{ppl}[bx]{-0.33em}{0.689ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{pnc}{-0.322em}{0.678ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{pnc}[bx]{-0.36em}{0.656ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{put}{-0.285em}{0.61ex}{-0.125em}{-0.125em} %% \AliasGuITLogoCommand{put}{bx}{put}{m} %% \DeclareGuITLogoCommand{bch}{-0.28em}{0.58ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{bch}[bx]{-0.31em}{0.56ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{pbk}{-0.3em}{0.59ex}{-0.125em}{-0.125em} %% \DeclareGuITLogoCommand{pbk}[bx]{-0.34em}{0.52ex}{-0.125em}{-0.125em} % % \end{macrocode} % % % % \makeatletter % \c@IndexColumns=2 % \c@GlossaryColumns=2 % \def\index@prologue{\section*{Indice}% % \markboth{Indice}{Indice}% % I numeri scritti in corsivo si riferiscono alla pagina in cui la voce % corrispondente viene descritta; i numeri sottolineati si riferiscono % alla % \ifcodeline@index % linea di codice della % \fi % definizione; i numeri in carattere tondo si riferiscono alle % \ifcodeline@index % linee di codice % \else % pagine % \fi % in cui la voce viene usata.}% % \def\glossary@prologue{\section*{{Storico dei cambiamenti}}% % \markboth{{Storico dei cambiamenti}}{{Storico dei cambiamenti}}}% % \makeatother % \clearpage % \Finale % \clearpage % \PrintIndex % \clearpage % \PrintChanges % % % \endinput