8) A scrivere codice senza provarlo si rischia sempre. 🙂
…ma c’è chi può 😉
Piuttosto, tu hai provato a usare il comando \@author in quel modo? Con le classi standard non funziona come pensi. 🙂
Sì, l’ho provato e mi sembra funzionare correttamente. Avevo letto sui tuoi Appunti la spiegazione del ruolo di \@author, e l’ho usato in quel modo pensando che fosse corretto.
Cosa dovrebbe accadere? La mia proto-classe è basata su article.
Ovviamente, bisogna scrivere da qualche parte \author{Pinco Pallino}, altrimenti la testatina “sinistra” sarà vuota. Ho provato e riprovato 🙄Funziona solo perché non dai \maketitle il quale annulla la definizione di \@author.
Ok, infatti non è previsto l’uso di \maketitle con questa classe.
Quindi, in generale, per richiamare l’argomento di un comando, va usato, all’interno del comando, \gdef\comandointerno{#n}, dove n sta per l’argomento da richiamare? Sbaglio qualcosa?
Un’ultima cosa: perché in un caso si usa \gdef e nell’altro \def? Dagli Appunti non sono riuscito a capire la differenza 🙁 Ma sono fiducioso: due anni fa mi sembrava oscuro \renewcommand…Quella tecnica permette di ricordarsi “ovunque” l’argomento che viene dato come testo di sostituzione di \comandointerno.
Occorre \gdef nel primo caso perché il comando \Candidato è all’interno dell’ambiente frontespizio. Se la definizione non fosse globale, alla fine dell’ambiente sparirebbe.
Nella definizione successiva non occorre \gdef perché fa parte della classe e quindi è letta fuori da qualsiasi gruppo. La ridefinizione all’interno deve avere \gdef, perché la macro \myclass@author viene espansa durante la routine di output (elaborando le testatine) che è eseguita in un gruppo; come prima, una definizione non globale verrebbe dimenticata alla fine del gruppo.
Chiarissimo 🙂 ma ci dovrò riflettere un po’
Ciao
Ivan