iconJe ne sais pas pour vous, mais il y a un bug de Google Earth qui m'irrite particulièrement. Chaque fois qu'on veut ouvrir un fichier kmz ou kml, une nouvelle fenêtre de Google Earth s'ouvre ! Il semble que ce soit un vieux bug de la version linux qui traine depuis longtemps. Bon il y a bien la solution de sauver le fichier, basculer dans GE et ouvrir le fichier, mais c'est rapidement fastidieux. Je me suis donc décidé à automatiser tout cela !

Profitons-en pour découvrir des outils qui vont nous permettre de contrôler nos fenêtres Xorg à partir de la ligne de commande.

Xorg

wmctrl

Il s'agit d'un programme permettant de communiquer avec les gestionnaires de fenêtres compatibles EWMH (un standard de freedesktop). Il permet donc d'interagir avec kwin (kde), metacity (gnome), xfce ...[1]. Grâce à lui, nous allons pouvoir lister les fenêtres présentes, basculer de l'une à l'autre, les minimiser ...

xautomation

Xautomation est un ensemble d'outils permettant de simuler des évènements graphiques. Nous pouvons ainsi simuler l'appui sur des touches du clavier, cliquer avec la souris et reconnaitre des morceaux de fenêtres. Dans le cas présent, je n'utilise en fait que le contrôle du clavier.

xclip

Enfin, xclip est un petit utilitaire permettant de manipuler le presse papier d'Xorg (toujours en ligne de commande bien sur). Nous pouvons lire et modifier les différents clipboards.

Le script

Vous devez donc installer les trois outils présentés ci-dessus. Cela ne devrait poser aucun problème puisque ceux-ci sont disponibles dans les dépots. Si l'un d'entre eux manque à l'appel, le script vous le rappellera par une jolie boite de dialogue.

Ensuite téléchargez celui-ci et copiez le chez vous (par exemple dans ~/bin/googleearth_open) et rendez le exécutable. Il ne vous reste plus qu'à configurer votre navigateur préféré pour utiliser ce script plutôt que googleearth.

capture capture

Le principe du script est simple :

  • on récupère la fenêtre GE (celle dont le nom se termine par Google Earth) en 1er plan avec wmctrl
  • on ouvre la boite d'ouverture de fichier (Ctrl+o avec xte)
  • on y colle le nom de fichier passé en paramètre (xclip puis Ctrl+v)
  • on appuie sur Entrée

Par contre le temps de l'exécution il faut éviter de cliquer partout et de jouer avec le clavier, sinon il risque de s'emmêler les pinceaux.

Et voila à vous de cliquer partout dans Google Earth Community :) !

Notes

[1] voir sur le site web la liste complète