Ack en mode shell dans Emacs pour Windows ne montre aucune sortie

Après avoir installé ack sur Windows 7 64 bits (par exemple en utilisant StrawberryPerl ), je peux exécuter ack à partir d’un terminal cmd sous Windows.

Cependant, si j’essaie d’utiliser ack dans Emacs en mode Shell (c’est-à-dire dans un tampon Mx shell ), je n’obtiens pas de résultat (toutes les autres commandes cmd s’impriment correctement).

Fait intéressant, si je lance seul ack – c’est-à-dire sans arguments -, les informations sur l’utilisation de l’ ack sont imprimées correctement. En d’autres termes, ack n’imprime aucune sortie dans mon shell Emacs lorsque je l’exécute avec des arguments (même si ack devrait imprimer des hits pour mes requêtes, comme je l’ai vérifié sous cmd ).

Le manque de sortie me fait penser que ack attend des entrées (bien que je lui fournisse des arguments). J’ai essayé l’extrait de code suggéré ici dans mon fichier .emacs (qui semble avoir été conçu pour aider ack lorsqu’il est confondu entre la recherche dans le système de fichiers ou STDIN), mais le problème persiste.

Des suggestions sur la façon de résoudre ce problème?

Merci

    ack attend stdin, pensant incorrectement qu’il est en mode filtre. Pour résoudre ce problème, ajoutez à la fin de la commande en fermant son stdin.

    FYI - L'exécution de "ack" dans le débogueur perl, à l'intérieur du shell emacs sous Windows, montre l'arrêt:

     main::print_matches_in_resource(c:/Strawberry/perl/site/bin/ack:454): 454: while ( <$fh> ) { 

    Avez-vous vérifié ack.el ?

    C’est ce que j’utilise sous Windows 7. Cela facilite l’utilisation de Ack. Par défaut, il suggère de rechercher le mot au point. Et vous obtenez la sortie via la compilation, vous pouvez donc facilement accéder au fichier et à la ligne contenant la correspondance.