Comment lier les raccourcis globaux à un programme WINE sous Linux

Table des matières:

Comment lier les raccourcis globaux à un programme WINE sous Linux
Comment lier les raccourcis globaux à un programme WINE sous Linux

Vidéo: Comment lier les raccourcis globaux à un programme WINE sous Linux

Vidéo: Comment lier les raccourcis globaux à un programme WINE sous Linux
Vidéo: comment activer windows 10 avec invite de cmd - YouTube 2024, Avril
Anonim
Avez-vous déjà installé un programme Windows dans Linux sous WINE, seulement pour découvrir qu’il ne liait plus les touches de raccourci système? HTG a le travail que vous avez recherché.
Avez-vous déjà installé un programme Windows dans Linux sous WINE, seulement pour découvrir qu’il ne liait plus les touches de raccourci système? HTG a le travail que vous avez recherché.

Image de djeucalyptus

Vue d'ensemble

Tous ceux qui ont même pensé à l'idée de passer à Linux ont probablement très rapidement rencontré le problème de la présence de cette application Windows unique. Nous vous avons déjà montré que vous pouvez accomplir cela avec WINE.

Pour cet auteur, l'application était une application de synthèse vocale utilisant le moteur Microsoft SAPI4. L'installation du programme sous WINE était un jeu d'enfant, cependant, une fois l'opération terminée, j'ai rapidement constaté que les touches de raccourci utilisées pour déclencher les différentes actions du programme (démarrer la lecture, arrêter la lecture, etc.) ne fonctionnaient pas et qu'il s'agissait d'un mécanisme connu. problème avec le vin.

Je suis heureux de dire qu’après de nombreuses recherches, j’ai enfin trouvé la solution sous la forme d’un utilitaire GNU capable de manipuler l’interface X.org à l’aide de fonctions natives. Bien que n'étant pas le seul du genre, xdotool est celui qui était le plus facile à utiliser et qui se trouvait déjà dans les dépôts Ubuntu / Mint.

xdotool

Le programme xdotool peut effectuer de nombreuses tâches liées aux fenêtres à partir de la CLI. Cela dit, les deux seules que nous allons utiliser sont "recherche" et "clé". C’est ce que fait la fonction de recherche. Elle recherche un identifiant de fenêtre / s en fonction des paramètres que vous avez définis. La fonction «clé» vous permet de simuler un trait de clé avec un identifiant de fenêtre.

Installation et configuration

Il est supposé que vous avez déjà installé WINE et le programme dont vous avez besoin. Dans cet exemple, nous utiliserons Balabolka en tant qu’application «Windows» car c’est une bonne réplique gratuite du programme original pour lequel j'avais besoin de cette solution (2e centre de traitement de la parole).

Si vous avez également choisi d’utiliser Balabolka, vous devez activer sa fonction de raccourci clavier. Remarque: vous souhaiterez peut-être installer TTSReader ou 2nd speech center, même en mode démo, pour que les voix SAPI soient installées.

Ouvrez le programme et accédez aux paramètres (Maj + F6) sous «Options» -> «Paramètres».

Accédez à l'onglet Touches de raccourci et cochez la case «Utiliser les touches de raccourci globales»
Accédez à l'onglet Touches de raccourci et cochez la case «Utiliser les touches de raccourci globales»
 Cliquez sur OK.
Cliquez sur OK.

Laissez-le en cours d'exécution en arrière-plan afin qu'il puisse faire son travail lorsque nous lui associons les touches du clavier.

Installez xdotool en émettant:

sudo apt-get install xdotool

Reliure globale

Le programme xdotool seul ne nous aide pas à établir une liaison globale avec les touches de raccourci, mais nous pouvons utiliser le système de touches de raccourci du système d'exploitation déjà existant. Ce que nous allons faire est de créer un script simple qui utilise xdotool pour envoyer les séquences de touches souhaitées au programme Balabolka et les appeler à partir du système de raccourcis du système d'exploitation.

Créez un script appelé «start_read.sh» avec le contenu suivant:

xdotool key --window $( xdotool search --limit 1 --all --pid $( pgrep balabolka ) --name Balabolka ) 'ctrl+alt+F9'

Créez un autre script appelé "stop_read.sh" avec le contenu suivant:

xdotool key --window $( xdotool search --limit 1 --all --pid $( pgrep balabolka ) --name Balabolka ) 'ctrl+alt+F7'

Remarque: je sais qu’il s’agit d’un projet ne nécessitant pas de script, mais le programme «Raccourcis clavier» de Mint / Ubuntu ne coopère pas avec l’appel direct. Si vous savez comment le faire, veuillez partager les commentaires ci-dessous.

En freinant cette commande sur ses composants, nous constatons que:

  • La partie «–pid $ (pgrep balabolka)» exécute un «pgrep» sur le programme que nous souhaitons utiliser pour déterminer son ID de processus. Cela réduira le fichier xdotool de «recherche» à ce PID uniquement.
  • La partie «xdotool search –limit 1 –all… –name Balabolka» réduit encore plus le champ de recherche de xdotool et limite les réponses renvoyées à 1. Comme dans notre cas, le type d'identifiant de fenêtre renvoyé programme, la limitation du résultat agit comme un formateur pour la commande "clé". Vous constaterez peut-être que vous aurez besoin de masser davantage cette partie si le programme que vous utilisez est important.
  • La partie "xdotool key –window% WINDOW_ID%", "ctrl + alt + F7" "envoie la frappe souhaitée à l'ID de fenêtre qui a été obtenue par les parties précédentes.

Rendre les scripts exécutables.

Clavier Linux Mint raccourcis

Sous Linux Mint, les raccourcis clavier globaux sont définis dans le programme «Raccourcis clavier».

Une fois ouvert, cliquez sur «Ajouter» pour créer un nouveau raccourci personnalisé:
Une fois ouvert, cliquez sur «Ajouter» pour créer un nouveau raccourci personnalisé:
Donnez-lui un nom et, sous «Commande», donnez le chemin complet à l’un des scripts que nous avons créés ci-dessus. Répétez le processus pour le deuxième script.
Donnez-lui un nom et, sous «Commande», donnez le chemin complet à l’un des scripts que nous avons créés ci-dessus. Répétez le processus pour le deuxième script.

Maintenant, dans la colonne «Raccourcis», cliquez sur le mot «Désactivé» pour obtenir l’option de définir une nouvelle combinaison de touches. Remarque: vous pouvez, si vous le souhaitez, utiliser autre chose que celui par défaut du programme. En un sens, créer un «remappage» sur des raccourcis clavier qui, selon le programme que vous utilisez, seraient autrement hors de votre contrôle.

Appuyez sur le combo que vous avez sélectionné et entendez la magie.
Appuyez sur le combo que vous avez sélectionné et entendez la magie.

Clavier Ubuntu

Sous Ubuntu, le programme qui définit les raccourcis clavier globaux s’appelle simplement «Clavier».

Passez à l'onglet «Raccourcis» et sélectionnez «Raccourcis personnalisés»
Passez à l'onglet «Raccourcis» et sélectionnez «Raccourcis personnalisés»
Image
Image

Cliquez sur le signe plus pour ajouter un raccourci. Donnez-lui un nom et, sous «Commande», donnez le chemin complet à l’un des scripts que nous avons créés ci-dessus. Répétez le processus pour le deuxième script. Maintenant, cliquez sur le mot "Disabled" pour avoir la possibilité de définir une nouvelle combinaison de touches.

Remarque: en répétant la note de la section Mint, vous pouvez, si vous le souhaitez, utiliser autre chose que celui par défaut du programme. En un sens, créer un «remappage» sur des raccourcis clavier qui, selon le programme que vous utilisez, seraient autrement hors de votre contrôle.

Notes de l'auteur

Chaque fois que j'ai sérieusement envisagé de migrer vers Linux, ce problème était le premier de ma liste. Ce n’est pas que Linux n’ait pas de problèmes, mais c’était pour moi le véritable obstacle. J’ai essayé maintes et maintes fois, demandé à des amis / à des personnes sur le terrain et m’en ai même fait une prime. Je suis heureux que cette saga soit finie et que mon âme puisse enfin se reposer. J'espère que j'ai aidé quelqu'un à ne pas avoir à passer la même épreuve.

Doc Brown: Il me fallut près de trente ans et la fortune de toute ma famille pour réaliser la vision de cette journée. Mon Dieu, ça fait si longtemps?

Conseillé: