Re: [AS] [*] -Re: ouverture du premier fichier d'un dossier …

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Daniel Varlet
Date:  
À: La liste AppleScript Francophone
Sujet: Re: [AS] [*] -Re: ouverture du premier fichier d'un dossier avec textedit

Le 26 sept. 08 à 16:25, Philippe DREANO a écrit :

> Merci à Jean Louis et à Daniel de m'avoir répondu et avec autant
> d'humour !
>
> Le 2008-09-25 20:48, Daniel Varlet a écrit :
> >
>
> > J'ai parlé de logique car c'est toi qui en as parlé d'abord. Alors
> > comme je ne recule devant rien pour faire de la littérature
> > d'exception (vraiment besoin de smiley?) je l'ai utilisé...
>
> :)) Eh oui ça fait du bien la littérature d'exception lol, a quel
> niveau te situes tu ?? Balzac, HUGO ? moi je pense surtout à KAFKA
> pour ses nombreux problèmes de logique !!!
>
>
> > J'espère que l'explication qui suit servira. Même si tu as compris.
> > Mais je n'ai pas bien compris si tu avais compris.
>
> OUI OUI j'avais compris et je m'étais d'ailleurs amuser a recréer le
> problème, je vais faire les corrections avec ma formule initiale en
> reprenant à l'envers ( à cause de ces foutus index !!) et si ce
> n'est pas plus rapide je reprendrais en partie ton deuxième script
> si tu le permets


Ben oui, c'est fait pour ça.

>
> ( le deuxième hein !! parque le premier je ne l'aime toujours pas et
> à raison !!)


pfffff... C'est petit bras, moi je dis.

>
>
> > > la seule chose que j'ai du mal à comprendre c'est :
> > >
> > > -- set boo to boo or z start with "x"
> > > je ne connais pas du tout cette syntaxe de "or"
> > >
> > >
> > > est ce l'equivalent de -- if z start with "x" then set boo to
> boo ??
> > >
> >
> > C'est un opérateur booléen.
> > Jean Louis a développé.
>
> OUI, mais non je remercie Jean Louis de m'avoir répondu.
>
> mais la n'ai pas le problème : je maîtrise le "or" et le "and"
> depuis longtemps ( enfin depuis mon premier basic avec ses goto et
> ses gosub !)
> d'ailleurs dans son exemple Jean Louis l'emploie comme moi avec if
> et then c'est la syntaxe qui me titille.


OK

>
>
> Ok La variable appelé Boo est une valeur booléne , donc pour moi
> elle a deux valeurs True ou False (ah que je parle anglais moi
> aussi !)


Oui.

>
>
> Mais pour moi qui ne connais pas bien Applescript je n'ai vu cette
> syntaxe dans aucun guide
>
> set z to item i of zs
> > >1 set boo to false
> > >2 try
> > >3 set boo to boo or z starts with "x"
> > >4 end try
> > >5 try
> > >6 set boo to boo or fourth character of z is "|"
> > >7 end try
> > >8 if boo then delete paragraph i of front document
>
> J'espere que vous ne m'en voudrez pas pour le délire qui va suivre
> mais je vais retranscrire en langage humain beta ( oui c'est moi)
> donc human Beta Testing en Live et vous allez admirer ma mauvaise
> foi ( encore une fois ma femme serait d'accord lol !!) en tout cas
> cette syntaxe me fait bien rire
>
> ligne 1 ok ma variable boo que j'aurais pu appeler var ou beta vaut
> " False" je note oui oui je valide
> Ligne 2 try fonction super pratique que j'adore existe idem en java
> tout bonus je comprends et je valide !!
> Ligne 3 mets boo dans ma variable boo ou z commence par "x" QUESACO


En AS
    set z to
assigne à z tout ce qui se trouve après le to jusqu'à la fin de la
ligne.

En langage C, ça pourrait donner:
    boo = ( boo || starts_with(z, x));

>
> bon Ok je mets boo dans boo ce qui revient à ne rien faire


Que nenni, donc.

> donc boo = False (c'est rigolo mais ca ne change rien OK OK " on
> continue on va bien rire --- ou Z commence par "x" bon ok cas n°
> 1 : Z commence par X on va admettre que le ou est exclusif et non
> inclusif donc c'est l'un ou lautre si je comprends bien donc comme z
> commence par x je ne mets pas boo dans boo donc boo est toujours
> comme à la ligne 1 donc c'est " False"!
> cas N 2 Z ne commence pas par "x" Bouh le vilain donc boo devient
> boo c'est à dire ...." False" quel suspens quatre ligne de script
> pour en arriver LA! ( je m'enerve pas MARLENE j'explique !! mais ces
> trois lignes sont comme le H de Hawaii elles ne servent à rien merci
> BRICE)
>
> ligne 8 l'apotheose ! si boo alors détruis le paragraphe i du
> document ??? Si boo quoi ??


true ou false mon capitaine.

> Le fantome, la lait... Si boo = false Si Boo = True ou peut etre...
> Si Boo = Boo (Ah QUE Coucou !)
>


    if <boolean> then
a besoin d'un booléen pas obligatoirement d'un calcul...

Tu as vraiment besoin de if (boo = true) then ?
Pourquoi recalculer un booléen, alors que tu l'as déjà?

>
> BON NE M'EN VOULEZ PAS JE PRENDS UN LEXOMIL ET JE REVIENS !!
>
> Plus sérieusement je pense que cette syntaxe est une manière abrégé


Pas du tout...

> pour définir quelque chose de plus complexe (comme le ++ qui
> incrémente de 1 une variable en langage C++) je voulais juste dire
> que je ne comprenais ( connaissais) pas cette syntaxe
> c'est tout, par contre tout le reste j'avais compris !! ( c'est
> promis) si vous avez un raccourci vers un site qui explique cette
> syntaxe je suis preneur.


C'est tout ce qu'il y a de plus orthodoxe...

>
>
> En tout cas j'ai bien ri, je soir je ferais une partie de Mario Kart
> avec mon fils et je prendrais devinez qui ?? Le roi BOO evidemment !!



Bouh!!
Rien ne me déviera de mon sacerdoce AppleScriptien.... Vade retro
Nitendo, qui en plus pille mes noms de variables.

Je reprends donc les points évoqués:

En AS le "set z to" (l'assignation) va jusqu'à la fin de la ligne.

    set boo to boo or z starts with "x"
Avec parenthèses:
    set boo to (boo or (z starts with "x"))

Une autre façon moins intéressante:
    if (z starts with "x") then set boo to true

L'avantage de la première c'est que le court-circuit habituel des
opérations logiques peut éviter le calcul du deuxième opérande dans
les tests suivants.
Et en cas de zillions de tests même complexes ça reste modifiable (on
peut utiliser le and) et c'est lisible/compréhensible facilement.
Enfin presque...

Variantes avec des if, mais c'est moins souple.
     if (boo or (z starts with "x")) then set boo to true
    if not boo then set boo to (z starts with "x")

(Les parenthèses c'est pour la lisibilité. AS n'en a pas besoin dans
tous ces exemples.)

Autre point:

if boo then
---bla
end

boo _n'est pas_ le roi BOO. Farpaitement. C'est bien une variable
booléenne (true ou false) avec un nom magnifique et explicite de mon
cru.
Donc le if est content, il a ce dont il a besoin: un booléen.

Pour être complet(?):
starts with (synonyme: begins with) est un opérateur de comparaison
qui renvoi un booléen.

A+


-- 
Daniel


_______________________________________________
Applescript_fr mailing list
Applescript_fr@???
http://listes.patpro.net/mailman/listinfo/applescript_fr