Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Récréer un raccourci clavier

11 réponses
Avatar
mireero
Il y a certains cas où l'on aimerait pouvoir déclencher une action par
exemple à partir d'un script.
Actuellement j'aimerais pouvoir rafraîchir un firefox par suite d'un
certain événement (et sans module complémentaire).
Je me demandais donc si, un peu à la manière d'une macro, on pouvait
"enregistrer" les actions déclenchées par un "F5" afin de les
réappliquer au moment opportun.

Firefox est là pour l'exemple, la question reste générale;
Comment _lit-on_ un raccourci?


--
mireero

10 réponses

1 2
Avatar
Yliur
Le Sat, 06 Jun 2015 12:57:13 +0200
mireero a écrit :

Il y a certains cas où l'on aimerait pouvoir déclencher une action
par exemple à partir d'un script.
Actuellement j'aimerais pouvoir rafraîchir un firefox par suite d'un
certain événement (et sans module complémentaire).
Je me demandais donc si, un peu à la manière d'une macro, on pouvait
"enregistrer" les actions déclenchées par un "F5" afin de les
réappliquer au moment opportun.

Firefox est là pour l'exemple, la question reste générale;



Ce que tu veux, c'est pouvoir simuler un appui sur une touche dans un
logiciel ?

Sinon il n'y a pas forcément de réponse générale, les moyens
d'interaction avec les logiciels depuis un script dépendent du
logiciel. Donc il faut étudier la question pour chacun.

Le mieux est d'expliquer précisément ce que tu veux faire avec Firefox.
Est-ce que tu peux expliquer un peu plus le contexte ?

Comment _lit-on_ un raccourci?



Que veux-tu faire exactement ? Sous quelle forme se présente ton
raccourci ? Un fichier .desktop ? Ou est-ce la suite de ta question
précédente, tu veux savoir ce que fait Firefox quand tu appuies sur
telle touche ? Ça c'est écrit dans Firefox, à part lire le code source
je ne vois pas trop ce que tu peux y faire.
Avatar
mireero
On 06/06/2015 01:35 PM, Yliur wrote:
Le Sat, 06 Jun 2015 12:57:13 +0200
mireero a écrit :

Il y a certains cas où l'on aimerait pouvoir déclencher une action
par exemple à partir d'un script.
Actuellement j'aimerais pouvoir rafraîchir un firefox par suite d'un
certain événement (et sans module complémentaire).
Je me demandais donc si, un peu à la manière d'une macro, on pouvait
"enregistrer" les actions déclenchées par un "F5" afin de les
réappliquer au moment opportun.

Firefox est là pour l'exemple, la question reste générale;



Ce que tu veux, c'est pouvoir simuler un appui sur une touche dans un
logiciel ?

Sinon il n'y a pas forcément de réponse générale, les moyens
d'interaction avec les logiciels depuis un script dépendent du
logiciel. Donc il faut étudier la question pour chacun.

Le mieux est d'expliquer précisément ce que tu veux faire avec Firefox.
Est-ce que tu peux expliquer un peu plus le contexte ?



J'aimerais que le rafraîchissement de firefox se produise sur un client
à chaque fois que le code de la page est modifié sur le serveur.
Le serveur a un accès complet au client en question.

Comment _lit-on_ un raccourci?



Que veux-tu faire exactement ? Sous quelle forme se présente ton
raccourci ? Un fichier .desktop ? Ou est-ce la suite de ta question
précédente,




Oui

tu veux savoir ce que fait Firefox quand tu appuies sur
telle touche ? Ça c'est écrit dans Firefox, à part lire le code source
je ne vois pas trop ce que tu peux y faire.




Je veux me substituer au clavier et faire croire à firefox que la touche
"F5" vient d'être appuyée.
Beaucoup de bureaux permettent d'associer une action à un appui sur une
touche. J'aimerai déclencher cette action sans clavier (en l’occurrence
un rafraîchissement de la page) en faisant croire au programme qu'une
touche a été frappée.
On pourrait dire que je veux me substituer au clavier et envoyer des
signaux aux processus (mais quels signaux?).


--
mireero
Avatar
Nicolas George
mireero , dans le message <5572efb0$0$2970$, a
écrit :
Beaucoup de bureaux permettent d'associer une action à un appui sur une
touche. J'aimerai déclencher cette action sans clavier



Ce n'est pas le bureau qui déclenche le rafraîchissement de Firefox.
Avatar
Yliur
Le Sat, 06 Jun 2015 15:03:44 +0200
mireero a écrit :

Je veux me substituer au clavier et faire croire à firefox que la
touche "F5" vient d'être appuyée.
Beaucoup de bureaux permettent d'associer une action à un appui sur
une touche. J'aimerai déclencher cette action sans clavier (en
l’occurrence un rafraîchissement de la page) en faisant croire au
programme qu'une touche a été frappée.
On pourrait dire que je veux me substituer au clavier et envoyer des
signaux aux processus (mais quels signaux?).



Pour ça je pense qu'il est possible de jouer avec les outils autour du
serveur X et de simuler des clics/touches sur des fenêtres, mais je
laisse ceux qui connaissent répondre parce qu'en fait je n'en sais
rien...

Par contre ça ça m'intrigue :

J'aimerais que le rafraîchissement de firefox se produise sur un
client à chaque fois que le code de la page est modifié sur le
serveur. Le serveur a un accès complet au client en question.



Qu'entends-tu par un accès complet au client ? Que les deux tournent
sur la même machine ? Est-ce qu'en fait tu travailles sur un serveur
d'applications et que tu veux mettre à jour la page à la suite de la
compilation de ton code ?

Si c'est toi qui génère les pages, tu peux sans doute insérer dedans
(pendant le développement) un script qui met à jour la page
périodiquement, non ?

S'il ne s'agit pas de développement mais d'un comportement que tu veux
obtenir dans l'application finale, tu peux utiliser un script de ce
type, mais je pense aussi que les trucs comme les websockets de html5
pourraient servir aussi.
Avatar
Yliur
Le Sat, 6 Jun 2015 15:21:44 +0200
Yliur a écrit :

Le Sat, 06 Jun 2015 15:03:44 +0200
mireero a écrit :

> Je veux me substituer au clavier et faire croire à firefox que la
> touche "F5" vient d'être appuyée.
> Beaucoup de bureaux permettent d'associer une action à un appui sur
> une touche. J'aimerai déclencher cette action sans clavier (en
> l’occurrence un rafraîchissement de la page) en faisant croire au
> programme qu'une touche a été frappée.
> On pourrait dire que je veux me substituer au clavier et envoyer
> des signaux aux processus (mais quels signaux?).

Pour ça je pense qu'il est possible de jouer avec les outils autour du
serveur X et de simuler des clics/touches sur des fenêtres, mais je
laisse ceux qui connaissent répondre parce qu'en fait je n'en sais
rien...



Cet exemple pourrait être intéressant peut-être ?
<http://www.tux-planet.fr/xdotool-simulation-du-clavier-et-de-la-souris-sous-linux/>
Avatar
mireero
On 06/06/2015 03:11 PM, Nicolas George wrote:
mireero , dans le message <5572efb0$0$2970$, a
écrit :
Beaucoup de bureaux permettent d'associer une action à un appui sur une
touche. J'aimerai déclencher cette action sans clavier



Ce n'est pas le bureau qui déclenche le rafraîchissement de Firefox.




Ce n'est pas le bureau, dac!


--
mireero
Avatar
mireero
On 06/07/2015 12:47 AM, mireero wrote:
On 06/06/2015 03:11 PM, Nicolas George wrote:
mireero , dans le message <5572efb0$0$2970$, a
écrit :
Beaucoup de bureaux permettent d'associer une action à un appui sur une
touche. J'aimerai déclencher cette action sans clavier



Ce n'est pas le bureau qui déclenche le rafraîchissement de Firefox.




Ce n'est pas le bureau, dac!





Un peu de temps s'est passé ... ma réponse se voulait à défaut (ou à
dessein plutôt) un peu cynique (ou sarcastique, allez savoir).

Depuis que je participe à ce groupe j'ai compris que tu avais un
expérience certaine. Et dans une certaine mesure, rien que ta
participation ici montre que tu la partages.

Mais pourquoi alors poster une telle réponse. Une phrase négative qui
n'apporte rien. Pourquoi ne pas prendre le temps d'expliquer que c'est
(comme l'a expliqué Ylure) le serveur X qui prend en charge les
périphériques d'entrée? Le bureau n'étant qu'un simple lanceur
d'applications au final, à l'image d'un tty mais graphique.

Alors, tu veux participer pour de vrai? Je ne demande qu'à écouter ta
science, à condition de rester dans la courtoisie et le respect, on
n'est pas tous des geeks.

Dans l'attente de te lire... (ps: ne te sens pas agressé par mon
message, c'est pas le but :) )

--
mireero
Avatar
Nicolas George
mireero , dans le message <5575a0ef$0$2957$, a
écrit :
Pourquoi ne pas prendre le temps d'expliquer que


<snip>

Parce que tu as été capable de le trouver tout seul.
Avatar
Yliur
Le Mon, 08 Jun 2015 16:28:46 +0200
mireero a écrit :

> Si c'est toi qui génère les pages, tu peux sans doute insérer dedans
> (pendant le développement) un script qui met à jour la page
> périodiquement, non ?

Tiens, j'avais pas pensé à ça, curieux!
Je te dis comment je vois ça, dis moi ce que tu (ou toi qui est en
train de lire) en penses:

Sur le serveur:
Un cronjob qui va voir genre toutes les secondes si un des fichiers
(préalablement choisis) a été modifié depuis la seconde d'avant.
Si oui, il positionne un drapeau dans un fichier
derrière /var/www/html.

Sur le client, un script qui va lire le drapeau toutes les secondes
et qui rafraîchit la page le cas échéant.

À moins que javascript soit capable de lire la date de modification
directement?



Je ne pense pas qu'il ait accès au système de fichiers, pour des
questions de sécurité.

Tu as aussi l'option de recharger la page systématiquement toutes les n
secondes. Suivant si la génération de la page est lourde ou non et si
tu peux ou non jouer sur le cache http et dire à Firefox "pas de
modification depuis la dernière fois".

Par contre tout ça ne va marcher que pour surveiller un fichier
particulier, il faudra retoucher quelque chose quand tu travailles sur
un autre fichier.

Suivant comment les fenêtres des logiciels sont positionnées, mais en
général ce n'est pas très difficile de passer d'une fenêtre à l'autre
par une combinaison de touches (même si elle est sur un autre écran ou
un autre bureau virtuel) et d'appuyer sur F5. Est-ce que ce n'est pas
plus simple que de monter un truc plus ou moins compliqué qu'il faut
adapter à chaque page de ton appli ?

Si tu veux une mise à jour totalement automatique je n'ai pas de
meilleure idée sinon.

Je ne sais pas comment ça marche, mais il y a moyen de demander au
système d'être prévenu quand un fichier est modifié. Et je pense que tu
peux le faire sur un répertoire. Donc peut-être que tu peux bricoler un
petit programme ou un script qui surveille un répertoire et "appuie sur
F5" dans Firefox automatiquement, pour tout ton code source.
Avatar
Eric Masson
mireero writes:

'Lut,

Ça me fait penser au mot "inotify", je sais pas d'où ça me vient, y'a
une chance que ça veuille rien dire.



Probablement inode notify.

Cependant, je vais reposer ma question un peu différemment, je peux
lancer ce que je veux avec des raccourcis clavier (je suis sur
i3/fluxbox), par exemple pour ouvrir mes mails j'ai un raccourci vers un
script qui vérifie si thunderbird est déjà ouvert, qui me met sur la
bonne page.



man xdotool ?

--
FF> Tout le plaisir est pour moi.
FF> Vous payez par carte bancaire ?
Non, par inadvertance.
-+- OZ in <http://www.le-gnu.net> : Reponse hamster à terre -+-
1 2