list_documented_items():  Basic implementation.
This still does not work well since ctags does not do a good job with the
Python headers, appearantly due to the DL_IMPORT macro.  ;-(
diff --git a/Doc/tools/findcsyms b/Doc/tools/findcsyms
index cffc237..ac9b754 100755
--- a/Doc/tools/findcsyms
+++ b/Doc/tools/findcsyms
@@ -2,6 +2,7 @@
 
 import errno
 import os
+import re
 import sys
 
 if __name__ == "__main__":
@@ -25,10 +26,38 @@
     return [fn for fn in os.listdir(incdir)
             if fn.endswith(".h") and fn not in EXCLUDES]
 
+
+def matcher(pattern):
+    return re.compile(pattern).match
+
+MATCHERS = [
+    matcher(r"\\begin\{cfuncdesc\}\{[^{]*\}\{(?P<sym>[^{]*)\}"),
+    matcher(r"\\cfuncline\{[^{]*\}\{(?P<sym>[^{]*)\}"),
+    matcher(r"\\begin\{ctypedesc\}(\[[^{]*\])?\{(?P<sym>[^{]*)\}"),
+    matcher(r"\\begin\{cvardesc\}\{[^{]*\}\{(?P<sym>[^{]*)\}"),
+    matcher(r"\\begin\{cmemberdesc\}\{[^{]*\}\{(?P<sym>[^{]*)\}"),
+    matcher(r"\\cmemberline\{[^{]*\}\{(?P<sym>[^{]*)\}"),
+    matcher(r"\\begin\{csimplemacrodesc\}\{(?P<sym>[^{]*)\}"),
+    ]
+
+
 def list_documented_items():
     """Return a list of everything that's already documented."""
-    docdir = os.path.join(srcdir, "Doc")
-    return []
+    apidir = os.path.join(srcdir, "Doc", "api")
+    files = [fn for fn in os.listdir(apidir) if fn.endswith(".tex")]
+    L = []
+    for fn in files:
+        fullname = os.path.join(apidir, fn)
+        for line in open(fullname):
+            line = line.lstrip()
+            if not line.startswith("\\"):
+                continue
+            for matcher in MATCHERS:
+                m = matcher(line)
+                if m:
+                    L.append(m.group("sym"))
+                    break
+    return L
 
 def split_documented(all, documented):
     """Split the list of all symbols into documented and undocumented
@@ -70,8 +99,8 @@
         headers = list_headers()
         documented = list_documented_items()
 
-    cmd = ("ctags -f - --file-scope=no --c-types=-mv "
-           "-Istaticforward -Istatichere "
+    cmd = ("ctags -f - --file-scope=no --c-types=dgpstux "
+           "-Istaticforward -Istatichere=static "
            + _spcjoin(headers))
     fp = os.popen(cmd)
     L = []