- Python console argument '--python-console', option so you can start blender and drop into a python console, (useful for debugging some problems on a renderfarm over ssh)

- Also made it so sys.stdin isnt overwritten anymore, instead the interactive consoel overwrites while it executes and restores after.

- removed hope folder from sphinx patch path
This commit is contained in:
Campbell Barton
2010-05-30 14:05:58 +00:00
parent a668915404
commit 1658a28a58
9 changed files with 106 additions and 40 deletions

View File

@@ -102,6 +102,10 @@ def execute(context):
sys.stdout = stdout
sys.stderr = stderr
# dont allow the stdin to be used, can lock blender.
stdin_backup = sys.stdin
sys.stdin = None
# run the console
if not line.strip():
line_exec = '\n' # executes a multiline statement
@@ -144,6 +148,9 @@ def execute(context):
if output_err:
add_scrollback(output_err, 'ERROR')
# restore the stdin
sys.stdin = stdin_backup
return {'FINISHED'}
@@ -163,6 +170,11 @@ def autocomplete(context):
if sc.console_type != 'PYTHON':
return {'CANCELLED'}
# dont allow the stdin to be used, can lock blender.
# note: unlikely stdin would be used for autocomp. but its possible.
stdin_backup = sys.stdin
sys.stdin = None
# This function isnt aware of the text editor or being an operator
# just does the autocomp then copy its results back
current_line.line, current_line.current_character, scrollback = \
@@ -182,6 +194,9 @@ def autocomplete(context):
if scrollback:
add_scrollback(scrollback, 'INFO')
# restore the stdin
sys.stdin = stdin_backup
context.area.tag_redraw()
return {'FINISHED'}