1#!/usr/bin/env python
2
3#from Entities import *
4
5from plasTeX.Base.LaTeX.Accents import *
6from plasTeX.Base.LaTeX.Alignment import *
7from plasTeX.Base.LaTeX.Arrays import *
8from plasTeX.Base.LaTeX.Bibliography import *
9from plasTeX.Base.LaTeX.Boxes import *
10from plasTeX.Base.LaTeX.Breaking import *
11from plasTeX.Base.LaTeX.Characters import *
12from plasTeX.Base.LaTeX.Crossref import *
13from plasTeX.Base.LaTeX.Definitions import *
14from plasTeX.Base.LaTeX.Document import *
15from plasTeX.Base.LaTeX.Environments import *
16from plasTeX.Base.LaTeX.FontSelection import *
17from plasTeX.Base.LaTeX.Footnotes import *
18from plasTeX.Base.LaTeX.Files import *
19from plasTeX.Base.LaTeX.Floats import *
20from plasTeX.Base.LaTeX.Index import *
21from plasTeX.Base.LaTeX.Lengths import *
22from plasTeX.Base.LaTeX.Lists import *
23from plasTeX.Base.LaTeX.Math import *
24from plasTeX.Base.LaTeX.Numbering import *
25from plasTeX.Base.LaTeX.Packages import *
26from plasTeX.Base.LaTeX.Pictures import *
27from plasTeX.Base.LaTeX.Paragraphs import *
28from plasTeX.Base.LaTeX.Quotations import *
29from plasTeX.Base.LaTeX.Sectioning import *
30from plasTeX.Base.LaTeX.Sentences import *
31from plasTeX.Base.LaTeX.Space import *
32from plasTeX.Base.LaTeX.Tabbing import *
33from plasTeX.Base.LaTeX.Verbatim import *
34
35from plasTeX import Command
36
37class ifundefined_(Command):
38    macroName = '@ifundefined'
39    args = 'name:str true:nox false:nox'
40    def invoke(self, tex):
41        a = self.parse(tex)
42        if a['name'] in list(self.ownerDocument.context.keys()):
43            tex.pushTokens(a['false'])
44        else:
45            tex.pushTokens(a['true'])
46        return []
47
48class vwritefile_(Command):
49    macroName = '@vwritefile'
50    args = 'file:nox content:nox'
51
52class pagelabel(Command):
53    args = 'label:nox content:nox'
54
55class verbatiminput(Command):
56    pass
57
58class makeatother(Command):
59    def invoke(self, tex):
60        self.ownerDocument.context.catcode('@', 12)
61
62class makeatletter(Command):
63    def invoke(self, tex):
64        self.ownerDocument.context.catcode('@', 11)
65