- Questo topic ha 4 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 11 anni, 7 mesi fa da .
-
Topic
-
Vorrei scrivere su un file esterno una frase commentata come ” % questo è un commento”se scrivo
`
\documentclass[italian]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\newwrite\provas
\begin{document}
prova di scrittura
\immediate\openout\provas=provasc.tex
\catcode`\%=12
\immediate\write\provas{\string % questo è un commento}
\catcode`\%=14
\immediate\closeout\provas
% questo non esce in stampa
\immediate\closeout\provas
\end{document}
`funziona tutto e nel file provasc.tex c’è
`% questo è un commento`Ma se cerco di fare la stessa cosa all’interno di un ambiente si blocca tutto
`
\documentclass[italian]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\newwrite\provas\newenvironment{esempio}{\textbf{Esempio}
\catcode`\%=12
\immediate\write\provas{\string % questo è un commento}
\catcode`\%=14
}
{}\begin{document}
prova di scrittura
\immediate\openout\provas=provasc.tex
\begin{esempio}
ciao
% questo non esce
\end{esempio}
\immediate\closeout\provas
\end{document}
`L’errore che ottengo è proprio all’interno dell’ambiente poiché la compilazione si arresta con questo messaggio
`
Runaway argument?
{\textbf {Esempio} \catcode `\%=12 \immediate \write \provas {\string \ETC.
! File ended while scanning use of \@newenv.
`e lo stesso succede anche se non uso l’ambiente “esempio” nel documento, ma semplicemente definendolo
Qualcuno sa dirmi cosa sbaglio?
Grazie
Salvatore
- Devi essere connesso per rispondere a questo topic.