Variable: python-eldoc-setup-code
python-eldoc-setup-code is a customizable variable defined in
python.el.gz.
Value
"def __PYDOC_get_help(obj):\n try:\n import inspect\n try:\n str_type = basestring\n argspec_function = inspect.getargspec\n except NameError:\n str_type = str\n argspec_function = inspect.getfullargspec\n if isinstance(obj, str_type):\n obj = eval(obj, globals())\n doc = inspect.getdoc(obj)\n if not doc and callable(obj):\n target = None\n if inspect.isclass(obj) and hasattr(obj, '__init__'):\n target = obj.__init__\n objtype = 'class'\n else:\n target = obj\n objtype = 'def'\n if target:\n if hasattr(inspect, 'signature'):\n args = str(inspect.signature(target))\n else:\n args = inspect.formatargspec(*argspec_function(target))\n name = obj.__name__\n doc = '{objtype} {name}{args}'.format(\n objtype=objtype, name=name, args=args\n )\n else:\n doc = doc.splitlines()[0]\n except:\n doc = ''\n return doc"
Documentation
Python code to setup documentation retrieval.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/python.el.gz
;;; ElDoc
(defcustom python-eldoc-setup-code
"def __PYDOC_get_help(obj):
try:
import inspect
try:
str_type = basestring
argspec_function = inspect.getargspec
except NameError:
str_type = str
argspec_function = inspect.getfullargspec
if isinstance(obj, str_type):
obj = eval(obj, globals())
doc = inspect.getdoc(obj)
if not doc and callable(obj):
target = None
if inspect.isclass(obj) and hasattr(obj, '__init__'):
target = obj.__init__
objtype = 'class'
else:
target = obj
objtype = 'def'
if target:
if hasattr(inspect, 'signature'):
args = str(inspect.signature(target))
else:
args = inspect.formatargspec(*argspec_function(target))
name = obj.__name__
doc = '{objtype} {name}{args}'.format(
objtype=objtype, name=name, args=args
)
else:
doc = doc.splitlines()[0]
except:
doc = ''
return doc"
"Python code to setup documentation retrieval."
:type 'string)