Scripts_MacSoup

Le
g4fleurot
Bonjour,

Je n'ai pas supprimé ma signature des préférences de MacSoup (pour l'utilisation d'autres forums) et
le résultat est celui obtenu en bas de ce message :
En fait, les fois précédentes, j'ai supprimé ma signature manuellement, mais j'ai pensé qu'il serait
peut être possible d'obtenir le résultat dans le script.

J'ai donc essayé de créer un droplet à insérer entre le dialogue d'ajout d'une signature et l'appel
de corvo, mais voilà, je tourne en rond.
Pas moyen de trouver la bonne syntaxe, et, confronté à mon incompétence, je me résouds à demander de
l'aide.
Voilà où j'en suis :

xxxxxxxxxxxxxx
--on myEraseSign()
copie()
set theAnswer to the clipboard
set mySign to ("-- " & return & "Gérard FLEUROT <g4fleurot@free.fr> plus un")
set RAZ to ""
if theAnswer contains mySign then
try
if the last paragraph of theAnswer exists then
set AppleScript's text item delimiters to "--"
set the last paragraph of theAnswer to RAZ
end if
on error
display alert "erreur"
end try
else
display alert "Il n'y a pas de signature à supprimer"
end if
set the clipboard to theAnswer
finalPaste() -- colle le corps du message modifié
--end myEraseSign

on finalPaste()
tell application "MacSOUP"
activate
tell application "System Events"
keystroke "v" using command down
end tell
end tell
return
end finalPaste

on copie()
tell application "MacSOUP"
delay 0.2
activate
tell application "System Events"
delay 0.2
keystroke "a" using command down
keystroke "c" using command down
end tell
end tell
delay 0.2
end copie
xxxxxxxxxxxxxx

La ligne qui pose problème est :
set the last paragraph of theAnswer to RAZ

Cordialement,
--
Gérard FLEUROT <g4fleurot@free.fr> plus un


--
Gérard FLEUROT [<g4fleurot@free.fr> plus un] vous informe que :
Il est possible que le tunnel linéaire puisse ultra-bouillir l'extra-matrice résistante, mais
seulement si nous pouvons fracasser la crypto-singularité pourniflante et recombiner l'ultra-cristal
parabolique !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 3
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
josephb
Le #26400222
Bonjour Gérard,

Fleuger
Je n'ai pas supprimé ma signature des préférences de MacSoup
(pour l'utilisation d'autres forums) et
le résultat est celui obtenu en bas de ce message :



Mes deux cents :
ne te prends pas le chou avec un script compliqué qui va trifouiller
dans ta signature.

Supprime ta signature des prefs de Macsoup,
et de même que tu as un applet pour fcomosX et le Corvo,
fais-en un pour les autres forums, qui se contentera de mettre ta
signature "basique" à la fin.

Ça ne devrait pas te poser de problème, tout est déjà prêt ;-)
--
J. B.
g4fleurot
Le #26400227
Bonjour Joseph,

L'ingénieux Joseph-B a spontanément répondu :

Supprime ta signature des prefs de Macsoup,
et de même que tu as un applet pour fcomosX et le Corvo,
fais-en un pour les autres forums, qui se contentera de mettre ta
signature "basique" à la fin.

Ça ne devrait pas te poser de problème, tout est déjà prêt ;-)



C'est tellement simple que je n'y avais pas pensé :-(
Merci pour la suggestion.

--
Gérard FLEUROT [ Il est possible que l'homo-intromission véloce puisse nucléo-détecter le
sub-nuage plutonné, mais seulement si nous pouvons aéro-scanner le
schisme valvulé et crypto-phaser le vide spinoïidal !
michel.vauquois
Le #26400226
Bonjour,

L'extravagant Joseph-B, après réflexion, propose de régler le problème
de cette manière :

ne te prends pas le chou avec un script compliqué qui va trifouiller
dans ta signature.



Petit joueur ! Je me disais : "Merde ! Joseph-B va me couper l'herbe
sous le pied alors que j'ai une solution..."

Alors voili voilou : ça, ça fonctionne chez moi :

++++++++++
copie()
set theAnswer to the clipboard
set mySign to ("-- " & return & "Michel Vauquois")
set RAZ to ""
if theAnswer contains mySign then
set corpsMess to (paragraphs 1 thru -3 of theAnswer) as list
set text item delimiters to return
else
display alert "Il n'y a pas de signature à supprimer"
end if
set the clipboard to corpsMess as text
finalPaste() -- colle le corps du message modifié
++++++++++


Amicalement.
--
Michel Vauquois - Tout va bien à bord. La glomérule linéaire semble inverser correctement.
Mais nous devrions rétro-trouer le capillo-réseau adaptatif pour plus de
sécurité.
michel.vauquois
Le #26400232
Bonjour,

Émergeant des brumes évanescentes de l'alcool, Fleuger, après avoir tout
essayé, a exposé son problème en ces termes :

Je n'ai pas supprimé ma signature des préférences de MacSoup (pour
l'utilisation d'autres forums) et le résultat est celui obtenu en bas de
ce message : En fait, les fois précédentes, j'ai supprimé ma signature
manuellement, mais j'ai pensé qu'il serait peut être possible d'obtenir le
résultat dans le script.



Si tu mets la partie du script corrigée (tu penseras à modifier la
signature que j'ai donnée dans mon autre réponse) entre la demande de
signature et l'appel du corvo, la partie :

else
display alert "Il n'y a pas de signature à supprimer"

n'est pas utile : il faut que, dès que tu veux une signature issue du
corvo, ça te supprime ta signature de MacSOUP.

Donc ce qui suit est bien assez :
++++++++++
copie()
set theAnswer to the clipboard
set mySign to ("-- " & return & "Gérard")
if theAnswer contains mySign then
set corpus to (paragraphs 1 thru -3 of theAnswer) as list
set text item delimiters to return
end if
set the clipboard to corpus as text
finalPaste()
++++++++++

Tu noteras que mySign peut se réduire à ("-- " & return & "Gérard") et
qu'il est inutile de mettre toute ta signature de MacSOUP.
J'ai également dégagé la ligne avec RAZ devenue inutile également.

Amicalement.
--
Michel Vauquois - Alerte ! La quadri-entité ionisée paraît trouer dangereusement ! Il faut
surcharger la force bouffonnée d'urgence !!!
g4fleurot
Le #26400240
Hello,

L'incroyable M.V. a prestement répondu :

Alors voili voilou : ça, ça fonctionne chez moi :



Merci Michel d'avoir étudié ma demande.

Ça dépend des réponses. Avec -3, ça n'a pas marché.
Par contre avec -4 ça a fonctionné.
Je ne comprend pas pourquoi si je met last paragraph, il remplace par -1

Et puis, une fois le myEraseSign() incorporé dans ton script*, le
nouveau message viens se coller au dessous de l'ancien, ce qui est du,
je pense, au fait qu'on met corpsMess dans le clipboard au lieu de
theAnswer.

*
++++++++++
set demande to {button returned} of (display dialog "Voulez-vous ajouter
une signature ?" buttons {"NON", "OUI"} default button 2) as text

if demande = "OUI" then
myEraseSign()
delay 0.2
repeat
++++++++++

Amicalement,
--
Gérard FLEUROT [ Pas de panique ! Moduler l'homo-corridor parabolique ne nous empêche pas
de bulbo-détecter le conduit à court rayon d'action ni même d'ajuster le
résonateur à haute vitesse.
g4fleurot
Le #26400245
Hello,

Le sublime M.V. après mûre réflexion a proposé :

Donc ce qui suit est bien assez :



Tout à fait, mais j'avais mis des sécurités un peu partout dans le
script pour voir où ça achoppait.

À la fin, j'ai mis :
end if
set theAnswer to corpus
set the clipboard to theAnswer as text
finalPaste()
et ça donne ça :



--
--
Gérard FLEUROT [ Veuillez détecter le micro-transporteur ionisé avant de stabiliser
sciemment.
g4fleurot
Le #26400244
Hello,

J'ai écrit :

et ça donne ça :



Cette fois ci, c'est bon avec -5

--
Gérard FLEUROT Voici le vagissement glomérulé dont il est temps de diminuer la grille
oblative sans oublier de créer le rétro-ressort alternatif.
michel.vauquois
Le #26400250
Re-bonsoir,

Le pétulant Fleuger, à sa sortie de l'ascenseur de 11 h 56, nous déclare :

Ça dépend des réponses. Avec -3, ça n'a pas marché.
Par contre avec -4 ça a fonctionné.



Ça dépend de ta signature dans MacSOUP.
Ma signature habituelle (dans MacSOUP) est sur 2 lignes et avec le délimiteur de signature inséré automatiquement pas MacSOUP, ça
fait donc 3 lignes : j'ai mis -4 également.

Je ne comprend pas pourquoi si je met last paragraph, il remplace par -1



Joseph-B le sait sans doute mais pas moi !

Et puis, une fois le myEraseSign() incorporé dans ton script*, le
nouveau message viens se coller au dessous de l'ancien, ce qui est du,
je pense, au fait qu'on met corpsMess dans le clipboard au lieu de
theAnswer.



??? Pas certain de bien comprendre ce que tu veux dire.

Chez moi, je l'ai placé au début (juste après le test pour savoir si
c'était une auto-réponse ou pas) avec demande de confirmation de
suppression de la signature automatique mais je ne sais pas si c'est
de ce script dont tu parles ?
Ça donne ça chez moi (j'ai remis l'alerte en cas d'auto-réponse) :
++++++++++
if (header contains pseudo) then
display alert "Vous vous répondez à vous-même... Choisissez le script AutoRéponse !"
return -- arrête le script
else
set demandeSign to {button returned} of (display dialog "Voulez-vous supprimer la signature automatique ?" buttons {"NON",
"OUI"} default button 2) as text
if demandeSign = "OUI" then
deleteSign()
end if

repeat
++++++++++

La fonction deleteSign() étant :

++++++++++
on deleteSign()
copie()
set theAnswer2 to the clipboard
set mySign to ("-- " & return & "Michel")
if theAnswer2 contains mySign then
set corpsMess to (paragraphs 1 thru -4 of theAnswer2) as list
set text item delimiters to return
end if
set the clipboard to corpsMess as text
finalPaste()
end deleteSign
++++++++++

Pour le script Auto-réponse, j'ai fait la même chose.
--
Michel Vauquois - Tout va bien : l'hologramme génique semble entôler correctement et nous devrions plexo-atomiser le méta-flux véloce pour plus de
confort.
michel.vauquois
Le #26400249
Re-bonsoir,

Fleuger, chevauchant fièrement son haquenée, nous dévoile sa pensée :

et ça donne ça :



--



Tu peux écrire un message sur fr.test pour voir le nombre de lignes de
ta signature ?

Si ta signature tient sur 4 lignes (3 lignes de signature et 1 ligne dû
au délimiteur) il faut mettre effecivement -5.
Mais il me semblait qu'avant ces petits jeux, ta signature tenait sur 2
lignes :
+++début+++
--
Gérard FLEUROT +++fin+++
C'est donc assez bizarre ce que tu racontes.

Amicalement.
--
Michel Vauquois - Aux armes ! Ne nous laissons pas morduire par le chromo-tunnel de
l'étranger !
josephb
Le #26400256
Fleuger
Je ne comprend pas pourquoi si je met last paragraph, il remplace par -1



Pour la même raison que si tu mets "first paragraph" il remplace par 1
Ce sont des indicateurs positionnels /relatifs/

1,2, -3,-1 sont des indicateurs absolus, soit en comptant depuis le
début, soit en commençant par la fin

"last machin" est compris par le compilateur comme "le premier machin en
partant de la fin de son conteneur" = -1


--
J. B.
Publicité
Poster une réponse
Anonyme