Display system console in a panel

Any ideas on a way to display the system console in a panel or capture its contents to display in-app?

It’d be damn useful for scripting and to see the occasional dependency cycles when working on rigs and similar tasks. Right now I’m kinda forced to park the console over whatever is open in my secondary display, but that’s quite inconvenient.

*…at least it’s not possible to accidentally close the Blender instance by closing the console anymore* :joy:

There is a little hack to open a window without anything named “Blender Info Log”.
You can change this to console afterwards.
Force a message in the status line (by CTRL+c) and click on it before it disappears.

Or try debug/logging options: https://docs.blender.org/manual/en/latest/advanced/command_line/arguments.html

1 Like

What about using INFO in a new panel, has far more data than using the console.

@rigoletto That’s a neat trick, thanks! But you lost me on how to change to the console and it’s probably my fault for being unclear. The console I’m trying to display is the System Console, accessed through Window > Toggle System Console, not the Python Console. I’m looking at these debug commands atm to see if there’s something helps.

@RSEhlers I wish just using INFO was the answer, but it doesn’t display the warnings I’m after. Things like dependency cycles and detailed errors only show up in the system console (that I know of! I could be wrong):


I suspect the only way to achieve it is through scripts so I started to poke at it. I’m not a coder, I’m a “coder”, just someone curious, so once I learned what I was supposed to research (stdout stderr) I ended stumbling upon a post by someone trying to do what I want. He wrote a addon that was easy to adapt to get it working how I want in 2.82.

I even more or less managed to dump the errors in the INFO panel too… but one of the main reasons I wanted to do all of this—dependency cycles—aren’t showing up. I’m hoping it’s just the parsing function discarding code, I still have to pick it apart to understand what it’s doing, otherwise these warnings somehow don’t go through stdout or stderr either. If they don’t I have no idea how to hijack the black magic possible C piece of code being used to output them in the console.*sobs*