mirror of
https://github.com/davidhalter/jedi-vim.git
synced 2025-12-06 10:54:22 +08:00
Improve JediDebugInfo for envs (#858)
Improve JediDebugInfo for envs This is taken out of https://github.com/davidhalter/jedi-vim/pull/836.
This commit is contained in:
committed by
Dave Halter
parent
40fc5ab27f
commit
4c430ed536
@@ -170,7 +170,19 @@ function! jedi#debug_info() abort
|
||||
endif
|
||||
endif
|
||||
echo '#### Jedi-vim debug information'
|
||||
echo 'Using Python version:' s:python_version
|
||||
echo "\n"
|
||||
echo '##### jedi-vim version'
|
||||
echo "\n"
|
||||
echo ' - jedi-vim git version: '
|
||||
echon substitute(system('git -C '.s:script_path.' describe --tags --always --dirty'), '\v\n$', '', '')
|
||||
echo ' - jedi git submodule status: '
|
||||
echon substitute(system('git -C '.s:script_path.' submodule status pythonx/jedi'), '\v\n$', '', '')
|
||||
echo ' - parso git submodule status: '
|
||||
echon substitute(system('git -C '.s:script_path.' submodule status pythonx/parso'), '\v\n$', '', '')
|
||||
echo "\n"
|
||||
echo '##### Global Python'
|
||||
echo "\n"
|
||||
echo 'Using Python version '.s:python_version.' to access Jedi.'
|
||||
let pyeval = s:python_version == 3 ? 'py3eval' : 'pyeval'
|
||||
let s:pythonjedi_called = 0
|
||||
PythonJedi import vim; vim.command('let s:pythonjedi_called = 1')
|
||||
@@ -185,14 +197,9 @@ function! jedi#debug_info() abort
|
||||
PythonJedi from jedi_vim_debug import display_debug_info
|
||||
PythonJedi display_debug_info()
|
||||
endif
|
||||
echo ' - jedi-vim git version: '
|
||||
echon substitute(system('git -C '.s:script_path.' describe --tags --always --dirty'), '\v\n$', '', '')
|
||||
echo ' - jedi git submodule status: '
|
||||
echon substitute(system('git -C '.s:script_path.' submodule status pythonx/jedi'), '\v\n$', '', '')
|
||||
echo ' - parso git submodule status: '
|
||||
echon substitute(system('git -C '.s:script_path.' submodule status pythonx/parso'), '\v\n$', '', '')
|
||||
echo "\n"
|
||||
echo '##### Settings'
|
||||
echo "\n"
|
||||
echo '```'
|
||||
let jedi_settings = items(filter(copy(g:), "v:key =~# '\\v^jedi#'"))
|
||||
let has_nondefault_settings = 0
|
||||
|
||||
@@ -193,6 +193,13 @@ def get_environment(use_cache=True):
|
||||
return environment
|
||||
|
||||
|
||||
def get_known_environments():
|
||||
"""Get known Jedi environments."""
|
||||
envs = list(jedi.api.environment.find_virtualenvs())
|
||||
envs.extend(jedi.api.environment.find_system_environments())
|
||||
return envs
|
||||
|
||||
|
||||
@catch_and_print_exceptions
|
||||
def get_script(source=None, column=None):
|
||||
jedi.settings.additional_dynamic_modules = [
|
||||
|
||||
@@ -53,7 +53,7 @@ def display_debug_info():
|
||||
echo_error('ERROR: could not import the "jedi" Python module: {0}'.format(
|
||||
error_msg))
|
||||
else:
|
||||
echo('Jedi path: `{0}`'.format(jedi_vim.jedi.__file__))
|
||||
echo('\n##### Jedi\n\n - path: `{0}`'.format(jedi_vim.jedi.__file__))
|
||||
echo(' - version: {0}'.format(jedi_vim.jedi.__version__))
|
||||
|
||||
try:
|
||||
@@ -65,7 +65,8 @@ def display_debug_info():
|
||||
except AttributeError:
|
||||
sys_path = script_evaluator.sys_path
|
||||
else:
|
||||
echo(' - environment: `{0}`'.format(environment))
|
||||
echo('\n##### Jedi environment: {0}\n\n'.format(environment))
|
||||
echo(' - executable: {0}'.format(environment.executable))
|
||||
try:
|
||||
sys_path = environment.get_sys_path()
|
||||
except Exception:
|
||||
@@ -76,3 +77,11 @@ def display_debug_info():
|
||||
echo(' - sys_path:')
|
||||
for p in sys_path:
|
||||
echo(' - `{0}`'.format(p))
|
||||
|
||||
if environment:
|
||||
echo('\n##### Known environments\n\n')
|
||||
for environment in jedi_vim.get_known_environments():
|
||||
echo(' - {0} ({1})\n'.format(
|
||||
environment,
|
||||
environment.executable,
|
||||
))
|
||||
|
||||
Reference in New Issue
Block a user