Ecrire à un autre endroit du document

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Ecrire à un autre endroit du document

Messagepar stef59 » Mercredi 03 Juillet 2013, 16:33

Bonjour,

dans mes cours, lorsque je tape un theorème ou une propriété, je tape juste à la suite dans le code source la preuve.

Cependant, j'aimerais, après compilation, que les preuves ne s'affichent pas là où je les ai tapées, mais automatiquement dans un paragraphe spécifique (disons le dernier du chapitre), avec éventuellement un lien hypertexte qui m'emmène du théorème à sa preuve.
Histoire d'alléger le cours pour certaines de mes classes, mais je souhaite garder la "proximité" du théorème et de sa preuve dans le code source.

Je ne parviens pas à faire cela... Avez-vous une idée ? Comment indiquer à LaTeX que ce que l'on tape à tel endroit doit en fait s'afficher à tel autre endroit du paragraphe untel ?

Merci beaucoup de vos réponses.
stef59
Utilisateur
 
Messages: 9
Inscription: Mercredi 03 Juillet 2013, 16:18
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: Ecrire à un autre endroit du document

Messagepar marco56 » Mercredi 03 Juillet 2013, 16:45

Désolé, pas d'idée mais c'est un peu tordu comme façon de procéder...
marco56
Giga-utilisateur
 
Messages: 718
Inscription: Jeudi 25 Novembre 2010, 22:10
Statut actuel: Actif et salarié | Enseignant

Re: Ecrire à un autre endroit du document

Messagepar rebouxo » Mercredi 03 Juillet 2013, 19:31

Non, ce n'est pas vraiment tordu.

Regarde du côté de l'extension exercice. Cela permet de faire des corrections et de les mettre à la fin de ton doc.
Cela doit correspondre à ce que tu veux faire. La doc est pas terrible, mais cela fonctionne.

Il y a d'autres extensions qui font ce genre de trucs. L'idée est de récupérer le contenu d'un environnement puis de l'écrire dans un fichier, et ensuite de faire un input de ce fichier.

Olivier
A line is a point that went for a walk. Paul Klee
Par solidarité, pas de MP
rebouxo
Modérateur
 
Messages: 6860
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Ecrire à un autre endroit du document

Messagepar marco56 » Mercredi 03 Juillet 2013, 21:10

OK, je n'avais pas pensé comme cela.

Trouvé sur le net avec answers :
Code: Tout sélectionner
\documentclass[12pt,openany,twoside]{book}
\usepackage{fouriernc}
\usepackage[thmmarks,standard,thref]{ntheorem}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{answers}

\theoremseparator{.}
\theorembodyfont{\upshape}
\newtheorem{pro}{Problem}[chapter]

\Newassociation{loigiai}{Answer}{loigiaichung}


\begin{document}

\chapter{Firist }
\thispagestyle{empty}
\Opensolutionfile{loigiaichung}[pro]
\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}

\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}

\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}

\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}




\chapter{Second }
\thispagestyle{empty}
\Opensolutionfile{loigiaichung}[pro]
\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}

\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}

\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}

\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}


\begin{pro}
This is a problem
\begin{loigiai}
This is a solution
\end{loigiai}
\end{pro}

\Closesolutionfile{loigiaichung}
\section{This is solution}
\input{pro}

\end{document}

En changeant quelques trucs, cela pourra peut-être te dépanner.
marco56
Giga-utilisateur
 
Messages: 718
Inscription: Jeudi 25 Novembre 2010, 22:10
Statut actuel: Actif et salarié | Enseignant

Re: Ecrire à un autre endroit du document

Messagepar marco56 » Mercredi 03 Juillet 2013, 22:03

Plus parlant peut-être :

Code: Tout sélectionner
\documentclass{book}
\usepackage[utf8x]{inputenc}
\usepackage[francais]{babel}
\usepackage[T1]{fontenc}
\usepackage{answers}

\newenvironment{activite}{\begin{trivlist}\item}{\end{trivlist}}
\Newassociation{repa}{Repna}{reponsea}
\Newassociation{repb}{Repnb}{reponseb}

\newenvironment{exercice}{\begin{trivlist}\item}{\end{trivlist}}
\Newassociation{sol}{Soln}{ans}
\renewenvironment{Soln}[1]{\begin{trivlist}\item}{\end{trivlist}}

\begin{document}

\Opensolutionfile{ans}[fichier_de_solutions]

\chapter{Premier chapitre}
\section{Activités}

\Opensolutionfile{reponsea}
\Writetofile{reponsea}{\protect\section{Réponses}}

\begin{activite}
Voici la première question.
\begin{repa}
Voici la première réponse.
\end{repa}
\end{activite}

\begin{activite}
Voici la deuxième question.
\begin{repa}
Voici la deuxième réponse.
\end{repa}
\end{activite}

\Closesolutionfile{reponsea}
\input{reponsea}

\section{Exercices}
\begin{exercice}
Voici la première question.
\begin{sol}
Voici la première solution.
\end{sol}
\end{exercice}

\begin{exercice}
Voici la seconde question.
\begin{sol}
Voici la seconde solution.
\end{sol}
\end{exercice}


\chapter{Deuxième chapitre}
\section{Activités}
\Opensolutionfile{reponseb}
\Writetofile{reponseb}{\protect\section{Solutions des activites}}

\begin{activite}
Voici la première question.
\begin{repb}
Voici la première réponse.
\end{repb}
\end{activite}

\begin{activite}
Voici la deuxième question.
\begin{repb}
Voici la deuxième réponse.
\end{repb}
\end{activite}

\Closesolutionfile{reponseb}
\input{reponseb}

\section{Exercices}
\begin{exercice}
Voici la première question.
\begin{sol}
Voici la première solution.
\end{sol}
\end{exercice}

\begin{exercice}
Voici la seconde question.
\begin{sol}
Voici la seconde solution.
\end{sol}
\end{exercice}

\Closesolutionfile{ans}
\chapter{Les solutions des exercices}

\input{fichier_de_solutions}
\end{document}
Fichiers joints
exo-sol4.pdf
(23.56 Kio) Téléchargé 60 fois
marco56
Giga-utilisateur
 
Messages: 718
Inscription: Jeudi 25 Novembre 2010, 22:10
Statut actuel: Actif et salarié | Enseignant

Re: Ecrire à un autre endroit du document

Messagepar stef59 » Jeudi 04 Juillet 2013, 14:42

Merci beaucoup pour vos réponses :) Je vais essayer cela.
stef59
Utilisateur
 
Messages: 9
Inscription: Mercredi 03 Juillet 2013, 16:18
Statut actuel: Actif et salarié | Enseignant

Re: Ecrire à un autre endroit du document

Messagepar stef59 » Mardi 16 Juillet 2013, 11:03

Bonjour, je reviens à la charge.

J'ai fait des tests avec les idées que vous m'aviez données et c'est plutôt concluant.
Par contre il reste des choses que je ne parviens à faire après de multiples tentatives...

J'ai créé des environnements personnels pour les théorèmes ("theo") et autres propriétés ("pte") etc. Ils sont numérotés par le compteur "compteurTH".
J'ai créé un environnement "preuve" utilisant bclogo.
J'aimerais pouvoir afficher les preuves de mes théorèmes et propriétés dans la dernière section de chaque chapitre (qui s'appelle "preuve").
Le problème c'est que je voudrais bien entendu pouvoir afficher de quelle preuve il s'agit en mentionnant le numéro du théorème (style "preuve de <numéro>") ; mais je n'y arrive pas. Je ne sais pas comment on fait appel à ce numéro (que je vois s'afficher en début de ligne en compilant l'exemple ci-joint), ni comment ouvrir automatiquement mon environnement "preuve" dès que l'on utilise "solution".

Avez-vous des idées ? Merci beaucoup.

Code: Tout sélectionner
\documentclass{book}

\usepackage{packageperso}

\usepackage{answers}

\newenvironment*{preuve}[1]{%
\begin{bclogo}[logo=\bcplume ,noborder=true, barre = snake ,epBarre = 0.4 , tailleOndu = 1.5, couleurBarre = couleurbarrepreuve]{\small \textit{Preuve}}
\footnotesize #1}
{
\end{bclogo}
}

\Newassociation{solution}{Soln}{test}

\newcommand{\Opentesthook}[2]%
   {\Writetofile{#1}{\protect\section{Preuves}}}

\renewcommand{\Solnlabel}[1]{#1}

\begin{document}
\chapter{Essai}
 \Opensolutionfile{test}[ans2]{Solutions}
  \section{Enoncés}
   \begin{theo}
     Enoncé ici
      \begin{solution}
         Ici je voudrais mettre dans l'environnement preuve que j'ai créé la preuve du théorème en faisant référence à son numéro géré par compteurTH.
      \end{solution}
   \end{theo}
   \begin{theo}
      une propriété
      \begin{solution}
         Ici aussi pour le deuxième théorème.
      \end{solution}
   \end{theo}
  \Closesolutionfile{test}
   \Readsolutionfile{test}
\end{document}
stef59
Utilisateur
 
Messages: 9
Inscription: Mercredi 03 Juillet 2013, 16:18
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Ahrefs [Bot], Bing [Bot], Proximic [Spider] et 18 invités