Use utf8 ellipsis char instead of 3 dots

This commit is contained in:
Daniel Hahler
2015-10-18 15:08:17 +02:00
parent 62c423bf29
commit 5c868b9a1f
2 changed files with 16 additions and 12 deletions

View File

@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
"""
The Python parts of the Jedi library for VIM. It is mostly about communicating
with VIM.
@@ -18,7 +19,10 @@ except ImportError:
is_py3 = sys.version_info[0] >= 3
if is_py3:
ELLIPSIS = ""
unicode = str
else:
ELLIPSIS = u""
class PythonToVimStr(unicode):
@@ -434,22 +438,22 @@ def cmdline_call_signatures(signatures):
return
elif index is None:
pass
elif max_msg_len < len('...'):
elif max_msg_len < len(ELLIPSIS):
return
else:
left = escape(', '.join(params[:index]))
center = escape(params[index])
right = escape(', '.join(params[index + 1:]))
while too_long():
if left and left != '...':
left = '...'
if left and left != ELLIPSIS:
left = ELLIPSIS
continue
if right and right != '...':
right = '...'
if right and right != ELLIPSIS:
right = ELLIPSIS
continue
if (left or right) and center != '...':
if (left or right) and center != ELLIPSIS:
left = right = None
center = '...'
center = ELLIPSIS
continue
if too_long():
# Should never reach here

View File

@@ -68,22 +68,22 @@ describe 'signatures'
put = 'def '.funcname.'(arg1, arg2, arg3, a, b, c):'
put = ' pass'
execute "normal o".funcname."( "
Expect Signature() == "\n".funcname."(arg1, ...)"
Expect Signature() == "\n".funcname."(arg1, )"
normal sarg1,
Expect Signature() == "\n".funcname."(..., arg2, ...)"
Expect Signature() == "\n".funcname."(, arg2, )"
normal sarg2, arg3,
Expect Signature() == "\n".funcname."(..., a, b, c)"
Expect Signature() == "\n".funcname."(, a, b, c)"
normal sa, b,
Expect Signature() == "\n".funcname."(..., c)"
Expect Signature() == "\n".funcname."(, c)"
g/^/d
put = 'def '.funcname.'('.repeat('b', 20).', arg2):'
put = ' pass'
execute "normal o".funcname."( "
Expect Signature() == "\n".funcname."(...)"
Expect Signature() == "\n".funcname."()"
end
it 'command line no signature'