From 8b09210eb490c9c78be0dff52e69356f5da3d921 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 11 Jan 2006 23:49:49 +0000 Subject: trunk/Master/texmf-dist/source/latex/GuIT git-svn-id: svn://tug.org/texlive/trunk@120 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/GuIT/guit.dtx | 996 +++++++++++++++++++++++++++ Master/texmf-dist/source/latex/GuIT/guit.ins | 79 +++ 2 files changed, 1075 insertions(+) create mode 100644 Master/texmf-dist/source/latex/GuIT/guit.dtx create mode 100644 Master/texmf-dist/source/latex/GuIT/guit.ins diff --git a/Master/texmf-dist/source/latex/GuIT/guit.dtx b/Master/texmf-dist/source/latex/GuIT/guit.dtx new file mode 100644 index 00000000000..e22ee392f15 --- /dev/null +++ b/Master/texmf-dist/source/latex/GuIT/guit.dtx @@ -0,0 +1,996 @@ +% \iffalse +% +% guit.dtx +% Copyright 2003, 2004, 2005 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 +% http://www.latex-project.org/lppl.txt +% +% Author: Emanuele Vicentini +% (emanuelevicentini at yahoo dot it) +% +% This work has the LPPL maintenance status "author-maintained". +% +% This work consists of the files: README, guit.dtx, guit.ins and the +% derived files guit.sty, guit.cfg and guittext.tex +% +%<*driver> +\documentclass[10pt, a4paper, draft]{ltxdoc} +\usepackage[italian]{babel} +\usepackage{guit} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\OnlyDescription +\begin{document} + \DocInput{guit.dtx} +\end{document} +% +% +%<*test> +\documentclass[12pt, a4paper]{article} +\usepackage[margin=1in, noheadfoot]{geometry} +\usepackage{booktabs, guit, rotating} +\pagestyle{empty} + +\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, 2004, 2005 +\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: + +\swapGuITcommands +\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} +\swapGuITcommands + +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 \\ +Times New Roman & \guit[ptm] \\ +Palatino & \guit[ppl] \\ +NewCentury Schoolbook & \guit[pnc] \\ +Charter & \guit[bch] \\ +Bookman & \guit[pbk] \\ +\bottomrule +\end{tabular} +\end{center} + +Per finire, un sfilza di \guit: + +\begingroup + \let\pippo\par + \makeatletter + \@tfor\famiglia:={cmr}{ptm}{ppl}{pnc}{bch}{pbk}\do{% + \noindent + \@tfor\dimensione:=\tiny\scriptsize\footnotesize\small\normalsize + \large\Large\LARGE\huge\do{% + \dimensione\guit[\famiglia]~}% + \Huge\guit[\famiglia]\pippo}% +\endgroup + +\begin{center} +\Huge Venite tutti al prossimo \guitmeeting* +\end{center} + +\end{document} +% +% \fi +% +% +% +% \CheckSum{286} +% +% \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} +% +% +% +% \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} 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}. +% +% +% +% \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, quindi, per evitare +% spiacevoli effetti dovuti a combinazioni dei parametri \emph{NFSS2} +% indicanti font inesistenti nella famiglia Computer Modern originale +% (esempio: OT1/cmr/bx/sc non esiste e viene sostituito automaticamente con +% OT1/cmr/bx/n) il logo viene sempre composto con \meta{enc}/\meta{fam}/m/sc +% dove \meta{enc}, con un'unica eccezione, pu\`o assumere qualunque valore +% mentre \meta{fam} pu\`o variare a scelta tra: +% +% \begin{enumerate} +% \item Computer Modern Roman; +% \item Times; +% \item Palatino; +% \item NewCentury Schoolbook; +% \item Utopia\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.}; +% \item Charter; +% \item Bookman. +% \end{enumerate} +% +% Ho volutamente tralasciato i font Sans Serif perch\'e credo abbiano una +% resa qualitativamente inferiore per il nostro progetto. +% +% Se a qualcuno venisse in mente di tirare in ballo l'encoding T1 perch\'e +% esiste il font T1/cmr/bx/sc, mi permetto di dissentire preventivamente: +% \`e vero che tutti i font della lista precedente si possono utilizzare +% anche con quell'encoding, ma considerate che per usare la famiglia +% Computer Modern in formato Type1 (necessario per i \textsc{pdf} di \guit, +% altrimenti si hanno i notissimi problemi di visualizzazione con l'Acrobat +% Reader) con l'encoding T1 \`e necessario scaricare ed utilizzare la +% collezioni \altro{cm-super} oppure \altro{lmodern}, che non sono ancora +% componenti standard delle pi\`u comuni distribuzioni di \LaTeX~e sono di +% dimensioni ragguardevoli, oppure ricorrere a pacchetti come +% \pacchetto{ae}, tanto per citarne solo uno. +% +% +% +% \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 secondo meeting svoltosi a Pisa il 10 +% ottobre 2004. +% +% Il logo producibile da questo pacchetto, esemplificato in figura +% \ref{fig:guitmeeting}, \`e il risultato di un gran numero di tentativi di +% riprodurre correttamente quello originariamente utilizzato per il +% poster-programma della seconda edizione del meeting. Per questa ragione, +% il logo viene sempre composto usando la famiglia Computer Modern, +% indipendentemente dalla famiglia principale usata dall'utente. +% +% 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}[!t] +% \centering +% \Huge\guitmeeting +% \caption{Logo del convegno periodico} +% \label{fig:guitmeeting} +% \end{figure} +% +% +% +% \section{Comandi} +% +% +% +% \subsection{Il logo} +% \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}\newline +% \DescribeMacro{\GuIT*}\oarg{famiglia}\newline +% \DescribeMacro{\guit}\oarg{famiglia}\newline +% \DescribeMacro{\guit*}\oarg{famiglia}\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 di default \`e il font attivo nel punto di invocazione +% del comando (se presente nella lista di quelli supportati dal pacchetto), +% ma \`e possibile indicarne uno diverso utilizzando l'argomento opzionale e +% scegliendo come \meta{famiglia} una di quelle supportate. +% +% \DescribeMacro{\swapGuITcommands} +% \`E possibile scambiare il significato attribuito a \cs{GuIT} e \cs{GuIT*} +% in qualunque momento, in modo da ottenere sempre il logo di \guit~a colori +% pur continuando ad utilizzare semplicemente il comando \cs{GuIT}, oppure +% ritornare al comportamento originale\footnote{A causa della modifica alla +% semantica dell'opzione \altro{color}, questo comando \`e decisamente +% superfluo e verr\`a probabilmente rimosso in futuro.}. Ci\`o pu\`o +% rivelarsi utile durante la preparazione delle bozze di un qualunque +% documento, per le quali l'uso del colore fin dalle prime fasi potrebbe +% essere considerato uno spreco: utilizzando \cs{swapGuITcommands} non \`e +% pi\`u necessario trasformare tutte le occorrenze di \cs{GuIT} in +% \cs{GuIT*}. Tenete presente che gli effetti del comando si applicano a +% livello globale. +% +% +% +% \subsection{Selezione del colore} +% \noindent\DescribeMacro{\GuITcolor}\oarg{modello}\marg{dichiarazione}\newline +% \noindent\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 \texttt{coloredelGuIT}. +% +% \noindent\DescribeMacro{\GuITcolor*}\oarg{modello}\marg{espressione xcolor}\newline +% \noindent\DescribeMacro{\guitcolor*}\oarg{modello}\marg{espressione xcolor}\newline +% Se il sistema dell'utente dispone del pacchetto +% \pacchetto{xcolor}~\cite{Kern05}, il comando \cs{GuITcolor*} 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 in questione. Se +% \pacchetto{xcolor} non \`e disponibile allora \cs{GuITcolor*} non sortisce +% alcun effetto. \cs{GuITcolor*} agisce implicitamente su +% \texttt{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 \texttt{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} +% \DescribeMacro{\GuITtext} +% \DescribeMacro{\guittext} +% \changes{v0.2}{2003/02/17}{Aggiunti due nuovi comandi per indicare la +% denominazione completa del \guittext} +% 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}. +% +% +% +% \subsection{Indirizzo del sito internet e del forum pubblico} +% \DescribeMacro{\GuITurl} +% \DescribeMacro{\guiturl} +% 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}. +% +% \DescribeMacro{\GuITforum} +% \DescribeMacro{\guitforum} +% 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}. +% +% +% +% \subsection{Il logo del convegno} +% \DescribeMacro{\GuITmeeting} +% \DescribeMacro{\GuITmeeting*} +% \DescribeMacro{\guitmeeting} +% \DescribeMacro{\guitmeeting*} +% 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). +% +% +% +% \subsection{Creare nuove realizzazioni del logo} +% \noindent\DescribeMacro{\DeclareGuITLogoCommand}\marg{famiglia}\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}. +% +% I cinque parametri rappresentano: +% +% \begin{enumerate} +% \item il nome della famiglia di font\footnote{In questa sede ci si +% riferisce all'accezione del termine \meta{famiglia} tipica del +% sistema \emph{NFSS2}.}; +% \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. +% +% +% +% \section{Configurazione} +% Il pacchetto \`e corredato di un piccolo file di configurazione chiamato +% \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 esistente. +% +% +% +% \section{Opzioni} +% Il pacchetto ha tre opzioni: +% +% \begin{description} +% \item[color] forza la colorazione di tutte le occorrenze del logo, +% indipendentemente dalla forma del comando usata e dall'uso di +% \cs{swapGuITcommands}; \emph{prestate bene attenzione al fatto che +% il significato di quest'opzione \`e radicalmente cambiato rispetto +% alle versioni precedenti alla 0.7}; +% \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; +% \item[link] abilita l'uso di \pacchetto{hyperref} 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 e che se volete +% utilizzare \pacchetto{hyperref} con opzioni particolari dovete +% caricarlo prima di \pacchetto{guit}; inoltre, come effetto +% collaterale dell'uso di \pacchetto{hyperref}, \cs{GuITurl} diventa +% automaticamente un link al sito internet di \guit. +% \end{description} +% +% +% +% \StopEventually{% +% \bibliographystyle{alpha} +% \begin{thebibliography}{GMS94} +% \addcontentsline{toc}{section}{\refname} +% \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.02, 2005/03/24 +% (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} +% Richiediamo espressamente l'uso di \LaTeXe~e ci annunciamo al mondo. +% \begin{macrocode} +%<*style> +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{guit}[2005/04/08 v0.8.2 Logo del GuIT] +\RequirePackage{url} +% \end{macrocode} +% +% \changes{v0.7}{2003/10/17}{Modificata la semantica di \texttt{color}: ora +% forza la colorazione di tutte le occorrenze del logo} +% Dichiariamo le uniche tre opzioni supportate dal pacchetto, usate per +% forzare la colorazione di tutte le occorrenze del logo, per escludere +% completamente il supporto per il colore e per abilitare l'integrazione con +% il pacchetto \pacchetto{hyperref}. +% \begin{macrocode} +\newif\if@guit@colorized +\@guit@colorizedtrue +\newif\if@guit@always@colorized +\newif\if@guit@xcolorized +\newif\if@guit@link +\DeclareOption{color}{% + \@guit@colorizedtrue + \@guit@always@colorizedtrue} +\DeclareOption{nocolor}{% + \@guit@colorizedfalse + \@guit@always@colorizedfalse} +\DeclareOption{link}{\@guit@linktrue} +\ProcessOptions\relax +% \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} +% Condizionatamente alle impostazioni attivate, 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} +\if@guit@colorized + \IfFileExists{xcolor.sty}% + {\RequirePackage{xcolor}\@guit@xcolorizedtrue}% + {\RequirePackage{color}\@guit@xcolorizedfalse} +% \end{macrocode} +% Teniamo conto della presenza o meno delle estensioni fornite dal pacchetto +% \pacchetto{xcolor} e realizziamo due diverse implementazioni dei comandi +% utilizzati da \cs{GuITcolor}\footnote{In realt\`a \cs{@guit@color@imp} +% potrebbe essere definito una sola volta se la versione di +% \pacchetto{xcolor} fosse la 2.00 o superiore; per ora lasciamo le cose +% come stanno.}. +% \begin{macrocode} + \if@guit@xcolorized + \newcommand*{\@guit@color@imp}[2][cmyk]{% + \xdefinecolor{coloredelGuIT}{#1}{#2}} + \newcommand*{\x@guit@color@imp}[2][\@empty]{% + \ifx\@empty#1% + \colorlet{coloredelGuIT}{#2}% + \else + \colorlet{coloredelGuIT}[#1]{#2}% + \fi} + \else + \newcommand*{\@guit@color@imp}[2][cmyk]{% + \definecolor{coloredelGuIT}{#1}{#2}} + \newcommand*{\x@guit@color@imp}[2][]{\relax} + \fi + \GuITcolor{1, 0, 1, 0.6} +% \end{macrocode} +% Se l'utente ha escluso volontariamente l'uso del colore, il tutto si +% risolve con due \cs{relax}. +% \begin{macrocode} +\else + \newcommand*{\@guit@color@imp}[2][]{\relax} + \newcommand*{\x@guit@color@imp}[2][]{\relax} +\fi +\let\guitcolor\GuITcolor +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guit@url} +% Definiamo in un unico punto ed una volta per tutte l'indirizzo del sito +% internet di \guit~in modo da evitare ripetizioni prone all'errore. +% \begin{macrocode} +\def\@guit@url{http://www.guit.sssup.it} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitimp} +% \changes{v0.8}{2004/10/28}{Aggiunto un argomento} +% Questa macro fornisce un primo livello di astrazione dalla vera +% implementazione del logo, permettendo di attivare opzionalmente 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. +% \begin{macrocode} +\if@guit@link + \RequirePackage{hyperref} + \def\@guitimp#1{% + \begingroup + \Hy@colorlinksfalse + \def\@pdfborder{0 0 0}% + \href{\@guit@url}{\@@guitimp{#1}}% + \endgroup} +\else + \def\@guitimp#1{\@@guitimp{#1}} +\fi +% \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} +% \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} +% 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 in maniera corretta a seconda +% del font in uso. I cinque parametri rappresentano: +% +% \begin{enumerate} +% \item il nome della famiglia di font; +% \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} +% \begin{macrocode} +\def\@gen@guit@fntcmd#1#2#3#4#5{% + \@namedef{@guit#1}{% + \fontfamily{#1}\mdseries\scshape + \@colorize@guit g\kern #2\lower #3\hbox{u}% + \@decolorize@guit\kern #4 I\@colorize@guit\kern #5 t}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitcmr} +% \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''} +% 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\@guitcmr{% + \fontencoding{OT1}\fontfamily{cmr}\mdseries\scshape + \@colorize@guit g\kern -0.26em\lower 0.714ex\hbox{u}% + \@decolorize@guit\kern -0.125em I\@colorize@guit\kern -0.125em t} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitptm} +% \changes{v0.7.3}{2004/10/11}{Un minimo aggiustamento al coefficiente di +% traslazione orizzontale della ``u''} +% 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} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitppl} +% \changes{v0.7.3}{2004/10/11}{Minimi aggiustamenti ai coefficienti di +% traslazione orizzontale e verticale della ``u''} +% Se viene usato Palatino \cs{GuIT} user\`a questo comando. +% \begin{macrocode} +\@gen@guit@fntcmd{ppl}{-0.276em}{0.717ex}{-0.125em}{-0.125em} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitpnc} +% \changes{v0.7.3}{2004/10/11}{Minimi aggiustamenti ai coefficienti di +% traslazione orizzontale e verticale della ``u''} +% Se il font attualmente in uso \`e il NewCentury Schoolbook verr\`a usata +% questa macro. +% \begin{macrocode} +\@gen@guit@fntcmd{pnc}{-0.322em}{0.678ex}{-0.125em}{-0.125em} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitput} +% 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} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitbch} +% 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} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guitpbk} +% L'ultimo comando ``interno'' viene usato per il font Bookman. +% \begin{macrocode} +\@gen@guit@fntcmd{pbk}{-0.3em}{0.59ex}{-0.125em}{-0.125em} +% \end{macrocode} +% \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{% + \begingroup + \@ifundefined{@guit#1}{\@guitcmr}{\@nameuse{@guit#1}}% + \endgroup} +% \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} +% La porzione dell'implementazione di \cs{GuIT} che attiva la colorazione +% del logo, condizionatamente alle impostazioni generali stabilite con le +% opzioni del pacchetto. Per scrivere la lettera ``non colorata'' del logo +% viene riattivato il colore di default rappresentato da \cs{normalcolor}. +% \begin{macrocode} +\if@guit@colorized + \newcommand*{\@guit@color@on}[1][\f@family]{% + \def\@colorize@guit{\color{coloredelGuIT}}% + \def\@decolorize@guit{\normalcolor}% + \@guitimp{#1}\ignorespaces} +\else + \newcommand*{\@guit@color@on}[1][\f@family]{% + \def\@colorize@guit{\normalcolor}% + \def\@decolorize@guit{\normalcolor}% + \@guitimp{#1}\ignorespaces} +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@guit@color@off} +% \changes{v0.8}{2004/10/28}{Aggiunto un argomento opzionale} +% La porzione dell'implementazione di \cs{GuIT} che disattiva la colorazione +% del logo. Se \`e stata precedentemente specificata l'opzione |color| il +% tutto si riduce ad eguagliare questo comando al precedente. +% \begin{macrocode} +\if@guit@always@colorized + \let\@guit@color@off\@guit@color@on +\else + \newcommand*{\@guit@color@off}[1][\f@family]{% + \def\@colorize@guit{\normalcolor}% + \def\@decolorize@guit{\normalcolor}% + \@guitimp{#1}\ignorespaces} +\fi +% \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}{\swapGuITcommands} +% \changes{v0.6}{2003/09/16}{Aggiunto questo comando per scambiare \cs{GuIT} +% con \cs{GuIT*}} +% \changes{v0.7}{2003/09/26}{Trasformato in un comando \emph{robusto} (mea +% culpa)} +% Scambiare il significato di \cs{GuIT*} e \cs{GuIT} si riduce a scambiare +% tra loro le implementazioni di \cs{guit@color@on} e \cs{guit@color@off}, +% ma se il colore \`e stato intenzionalmente escluso, questa macro non +% esegue alcuna operazione. Per evitare grattacapi, l'utente viene avvertito +% dello scambio appena effettuato. +% \begin{macrocode} +\if@guit@colorized + \DeclareRobustCommand*{\swapGuITcommands}{% + \begingroup + \let\reserved@a\@guit@color@on + \global\let\@guit@color@on\@guit@color@off + \global\let\@guit@color@off\reserved@a + \endgroup + \PackageWarning{guit}{Swapping \string\GuIT* and \string\GuIT}} +\else + \let\swapGuITcommands\relax +\fi +% \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}} +% Il comando per indicare la denominazione completa e corretta del Gruppo +% ha una doppia implementazione, a seconda che sia stata specificata o meno +% l'opzione |link|. +% \begin{macrocode} +\if@guit@link + \DeclareRobustCommand*{\GuITtext}{% + \href{\@guit@url}{Gruppo Utilizzatori Italiani di \TeX}} +\else + \DeclareRobustCommand*{\GuITtext}{% + Gruppo Utilizzatori Italiani di \TeX} +\fi +% \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}{\GuITurl} +% \changes{v0.7}{2003/10/15}{Aggiunto questo comando per scrivere +% l'indirizzo del sito internet di \guit~senza troppi errori} +% Il comando per scrivere automaticamente l'indirizzo del sito internet di +% \guit~ha, implicitamente, una definizione dal duplice comportamento: se +% l'opzione |link| non \`e stata specificata (e \pacchetto{hyperref} non \`e +% stato caricato per altri motivi) \cs{GuITurl} si limita a scrivere +% l'indirizzo del sito; se \pacchetto{hyperref} \`e stato caricato (come +% effetto dell'opzione |link| o per altri motivi), il comando scrive +% l'indirizzo del sito come collegamento al sito stesso a causa della +% ridefinizione di \cs{url} operata da \pacchetto{hyperref}. +% \begin{macrocode} +\DeclareRobustCommand*{\GuITurl}{% + \expandafter\url\expandafter{\@guit@url}} +% \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} +% Quanto detto per \cs{GuITurl} vale anche per questo comando. +% \begin{macrocode} +\DeclareRobustCommand*{\GuITforum}{% + \expandafter\url\expandafter{\@guit@url /phpbb}} +% \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} +% \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} +% \begin{macro}{\@guit@meeting@part} +% L'implementazione del logo del convegno \`e stata partizionata per +% realizzare una versione a colori duplicando poco codice. 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} +\DeclareRobustCommand*{\GuITmeeting}{% + \@ifstar\@guit@meeting@color@on\@guit@meeting@color@off} +\def\@guit@meeting@color@on{% + \begingroup + \fontencoding{OT1}\fontfamily{cmr}\fontseries{m}\selectfont + \guit*\@guit@meeting@part + \endgroup + \ignorespaces} +\def\@guit@meeting@color@off{% + \begingroup + \fontencoding{OT1}\fontfamily{cmr}\fontseries{m}\selectfont + \guit\@guit@meeting@part + \endgroup + \ignorespaces} +\def\@guit@meeting@part{% + \kern -2.02ex\lower 1.25ex\hbox{\textit{meeting}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \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} +% +% 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}% + {\PackageWarning{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 nel file di configurazione per +% diminuire il rischio che l'utente le modifichi o le rimuova +% accidentalmente. +% \begin{macrocode} +%<*cfg> +\ProvidesFile{guit.cfg}[2005/04/08 v0.8.2 File di configurazione di guit.sty] +%% Esempi: +%% \GuITcolor{1, 0, 1, 0.6} +%% \DeclareGuITLogoCommand{ptm}{-0.27em}{0.5475ex}{-0.125em}{-0.125em} +%% \DeclareGuITLogoCommand{ppl}{-0.276em}{0.717ex}{-0.125em}{-0.125em} +%% \DeclareGuITLogoCommand{pnc}{-0.322em}{0.678ex}{-0.125em}{-0.125em} +%% \DeclareGuITLogoCommand{put}{-0.285em}{0.61ex}{-0.125em}{-0.125em} +%% \DeclareGuITLogoCommand{bch}{-0.28em}{0.58ex}{-0.125em}{-0.125em} +%% \DeclareGuITLogoCommand{pbk}{-0.3em}{0.59ex}{-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 diff --git a/Master/texmf-dist/source/latex/GuIT/guit.ins b/Master/texmf-dist/source/latex/GuIT/guit.ins new file mode 100644 index 00000000000..fdf70cd6bff --- /dev/null +++ b/Master/texmf-dist/source/latex/GuIT/guit.ins @@ -0,0 +1,79 @@ +%% +%% guit.ins +%% Copyright 2003, 2004, 2005 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 +%% http://www.latex-project.org/lppl.txt +%% +%% Author: Emanuele Vicentini +%% (emanuelevicentini at yahoo dot it) +%% +%% This work has the LPPL maintenance status "author-maintained". +%% +%% This work consists of the files: README, guit.dtx, guit.ins and the +%% derived files guit.sty, guit.cfg and guittext.tex +%% +%% This file will generate fast loadable files and documentation +%% driver files from the doc files in this package when run through +%% LaTeX or TeX. +%% +%% --------------- start of docstrip commands ------------------ +%% +\input docstrip +\preamble + + Copyright 2003, 2004, 2005 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 + http://www.latex-project.org/lppl.txt + + Author: Emanuele Vicentini + (emanuelevicentini at yahoo dot it) + + This work has the LPPL maintenance status "author-maintained". + + This work consists of the files: README, guit.dtx, guit.ins and the + derived files guit.sty, guit.cfg and guittext.tex + +\endpreamble + +\keepsilent +\askforoverwritefalse + +\Msg{*** Generating the package files ***} +\generate{\file{guit.sty}{\from{guit.dtx}{style}}% + \file{guit.cfg}{\from{guit.dtx}{cfg}}% + \nopostamble + \file{guittest.tex}{\from{guit.dtx}{test}}} + +\Msg{***********************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* files into a directory searched by TeX:} +\Msg{*} +\Msg{* \space\space guit.sty} +\Msg{* \space\space guit.cfg} +\Msg{*} +\Msg{*} +\Msg{* To produce the documentation on guit's code run the} +\Msg{* file ending with `.dtx' through (pdf)LaTeX.} +\Msg{* Process the file guit.idx by:} +\Msg{* \space\space\space\space makeindex -s gind.ist guit} +\Msg{* Process the file guit.glo by:} +\Msg{* \space\space\space\space makeindex -s gglo.ist -o guit.gls guit.glo} +\Msg{*} +\Msg{* To produce the test file run guittest.tex through (pdf)LaTeX} +\Msg{* and check the results} +\Msg{*} +\Msg{* Happy TeXing} +\Msg{***********************************************************} + +\endbatchfile -- cgit v1.2.3