]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-68686: Retire eptag ptag scripts (#98064)
authorJoannah Nanjekye <33177550+nanjekyejoannah@users.noreply.github.com>
Sat, 8 Oct 2022 14:57:47 +0000 (07:57 -0700)
committerGitHub <noreply@github.com>
Sat, 8 Oct 2022 14:57:47 +0000 (07:57 -0700)
* Retire eptag ptag scripts

* ðŸ“œðŸ¤– Added by blurb_it.

* fix news entry error

Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Misc/NEWS.d/next/Tools-Demos/2022-10-07-22-06-11.gh-issue-68686.6KNIQ4.rst [new file with mode: 0644]
Tools/scripts/README
Tools/scripts/eptags.py [deleted file]
Tools/scripts/ptags.py [deleted file]

diff --git a/Misc/NEWS.d/next/Tools-Demos/2022-10-07-22-06-11.gh-issue-68686.6KNIQ4.rst b/Misc/NEWS.d/next/Tools-Demos/2022-10-07-22-06-11.gh-issue-68686.6KNIQ4.rst
new file mode 100644 (file)
index 0000000..a4289d6
--- /dev/null
@@ -0,0 +1 @@
+Remove ptags and eptags scripts.
index b53b0f21d7c293fdb1d1ab1deb1d5cc15812364e..70ea5f4cd0feaef807f80d876fd8f63b43827901 100644 (file)
@@ -5,7 +5,6 @@ useful while building, extending or managing Python.
 abitype.py                Converts a C file to use the PEP 384 type definition API
 combinerefs.py            A helper for analyzing PYTHONDUMPREFS output
 diff.py                   Print file diffs in context, unified, or ndiff formats
-eptags.py                 Create Emacs TAGS file for Python modules
 gprof2html.py             Transform gprof(1) output into useful HTML
 idle3                     Main program to start IDLE
 md5sum.py                 Print MD5 checksums of argument files
diff --git a/Tools/scripts/eptags.py b/Tools/scripts/eptags.py
deleted file mode 100755 (executable)
index 7f8059b..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-#! /usr/bin/env python3
-"""Create a TAGS file for Python programs, usable with GNU Emacs.
-
-usage: eptags pyfiles...
-
-The output TAGS file is usable with Emacs version 18, 19, 20.
-Tagged are:
- - functions (even inside other defs or classes)
- - classes
-
-eptags warns about files it cannot open.
-eptags will not give warnings about duplicate tags.
-
-BUGS:
-   Because of tag duplication (methods with the same name in different
-   classes), TAGS files are not very useful for most object-oriented
-   python projects.
-"""
-import sys,re
-
-expr = r'^[ \t]*(def|class)[ \t]+([a-zA-Z_][a-zA-Z0-9_]*)[ \t]*[:\(]'
-matcher = re.compile(expr)
-
-def treat_file(filename, outfp):
-    """Append tags found in file named 'filename' to the open file 'outfp'"""
-    try:
-        fp = open(filename, 'r')
-    except OSError:
-        sys.stderr.write('Cannot open %s\n'%filename)
-        return
-    with fp:
-        charno = 0
-        lineno = 0
-        tags = []
-        size = 0
-        while 1:
-            line = fp.readline()
-            if not line:
-                break
-            lineno = lineno + 1
-            m = matcher.search(line)
-            if m:
-                tag = m.group(0) + '\177%d,%d\n' % (lineno, charno)
-                tags.append(tag)
-                size = size + len(tag)
-            charno = charno + len(line)
-    outfp.write('\f\n%s,%d\n' % (filename,size))
-    for tag in tags:
-        outfp.write(tag)
-
-def main():
-    with open('TAGS', 'w') as outfp:
-        for filename in sys.argv[1:]:
-            treat_file(filename, outfp)
-
-if __name__=="__main__":
-    main()
diff --git a/Tools/scripts/ptags.py b/Tools/scripts/ptags.py
deleted file mode 100755 (executable)
index eedd411..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-#! /usr/bin/env python3
-
-# ptags
-#
-# Create a tags file for Python programs, usable with vi.
-# Tagged are:
-# - functions (even inside other defs or classes)
-# - classes
-# - filenames
-# Warns about files it cannot open.
-# No warnings about duplicate tags.
-
-import sys, re, os
-
-tags = []    # Modified global variable!
-
-def main():
-    args = sys.argv[1:]
-    for filename in args:
-        treat_file(filename)
-    if tags:
-        with open('tags', 'w') as fp:
-            tags.sort()
-            for s in tags: fp.write(s)
-
-
-expr = r'^[ \t]*(def|class)[ \t]+([a-zA-Z0-9_]+)[ \t]*[:\(]'
-matcher = re.compile(expr)
-
-def treat_file(filename):
-    try:
-        fp = open(filename, 'r')
-    except:
-        sys.stderr.write('Cannot open %s\n' % filename)
-        return
-    with fp:
-        base = os.path.basename(filename)
-        if base[-3:] == '.py':
-            base = base[:-3]
-        s = base + '\t' + filename + '\t' + '1\n'
-        tags.append(s)
-        while 1:
-            line = fp.readline()
-            if not line:
-                break
-            m = matcher.match(line)
-            if m:
-                content = m.group(0)
-                name = m.group(2)
-                s = name + '\t' + filename + '\t/^' + content + '/\n'
-                tags.append(s)
-
-if __name__ == '__main__':
-    main()