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

stdout/stderr

9 réponses
Avatar
MyDomDom
Bonjour,

J'utilise une librairie qui redirige la sortie vers une nouvelle
fen=EAtre et non pas vers le shell de Spe ou Editra (tr=E8s bien par
ailleurs) ou Idle.
Comment puis-je forcer la sortie vers le shell de l'un ou l'autre de
ces =E9diteurs.

D'avance merci
Dominique

9 réponses

Avatar
Bruno Desthuilliers
a écrit :
Bonjour,

J'utilise une librairie



s/librairie/bibliothèque/g

qui redirige la sortie vers une nouvelle
fenêtre et non pas vers le shell de Spe ou Editra (très bien par
ailleurs) ou Idle.
Comment puis-je forcer la sortie vers le shell de l'un ou l'autre de
ces éditeurs.



Désolé, ma boule de cristal est en révision. Mais peut-être que si tu
nous disais de quelle bibliothèque il s'agit, voire même éventuellement
avec l'extrait du code effectuant cette redirection...
Avatar
Bruno Desthuilliers
a écrit :
Merci Bruno !!
Je suis sous Win xp sp3, python 2.5, wxpython 2.8.8.1.
Je pense



???

Tu n'en est pas sûr ???

qu'il s'agit de la librairie ObjectListview qui permet de
faire des ListCtrls ( http://objectlistview.sourceforge.net/python/index.html
).
Mais comme je ne sais pas exactement ce qu'il faut chercher et où



Pour le 'où', ça me semble assez simple : dans le code. Un des intérêts
du logiciel libre est que tu peux lire le code source, n'est-ce pas ? En
plus, c'est souvent bien plus instructif que la doc...

Pour le 'quoi', peut-être qu'un grep pourrait aider... Ah, merde, tu es
sous Windows. Heu... Ca existe, grep sous Windows ???

(je
ne suis qu'un modeste amateur et n'ai pas non plus de boule de
cristal), je pose la question ici...



Si tu a de bonnes raisons de penser que c'est lié à cette bibliothèque,
tu devrais peut-être poser la question sur la ml du projet (s'il y en a
une), ou directement à l'auteur ?

Puis-je rediriger la sortie depuis le programme que je conçois ou faut-
il forcément, comme le suggère ta réponse, aller modifier la librairie
ObjectListView



Ma réponse ne suggérait rien de ce genre - même s'il peut s'avérer que
ce soit la seule solution (auquel cas il serait bon de proposer un
correctif).

(si c'est elle!).



Je n'ai pas la réponse à cette question, et dans la mesure où je
n'utilises pas cette bibliothèque, je ne vais pas aller y regarder de
plus près. N'y vois aucune mauvaise volonté - c'est juste qu'il n'y a
que 24 heures dans une journée, et entre mon boulot et ma famille, je
manque déjà de temps pour mes projets personnels...

Bref, commence par trouver où est la cause de ton problème, et on pourra
peut-être t'aider à le résoudre...

Merci de ton aide



Là, ça me semble un peu prématuré... Attends que je t'ai aidé, tu verras
à ce moment là si ça mérite des remerciements !-)
Avatar
MyDomDom
Merci Bruno !!
Je suis sous Win xp sp3, python 2.5, wxpython 2.8.8.1.
Je pense qu'il s'agit de la librairie ObjectListview qui permet de
faire des ListCtrls ( http://objectlistview.sourceforge.net/python/index.ht ml
).
Mais comme je ne sais pas exactement ce qu'il faut chercher et où (je
ne suis qu'un modeste amateur et n'ai pas non plus de boule de
cristal), je pose la question ici...
Puis-je rediriger la sortie depuis le programme que je conçois ou faut-
il forcément, comme le suggère ta réponse, aller modifier la librairi e
ObjectListView (si c'est elle!).

Merci de ton aide
Dominique
Avatar
MyDomDom
> > Merci de ton aide

Là, ça me semble un peu prématuré... Attends que je t'ai aidé, tu verras
à ce moment là si ça mérite des remerciements !-)



Merci quand même...
Dominique
Avatar
Amaury Forgeot d'Arc
a écrit :
Merci Bruno !!
Je suis sous Win xp sp3, python 2.5, wxpython 2.8.8.1.
Je pense qu'il s'agit de la librairie ObjectListview qui permet de
faire des ListCtrls ( http://objectlistview.sourceforge.net/python/index.html
).
Mais comme je ne sais pas exactement ce qu'il faut chercher et où (je
ne suis qu'un modeste amateur et n'ai pas non plus de boule de
cristal), je pose la question ici...
Puis-je rediriger la sortie depuis le programme que je conçois ou faut-
il forcément, comme le suggère ta réponse, aller modifier la librairie
ObjectListView (si c'est elle!).



Je crois que j'ai compris:
ObjectListview est une librairie qui propose une sorte de wx.ListCtrl
(très) amélioré. (Je ne connaissais pas. C'est impressionnant !)

Au début de ton programme, il y a donc forcément un appel à
wx.PySimpleApp() ou wx.App(). C'est cela qui intercepte les écritures
dans stdout et stderr, vers une fenêtre créée exprès (sous Windows, il
n'y a pas forcément de console!)

Puisque ton éditeur préféré en propose une, de console, tu peux essayer
d'ajouter "redirectúlse":
wx.PySimpleApp(redirectúlse)
ou
wx.App(redirectúlse)

--
Amaury
Avatar
MyDomDom
On 13 sep, 22:38, Amaury Forgeot d'Arc wrote:
Puisque ton éditeur préféré en propose une, de console, tu peux e ssayer
d'ajouter "redirectúlse":
     wx.PySimpleApp(redirectúlse)
ou
     wx.App(redirectúlse)

--
Amaury



Amaury,

Tu as parfaitement compris.
C'est exactement cela.
Comme je ne me sers jamais de cette option et que je ne suis qu'un
amateur, je l'avais oubliée.
Je n'avais rien vu dans le code source qui semble rediriger stdout ou
stderr, d'où ma question ici.... ;-)

Tu as raison de dire que ObjectListView est impressionnat.
C'est vraiment top quand on a déjà eu l'occasion de "construire" des
ListCtrls classiques.
Avec en plus un module d'impression qui ne m'a pas l'air mal....

Merci beaucoup de ta sagacité et de ton aide extrêmement efficace.
Merci

Dominique
Avatar
Pierre Maurette
Bruno Desthuilliers, le 13/09/2008 a écrit :

[...]

Pour le 'quoi', peut-être qu'un grep pourrait aider... Ah, merde, tu es sous
Windows. Heu... Ca existe, grep sous Windows ???



Installer Cygwin
<URL:http://www.cygwin.com/>,
puis mettre ???/cygwin/bin dans le PATH, ou vérifier qu'il y est, je ne
sais plus. Ou le mettre pour la session, ou un utilisateur, si on
craint des désagréments que personellement je n'ai jamais constatés.

--
Pierre Maurette
Avatar
Amaury Forgeot d'Arc
Pierre Maurette a écrit :
Bruno Desthuilliers, le 13/09/2008 a écrit :

[...]

Pour le 'quoi', peut-être qu'un grep pourrait aider... Ah, merde, tu
es sous Windows. Heu... Ca existe, grep sous Windows ???





Oui! c'est "findstr" qui est très complet et beaucoup plus rapide que
cygwin/grep.

Installer Cygwin
<URL:http://www.cygwin.com/>,
puis mettre ???/cygwin/bin dans le PATH, ou vérifier qu'il y est, je ne
sais plus. Ou le mettre pour la session, ou un utilisateur, si on craint
des désagréments que personellement je n'ai jamais constatés.



Pourtant il y a des faux amis. sous Windows "link" est une commande de
compilation (comme "ld"). Si on me la change...

--
Amaury
Avatar
Bruno Desthuilliers
a écrit :
On 13 sep, 22:38, Amaury Forgeot d'Arc wrote:
Puisque ton éditeur préféré en propose une, de console, tu peux essayer
d'ajouter "redirectúlse":
wx.PySimpleApp(redirectúlse)
ou
wx.App(redirectúlse)

--
Amaury



Amaury,

Tu as parfaitement compris.
C'est exactement cela.



Comme quoi donnant quelques précisions, ça augmente les chances d'avoir
une réponse !-)