]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
recognize more latex commands; add obindex
authorGuido van Rossum <guido@python.org>
Fri, 17 Mar 1995 16:03:11 +0000 (16:03 +0000)
committerGuido van Rossum <guido@python.org>
Fri, 17 Mar 1995 16:03:11 +0000 (16:03 +0000)
Doc/partparse.py
Doc/tools/partparse.py

index 3c1c046000a8ba2999b287d2fa58a4a4cca2299e..6d4398460dd62e79530085419864b323150835a1 100644 (file)
@@ -857,9 +857,9 @@ class Wobj:
 # ignore these commands
 ignoredcommands = ('bcode', 'ecode')
 # map commands like these to themselves as plaintext
-wordsselves = ('UNIX', 'ABC', 'C', 'ASCII', 'EOF')
+wordsselves = ('UNIX', 'ABC', 'C', 'ASCII', 'EOF', 'LaTeX')
 # \{ --> {,  \} --> }, etc
-themselves = ('{', '}', '.', '@') + wordsselves
+themselves = ('{', '}', '.', '@', ' ', '\n') + wordsselves
 # these ones also themselves (see argargs macro in myformat.sty)
 inargsselves = (',', '[', ']', '(', ')')
 # this is how *I* would show the difference between emph and strong
@@ -871,8 +871,8 @@ markcmds = {'code': ('', ''), 'var': 1, 'emph': ('_', '_'), \
 fontchanges = {'rm': 'r', 'it': 'i', 'em': 'emph', 'bf': 'b', 'tt': 't'}
 
 # transparent for these commands
-for_texi = ('emph', 'var', 'strong', 'code', 'kbd', 'key', 'dfn', 'samp', \
-         'r', 'i', 't')
+for_texi = ('emph', 'var', 'strong', 'code', 'kbd', 'key', 'dfn', 'samp',
+           'file', 'r', 'i', 't')
 
 
 # try to remove macros and return flat text
@@ -1759,6 +1759,24 @@ def changeit(buf, pp):
                                length, i = length+1, i+1
                                
                                
+                       elif s(buf, ch.data) == 'obindex':
+                               ch.chtype = chunk_type(CSLINE)
+                               ch.data = 'findex'
+                               length, newi = getnextarg(length, buf, pp, i)
+                               ingroupch = pp[i:newi]
+                               del pp[i:newi]
+                               length = length - (newi-i)
+
+                               ingroupch.append(chunk(PLAIN, ch.where, ' '))
+                               ingroupch.append(chunk(CSNAME, ch.where, 'r'))
+                               ingroupch.append(chunk(GROUP, ch.where, [\
+                                         chunk(PLAIN, ch.where, \
+                                         '(object)')]))
+
+                               pp.insert(i, chunk(GROUP, ch.where, ingroupch))
+                               length, i = length+1, i+1
+                               
+                               
                        elif s(buf, ch.data) == 'opindex':
                                ch.chtype = chunk_type(CSLINE)
                                ch.data = 'findex'
index 3c1c046000a8ba2999b287d2fa58a4a4cca2299e..6d4398460dd62e79530085419864b323150835a1 100644 (file)
@@ -857,9 +857,9 @@ class Wobj:
 # ignore these commands
 ignoredcommands = ('bcode', 'ecode')
 # map commands like these to themselves as plaintext
-wordsselves = ('UNIX', 'ABC', 'C', 'ASCII', 'EOF')
+wordsselves = ('UNIX', 'ABC', 'C', 'ASCII', 'EOF', 'LaTeX')
 # \{ --> {,  \} --> }, etc
-themselves = ('{', '}', '.', '@') + wordsselves
+themselves = ('{', '}', '.', '@', ' ', '\n') + wordsselves
 # these ones also themselves (see argargs macro in myformat.sty)
 inargsselves = (',', '[', ']', '(', ')')
 # this is how *I* would show the difference between emph and strong
@@ -871,8 +871,8 @@ markcmds = {'code': ('', ''), 'var': 1, 'emph': ('_', '_'), \
 fontchanges = {'rm': 'r', 'it': 'i', 'em': 'emph', 'bf': 'b', 'tt': 't'}
 
 # transparent for these commands
-for_texi = ('emph', 'var', 'strong', 'code', 'kbd', 'key', 'dfn', 'samp', \
-         'r', 'i', 't')
+for_texi = ('emph', 'var', 'strong', 'code', 'kbd', 'key', 'dfn', 'samp',
+           'file', 'r', 'i', 't')
 
 
 # try to remove macros and return flat text
@@ -1759,6 +1759,24 @@ def changeit(buf, pp):
                                length, i = length+1, i+1
                                
                                
+                       elif s(buf, ch.data) == 'obindex':
+                               ch.chtype = chunk_type(CSLINE)
+                               ch.data = 'findex'
+                               length, newi = getnextarg(length, buf, pp, i)
+                               ingroupch = pp[i:newi]
+                               del pp[i:newi]
+                               length = length - (newi-i)
+
+                               ingroupch.append(chunk(PLAIN, ch.where, ' '))
+                               ingroupch.append(chunk(CSNAME, ch.where, 'r'))
+                               ingroupch.append(chunk(GROUP, ch.where, [\
+                                         chunk(PLAIN, ch.where, \
+                                         '(object)')]))
+
+                               pp.insert(i, chunk(GROUP, ch.where, ingroupch))
+                               length, i = length+1, i+1
+                               
+                               
                        elif s(buf, ch.data) == 'opindex':
                                ch.chtype = chunk_type(CSLINE)
                                ch.data = 'findex'