Relance : problème avec l'utilisation de lilypond-book

Bonjour à tous,

je me permets de relancer une (et une seule) fois mon précédent message pour le cas où il serait passé inaperçu (à moins que personne ait une idée).

Merci.

Lorsque je compile mon fichier psaumes.lytex, j'ai ce message que je ne comprends pas :

(/usr/share/texmf-texlive/tex/latex/psnfss/t1phv.fd) [1{/var/lib/texmf/fonts/ma
p/pdftex/updmap/pdftex.map}]
No file psaumes.toc.
[2]
! Argument of \lilysubtitle has an extra }.
<inserted text>
\par
l.42 \lilysubtitle
{1\ier dimanche}
? ! Interruption.
\begin #1->address@hidden {#1
}{\def address@hidden address@hidden@error {Environment #...
l.42 \lilysubtitle
{1\ier dimanche}
?

Au point d'interrogation, lorsque j'appuie sur "entrée" (est-ce ce qu'il faut faire !!), la compilation continue.

Au résultat pdf, *1er dimanche* apparaît nomralement mais la partition ce place à côté, 2e dimanche apparait en italique (?!) et la partition est en dessous (comme je le souhaite).

De plus, la table des matières n'apparaît pas (alors que dans le script j'ai relancé la compilation du **.tex (comme on me l'a conseillé - encore une fois peut-être de manière erronnée !)

Merci pour votre aide.
Ci-dessous, mon fichier psaumes.lytex : (et encore dessous le script)
Luc
Kubuntu festy / lilypond 2.10.19

\documentclass[[a4paper,12pt,french,halfparskip,parindent]{scrreprt}
% essayer parskip, parskip+, parskip*, parskip- halfparskip, halfparskip+, halfparskip*, halfparskip-
% essayer sans parindent
%essayer 9pt, 8pt ou plus petit

\usepackage{fancybox}
\usepackage{graphicx}
\usepackage{shadow}
\usepackage{extsizes}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage{color}
\usepackage[frenchb]{babel}
\usepackage[a4paper,tmargin=0cm,bmargin=2cm,rmargin=1.2cm,lmargin=1.2cm]{geometry}
\usepackage{fancyhdr}
\cfoot{La clef des chants}
\pagestyle{fancy}
  
  
\begin{document}
\newcommand{\lilytitle}[2]{\begin{center}{\LARGE{\textbf{#1}}\\\Large{#2}}\end{center}}
\newcommand{\lilysubtitle}[1]{\begin{flushleft}{\textsl{#1}}\end{flushleft}}
\title{Psaumes pour liturgie triennale}
\author{Luc De Rossi}
\date{}
\maketitle
\tableofcontents
\chapter*{Année A}
\lilytitle{Temps de l'Avent}
\lilysubtitle{1\ier dimanche}
\lilypondfile{A_Avent_1.ly}
\lilysubtitle{2\ieme dimanche}
\lilypondfile{A_Avent_2.ly}

\end{document}

le script :

···
lilypond-book --output out --pdf psaumes.lytex
cd out
mv psaumes.tex ../
cd ../
lilypond-book --output out --pdf psaumes.tex
cd out
pdflatex psaumes.tex
mv psaumes.pdf ../
cd ../
  

Luc,

J'ai regardé un peu ton problème. Ca ressemble fort à un problème de LaTeX. Donc (mais au fait quel est l'intérêt de faire du "lilytitle" and so on... Tu peux faire tous les jolis titres que tu veux en LaTeX, avec les notations \section{psaumes} \subsection{cantique} ...)
j'ai compilé avec succès un fichier de ton type, avec les lilytitle tralala MAIS EN METTANT UN ESPACE APRES CHAQUE COMMANDE et mon fichier \lilypondfile
se compile tranquillement sans partir dans le décor, tandis que si je ne mets pas de ligne d'espacement, il se place à droite. Ca fait d'ailleurs la même chose si j'écris du texte en LaTeX puis \begin{lilypond} ... \end{lilypond} SANS mettre d'espacement (la partition écrite entre les deux commandes \begin{lilypond} et \end(idem} se ballade à droite dans le .pdf)
Ceci dit LaTeX semble ne pas aimer les commandes \lilytitle and so on, puisque la compilation me mets également des ? ... auxquels je "réponds" par la commande "enter" comme toi.

Ca pourrait peut-être t'aider...
Bonne chance!

Monique

Bonjour à tous,

je me permets de relancer une (et une seule) fois mon précédent message pour le cas où il serait passé inaperçu (à moins que personne ait une idée).

Merci.

Lorsque je compile mon fichier psaumes.lytex, j'ai ce message que je ne comprends pas :

(/usr/share/texmf-texlive/tex/latex/psnfss/t1phv.fd) [1{/var/lib/texmf/fonts/ma
p/pdftex/updmap/pdftex.map}]
No file psaumes.toc.
[2]
! Argument of \lilysubtitle has an extra }.
<inserted text>
\par
l.42 \lilysubtitle
{1\ier dimanche}
? ! Interruption.
\begin #1->address@hidden {#1
}{\def address@hidden address@hidden@error {Environment #...
l.42 \lilysubtitle
{1\ier dimanche}
?Au point d'interrogation, lorsque j'appuie sur "entrée" (est-ce ce qu'il faut faire !!), la compilation continue.

Au résultat pdf, *1er dimanche* apparaît nomralement mais la partition ce place à côté, 2e dimanche apparait en italique (?!) et la partition est en dessous (comme je le souhaite).

De plus, la table des matières n'apparaît pas (alors que dans le script j'ai relancé la compilation du **.tex (comme on me l'a conseillé - encore une fois peut-être de manière erronnée !)

Merci pour votre aide.
Ci-dessous, mon fichier psaumes.lytex : (et encore dessous le script)

Luc
Kubuntu festy / lilypond 2.10.19

\documentclass[[a4paper,12pt,french,halfparskip,parindent]{scrreprt}
% essayer parskip, parskip+, parskip*, parskip- halfparskip, halfparskip+, halfparskip*, halfparskip-
% essayer sans parindent
%essayer 9pt, 8pt ou plus petit

\usepackage{fancybox}
\usepackage{graphicx}
\usepackage{shadow}
\usepackage{extsizes}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage{color}
\usepackage[frenchb]{babel}
\usepackage[a4paper,tmargin=0cm,bmargin=2cm,rmargin=1.2cm,lmargin=1.2cm]{geometry}
\usepackage{fancyhdr}
\cfoot{La clef des chants}
\pagestyle{fancy}

\begin{document}

\newcommand{\lilytitle}[2]{\begin{center}{\LARGE{\textbf{#1}}\\\Large{#2}}\end{center}}
\newcommand{\lilysubtitle}[1]{\begin{flushleft}{\textsl{#1}}\end{flushleft}}

\title{Psaumes pour liturgie triennale}
\author{Luc De Rossi}
\date{}

\maketitle
\tableofcontents

\chapter*{Année A}

\lilytitle{Temps de l'Avent}
\lilysubtitle{1\ier dimanche}
\lilypondfile{A_Avent_1.ly}

\lilysubtitle{2\ieme dimanche}
\lilypondfile{A_Avent_2.ly}

\end{document}

le script : lilypond-book --output out --pdf psaumes.lytex

cd out
mv psaumes.tex ../
cd ../
lilypond-book --output out --pdf psaumes.tex
cd out
pdflatex psaumes.tex
mv psaumes.pdf ../
cd ../

_______________________________________________
liste de diffusion lilypond-user-fr
lilypond-user-fr@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user-fr

Monique Combescure
IPNL, Bât. Paul Dirac, 4 rue Enrico Fermi
69622 VILLEURBANNE
Tel: 33 (0)4 72 43 19 63
Fax: 33 (0) 4 72 44 80 04
e-mail: ****@****

"Caminante no hay camino,
se hace camino al andar..."

Tout passe
  et tout demeure
  Mais notre affaire est de passer
  De passer en traçant
  Des chemins
  Des chemins sur la mer
  Voyageur, le chemin
  C'est les traces
  de tes pas
  C'est tout ; voyageur,
  il n'y a pas de chemin,
  Le chemin se fait en marchant
  Et quand tu regardes en arrière
  Tu vois le sentier
  Que jamais
  Tu ne dois à nouveau fouler
  Voyageur! Il n'y a pas de chemins
  Rien que des sillages sur la mer

Antonio Machado ( Poète espagnol, 1875-1939)

···

Le 10 juin 07, à 11:21, Luc De Rossi a écrit :

Luc De Rossi a écrit :

Bonjour à tous,

je me permets de relancer une (et une seule) fois mon précédent message pour le cas où il serait passé inaperçu (à moins que personne ait une idée).

Merci.

[SINP]

La solution d'un problème consiste le plus souvent à poser la question correctement.
Quand un fichier ne compile pas, il faut réaliser un ECM (Exemple complet minimal) en se sens que le code qu'il contient doit déclencher l'erreur, et que la suppression de tout code supplémentaire la fait disparaître.
Voir ici :
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=minxampl

Dans la quasi-totalité des cas, la simple réalisation d'un ECM suffit pour trouver la faute.

Voici ce qu'aurait pu être un ECM (ou quasi ECM) dans ce cas :
8<-----------------------------
  \documentclass{article}
   \usepackage[frenchb]{babel}

     \begin{document}
\newcommand{\lilytitle}[2]{\begin{center}{\LARGE{\textbf{#1}}\\\Large{#2}}\end{center}}
\newcommand{\lilysubtitle}[1]{\begin{flushleft}{\textsl{#1}}\end{flushleft}}

     \lilytitle{Temps de l'Avent}
     \lilysubtitle{1\ier dimanche}

     \end{document}
8<-----------------------------
Le message d'erreur concerne \lilysubtitle

ERROR: Argument of \lilysubtitle has an extra }.

Or \lilysubtitle n'a pas d'accolade intempestive.
LaTeX signale les erreurs quand il les détecte, et l'erreur provient du code qui précède, de *tout* ce qui précède.
\lilysubtitle tout seul ne déclenchant pas d'erreur, c'est l'appel à \lilytitle qui déclenche donc l'erreur.
Il est facile de voir que dans la déclaration de \lilytitle deux arguments sont *obligatoires*. Comme il n'en est fourni qu'un seul, le deuxième argument (#2) est remplacé par l'appel de \lilysubtitle et LaTeX pète les plombs car il ne s'y retrouve pas dans le parenthésage.

[SNIP]

Jean-Jacques Rétorré

% Les gens qui ne rient jamais ne sont pas des gens sérieux (A. Allais).

···

--

Oui bref je suis d'accord avec cette analyse. N'empêche que je ne vois pas l'intérêt de créer des commandes de titre et sous-titre propres à lilypond, quand LaTeX a tout ce qu'il faut pour ça.
Bonne soirée

Monique

Luc De Rossi a écrit :

Bonjour à tous,
je me permets de relancer une (et une seule) fois mon précédent message pour le cas où il serait passé inaperçu (à moins que personne ait une idée).
Merci.

[SINP]

La solution d'un problème consiste le plus souvent à poser la question correctement.
Quand un fichier ne compile pas, il faut réaliser un ECM (Exemple complet minimal) en se sens que le code qu'il contient doit déclencher l'erreur, et que la suppression de tout code supplémentaire la fait disparaître.
Voir ici :
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=minxampl

Dans la quasi-totalité des cas, la simple réalisation d'un ECM suffit pour trouver la faute.

Voici ce qu'aurait pu être un ECM (ou quasi ECM) dans ce cas :
8<-----------------------------
\documentclass{article}
  \usepackage[frenchb]{babel}

    \begin{document}
\newcommand{\lilytitle}[2]{\begin{center}{\LARGE{\textbf{#1}}\\\Large{#2}}\end{center}}
\newcommand{\lilysubtitle}[1]{\begin{flushleft}{\textsl{#1}}\end{flushleft}}

    \lilytitle{Temps de l'Avent}
    \lilysubtitle{1\ier dimanche}

    \end{document}
8<-----------------------------
Le message d'erreur concerne \lilysubtitle

ERROR: Argument of \lilysubtitle has an extra }.

Or \lilysubtitle n'a pas d'accolade intempestive.
LaTeX signale les erreurs quand il les détecte, et l'erreur provient du code qui précède, de *tout* ce qui précède.
\lilysubtitle tout seul ne déclenchant pas d'erreur, c'est l'appel à \lilytitle qui déclenche donc l'erreur.
Il est facile de voir que dans la déclaration de \lilytitle deux arguments sont *obligatoires*. Comme il n'en est fourni qu'un seul, le deuxième argument (#2) est remplacé par l'appel de \lilysubtitle et LaTeX pète les plombs car il ne s'y retrouve pas dans le parenthésage.

[SNIP]

Jean-Jacques Rétorré

% Les gens qui ne rient jamais ne sont pas des gens sérieux (A. Allais).
--

_______________________________________________
liste de diffusion lilypond-user-fr
lilypond-user-fr@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user-fr

Monique Combescure
IPNL, Bât. Paul Dirac, 4 rue Enrico Fermi
69622 VILLEURBANNE
Tel: 33 (0)4 72 43 19 63
Fax: 33 (0) 4 72 44 80 04
e-mail: ****@****

"Caminante no hay camino,
se hace camino al andar..."

Tout passe
  et tout demeure
  Mais notre affaire est de passer
  De passer en traçant
  Des chemins
  Des chemins sur la mer
  Voyageur, le chemin
  C'est les traces
  de tes pas
  C'est tout ; voyageur,
  il n'y a pas de chemin,
  Le chemin se fait en marchant
  Et quand tu regardes en arrière
  Tu vois le sentier
  Que jamais
  Tu ne dois à nouveau fouler
  Voyageur! Il n'y a pas de chemins
  Rien que des sillages sur la mer

Antonio Machado ( Poète espagnol, 1875-1939)

···

Le 10 juin 07, à 19:19, Jean-Jacques Rétorré a écrit :

Bonjour,

Luc De Rossi a écrit :

Lorsque je compile mon fichier psaumes.lytex, j'ai ce message que je ne comprends pas :

   Il y a des erreurs dans le code, mais je ne sais pas si elles sont la cause du message.

    \documentclass[[a4paper,12pt,french,halfparskip,parindent]{scrreprt}

   Un "bracket" ouvrant en trop.

    \newcommand{\lilytitle}[2]{\begin{center}{\LARGE{\textbf{#1}}\\\Large{#2}}\end{center}}
    \newcommand{\lilysubtitle}[1]{\begin{flushleft}{\textsl{#1}}\end{flushleft}}
[...]
    \lilytitle{Temps de l'Avent}

   Il y a deux arguments obligatoires dans la définition de \lilytitle. Ça ne peut donc pas fonctionner proprement.

    \lilysubtitle{1\ier dimanche}

   Il doit manquer un espace entre "1er" et "dimanche", il faut coder "1\ier{} dimanche"

    \lilysubtitle{2\ieme dimanche}

   Comme avec 1\ier.

--Jyb

Bonjour,

J'ai juste une question à propos du script que tu utilises :

lilypond-book --output out --pdf psaumes.lytex
cd out
mv psaumes.tex ../
cd ../
lilypond-book --output out --pdf psaumes.tex
cd out
pdflatex psaumes.tex
mv psaumes.pdf ../
cd ../

Je me demande à quoi sert le deuxième lilypond-book sur le fichier .tex créé par lilypond-book justement.

À mon avis c'est inutile : ce fichier .tex ne contient plus, en principe, de pseudo-environement \begin{lilypond} ... \end{lilypond} car ils ont été traités par le premier appel à cette commande.

Pour répondre à Monique, je pense au contraire que c'est une bonne manière de procéder que d'utiliser des commandes spéciales pour les titres de partitions. Surtout si l'on écrit un ouvrage ou un mémoire qui nécessitent d'être structurés en sections et sous-sections et avec des exemples musicaux courts et fréquents auxquels on veut donner un titre. On peut même imaginer écrire une commande lilytitre assez complexe pour gérer par exemple une table des partitions comme on peut créer une table des figures, etc.

Bonne journée à tous.

Nicolas.

Tout d'abord, un grand merci à tous.

On m'avait expliquer qu'il fallait compiler 2 fois pour la création de la table des matières : la première avec le fichier lytex, l'autre à partir du fichier .tex
Cela étant, je n'ai certainement pas compris correctement car la table n'est pas créée.
Je suis preneur d'une nouvelle explication.
Merci et bonne soirée.
Luc

Nicolas Klutchnikoff a écrit :

Bonjour !

Il s'agit de compiler deux fois le fichier .tex effectivement. Au premier passage TeX construit un fichier auxiliaire (.toc) dans lequel (je simplifie un peu je crois) il indique à quelles pages se trouvent les diverses sections, sous-sections, etc. Au deuxième passage, il fabrique réellement la table des matières. Il faut donc compiler deux fois un fichier pour être certain que les pages sont bien numérotées dans la table des matières.

En pratique il faut modifier ton script :

lilypond-book --output out --pdf psaumes.lytex
cd out
mv psaumes.tex ../
cd ../
lilypond-book --output out --pdf psaumes.tex
cd out
pdflatex psaumes.tex
mv psaumes.pdf ../
cd ../

de la façon suivante :

ilypond-book --output out --pdf psaumes.lytex
cd out
pdflatex psaumes.tex
pdflatex psaumes.tex
mv psaumes.pdf ../
cd ../

Tout devrait fonctionner correctement.

Nicolas.

Bonjour,

Luc De Rossi a écrit :

On m'avait expliquer qu'il fallait compiler 2 fois pour la création de la table des matières : la première avec le fichier lytex, l'autre à partir du fichier .tex

   Oui, deux fois, mais pas deux fois en tout : un fois lytex et deux fois .tex. Au premier passage LaTeX crée un fichier .toc à partir duquel il va construire la table des matières à la deuxième compilation. Pour en savoir un peu plus sur LaTeX/TeX il y a l'indispensable "Un courte (?) introduction à LaTeX 2e" sous CTAN: /tex-archive/info/lshort/french, pour des raisons de licence ce n'est que la version 3.20 (alors que le traducteur a au moins fait la 4.17c). C'est une source sûre, ce qui n'est pas le cas de tous les documents sur LaTeX sur internet. Il y a aussi l'indispensable "Un guide pratique pour un LaTeX propre" ou " Une liste des péchés des utilisateurs de LaTeX 2e" pour apprendre à coder proprement ;-). Également une source sûre, CTAN: /tex-archive/info/l2tabu/french. Ensuite pour aller plus loin http://www.grappa.univ-lille3.fr/FAQ-LaTeX/ et puis en cas de panne http://groups.google.fr/group/fr.comp.text.tex/.

--Jyb

Bonjour à tous

J'ai créé un document de musicologie avec beaucoup de texte en LaTeX et quelques exemples musicaux, en utilisant les commandes \begin{lilypond} et \end{lilypond}.
Par contre quand j'utilise la commande \lilypondfile{nom_du_fichier.ly}, il me "mange" une partie (le début) de la partition. Qu'est-ce que j'ai fait de mal?
Merci de vos lumières.

Monique

Monique Combescure
IPNL, Bât. Paul Dirac, 4 rue Enrico Fermi
69622 VILLEURBANNE
Tel: 33 (0)4 72 43 19 63
Fax: 33 (0) 4 72 44 80 04
e-mail: ****@****

"Caminante no hay camino,
se hace camino al andar..."

Tout passe
  et tout demeure
  Mais notre affaire est de passer
  De passer en traçant
  Des chemins
  Des chemins sur la mer
  Voyageur, le chemin
  C'est les traces
  de tes pas
  C'est tout ; voyageur,
  il n'y a pas de chemin,
  Le chemin se fait en marchant
  Et quand tu regardes en arrière
  Tu vois le sentier
  Que jamais
  Tu ne dois à nouveau fouler
  Voyageur! Il n'y a pas de chemins
  Rien que des sillages sur la mer

Antonio Machado ( Poète espagnol, 1875-1939)

Bonjour,

Pourrais-tu nous donner un court extrait des codes (.tex et .ly) posant problème ?

Chez moi les deux façons de procéder fonctionnent bien. J'en suis à la version 2.10.20 -- donc pas la toute dernière -- sous Linux (Fedora 7) et MacOS X ( 10.4.9 PPC).

Bonne journée,

Nicolas.

En effet, un fichier lytex est un fichier qui passera entre les mains de LilyPond. Viendra seulement ensuite le traitement purement *tex.

Je joins à toute fins utile ma dernière version de Makefile pour un tel cas. Quelques commentaires :

0- la liste des sources LilyPond n'est pas obligatoire
1- si j'inclus une image, je renseigne la variable LOGO
2- si je veux générer une table des matières, la variable TDM sera égale à oui

make prepare => génération du postscript
make visu => ouvre le postcript avec ghostview
make fini => génère le pdf
make distrib => met le pdf avec les sources et supprime le répertoire de travail

Par contre, j'ai un petit problème avec la commande :

\newcommand{\betweenLilyPondSystem}[1]{\linebreak \vspace{24pt}}

qui refuse obstinément d'insérer l'espace entre les deux premiers systèmes.

Bonne soirée à tous
Jean-Charles

Makefile (1.12 KB)

···

Le 12.06.2007 09:23, Jean-Yves Baudais disait : > Bonjour, > > Luc De Rossi a écrit :

On m'avait expliquer qu'il fallait compiler 2 fois pour la création de la table des matières : la première avec le fichier lytex, l'autre à partir du fichier .tex

  Oui, deux fois, mais pas deux fois en tout : un fois lytex et deux fois .tex. Au premier passage LaTeX crée un fichier .toc à partir duquel il va construire la table des matières à la deuxième compilation.

[...]