7 Replies Latest reply on Sep 8, 2016 1:46 AM by Liphou

    [JS] Manipulation xml

    Liphou Level 1

      Bonjour,

       

      Nous enregistrons des Requêtes pour le "Rechercher/Remplacer",

       

      Je manipule à la suite le fichier xml, je ne sais pas à quoi correspond la ligne : "<TextAttribute cls_id="6913" value="AT"/>"

       

      voici le code xml :

       

      <Query>

        <Header>

          <Version major="5" minor="1"/>

          <Application value="Adobe InDesign"/>

          <QueryType value="Grep" qid="1"/>

        </Header>

        <Description>

          <FindExpression value="@@@AT-"/>

          <ReplaceExpression value=""/>

          <FindChangeOptions>

            <IncludeLockedLayers value="0"/>

            <IncludeLockedStories value="0"/>

            <IncludeMasterPages value="0"/>

            <IncludeHiddenLayers value="0"/>

            <IncludeFootnotes value="0"/>

            <KanaSensitive value="1"/>

            <WidthSensitive value="1"/>

          </FindChangeOptions>

          <FindFormatSettings>

            <TextAttribute type="pstyle" value="ST3"/>

          </FindFormatSettings>

          <ReplaceFormatSettings>

            <TextAttribute cls_id="6913" value="AT"/>

            <TextAttribute type="pstyle" value="ST3 AT"/>

            <TextAttribute type="changecondmode" value="0"/>

          </ReplaceFormatSettings>

        </Description>

      </Query>

        • 1. Re: [JS] Manipulation xml
          Liphou Level 1

          OK, c'est l'info de l'option couleur utilisé dans "Rechercher/Remplacer", l'affichage est différend du code xml le première à été reconstruit par le plugin "Multi-Find/Change" 

           

          <ReplaceFormatSettings>

          <TextAttribute cls_id="6913" value="philou007">

          </TextAttribute>

          <TextAttribute type="cstyle" value="[No character style]">

          </TextAttribute>

          <TextAttribute type="changecondmode" value="0">

          </TextAttribute>

           

          Merci à vous

          • 2. Re: [JS] Manipulation xml
            Loic.Aigon Adobe Community Professional

            Visiblement que la recherche considère que le texte utilise le style de paragraphe "ST3". Cela fait-il sens ?

            • 3. Re: [JS] Manipulation xml
              Philou007

              Merci Loic,

               

              Effectivement, dans la recherche  l'exemple recherche le texte : "@@@AT-" avec un attribut (option) de type="pstyle" (Style de paragraphe) : "ST3" et applique au remplacement de style de paragraphe "ST3 AT" mais applique aussi une couleur : "AT" qui symbolisé par la ligne :   <TextAttribute cls_id="6913" value="AT"/>.

               

              Cela dis, les "TextAttribute" de type "pstyle" et "cstyle" sont asse identifiable, pstyle -> style de paragraphe, cstyle -> style de caractaire. Mais pour les autre option ex : cls_id="6948", cls_id="6913", pour savoir à quoi cela correspond, c'est pas simple.

               

              Je corrige un script qui lit le fichier xml mais je ne fais pas le bon test sur l'attribut pstyle et cstyle, il bloc variable indéfini

              Je lit le xml avec la méthode E4X, je ne sais pas si c'est utile de le précisé/

              Voici le bout de code :

                             ...

                         var laLigne = "";

                         var leGrepRecup = [];

                          var vide = '---------';

                             ...

               

               

                              if (leFichierXMLAvec.Description.FindFormatSettings.TextAttribute.(@type=="cstyle").@value != "") {

                                       leGrepRecup.push( String (leFichierXMLAvec.Description.FindFormatSettings.TextAttribute.(@type=="cstyle").@value)) ; // leNomDuGrep[3]

                                } else {

                                       leGrepRecup.push(vide);

                                  }

                           if (leFichierXMLAvec.Description.FindFormatSettings.TextAttribute.(@type=="pstyle").@value != "") {

                                                  leGrepRecup.push(String (leFichierXMLAvec.Description.FindFormatSettings.TextAttribute.(@type=="pstyle").@value)) ; // leNomDuGrep[4]

                                          } else {

                                                 leGrepRecup.push(vide);

                                            }

                                     

                                     // $.writeln( leFichierXMLAvec.Description.ReplaceFormatSettings.toXMLString());

                                     // $.writeln (leFichierXMLAvec.Description.ReplaceFormatSettings.TextAttribute.(@type=="pstyle").lengt h() == 0);

                                   

                        if (leFichierXMLAvec.Description.ReplaceFormatSettings.TextAttribute.(@type=="cstyle").@valu e != "") {

                                                  leGrepRecup.push(String (leFichierXMLAvec.Description.ReplaceFormatSettings.TextAttribute.(@type=="cstyle").@valu e)); // leNomDuGrep[5]

                                          } else {

                                                  leGrepRecup.push(vide);

                                            }

                                         

                                  if (leFichierXMLAvec.Description.ReplaceFormatSettings.TextAttribute.(@type=="pstyle").@valu e != "") {

                                                  leGrepRecup.push(String (leFichierXMLAvec.Description.ReplaceFormatSettings.TextAttribute.(@type=="pstyle").@valu e)); // leNomDuGrep[6]

                                        } else {

                                  leGrepRecup.push(vide);

                                  }

                                  

               

              D’avance, je m'excuse pour les fautes d'orthographe, je suis dyslexie, Dysorthographie et je ne connais pas l'anglais.

              j'utilise les outils de correction mais sa fais pas des miracle.

               

              Merci pour votre patience

              • 4. Re: [JS] Manipulation xml
                Loic.Aigon Adobe Community Professional

                D’avance, je m'excuse pour les fautes d'orthographe, je suis dyslexie, Dysorthographie et je ne connais pas l'anglais.

                Ne t'excuses surtout pas, on a tous nos soucis. Mais c'est bien pour nous de comprendre effectivement la nature de tes messages

                 

                Je lit le xml avec la méthode E4X, je ne sais pas si c'est utile de le précisé/

                C'est tout à fait pertinent.

                 

                cls_id="6913", pour savoir à quoi cela correspond, c'est pas simple.

                Pas de réponses de mon côté. La seule source d'explication serait liée à une notion de classe (c++) mais je suis sceptique.

                • 5. Re: [JS] Manipulation xml
                  Liphou Level 1

                  Merci Loic,

                   

                  je fais des testes pour identifié les option :

                  - TextAtttibute de type "cls_id" value "6913" est l'option couleur avec le non de la couleur "Philou007" en valeur;

                  - TextAtttibute de type "cls_id" value "6929" est l'option petites capitales avec la valeur "1" pour oui.

                   

                  Capture d’écran 2016-09-08 à 10.27.18.png

                  Je continue à faire mes test sur la gestion du xml avec un log pour les nouveaux attribut.

                  • 6. Re: [JS] Manipulation xml
                    Loic.Aigon Adobe Community Professional

                    Oui effectivement j'aurai du te dire que le mieux était encore de procéder à ce genre de test.

                    Ca parait logique.

                    • 7. Re: [JS] Manipulation xml
                      Liphou Level 1

                      Merci.