[ python-Bugs-791968 ] Arguments tooltip wrong if def contains tuple

2007-02-05 Thread SourceForge.net
Bugs item #791968, was opened at 2003-08-20 11:16
Message generated for change (Comment added) made by kbk
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detailatid=105470aid=791968group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: IDLE
Group: Python 2.3
Status: Closed
Resolution: Fixed
Priority: 5
Private: No
Submitted By: Christos Georgiou (tzot)
Assigned to: Kurt B. Kaiser (kbk)
Summary: Arguments tooltip wrong if def contains tuple

Initial Comment:
This happens in IDLE on Windows 2000, from 2.3 EXE 
installer.  Type the following:

gt;gt;gt; def f((a,b), c):
print a, b, c

gt;gt;gt; f(

The tooltip shows up containing the following exact 
string (but the triple quotes):
quot;quot;quot;(.0, c)quot;quot;quot;


--

Comment By: Kurt B. Kaiser (kbk)
Date: 2007-02-05 18:03

Message:
Logged In: YES 
user_id=149084
Originator: NO

Used your idea of displaying tuple'

Rev 53641

--

Comment By: Kurt B. Kaiser (kbk)
Date: 2006-07-22 17:56

Message:
Logged In: YES 
user_id=149084

Problem still exists in 2.5 as of Rev 50739.

--

Comment By: Christos Georgiou (tzot)
Date: 2003-08-20 12:02

Message:
Logged In: YES 
user_id=539787

I tried this:

def f((a,b), c, (d,e)): pass

and f.func_code.co_varnames is

('.0', 'c', '.4', 'a', 'b', 'd', 'e')

That means .0 and .4 are dummy placeholders for the 
argument tuples.  I couldn't find a direct way to know the 
length of each tuple, though --unless one analyzes the first 
UNPACK_SEQUENCE bytecodes of fob.func_code.co_code, 
and then uses the tuple fob.func_code.co_varnames
[fob.func_code.co_argcount:] to recreate the tuples; should 
we get into this trouble, or just do a regular expression 
replace a la:

argText = quot;(%s)quot; % re.sub(quot;\.\d+quot;,
quot;lt;tuplegt;quot;, argText)

at line 144?

--

Comment By: Christos Georgiou (tzot)
Date: 2003-08-20 11:44

Message:
Logged In: YES 
user_id=539787

Quite fast, Neal! :)
It seems it's not exactly an IDLE bug; check ToolTip.py, line 
134 (vanilla 2.3); it's the f.func_code.co_varnames that 
returns this tuple:
('.0', 'c', 'a', 'b')

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detailatid=105470aid=791968group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[ python-Bugs-791968 ] Arguments tooltip wrong if def contains tuple

2006-07-22 Thread SourceForge.net
Bugs item #791968, was opened at 2003-08-20 11:16
Message generated for change (Comment added) made by kbk
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detailatid=105470aid=791968group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: IDLE
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: Christos Georgiou (tzot)
Assigned to: Kurt B. Kaiser (kbk)
Summary: Arguments tooltip wrong if def contains tuple

Initial Comment:
This happens in IDLE on Windows 2000, from 2.3 EXE 
installer.  Type the following:

gt;gt;gt; def f((a,b), c):
print a, b, c

gt;gt;gt; f(

The tooltip shows up containing the following exact 
string (but the triple quotes):
quot;quot;quot;(.0, c)quot;quot;quot;


--

Comment By: Kurt B. Kaiser (kbk)
Date: 2006-07-22 17:56

Message:
Logged In: YES 
user_id=149084

Problem still exists in 2.5 as of Rev 50739.

--

Comment By: Christos Georgiou (tzot)
Date: 2003-08-20 12:02

Message:
Logged In: YES 
user_id=539787

I tried this:

def f((a,b), c, (d,e)): pass

and f.func_code.co_varnames is

('.0', 'c', '.4', 'a', 'b', 'd', 'e')

That means .0 and .4 are dummy placeholders for the 
argument tuples.  I couldn't find a direct way to know the 
length of each tuple, though --unless one analyzes the first 
UNPACK_SEQUENCE bytecodes of fob.func_code.co_code, 
and then uses the tuple fob.func_code.co_varnames
[fob.func_code.co_argcount:] to recreate the tuples; should 
we get into this trouble, or just do a regular expression 
replace a la:

argText = quot;(%s)quot; % re.sub(quot;\.\d+quot;, 
quot;lt;tuplegt;quot;, argText)

at line 144?

--

Comment By: Christos Georgiou (tzot)
Date: 2003-08-20 11:44

Message:
Logged In: YES 
user_id=539787

Quite fast, Neal! :)
It seems it's not exactly an IDLE bug; check ToolTip.py, line 
134 (vanilla 2.3); it's the f.func_code.co_varnames that 
returns this tuple:
('.0', 'c', 'a', 'b')

--

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detailatid=105470aid=791968group_id=5470
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com