本文整理汇总了Python中spyderlib.config.base.debug_print函数的典型用法代码示例。如果您正苦于以下问题:Python debug_print函数的具体用法?Python debug_print怎么用?Python debug_print使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了debug_print函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_jedi_object
def get_jedi_object(self, func_name, info, use_filename=True):
"""Call a desired function on a Jedi Script and return the result"""
if not jedi:
return
if DEBUG_EDITOR:
t0 = time.time()
# override IPython qt_loaders ImportDenier behavior
metas = sys.meta_path
for meta in metas:
if (meta.__class__.__name__ == 'ImportDenier'
and hasattr(meta, 'forbid')):
sys.meta_path.remove(meta)
if use_filename:
filename = info['filename']
else:
filename = None
try:
script = jedi.Script(info['source_code'], info['line_num'],
info['column'], filename)
func = getattr(script, func_name)
val = func()
except Exception as e:
val = None
debug_print('Jedi error (%s)' % func_name)
debug_print(str(e))
if DEBUG_EDITOR:
log_last_error(LOG_FILENAME, str(e))
if DEBUG_EDITOR:
log_dt(LOG_FILENAME, func_name, t0)
if not val and filename:
return self.get_jedi_object(func_name, info, False)
else:
return val
示例2: _finalize
def _finalize(self, name, result):
self.result = result
self.waiting = False
self.pending = None
delta = time.time() - self._start_time
debug_print('%s request from %s finished: "%s" in %.1f sec' % (self.info.name, name, str(result)[:100], delta))
self.introspection_complete.emit()
示例3: keyReleaseEvent
def keyReleaseEvent(self, e):
"""Qt override."""
self.npressed -= 1
if self.npressed <= 0:
key = e.key()
if len(self.keys) == 1 and key == Qt.Key_Tab:
self.toggle_state()
return
if len(self.keys) == 1 and key == Qt.Key_Escape:
self.set_sequence('')
self.label_warning.setText(_("Please introduce a different "
"shortcut"))
if len(self.keys) == 1 and key in [Qt.Key_Return, Qt.Key_Enter]:
self.toggle_state()
return
if not self.edit_state:
self.nonedit_keyrelease(e)
else:
debug_print('keys: {}'.format(self.keys))
if self.keys and key != Qt.Key_Escape:
self.validate_sequence()
self.keys = set()
self.key_modifiers = set()
self.key_non_modifiers = list()
self.key_text = list()
self.npressed = 0
示例4: _introspection_complete
def _introspection_complete(self):
"""
Handle an introspection response from the thread.
Route the response to the correct handler, and then handle
any pending requests.
"""
self.busy = False
result = self.request.result
info = self.request.info
current = self._get_code_info("current")
if result and current.filename == info.filename:
func = getattr(self, "_handle_%s_response" % info.name)
try:
func(result, current, info)
except Exception as e:
debug_print(e)
elif current.filename == info.filename and info.name == "definition":
result = self.plugins["fallback"].get_definition(info)
if info == self.pending:
self.pending = None
self._handle_pending()
示例5: get_info
def get_info(self, info):
"""
Find the calltip and docs
Returns a dict like the following:
{'note': 'Function of numpy.core.numeric...',
'argspec': "(shape, dtype=None, order='C')'
'docstring': 'Return an array of given...'
'name': 'ones',
'calltip': 'ones(shape, dtype=None, order='C')'}
"""
call_def = self.get_jedi_object('goto_definitions', info)
for cd in call_def:
if cd.doc and not cd.doc.rstrip().endswith(')'):
call_def = cd
break
else:
call_def = call_def[0]
name = call_def.name
if name is None:
return
if call_def.module_path:
mod_name = get_parent_until(call_def.module_path)
else:
mod_name = None
if not mod_name:
mod_name = call_def.module_name
if call_def.doc.startswith(name + '('):
calltip = getsignaturefromtext(call_def.doc, name)
argspec = calltip[calltip.find('('):]
docstring = call_def.doc[call_def.doc.find(')') + 3:]
elif '(' in call_def.doc.splitlines()[0]:
calltip = call_def.doc.splitlines()[0]
name = call_def.doc.split('(')[0]
docstring = call_def.doc[call_def.doc.find(')') + 3:]
argspec = calltip[calltip.find('('):]
else:
calltip = name + '(...)'
argspec = '()'
docstring = call_def.doc
if call_def.type == 'module':
note = 'Module %s' % mod_name
argspec = ''
calltip = name
elif call_def.type == 'class':
note = 'Class in %s module' % mod_name
elif call_def.doc.startswith('%s(self' % name):
class_name = call_def.full_name.split('.')[-2]
note = 'Method of %s class in %s module' % (
class_name.capitalize(), mod_name)
else:
note = '%s in %s module' % (call_def.type.capitalize(),
mod_name)
argspec = argspec.replace(' = ', '=')
calltip = calltip.replace(' = ', '=')
debug_print(call_def.name)
doc_info = dict(name=name, argspec=argspec,
note=note, docstring=docstring, calltip=calltip)
return doc_info
示例6: _handle_timeout
def _handle_timeout(self):
debug_print("got timeout: %s" % self.plugins)
if self.pending:
for plugin in self.plugins:
if plugin.name in self.pending:
self._finalize(plugin.name, self.pending[plugin.name])
return
self.waiting = False
示例7: run
def run(self):
func = getattr(self.plugin, "get_%s" % self.info.name)
self.plugin.busy = True
try:
self.result = func(self.info)
except Exception as e:
debug_print(e)
self.plugin.busy = False
self.request_handled.emit(self.plugin.name)
示例8: _send
def _send(self, obj):
"""Send an object to the server.
"""
try:
self.socket.send_pyobj(obj)
except Exception as e:
debug_print(e)
self.is_initialized = False
self._on_finished()
示例9: handle_response
def handle_response(self, response):
name = self.ids.get(response['request_id'], None)
if not name:
return
if response.get('error', None):
debug_print('Response error:', response['error'])
return
if name == self.desired[0] or not self.waiting:
if response.get('result', None):
self._finalize(response)
else:
self.pending = response
示例10: __init__
def __init__(
self, parent=None, namespace=None, commands=[], message=None, exitfunc=None, profile=False, multithreaded=False
):
if PYQT5:
SpyderPluginWidget.__init__(self, parent, main=parent)
else:
SpyderPluginWidget.__init__(self, parent)
debug_print(" ..internal console: initializing")
self.dialog_manager = DialogManager()
# Shell
light_background = self.get_option("light_background")
self.shell = InternalShell(
parent,
namespace,
commands,
message,
self.get_option("max_line_count"),
self.get_plugin_font(),
exitfunc,
profile,
multithreaded,
light_background=light_background,
)
self.shell.status.connect(lambda msg: self.show_message.emit(msg, 0))
self.shell.go_to_error.connect(self.go_to_error)
self.shell.focus_changed.connect(lambda: self.focus_changed.emit())
# Redirecting some signals:
self.shell.redirect_stdio.connect(lambda state: self.redirect_stdio.emit(state))
# Initialize plugin
self.initialize_plugin()
# Find/replace widget
self.find_widget = FindReplace(self)
self.find_widget.set_editor(self.shell)
self.find_widget.hide()
self.register_widget_shortcuts("Editor", self.find_widget)
# Main layout
layout = QVBoxLayout()
layout.addWidget(self.shell)
layout.addWidget(self.find_widget)
self.setLayout(layout)
# Parameters
self.shell.toggle_wrap_mode(self.get_option("wrap"))
# Accepting drops
self.setAcceptDrops(True)
示例11: _handle_request
def _handle_request(self, info, desired=None):
"""Handle an incoming request from the user."""
debug_print('%s request' % info.name)
editor = info.editor
if ((not editor.is_python_like())
or sourcecode.is_keyword(info.obj)
or (editor.in_comment_or_string() and info.name != 'info')):
desired = 'fallback'
self.pending = (info, desired)
if not self.busy:
self._handle_pending()
示例12: _finalize
def _finalize(self, response):
self.waiting = False
self.pending = None
delta = time.time() - self._start_time
debug_print(str(response.keys()))
debug_print('%s request from %s finished: "%s" in %.1f sec'
% (self.info.name, response['plugin_name'],
str(response['result'])[:100], delta))
self.introspection_complete.emit(response)
self.info = None
if self.pending_request:
info = self.pending_request
self.pending_request = None
self.send_request(info)
示例13: _handle_incoming
def _handle_incoming(self, name):
# coerce to a str in case it is a QString
name = str(name)
self._threads[name].wait()
if self.result:
return
result = self._threads[name].result
if name == self.plugins[0].name or not self.waiting:
if result:
self._finalize(name, result)
else:
debug_print("No valid responses acquired")
self.introspection_complete.emit()
else:
self.pending[name] = result
示例14: handle_response
def handle_response(self, response):
if (self.request is None):
return
if (response.get('request_id', None) != id(self.info)):
return
name = response['plugin_name']
response['info'] = self.info
if response.get('error', None):
debug_print('Response error:', response['error'])
return
if name == self.desired[0] or not self.waiting:
if response.get('result', None):
self._finalize(response)
else:
self.pending = response
示例15: _on_msg_received
def _on_msg_received(self):
"""Handle a message trigger from the socket.
"""
self.notifier.setEnabled(False)
while 1:
try:
resp = self.socket.recv_pyobj(flags=zmq.NOBLOCK)
except zmq.ZMQError:
self.notifier.setEnabled(True)
return
if not self.is_initialized:
self.is_initialized = True
debug_print('Initialized %s' % self.name)
self.initialized.emit()
continue
resp['name'] = self.name
self.received.emit(resp)