<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi Shuangbo,<div class=""><span class="Apple-tab-span" style="white-space:pre">    </span>Chimera redirects normal standout output and standard error to the Reply Log, so that normal print statements will go there.  Therefore, the prompt of the pdb.set_trace() convenience function is probably showing up in the Log and not your shell.  You need to use the actual Pdb class so that you can get the prompt to go to the original standard output rather than the redirected one.  So namely:</div><div class=""><br class=""></div><div class="">from pdb import Pdb</div><div class="">import sys</div><div class="">debugger = Pdb(stdin=sys.__stdin__, stdout=sys.__stdout__)</div><div class="">debugger.set_trace()</div><div class=""><br class=""></div><div class="">—Eric<br class=""><div class="">
<div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span class="Apple-tab-span" style="white-space: pre;"><br class="Apple-interchange-newline">     </span>Eric Pettersen</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span class="Apple-tab-span" style="white-space: pre;">    </span>UCSF Computer Graphics Lab</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br class=""></div></div><div><blockquote type="cite" class=""><div class="">On Jan 12, 2020, at 9:31 PM, 张双博 <<a href="mailto:2088zsp@gmail.com" class="">2088zsp@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><br class=""><div class="">Dear Sir/Madam,</div><div class=""><br class=""></div><div class="">I am trying to debug one of the existing plugins to help my understanding of how to write my extension. Usually, I would place "import pdb; pdb.set_trace()" in some lines of the program where I am interested and run it. And when the program encounters this line, it will stop, so I can go through line by line to follow the logic of this python program, which is really helpful. However, when I did this to one plugin of chimera, the plugin and chimera seems frozen, I mean, both didn't respond and there is no "(Pdb)" prompt in opening shell as normally did. I tried this in different places in different scripts, none worked. So I would like to ask how to enable this feature in Chimera or are there some other ways for debugging in Chimera?</div><div class=""><br class=""></div><div class="">Sincerely,</div><div class=""><br class=""></div><div class="">Shuangbo</div></div>
_______________________________________________<br class="">Chimera-dev mailing list<br class=""><a href="mailto:Chimera-dev@cgl.ucsf.edu" class="">Chimera-dev@cgl.ucsf.edu</a><br class="">http://plato.cgl.ucsf.edu/mailman/listinfo/chimera-dev<br class=""></div></blockquote></div><br class=""></div></body></html>