Commit Graph

233 Commits

Author SHA1 Message Date
Guido van Rossum 13c51ecb8c Added more text to the docstring, updated the way the exit status is
percolated out, and some general cleanup.  The output is still the
same, except it now prints "Index: <file>" instead of "Processing:
<file>", so that the output can be used as input for patch (but only
the diff-style parts of it).
2001-09-02 04:49:36 +00:00
Guido van Rossum 43db62e263 A grep-like tool that looks for division operators. 2001-09-02 04:43:30 +00:00
Guido van Rossum 822218b400 The beginnings of a script to help finding / operators that may need
to be change to //.  The code is pretty gross so far, and I promise
I'll work on this more, but I have to go eat now! :-)
2001-09-01 21:55:58 +00:00
Tim Peters ebb7133f4f Fix typo in module docstring. 2001-08-15 06:07:42 +00:00
Tim Peters 3055ad234a + A msg on c.l.py reminded me that docstrings can be implicitly catenated.
Cater to that.
+ Major speed boost via not reading more of files than necessary.  This
  was no slouch before; now it screams.
+ Improve msg when giving up on a goofy future statement.
2001-08-13 05:33:53 +00:00
Tim Peters 5e824c37d3 SF patch #445412 extract ndiff functionality to difflib, from
David Goodger.
2001-08-12 22:25:01 +00:00
Tim Peters b704238a6c Tool to delete (or just rewrite parts of) obsolete future statements. 2001-08-12 08:41:13 +00:00
Martin v. Löwis f2f8c51ae6 When representing #includes as imports, do from MOD import *. 2001-08-09 12:32:10 +00:00
Martin v. Löwis 4f85bf3311 Patch #437683: Use re instead of regex.
If multiple header files are processed simultaneously which include each
other, the corresponding modules mport each other. Specifically, if h2py
is invoked with sys/types.h first, later header files won't contain the
complete contents of TYPES.py.
2001-08-09 12:24:38 +00:00
Tim Peters 45e5e72eb8 Rename pydoc.pyw to pydocgui.pyw: Since we changed Python to allow .pyw
files to satisfy imports, pydoc.pyw was just importing itself!
2001-08-05 05:43:20 +00:00
Fred Drake 79e75e1916 Use string.ascii_letters instead of string.letters (SF bug #226706). 2001-07-20 19:05:50 +00:00
Guido van Rossum 9966e2c663 This is a trivial command line utility to print MD5 checksums.
I published it on the web as http://www.python.org/2.1/md5sum.py
so I thought I might as well check it in.

Works with Python 1.5.2 and later.

Works like the Linux tool ``mdfsum file ...'' except it doesn't take
any options or read stdin.
2001-06-22 16:05:48 +00:00
Martin v. Löwis a4debfffc9 Patch #430754: Makes ftpmirror.py .netrc aware 2001-06-07 17:17:00 +00:00
Marc-André Lemburg 716cf91839 Moved the encoding map building logic from the individual mapping
codec files to codecs.py and added logic so that multi mappings
in the decoding maps now result in mappings to None (undefined mapping)
in the encoding maps.
2001-05-16 09:41:45 +00:00
Jeremy Hylton 66a7e57c7e Fix several bugs and add two features.
Assertion error message had typos in arguments to string format.

.cover files for modules in packages are now put in the right place.

The code that generate .cover files seemed to prepend a "./" to many
absolute paths, causing them to fail.  The code now checks explicitly
for absolute paths and leaves them alone.

In trace/coverage code, recover from case where module has no __name__
attribute, when e.g. it is executed by PyRun_String().  In this case,
assign modulename to None and hope for the best.  There isn't anywhere
to write out coverage data for this code anyway.

Also, replace several sys.stderr.writes with print >> sys.stderr.

New features:

-C/--coverdir dir: Generate .cover files in specified directory
instead of in the directory where the .py file is.

-s: Print a short summary of files coverred (# lines, % coverage,
name)
2001-05-08 04:20:52 +00:00
Guido van Rossum f9e56e117f Append the revision number for each file to the output.
(Yes, this is a new feature right before the 2.1 release.  No, I can't
imagine this would seriously break anybody's code.  In fact, most
users of this script are probably *happy* to see this addition.)
2001-04-10 03:31:27 +00:00
Ka-Ping Yee fde8a86a4e Script for starting pydoc with a GUI in Windows. 2001-03-23 14:10:39 +00:00
Ka-Ping Yee 895e8925d6 Call main routine in pydoc module (pydoc.cli). 2001-03-01 00:25:40 +00:00
Andrew M. Kuchling b68ef5081d Add script form of pydoc so that it's present in beta1. Currently
this just copies the __name__=='__main__' logic from pydoc.py.
    ?!ng can decide whether he wants to create a main() in pydoc, or rip
    it out of pydoc.py completely.
2001-02-28 20:55:10 +00:00
Tim Peters 9ae2148ada Moved SequenceMatcher from ndiff into new std library module difflib.py.
Guido told me to do this <wink>.
Greatly expanded docstrings, and fleshed out with examples.
New std test.
Added new get_close_matches() function for ESR.
Needs docs, but LaTeXification of the module docstring is all it needs.
\CVS: ----------------------------------------------------------------------
2001-02-10 08:00:53 +00:00
Tim Peters 79b334ba55 Hand repair of cases where reindent changed lines of the form
\t\t\t\t\treal code
##\t\t\t\t\tunused code
\t\t\t\t\treal code

via untabifying and shifting the real code left.  Semantically the
same but made the intent of the commented-out-in-column-0 unused code
unclear.  The exact same unused code appears to have gotten copied from
file to file over the years.
2001-01-17 09:13:33 +00:00
Tim Peters 70c4378dbc Whitespace normalization. 2001-01-17 08:48:39 +00:00
Marc-André Lemburg a866df806d This patch changes the default behaviour of the builtin charmap
codec to not apply Latin-1 mappings for keys which are not found
in the mapping dictionaries, but instead treat them as undefined
mappings.

The patch was originally written by Martin v. Loewis with some
additional (cosmetic) changes and an updated test script
by Marc-Andre Lemburg.

The standard codecs were recreated from the most current files
available at the Unicode.org site using the Tools/scripts/gencodec.py
tool.

This patch closes the bugs #116285 and #119960.
2001-01-03 21:29:14 +00:00
Tim Peters 2f1aeb950d SF bug 124051: ndiff "?" lines can be confusing. Well, they still can, but
after implementing it I liked Gregor's two-"?" line idea a lot.
2000-12-09 05:03:22 +00:00
Tim Peters 0d430e28c0 Hack ndiff to display lines w/ leading tabs more intuitively. This synchs
ndiff w/ a custom version I made for Guido during the pre-2.0 freeze.
2000-11-01 02:51:27 +00:00
Guido van Rossum 70280b859e I'm moving redemo.py here from Demo/tkinter/guido, since it is
somewhat useful to learn regular expressions, and this way it'll be
installed on Windows.

This closes bug report 115609.
2000-10-06 17:37:12 +00:00
Tim Peters ad14720262 New tool for normalizing indentation of .py files. 2000-10-05 03:48:38 +00:00
Jeremy Hylton 0b7b4b8a22 satisfy the tabnanny 2000-09-18 01:46:01 +00:00
Barry Warsaw 64850efa39 Allow this script to act like a module by only calling main() if
__name__ == '__main__'.  Closes SF bug #110844.
2000-09-16 22:09:51 +00:00
Guido van Rossum 8586991099 REMOVED all CWI, CNRI and BeOpen copyright markings.
This should match the situation in the 1.6b1 tree.
2000-09-01 23:29:29 +00:00
Guido van Rossum 1688f378cb Rob Hooft, Moshe Zadka: converted to 4 space indents and re instead of regex. 2000-09-01 13:41:37 +00:00
Jeremy Hylton da1ec468b1 Python code coverage tool by Skip Montanaro and Andrew Dalke 2000-08-03 19:26:21 +00:00
Peter Schneider-Kamp 7f589fddad add expandtabs command (-e)
change eliminate to delete (-d)
2000-07-11 16:43:16 +00:00
Guido van Rossum fd71b9e9d4 Change copyright notice. 2000-06-30 23:50:40 +00:00
Guido van Rossum a04ff0fb53 Running the program through itself reveals that one end tag was
mislabeled.

(Using -c and then -e rearranges some comments, so I won't check that
in -- but it's a good test anyway.

Note that pindent is not perfect -- e.g. it doesn't know about
triple-quoted strings!)
2000-06-28 22:55:20 +00:00
Guido van Rossum 59811b189d Peter Schneider-Kamp:
Problem:
A Python program can be completed and reformatted using
Tools/scripts/pindent.py. Unfortunately there is no option for removal
of the generated "# end"-tags.  Although a few Python commands or a
"grep -v '# end '" can do wonders here, there are two drawbacks:
- not everyone has grep/time to write a Python script
- it is not checked whether the "# end"-tags were used validly

Solution:
add extra option "-e" (eliminate) to pindent.py
2000-06-28 22:47:22 +00:00
Fred Drake bae57a88a6 Of course, I forget how to type long ago...
Typo noted by /F.
2000-03-17 16:56:23 +00:00
Fred Drake 1966004986 "write marshalled" --> "writes marshalled" (in docstring); noted by
Detlef Lannert <lannert@lannert.rz.uni-duesseldorf.de>.
2000-03-17 15:43:37 +00:00
Guido van Rossum 34a79115c5 Marc-Andre Lemburg: added
gencodec.py - Create Python codecs from Unicode mapping files
2000-03-10 22:36:57 +00:00
Guido van Rossum 1b6d21bb3e Correct type error in getopt.error handling code. 2000-02-29 13:08:44 +00:00
Guido van Rossum aacf5ce1ad Script by Tim Peters to discover illegal append() calls. 2000-02-29 13:05:49 +00:00
Guido van Rossum 67dd17f730 Fix multi-arg append(). 2000-02-29 13:00:16 +00:00
Guido van Rossum 6e0a28f6cf Deleting tabpolice.py; it was superceded by tabnanny.py long ago. 2000-02-23 15:34:43 +00:00
Guido van Rossum a02c898e69 Moved tabnanny.py to standard library status. 2000-02-23 15:33:52 +00:00
Guido van Rossum 967e509a81 Patch by Gerrit Holl:
* In crlf.py and lfcr.py: regsub -> re
2000-02-14 21:42:14 +00:00
Guido van Rossum d962878309 Patch by Gerrit Holl:
* In logmerge.py: added '-r' flag to show the oldest checkin
      first instead of the newest, and getopt.getopt was used
      wrong.
2000-02-14 21:41:50 +00:00
Guido van Rossum a8b37ad9ff Scrit by Marc-Andre Lemburg to generate htmlentitydefs.py. 1999-08-19 16:00:41 +00:00
Guido van Rossum a74c55662f Mark Hammond writes:
"""
If the filename being complained about contains a space, enclose the
file-name in quotes.

The reason is simply that when I try and parse tabnanny's output, filenames
with spaces make it very difficult to determine where the filename stops
and the linenumber begins!
"""

Tim approves.

I slightly changed the patch (use 'in' instead of string.find()) and
arbitrarily bumped the __version__ variable up to 6.
1999-07-30 17:48:20 +00:00
Guido van Rossum d68a4bd56c Use re instead of regex.
Don't rewrite the file in place.
(Reported by Andy Dustman.)
1999-04-09 14:56:35 +00:00
Guido van Rossum bd3bdde70b For reasons I dare not explain, this script should always execute
main() when imported (in other words, it is not usable as a module).
1999-04-02 22:18:25 +00:00
Guido van Rossum 02ef28b9a9 Tim Peters writes:
I should have waited overnight <wink/sigh>.  Nothing wrong with the one I
sent, but I couldn't resist going on to add new -r1 / -r2 cmdline options
for recreating the original files from ndiff's output.  That's attached, if
you're game!  Us Windows guys don't usually have a sed sitting around
<wink>.
1999-03-28 17:55:32 +00:00
Guido van Rossum a3433e89eb Tim Peters writes:
Attached is a cleaned-up version of ndiff (added useful module
docstring, now echo'ed in case of cmd line mistake); added -q option
to suppress initial file identification lines; + other minor cleanups,
& a slightly faster match engine.
1999-03-27 13:34:01 +00:00
Fred Drake b091134e70 During display, if EPIPE is raised, it's probably because a pager was
killed.  Discard the error in that case, but propogate it otherwise.
1999-03-26 22:36:00 +00:00
Andrew M. Kuchling dc86a4e5bb Added a -q ('quiet') option to tabnanny, which causes only the names of
offending files to be printed.  Good for emacs `tabnanny.py *.py`
1998-12-18 13:56:58 +00:00
Guido van Rossum 5cd975c678 Patch by Chris Herborth:
BeOS headers live in various non-standard places;
luckily, there's an environment variable that lists them all.
1998-12-17 18:02:15 +00:00
Guido van Rossum 8fd0f147e7 Detlef Lannert lannert@lannert.rz.uni-duesseldorf.de notices:
"""
the NEWS file of Python 1.5.2a2 inspired me to look at
Tools/scripts/untabify.py. I wonder why it accepts a -t argument
but ignores it. The following patch tries to make it somewhat useful
(i.e., to override the tabsize=8 setting). Is that agreeable?
"""
1998-10-20 15:33:33 +00:00
Guido van Rossum e33bba8d3d New version that is much more compact and easier to maintain. (Sjoerd) 1998-10-09 13:27:49 +00:00
Guido van Rossum 9c2c1e88a3 Fix multi-arg list.append() calls. 1998-10-08 15:24:48 +00:00
Guido van Rossum a57c9b928d Added a whole bunch of descriptions. 1998-10-07 19:52:35 +00:00
Guido van Rossum 19b23e538e Use the imp module to get the magic word. 1998-10-07 19:45:33 +00:00
Guido van Rossum 41f13f288f Added #! line 1998-10-07 14:46:09 +00:00
Guido van Rossum f9a6d7d494 Print serious errors to stderr instead of stdout. 1998-09-14 16:22:21 +00:00
Guido van Rossum caf9fca35a nannified 1998-09-14 16:03:02 +00:00
Guido van Rossum a53f30babc nannified 1998-09-14 15:57:09 +00:00
Guido van Rossum 4e96ec6a4e nannified. 1998-09-14 15:56:40 +00:00
Guido van Rossum 09eea82005 Utility to replace CRLF with LF in argument files. 1998-09-14 15:46:41 +00:00
Guido van Rossum 499a6e5fd4 Utility to replace LF with CRLF in argument files. 1998-09-14 15:46:15 +00:00
Guido van Rossum ce85827ac1 Utility to untabify stubber results. 1998-09-14 15:43:38 +00:00
Guido van Rossum ee60eb127b New tool: reverse grep (greps from the end). Uses a fairly efficient
strategy to read from the end of the file.
1998-08-12 17:47:52 +00:00
Guido van Rossum e7f3953142 A script by Mark-Andre Lemburg to produce the PC/python_nt.def file
automatically.
1998-08-10 13:12:22 +00:00
Guido van Rossum b3bf2cd64b # The variable total is never used somehow. I think I had plans for
# it but can't remember what.  Get rid of a comparison that breaks.
1998-07-02 22:17:28 +00:00
Guido van Rossum a25969620a Fix by Sjoerd Mullender to support symbolic links and make a backup of
.mirrorinfo.  Fix by me to call string.lstrip(filename) to cope with a
bug in strop.strip() in Python 1.4.  Additionally, I changed all print
statements that print filenames etc. to put them in backquotes so that
it will be more obvious when there's a funny character on one of them
(such as a space...).
1998-06-29 23:17:16 +00:00
Guido van Rossum f57736e77a Translated to use re instead of regex. Also replaced one use of
L.append(a,b,c,d) with the correct L.append((a,b,c,d)).
1998-06-19 21:39:27 +00:00
Guido van Rossum aa2a7a4ae6 From: "Tim Peters" <tim_one@msn.com>
The 1.5.1 tabnanny.py suffers an assert error if fed a script whose last
line is both indented and lacks a newline:

if 1:
    print 'oh fudge' # no newline here:

The attached version repairs that.
1998-06-09 19:02:21 +00:00
Guido van Rossum 1f05cb007a OK, here's a different way to implement the same thing -- this version
also supports filenames with multiple spaces in their name :-)
1998-05-12 22:45:43 +00:00
Guido van Rossum aeeda5b276 Support filenames with spaces in their names (for non-Mac ftp servers).
This patch must hold the world record for living in my inbox:

  From: John Ehresman <jehresma@dsg.harvard.edu>
  Date: Wed, 23 Aug 1995 16:07:11 -0400

He provided a fix for the version that comes with Python 1.3:
ftpmirror.py revision 1.1...  And it was still relevant!
1998-05-12 22:36:11 +00:00
Guido van Rossum 27c225e826 Add the specific sed statement to recover the second output file to
the comments.
1998-05-08 21:04:06 +00:00
Guido van Rossum 83b851885d Adding Tim Peters' ndiff utility.
This is handy for comparing plain-text documentation files,
since it displays intra-line differences.
1998-05-06 17:43:30 +00:00
Guido van Rossum 53117ae82a typo in error message (fname vs. file).
(Jack)
1998-04-28 16:01:13 +00:00
Barry Warsaw 6a508aef7d Use the (new) standard script #! line
Convert to re module; remove all references to regexp and regsub

Added support for the new texinfo @url{} and @email{} commands
1998-04-23 22:59:33 +00:00
Guido van Rossum ce73acf5e6 Tim's version 4, with my mods 1998-04-10 19:14:59 +00:00
Guido van Rossum 8053d89f7b Add usage message when no arguments. 1998-04-06 14:45:26 +00:00
Guido van Rossum f4b44fa6ef Tim's latest version (supports old and new tokenize modules) 1998-04-06 14:41:20 +00:00
Guido van Rossum 9ab75cbaab Tim Peters' program for checking whether a program's indentation is
sensitive to tab size.  Uses a different strategy than tabpolice.py,
but has compatible usage.
1998-03-31 14:31:39 +00:00
Guido van Rossum 97df7f8679 Add -q option that *just* prints the filename. 1998-03-26 19:23:43 +00:00
Guido van Rossum ed5b3d8b3c give in to tab police 1998-03-24 05:30:29 +00:00
Guido van Rossum 3db0e3713c Report first line with inconsistent tab usage. 1998-03-24 04:58:04 +00:00
Guido van Rossum 6f73c1a2ac The Tab Police watches for possibly inconsistent indentation. 1998-03-20 19:23:04 +00:00
Guido van Rossum fdc5adc594 Dangerous feature added: when removing local files (i.e., only when -r
is used), do a recursive delete.  Use -r with even more caution!
Also changed usage message into a doc string, added a comment or two,
and rearranged a long line.
1998-01-04 02:03:12 +00:00
Guido van Rossum ca83f018e7 Added "-n file" option to only print files newer than the given file. 1997-11-24 23:49:35 +00:00
Guido van Rossum 79b2038aa4 When checking for equality, open the slave file in text mode so it
will compare equal even if the master file uses only \n to terminate
lines (this is by far the most common situation).  Also, check for the
case where the master file is missing, and print the time difference
in seconds when the slave file appears newer than the master (for
debugging).
1997-11-04 17:35:43 +00:00
Guido van Rossum 9476a78c1e Remove "." or "" from front of sys.path (this bit me once). 1997-10-20 23:48:01 +00:00
Guido van Rossum 9971f689cb Fix comment to add the all-important trailing colon to the example.
Print the author with the revision date and filename.
1997-10-06 21:09:32 +00:00
Guido van Rossum b81b5c72db Moved pystone to Lib/test. Use import test.pystone to run it. 1997-09-16 18:57:42 +00:00
Guido van Rossum d2ba3690ce Skip symlinks; don't bother keeping a list of files that is never used. 1997-09-16 18:57:14 +00:00
Guido van Rossum 92dfa4ffe1 Use correct keyword parameter when calling copy with answer option! 1997-08-18 20:56:10 +00:00
Guido van Rossum 939e4c1efb Oops, there was a bug in the output formatting - the last printed
values would overwrite the next value.
1997-08-14 23:25:20 +00:00
Guido van Rossum 3485bb6f44 Added logmerge.py 1997-08-14 22:04:26 +00:00
Guido van Rossum 6f0cf7ee20 Consolidate a bunch of CVS or RCS logs read from stdin. 1997-08-14 22:04:00 +00:00
Guido van Rossum 4d3376a80f Added cvsfiles.py and treesync.py 1997-08-14 20:16:32 +00:00