Re: Comando istanziabile più volte

#95513
Up
0
Down
::


Grazie a tutti per le numerose risposte; mi scuso per la poca chiarezza e ci riprovo.

OldClaudio” post=95129Non si capisce se vuoi u comando \affiliazione per costruire una lista di affiliazioni concatenate, che poi con un unico comando puoi stampare tutte assieme, oppure se vuoi creare un “vettore” di affiliazioni da indicare e stampare con una espressione simile a quella che usi per recuperare l’n-esimo elemento di un matrice di una sola colonna.

Direi che quello che vorrei è esattamente la seconda opzione, come forse sarà più chiaro tra poco!

franen” post=95133la sintassi di LaTeX non vuole,solitamente, numeri all’interno dei nomi dei comandi

Lo so bene; il comando nel mio esempio era semplicemente \affiliazione, coi numeri indicavo le varie istanze (quello che viene stampato, un modo per non inventarmene alcune).

cfiandra” post=95140Cosa succede quando hai 2 autori di cui il primo ha 2 affiliazioni e il secondo 3? Come li stampi? Quando si è in fase di progetto devi prima pensare a tutta una serie di casi ed eccezioni per essere il più generale possibili. Poi, quando lo si fatto, in genere si scopre che manca sempre qualcosa 😉

Non succede, perché non è fra i miei casi… a dir la verità non ho neanche mai parlato di autore 🙂 l’”autore” è sempre unico, mentre le “affiliazioni” possono essere in numero variabile.

robitex” post=95141si può fare molto meglio di così:
il comando
`
\sequence{affiliazione}
`
potrebbe generare il testo:
`affiliazione1, affiliazione2, affiliazione3, …, affiliazione(n-1) ed affiliazioneN`

Una bazzecola con LaTeX3…
R.

Grazie perché non conoscevo il comando \sequence, ma a occhio direi che non è quello che fa al caso mio: io non voglio stampare tante volte la parola “affiliazione”, ma tante affiliazioni differenti!

Dunque, innanzitutto si parla di un frontespizio per le tesi di dottorato di un’università. Tra poco toccherà a me, e siccome quand’ho preso in mano quel modello ho avuto i brividi, sto tentando di riscriverlo; ma, ahimè, le mie conoscenze di TeX son (molto) limitate.
Il file che costruisce il frontespizio è, diciamo, Title_page.sty. Il suo interno, ridotto al minimo che può rendere l’idea è del tipo:
`\long\def\specialite#1{\gdef\@specialite{#1}}
\long\def\auteur#1{\gdef\@auteur{#1}}
\long\def\directeur#1{\gdef\@directeur{#1}}

Thèse\\
Spécialité~: \@specialite\\
Présentée par \@auteur\\
Thèse dirigée par \@directeur`
Poi ci sarà un file, diciamo Tesi.tex, che conterrà
`\usepackage{Title_page}
\specialite{Controllo di sistemi in rete}
\auteur{un povero dottorando}
\directeur{l'uomo nero}
`

Ora, io vorrei aggiungere in Title_page.sty un comando che funzioni come gli altri, ma che possa esser chiamato più volte, diciamo \affiliation; in modo tale che (modificando ovviamente opportunamente anche la seconda parte di tale file, in modo da costruire le righe che voglio aggiungere), aggiungendo in Tesi.tex una serie di comandi tipo
`\affiliazione{istituto di ricerca}
\affiliazione{laboratorio}
\affiliazione{scuola dottorale}`
mi ritrovi ad avere un frontespizio che recita:

Thèse
Spécialité : Controllo di sistemi in rete
Présentée par un povero dottorando
Thèse dirigée par l’uomo nero
préparée au sein de l’istituto di ricerca, du laboratorio et de l’école doctorale scuola dottorale.

Immagino mi debba costruire un vettore di affiliazioni e tirarle fuori a una a una, ma non ho idea di come possa fare una cosa del genere!

Go to top