Re: Catalogo film

#52999
Up
0
Down
::


Scusate il tempo che ci ho messo per fare le prove, ma il mio tempo libero per LaTeX non è molto.

Ho fatto una prova con i “campi interni” che mi suggerivate, ma mi da un messaggio di errore del tipo
`
! Use of \my doesn't match its definition.
\print ->Data di uscita nella sale: \my @d
ata. \par Regia di: \my @regia \pa…
l.34 …titolo{La scenata}\regia{Scenografo}\print
If you say, e.g., `\def\a1{…}', then you must always
put `1' after `\a', since control sequence names are
made up of letters only. The macro here has not been
followed by the required stuff, so I'm ignoring it.
`
e io non so bene come risolvere. Per completezza vi posto il listato LaTeX di prova che ho usato (essendo corto)
`
\documentclass[a4paper]{article}

\usepackage[italian]{babel}
\usepackage[latin1]{inputenc}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[pdftex]{color, graphicx}

\begin{document}

% definizione delle macro di campo
\makeatother
\def\data#1{\def\my@data{#1}}
\def\titolo#1{\def\my@titolo{#1}}
\def\regia#1{\def\my@regia{#1}}

% definizione del comando unico
% di composizione del record
\def\print{%
Data di uscita nella sale: \my@data.

Regia di: \my@regia

Titolo dell'opera: \my@titolo

Fine del record.
}
\makeatletter

% nel documento dopo il copia incolla:
\data{1987}\titolo{La scenata}\regia{Scenografo}\print
\data{1492}\titolo{Sbarco in India}\regia{Colombo}\print
\data{1992}\titolo{Barcellona}\regia{Olimpic Committee}\print
\data{1982}\titolo{La finale}\regia{Bearzot}\print
\data{2001}\titolo{2001 Odissea nella spazio}\regia{Stanley}\print
\end{document}
`

Ho anche provato a mettere la definizione dei campi (quel \def\data#1{\def….) nel preambolo, ma non cambia molto.

Aspetto vostre spiegazioni. Grazie. Davide

Go to top