case-sensitivity
Bengt Richter
bokr at oz.net
Fri Nov 14 14:14:13 EST 2003
On Thu, 13 Nov 2003 15:58:49 GMT, Alex Martelli <aleax at aleax.it> wrote:
>Ron Adam wrote:
> ...
>> 4: The editor or IDE matches what I enter to the names and then
>> substitutes the proper case of the name at some definitive point.
>> This ensures that the case is correct and the program compiles and
>> runs normally. If I choose a different editor then see #1 or #2.
> ...
>> correcting while editing. Number 4 is possible to do now, but I
>> don't know of any editors that currently do it. It would be a nice
>> option to include in one I think.
>
>Yes, looks like a nice idea for a middling-difficulty project with
>IDLE, and it would be useful even if made _particularly_ unintrusive
>(spelling correction would be done only on specific request, and
>only when feasible without ambiguity regarding e.g. standard library
>modules and names therein -- a really minimal part of [4], yet it
>would STILL save quite some trouble/hassle to those using it...).
>
>
You didn't mean to exclude presenting the choices when there _was_ ambiguity??
Following is a list of lib files that use the same name in differing case formats
(though not necessarily in the same name space -- this list does not distinguish
between e.g. global names and attribute/method names -- it's only looking for what
the tokenizer recognizes as names).
BTW, if all this were suddenly case-insensitive, there would be a fair amount of
work to do, I suspect. A few modules even have 3 variations. ;-)
d:\python23\lib\aifc.py:
SetParams * 2 setparams * 2
Error * 40 error * 3
Chunk * 3 chunk * 28
d:\python23\lib\audiodev.py:
SUNAUDIODEV * 3 sunaudiodev * 3
AL * 25 al * 11
d:\python23\lib\BaseHTTPServer.py:
Message * 1 message * 11
d:\python23\lib\Bastion.py:
BastionClass * 2 bastionclass * 2
RExec * 1 rexec * 2
d:\python23\lib\binhex.py:
HexBin * 2 hexbin * 2
Creator * 5 creator * 2
BinHex * 2 binhex * 2
Flags * 5 flags * 2
FName * 2 fname * 8
FInfo * 11 finfo * 19
LINELEN * 3 linelen * 4
Type * 6 type * 6
d:\python23\lib\cgitb.py:
NAME * 1 name * 38
d:\python23\lib\cmd.py:
Cmd * 1 cmd * 15
IDENTCHARS * 2 identchars * 2
PROMPT * 2 prompt * 3
d:\python23\lib\codecs.py:
Reader * 6 reader * 14
Writer * 6 writer * 8
d:\python23\lib\codeop.py:
Compile * 2 compile * 2
d:\python23\lib\Cookie.py:
K * 30 k * 6
d:\python23\lib\copy.py:
C * 2 c * 2
Error * 4 error * 1
d:\python23\lib\csv.py:
Dialect * 4 dialect * 9
M * 1 m * 4
d:\python23\lib\dis.py:
EXTENDED_ARG * 1 extended_arg * 4
d:\python23\lib\doctest.py:
Tester * 3 tester * 11
d:\python23\lib\filecmp.py:
BUFSIZE * 2 bufsize * 3
d:\python23\lib\ftplib.py:
FTP * 2 ftp * 9
Error * 6 error * 5
Netrc * 2 netrc * 2
d:\python23\lib\gettext.py:
True * 1 true * 2
Catalog * 1 catalog * 3
False * 3 false * 2
d:\python23\lib\gzip.py:
FNAME * 3 fname * 4
READ * 6 read * 17
WRITE * 6 write * 15
d:\python23\lib\httplib.py:
BUFSIZE * 2 bufsize * 4
d:\python23\lib\ihooks.py:
VERBOSE * 4 verbose * 14
Hooks * 2 hooks * 27
d:\python23\lib\imaplib.py:
Flags * 2 flags * 14
USER * 4 user * 8
Literal * 2 literal * 15
Debug * 4 debug * 14
HMAC * 1 hmac * 2
d:\python23\lib\imputil.py:
Importer * 3 importer * 5
d:\python23\lib\inspect.py:
INDENT * 1 indent * 11
NAME * 2 name * 22
d:\python23\lib\macpath.py:
File * 4 file * 2
d:\python23\lib\mhlib.py:
Error * 21 error * 23
MH * 2 mh * 13
MultiFile * 1 multifile * 2
Folder * 2 folder * 4
PATH * 2 path * 67
d:\python23\lib\mimetypes.py:
USAGE * 2 usage * 3
d:\python23\lib\mimify.py:
File * 5 file * 9
I * 9 i * 9
d:\python23\lib\optparse.py:
TYPES * 2 types * 7
Values * 2 values * 27
Option * 6 option * 67
ATTRS * 2 attrs * 8
d:\python23\lib\os.py:
PATH * 2 path * 24
d:\python23\lib\pdb.py:
Cmd * 3 cmd * 4
Bdb * 3 bdb * 11
Repr * 2 repr * 3
d:\python23\lib\pickle.py:
UNICODE * 4 unicode * 7
PUT * 3 put * 2
INT * 3 int * 4
MARK * 9 mark * 13
TRUE * 3 True * 2
LONG * 3 long * 3
REDUCE * 3 reduce * 11
PROTO * 3 proto * 16
FALSE * 3 False * 2
LIST * 3 list * 4
POP * 4 pop * 9
FLOAT * 3 float * 1
DICT * 3 dict * 4
NONE * 3 None * 42
GET * 3 get * 15
APPEND * 4 append * 37
OBJ * 3 obj * 120
INST * 3 inst * 5
TUPLE * 4 tuple * 3
d:\python23\lib\pickletools.py:
I * 55 i * 6
d:\python23\lib\pipes.py:
FILE * 2 file * 17
d:\python23\lib\platform.py:
System * 2 system * 51
d:\python23\lib\popen2.py:
Popen3 * 5 popen3 * 5
Popen4 * 3 popen4 * 3
d:\python23\lib\pre.py:
I * 1 i * 14
M * 1 m * 9
d:\python23\lib\profile.py:
Stats * 2 stats * 3
d:\python23\lib\pstats.py:
Cmd * 2 cmd * 3
Stats * 6 stats * 32
d:\python23\lib\pyclbr.py:
NAME * 5 name * 16
Class * 5 class * 2
d:\python23\lib\pydoc.py:
GUI * 2 gui * 3
Doc * 3 doc * 44
Scanner * 3 scanner * 9
Message * 5 message * 2
Entry * 1 entry * 10
Repr * 6 repr * 26
S * 2 s * 4
I * 2 i * 10
Tk * 1 tk * 1
d:\python23\lib\Queue.py:
Queue * 1 queue * 6
Empty * 3 empty * 1
Full * 3 full * 1
d:\python23\lib\random.py:
Random * 7 random * 47
VERSION * 6 version * 8
N * 17 n * 21
d:\python23\lib\repr.py:
Repr * 2 repr * 3
d:\python23\lib\rexec.py:
RExec * 2 rexec * 14
Hooks * 2 hooks * 6
d:\python23\lib\rfc822.py:
AddressList * 5 addresslist * 21
d:\python23\lib\robotparser.py:
Entry * 5 entry * 19
d:\python23\lib\sets.py:
Set * 1 set * 3
d:\python23\lib\shutil.py:
Error * 2 error * 1
d:\python23\lib\SimpleXMLRPCServer.py:
Fault * 4 fault * 5
d:\python23\lib\smtpd.py:
COMMAND * 5 command * 16
DATA * 3 data * 18
Options * 2 options * 15
d:\python23\lib\smtplib.py:
I * 1 i * 4
HMAC * 1 hmac * 2
d:\python23\lib\sre.py:
TEMPLATE * 1 template * 14
S * 1 s * 9
SUBPATTERN * 2 SubPattern * 2
Pattern * 1 pattern * 35
I * 1 i * 8
M * 1 m * 6
Scanner * 1 scanner * 3
d:\python23\lib\sre_compile.py:
LITERAL * 10 literal * 2
RANGE * 4 range * 5
IN * 2 in * 23
NEGATE * 3 negate * 3
CHARSET * 2 charset * 22
ASSERT * 1 assert * 2
d:\python23\lib\sre_constants.py:
IN * 3 in * 2
d:\python23\lib\sre_parse.py:
FLAGS * 4 flags * 11
LITERAL * 31 literal * 7
SUBPATTERN * 2 SubPattern * 5 subpattern * 25
Pattern * 2 pattern * 16
IN * 11 in * 42
d:\python23\lib\string.py:
L * 3 l * 3
d:\python23\lib\symtable.py:
Class * 2 class * 5
d:\python23\lib\tarfile.py:
VERSION * 2 version * 1
BUFSIZE * 4 bufsize * 13
TarFile * 4 tarfile * 18
TarInfo * 8 tarinfo * 229
TOREAD * 2 toread * 5
d:\python23\lib\telnetlib.py:
DEBUGLEVEL * 2 debuglevel * 9
SB * 2 sb * 9
d:\python23\lib\tempfile.py:
Random * 1 random * 1
d:\python23\lib\threading.py:
_VERBOSE * 2 _Verbose * 14
Lock * 4 lock * 9
Thread * 11 thread * 6
d:\python23\lib\timeit.py:
Timer * 2 timer * 8
d:\python23\lib\token.py:
NAME * 1 name * 2
d:\python23\lib\tokenize.py:
COMMENT * 4 Comment * 3
INDENT * 1 indent * 1
Token * 2 token * 23
NAME * 1 Name * 3
NUMBER * 1 Number * 3
STRING * 3 String * 2 string * 2
ContStr * 2 contstr * 10
d:\python23\lib\trace.py:
Trace * 2 trace * 11
Ignore * 2 ignore * 2
d:\python23\lib\unittest.py:
TestLoader * 3 testLoader * 5
d:\python23\lib\urllib.py:
FTP * 1 ftp * 13
I * 1 i * 31
IC * 1 ic * 4
Close * 1 close * 14
d:\python23\lib\urllib2.py:
H * 10 h * 20
I * 1 i * 23
d:\python23\lib\uu.py:
Error * 5 error * 1
d:\python23\lib\warnings.py:
I * 1 i * 3
d:\python23\lib\wave.py:
Chunk * 3 chunk * 22
d:\python23\lib\webbrowser.py:
Error * 2 error * 1
d:\python23\lib\xdrlib.py:
Error * 3 error * 2
d:\python23\lib\xmlrpclib.py:
Transport * 3 transport * 5
Parser * 1 parser * 16
Boolean * 6 boolean * 2
Server * 1 server * 3
d:\python23\lib\zipfile.py:
CRC * 16 crc * 2
d:\python23\lib\_strptime.py:
LC_TIME * 1 LC_time * 4
Regards,
Bengt Richter
More information about the Python-list
mailing list