Salut à toi codeur ;)
Tu n'est pas sans savoir que ta lourde tâche qui t'incombe n'est pas sans une longue est fastidieuse période d'attente.
Pour combler cette attente il existe une multitude de solutions
- discutailler avec un collègue
- faire un tour à la machine à café
- faire de le veille technologique
- ou plus pragmatique regarder le code pour repérer des truc avant que le compilo ne tombe dessus (ça marche aussi avec les langages interprétés, mais c'est plus technique)
- ou encore se tourner les pouces
mais voila, par soucis d'efficience, au delà du make -j kekchose, j'enchaine souvent mes make (ou plutôt mes alias de make ) par un ;beep qui lui même est un alias if which xeyes &>/dev/null ; then xeyes ; else xlogo ;fi
Le gestionnaire de bureau s'occupant lui même de le faire apparaitre sur tous les espaces de travail.
Pendant un temps c'était un xosd, mais le truc était trop temporaire.
Et toi cher codeur quel est ta technique pour être notifié de la fin d'une exécution ?
# zenity
Posté par liberforce (site web personnel) . Évalué à 4.
Je propose:
make && zenity --notification --text="Compilation terminée"
Après, les notifications sonores, c'est bien aussi…
[^] # Re: zenity
Posté par Niniryoku . Évalué à 5.
Et si le make échoue, tu n'es au courant de rien ?
Knowing the syntax of Java does not make someone a software engineer.
[^] # Re: zenity
Posté par liberforce (site web personnel) . Évalué à 10.
Mes appels à make n'échouent pas.
# Je code en écoutant de la musique
Posté par Niniryoku . Évalué à 3.
Vu que j'ai un casque quand je code (pour écouter de la musique). Un beep, ça s'entend pas trop.
Donc je me suis fait un petit script :
et hop un petit,
Knowing the syntax of Java does not make someone a software engineer.
# osd
Posté par Troy McClure (site web personnel) . Évalué à 3.
Ah ben moi aussi j'affiche un petit message en OSD pendant une demi-seconde, mais effectivement des fois quand je suis un peu trop concentré sur le moulage il m'arrive de zapper le message
D'ailleurs j'aimerais bien trouver un osd cross-platform win/linux/macos ( et qui ne vole pas le focus)
[^] # Re: osd
Posté par zebra3 . Évalué à 8.
Un mail ?
À mon avis, c'est la réponse la plus basique qui soit et pourtant c'est celle qui répond à le plus d'usage.
Article Quarante-Deux : Toute personne dépassant un kilomètre de haut doit quitter le Tribunal. -- Le Roi de Cœur
[^] # courriel aussi
Posté par jihele . Évalué à 2.
C'est comme ça que je faisais aussi, et en prime, je me mettais un rapport en pièce jointe, je crois bien, et au moins le statut (succès ou non) dans le message et/ou dans le titre.
[^] # Re: courriel aussi
Posté par zebra3 . Évalué à 4.
Et le must, c'est que tu as un archivage, alors qu'une fois que tu as validé une notification celle-ci disparaît.
Article Quarante-Deux : Toute personne dépassant un kilomètre de haut doit quitter le Tribunal. -- Le Roi de Cœur
[^] # Re: courriel aussi
Posté par jihele . Évalué à 2.
Oui, je m'étais dit ça aussi, mais je n'ai pas osé en faire un argument parce que c'est pas super élégant d'archiver dans la boîte de messagerie.
Le script de compilation peut faire ça mieux en copiant le rapport directement au bon endroit.
[^] # Re: osd
Posté par Xavier Maillard . Évalué à 4.
Et une notification directement dans la tribioune ? Si ca c'est pas joindre l'utile a l'agreable, je ne m'y connais pas !
[^] # Re: osd
Posté par nonas . Évalué à 0.
Ou sur Twitter : Get OpenBSD commit messages via Twitter
# notify-send
Posté par Ben Doumenc (site web personnel) . Évalué à 10.
Fourni par un collègue.
Affiche une pop-up de notification avec logo & message adapté au résultat.
[^] # Re: notify-send
Posté par paco81 . Évalué à 1.
Merci pour cette commande notify-send, je ne connaissais pas, c'est plus générique que kdialog.
Sinon pour les utilisateurs de tmux, il y a aussi
tmux display 'message'
qui peut être intéressant. Je l'utilise dans un script "Make" qui se substitue au make habituel, et redirige les erreurs dans un fichier, ce qui permet de les charger dans vim (:help :cg
).[^] # Re: notify-send
Posté par khivapia . Évalué à 4.
Ou encore le bon vieux, classique, write
# La ventilation
Posté par Zarmakuizz (site web personnel) . Évalué à 10.
La surchauffe et le moment où ça s'arrête, ça s'entend. Surtout si on est avec un laptop.
Commentaire sous licence LPRAB - http://sam.zoy.org/lprab/
# Lock free coder
Posté par ckyl . Évalué à 10.
Moi je vis dans ce siècle. Je n'utilise pas de technologies préhistoriqus qui demandent des compilations interminables et je fais du code qui va vite. Du coup j'attends pas et je passe pas pour un bof des années 80 avec xeyes. J'évite aussi d'écrire des tests par ce que sinon j'aurais a attendre…
[^] # Re: Lock free coder
Posté par fearan . Évalué à 2.
que ce soit pour la compile ou pour autre chose quand tu bosses bien, la machine bosse à ta place, et il convient d'avoir un truc pour être notifié ;)
Bon pour la j'ai du modifier mon beep, car sur la machine distante je n'ai pas de xlogo ou xeyes, je suis obligé de faire un ssh sur une machine qui l'a pour le faire…
Il ne faut pas décorner les boeufs avant d'avoir semé le vent
[^] # Re: Lock free coder
Posté par ckyl . Évalué à 1.
Quand une machine bosse bien c'est que l'humain n'a pas le temps de se rendre compte qu'elle a bossée. Les compiles de 30 minutes c'est juste de la fainéantise de pas régler le vrai problème par ce que ca donne une excuse pour surfer l'interweb. L'humain est très mauvais au context switch et à l'asynchrone.
[^] # Re: Lock free coder
Posté par fearan . Évalué à 8.
Quand tu as 3 To de données à traiter, à moins d'avoir accès à une ferme google, tes machines vont devoir passer un moment à traiter tes données.
Il ne faut pas décorner les boeufs avant d'avoir semé le vent
[^] # Re: Lock free coder
Posté par paco81 . Évalué à 1.
Et regarder des petites nimages
[^] # Re: Lock free coder
Posté par Zarmakuizz (site web personnel) . Évalué à 3.
Tu évites aussi d'écrire des commentaires parce que ça n'est pas du code qui va vite ?
Et pour les tests, si c'est quelqu'un d'autre qui les écrit pour toi, au final ça ne fait que déporter le problème d'une personne à l'autre. Si personne ne les écrit en revanche…
Commentaire sous licence LPRAB - http://sam.zoy.org/lprab/
# echo "C'est fini"|cw
Posté par solsTiCe (site web personnel) . Évalué à 4.
je viens de découvrir ce petit soft à la unix pour faire du … morse. (ça fait parti du paquet unixcw, le nouveau: http://unixcw.sourceforge.net/)
# web 2.1
Posté par furlot . Évalué à 5.
script qui poste un twit pour que tu sois averti par ton AndroWinIphone et par la même occasion l'ensemble de la planète?
# Agence de presse
Posté par 2PetitsVerres . Évalué à 10.
En suivant le flux RSS d'une agence de presse, on est généralement informé quelque jours avant, pendant et après une exécution.
Tous les nombres premiers sont impairs, sauf un. Tous les nombres premiers sont impairs, sauf deux.
# Pantheon Terminal
Posté par Kekun (site web personnel, Mastodon) . Évalué à 2.
Il y a un an j'ai écrit les premières lignes du terminal du bureau Pantheon. Sa plus grande particularité était qu'il intégrait Notify OSD pour notifier l'utilisateur de la fin d'une tâche. Le développement a continué sans moi, je ne sais pas si cette fonctionnalités est toujours présente.
# WM_HINTS
Posté par Big Pete . Évalué à 4.
Je me sers quelque fois que la propriété WM_HINTS de X. dans un xterm, il suffit de faire
make blabla ; echo -e "\a"
Ensuite, ça dépend du gestionnaire de fenêtre. Sous i3, j'ai configuré le truc pour que le tag de la fenêtre vire au rouge, et j'ai un raccourci clavier qui me donne le focus sur la dernière fenêtre à être passer urgent (Meta+u). vala. Comme d'autres prog comme pidgin gèrent aussi cette propriété, c'est pas mal.Plus de détails ici
Faut pas gonfler Gérard Lambert quand il répare sa mobylette.
[^] # Re: WM_HINTS
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 1.
Pareil, mais xmonad au lieu d'i3
# eject
Posté par N-Mi . Évalué à 7.
Pour ma part, quand je lance une commande qui prend du temps et que je souhaite être notifié alors que je bosse sur un autre bureau virtuel, j'exécute la commande "eject" après la tâche.
L'avantage c'est que ça attire mon attention de manière sonore ("clic !"), visuelle, et tactile, puisque que le lecteur CD vient toucher la main qui tient la souris (si je suis en train d'utiliser Firefox). Si je m'absente de mon bureau et que la commande se termine pendant mon absence, à mon retour je retrouve le lecteur CD ouvert donc je sais que la tâche est terminée.
Note : je bosse sur un laptop.
[^] # Re: eject
Posté par ckyl . Évalué à 3.
Va falloir upgrader ta technique prochainement. Les media optiques c'est obsolète depuis 10 ans. Les derniers constructeurs résistants vont bien finir par virer ce truc qui sert à rien.
[^] # Re: eject
Posté par yellowiscool . Évalué à 10.
Ça donnerait une utilité intéressante aux lances missiles usb.
Envoyé depuis mon lapin.
[^] # Re: eject
Posté par CrEv (site web personnel) . Évalué à 10.
Faudrait que je retrouve la page, mais certaines personnes s'étaient justement amusées à connecter un lance missiles usb à un serveur d'intégration continue. En cas de build failed, ça récupérait l'auteur du dernier commit et lançait un missile sur la cible (je pense en ayant préalablement indiqué les positions des auteurs possibles).
Ca doit être plutôt marrant.
Ha oui, et histoire de rigoler il y avait aussi une webcam sur le lance missile histoire d'enregistrer l'action :)
# Intégré à mon prompt
Posté par ymorin . Évalué à 6. Dernière modification le 24 juillet 2012 à 23:33.
C´est intégré à la commande qui gère mon prompt :
Note: j´ai été obligé de rajouter des simples
quotes
dans l´expressionsed
, sinon ça fait des liens Wikipedia… :-(Le bidouillage avec
history
, c´est parce quebash
ne donne pas le temps d´exécution de la dernière commande. Utiliserhistory
n´est pas très robuste, mais ça marchouille dans le cas droit.J´ai très peu de commandes notifiées, mais en ajouter est trivial.
Dans le futur, je vais peut-être ajouter un son (
Tadaa!
pour succès,Blong-patatra
pour une erreur), mais je n´aime pas trop les notifications sonores… Ceci dit, le rajouter dans le code ci-dessus sera trivial.Hop,
Moi.
[^] # Re: Intégré à mon prompt
Posté par pititjo . Évalué à 1.
Ça ne ralenti pas trop le prompt ?
[^] # Re: Intégré à mon prompt
Posté par ckyl . Évalué à 2.
Tu estimes à combien le différentiel entre tes doigts et un processeur ?
C'est joli mais il faudrait pouvoir afficher la notification uniquement quand le term/la tab courante n'a pas le focus. Autrement un
echo "toto" | less
provoque une notification.[^] # Re: Intégré à mon prompt
Posté par ymorin . Évalué à 2. Dernière modification le 25 juillet 2012 à 19:45.
En effet ! ;-)
C´est pour ça qu´il y a une liste de (
patterns
de) commandes pour lesquelles on doit notifier. Les commandes qui nematchent
pas unepattern
n´ont pas droit à notification.Pour moi, les seules commandes qui provoquent une notification si elles durent plus de 10s, c´est :
configure
make
etqmake
ct-ng
(crosstool-NG)Du coup, c´est vrai que le
make menuconfig
du noyau me pète toujours une notification. Mais bon, je fait avec. C´est pas parfait, mais ça fait avec.Pour l´instant, il n´y a que des
patterns
positives (ça match, je notifie), mais je vais peut-être ajouter despatterns
négatives (ça match, je notifie pas). Il faut juste que je trouve une syntaxe sympa (eg. si lapattern
commence par!
, alors elle est négative. Tiens, ouais, c´est plutôt sympa, ça! Merci! ;-) )Hop,
Moi.
PS. Je me rend compte qu´il y a un mauvais
copy-paste
et u´unsed
se trouvé en double… Vous aurez bien entendu corrigé de vous-mêmes ![^] # Re: Intégré à mon prompt
Posté par ckyl . Évalué à 2.
J'avoue que j'ai remplacé tes patterns par ".*". J'ai réfléchi 30s à la solution pour savoir si la tab courante à le focus (gnome-terminal ou screen) mais j'ai pas eu la révélation.
Pour être gentil avec celui qui essaierait ton code tu peux aussi lui donner ton HISTTIMEFORMAT et s/doPrompt/do_prompt/ ;)
[^] # Re: Intégré à mon prompt
Posté par ymorin . Évalué à 2.
Dans le premier
sed
ou le second ? Dans un cas comme dans l´autre, je ne vois pas comment ça peut marcher… :-/ Je vais essayer plus tard, si ça peux simplifier le bousin. Mais par défaut, j´ai tendance à être strict dans mesregexps
…Je ne pense pas que ce soit faisable. En tout cas, pour
konsole
(dansyakuake
), ça n´est pas possible, de tout ce que j´ai pu lire comme doc … :-/En effet …
Ouaip dans mon copy-paste, mais j´ai effectivement deux fonctions,
doPrompt
qui appelledo_prompt
(j´ai jamais dit que c´était propre ! ). Du coup, j´ai oublié de modifier l´extrait en conséquence …Hop,
Moi.
[^] # Re: Intégré à mon prompt
Posté par ckyl . Évalué à 2.
Dans la white-list des commandes pour ca que dans mon test ca clignote un peu.
[^] # Re: Intégré à mon prompt
Posté par ymorin . Évalué à 2.
Ah bah oui, forcément … ;-)
Hop,
Moi.
[^] # Re: Intégré à mon prompt
Posté par ymorin . Évalué à 2.
Du coup, j´ai mis mon
prompt
(un peu corrigé) en ligne :http://ymorin.is-a-geek.org/ressources/prompt
Hop,
Moi.
[^] # Re: Intégré à mon prompt
Posté par ymorin . Évalué à 2. Dernière modification le 25 juillet 2012 à 19:40.
Pff … Honnêtement, j´ai pas mesuré. J´appuie sur
Entrée
, je lève les yeux, le nouveau prompt est visible. Ça me convient très bien. Et puis, si je dois attendre moins de ~1s, c´est pas bien grave.Mon prompt fait plein d´autre choses :
${HOME}/
->~/
, élision au milieux si trop long …Durée totale : moins d´une seconde quand je suis dans repo git ou Hg avec plein de modifs (eg. un noyal avec plein de
patchs
locaux). Bon, pour svn (qui est le mal ;-] ), ça peut prendre un poil de temps sur un groscheckout
. Si le CWD est sur le réseau (eg. NFS ou sshfs), alors c´est assez galère en effet (mais bon, ça ne m´arrive que très rarement).Hop,
Moi.
# CTRL+B
Posté par steph1978 . Évalué à 0.
Je code en java dans Eclipse, la compilation est quasi instantanée.
[^] # Re: CTRL+B
Posté par pititjo . Évalué à 8.
Mais t'as pas besoin d'une notification pour savoir quand eclipse a enfin fini de se lancer ?
[^] # Re: CTRL+B
Posté par steph1978 . Évalué à 5.
bien vu.
[^] # Re: CTRL+B
Posté par Zylabon . Évalué à 1.
Désolé, c'était trop tentant :) Une demie seconde pour compiler un fichier vide c'est déjà pas instantané, alors un projet entier…
Please do not feed the trolls
[^] # Re: CTRL+B
Posté par steph1978 . Évalué à 3.
en fait, avec la quantité confortable de mémoire que prend Eclipse, il peut se permettre de ne compiler que ce qui change, donc cela ne dépend pas de la taille du projet, mais de l'itération que tu as fait.
j'ai la sale manie de builder toutes les dix secondes et c'est vraiment instantané.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.