Copier-coller "global"

APAP Membre

Bonsoir,


 


Je cherche à  faire une petite application (qui se logera dans la barre des menu, sans autre interfaces), qui sur un raccourci clavier global, sera capable de copier la sélection en cours (et ce qu'elle que soit l'application) dans le presse-papier, y apporter un traitement et coller le tout dans l'application du début.


 


Les contraintes sont les suivantes: fonctionner en environnement sandboxé et respecter les "lois" d'Apple.


 


Quelle piste dois-je suivre? Accessibilité? autre?


 


Merci pour votre aide.


Réponses

  • AliGatorAliGator Membre, Modérateur
    [NSPasteboard generalPasteboard] n'est il pas déjà  global en soi ? Suffirait de le manipuler directement après tout il est fait pour ça non ?
  • APAP Membre

    Bonsoir Ali et merci pour ta réponse.


     


    On peut lui dire de copier et de coller dans une autre application? Je n'ai rien trouvé de tel dans la doc.


  • Joanna CarterJoanna Carter Membre, Modérateur
    Tu n'as jamais copié et collé entre apps auparavant ?
  • APAP Membre

    ca dépend ce que l'on appelle copier coller. Qu'une appli aille copier directement dans une autre, non jamais fait :)


  • MalaMala Membre, Modérateur

    Je doute que ton besoin soit compatible avec un environnement sandboxé à  moins que les applis concernées fassent partie du même "App Groups" et encore. Dans ton cas, tu sembles vouloir que ton appli A se mette à  jour quand ton appli B charge le presse papier. Cela ne suit pas vraiment les guidelines habituelles déjà  à  la base.


  • AliGatorAliGator Membre, Modérateur
    AppleScript ?
  • APAP Membre


    Je doute que ton besoin soit compatible avec un environnement sandboxé à  moins que les applis concernées fassent partie du même "App Groups" et encore. Dans ton cas, tu sembles vouloir que ton appli A se mette à  jour quand ton appli B charge le presse papier. Cela ne suit pas vraiment les guidelines habituelles déjà  à  la base.




    Pas de mise à  jour directe. Je veux juste que quand l'appli A (la mienne) reçoit un certain raccourci clavier, elle copie la sélection de l'appli B (celle ayant le focus) et récupère le contenu.

  • ChappoxChappox Membre
    mars 2015 modifié #9

    Il te faudrait donc déclencher depuis l'appli A l'action "Copy" de l'appli active, puis utiliser NSPasteboard... je doute aussi... Pouvoir scanner les sélections de toutes les apps qui tournent, c'est un truc qui m'intéresse ! C'est pour analyser le comportement de l'utilisateur et établir des connexions entre les infos traitées, via IA, apprentissage automatique, ... ?


  • AliGatorAliGator Membre, Modérateur

    AppleScript ?

  • Oui, j'ai regardé un peu dans Automator, n'est-il pas basé sur AppleScript, et j'ai pas trop vu "Copy selected Items"...


  • berfisberfis Membre
    avril 2015 modifié #12

    Définitivement AppleScript. Automator bof, c'est plutôt lourdeau.


     


    Si tu veux tâter du compromis amusant, AppleScriptObjC...  :)


  • APAP Membre

    Bonjour,


     


    Quinze jours tard je suis toujours sur la question. Bon je vous rassure, je n'ai pas fait que cela ;)


     


    Merci à  tous pour vos pistes.


     


    Il s'avère que la solution applescript soit la seule autorisée.


     


     




    Définitivement AppleScript. Automator bof, c'est plutôt lourdeau.


     


    Si tu veux tâter du compromis amusant, AppleScriptObjC...  :)




    Quelle est la différence entre AppleScriptObjC et NSAppleScript?


     


    Sinon j'arrive au petite script suivant:



    NSString * copyStr =@tell application \System Events\" to key code 8 using command down";
    copyScript = [[NSAppleScript alloc] initWithSource:copyStr];
    NSAppleEventDescriptor *aDescriptor = [copyScript executeAndReturnError:&errorDict];

    Mais ca ne fonctionne que dans XCode en mode pas à  pas...


     


    Merci pour votre aide.


Connectez-vous ou Inscrivez-vous pour répondre.