badness-parser 0.5.0

Lossless CST parser, semantic model, and command-signature database for LaTeX and BibTeX
Documentation
{
  "commands": {
    "part": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "sectioning": 0 },
    "chapter": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "sectioning": 1 },
    "section": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "sectioning": 2 },
    "subsection": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "sectioning": 3 },
    "subsubsection": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "sectioning": 4 },
    "paragraph": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "sectioning": 5 },
    "subparagraph": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "sectioning": 6 },

    "frac": { "args": [
      { "kind": "req", "domain": "math" },
      { "kind": "req", "domain": "math" }
    ] },
    "sqrt": { "args": [
      { "kind": "opt", "domain": "math" },
      { "kind": "req", "domain": "math" }
    ] },
    "ensuremath": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathrm": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathsf": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathbf": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathit": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathtt": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathnormal": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathcal": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathbb": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathfrak": { "args": [{ "kind": "req", "domain": "math" }] },
    "mathscr": { "args": [{ "kind": "req", "domain": "math" }] },
    "operatorname": { "args": [{ "kind": "req", "domain": "math" }] },
    "text": { "args": [{ "kind": "req", "domain": "text" }] },
    "mbox": { "args": [{ "kind": "req", "domain": "text" }] },
    "intertext": { "args": [{ "kind": "req", "domain": "text" }] },
    "textbf": { "args": [{ "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "textit": { "args": [{ "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "textrm": { "args": [{ "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "textnormal": { "args": [{ "kind": "req", "domain": "text" }], "inline": true },
    "texttt": { "args": ["req"] },
    "emph": { "args": [{ "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "underline": { "args": [{ "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "footnote": { "args": ["opt", { "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "footnotetext": { "args": ["opt", { "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "caption": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }] },
    "title": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "block": true },
    "author": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "block": true },
    "date": { "args": [{ "kind": "opt", "domain": "text" }, { "kind": "req", "content": "prose", "domain": "text" }], "block": true },
    "thanks": { "args": [{ "kind": "req", "content": "prose", "domain": "text" }], "inline": true },
    "includegraphics": { "args": [{ "kind": "opt", "content": "keyval" }, "req"] },
    "usepackage": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "block": true },
    "documentclass": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "block": true },

    "pgfkeys": { "args": [{ "kind": "req", "content": "keyval" }] },
    "tikzset": { "args": [{ "kind": "req", "content": "keyval" }] },
    "pgfplotsset": { "args": [{ "kind": "req", "content": "keyval" }] },
    "pgfplotstableset": { "args": [{ "kind": "req", "content": "keyval" }] },
    "tcbset": { "args": [{ "kind": "req", "content": "keyval" }] },
    "lstset": { "args": [{ "kind": "req", "content": "keyval" }] },
    "hypersetup": { "args": [{ "kind": "req", "content": "keyval" }] },
    "sisetup": { "args": [{ "kind": "req", "content": "keyval" }] },
    "geometry": { "args": [{ "kind": "req", "content": "keyval" }] },
    "setlist": { "args": ["opt", { "kind": "req", "content": "keyval" }] },
    "captionsetup": { "args": ["opt", { "kind": "req", "content": "keyval" }] },

    "NeedsTeXFormat": { "args": ["req", "opt"], "block": true },
    "ProvidesPackage": { "args": ["req", "opt"], "block": true },
    "ProvidesClass": { "args": ["req", "opt"], "block": true },
    "ProvidesFile": { "args": ["req", "opt"], "block": true },
    "ProvidesExplPackage": { "args": ["req", "req", "req", "req"], "block": true },
    "ProvidesExplClass": { "args": ["req", "req", "req", "req"], "block": true },
    "ProvidesExplFile": { "args": ["req", "req", "req", "req"], "block": true },
    "DeclareOption": { "args": ["req", "req"], "block": true },
    "ExecuteOptions": { "args": ["req"], "block": true },
    "ProcessOptions": { "args": [], "block": true },
    "RequirePackage": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "block": true },
    "RequirePackageWithOptions": { "args": ["req", "opt"], "block": true },
    "LoadClass": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "block": true },
    "LoadClassWithOptions": { "args": ["req"], "block": true },
    "PassOptionsToPackage": { "args": ["req", "req"], "block": true },
    "PassOptionsToClass": { "args": ["req", "req"], "block": true },
    "CharacterTable": { "verbatim": true },

    "newcommand": { "args": ["req", "opt", "req"], "block": true },
    "renewcommand": { "args": ["req", "opt", "req"], "block": true },
    "providecommand": { "args": ["req", "opt", "req"], "block": true },
    "DeclareRobustCommand": { "args": ["req", "opt", "req"], "block": true },
    "newenvironment": { "args": ["req", "opt", "req", "req"], "block": true },
    "renewenvironment": { "args": ["req", "opt", "req", "req"], "block": true },
    "newtheorem": { "args": ["req", "opt", "req", "opt"], "block": true },
    "DeclareMathOperator": { "args": ["req", "req"], "block": true },
    "setlength": { "args": ["req", "req"], "block": true },
    "newlength": { "args": ["req"], "block": true },
    "newcounter": { "args": ["req", "opt"], "block": true },
    "setcounter": { "args": ["req", "req"], "block": true },
    "NewDocumentCommand": { "args": ["req", "req", "req"], "block": true },
    "RenewDocumentCommand": { "args": ["req", "req", "req"], "block": true },
    "ProvideDocumentCommand": { "args": ["req", "req", "req"], "block": true },
    "DeclareDocumentCommand": { "args": ["req", "req", "req"], "block": true },
    "NewDocumentEnvironment": { "args": ["req", "req", "req", "req"], "block": true },
    "RenewDocumentEnvironment": { "args": ["req", "req", "req", "req"], "block": true },
    "ProvideDocumentEnvironment": { "args": ["req", "req", "req", "req"], "block": true },
    "DeclareDocumentEnvironment": { "args": ["req", "req", "req", "req"], "block": true },

    "maketitle": { "block": true },
    "tableofcontents": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true },
    "listoffigures": { "block": true },
    "listoftables": { "block": true },
    "include": { "args": ["req"], "block": true },
    "includeonly": { "args": ["req"], "block": true },
    "bibliography": { "args": ["req"], "block": true },
    "bibliographystyle": { "args": ["req"], "block": true },
    "printbibliography": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true },
    "addbibresource": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "block": true },
    "appendix": { "block": true },
    "frontmatter": { "block": true },
    "mainmatter": { "block": true },
    "backmatter": { "block": true },

    "label": { "args": ["req"] },
    "ref": { "args": ["req"], "inline": true },
    "eqref": { "args": ["req"], "inline": true },
    "cref": { "args": ["req"], "inline": true },
    "Cref": { "args": ["req"], "inline": true },
    "crefrange": { "args": ["req", "req"], "inline": true },
    "Crefrange": { "args": ["req", "req"], "inline": true },
    "autoref": { "args": ["req"], "inline": true },
    "nameref": { "args": ["req"], "inline": true },
    "pageref": { "args": ["req"], "inline": true },
    "vref": { "args": ["req"], "inline": true },
    "Vref": { "args": ["req"], "inline": true },
    "labelcref": { "args": ["req"], "inline": true },
    "href": { "args": [{ "kind": "opt", "content": "keyval" }, { "kind": "req", "verbatim": true }, "req"] },

    "newglossaryentry": { "args": ["req", "req"] },
    "longnewglossaryentry": { "args": ["req", "req", "req"] },
    "newacronym": { "args": [{ "kind": "opt", "content": "keyval" }, "req", "req", "req"] },
    "newabbreviation": { "args": [{ "kind": "opt", "content": "keyval" }, "req", "req", "req"] },
    "loadglsentries": { "args": [{ "kind": "opt", "content": "keyval" }, "req"] },

    "cite": { "args": ["opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "nocite": { "args": [{ "kind": "req", "content": "tokenList" }] },
    "citep": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "citet": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "citealp": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "citealt": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "citeauthor": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "citeyear": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "citeyearpar": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "parencite": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "textcite": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "autocite": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "footcite": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },
    "smartcite": { "args": ["opt", "opt", { "kind": "req", "content": "tokenList" }], "inline": true },

    "DocInput": { "args": ["req"] },
    "DescribeMacro": { "args": ["req"] },
    "DescribeEnv": { "args": ["req"] },
    "StopEventually": { "args": ["req"] },

    "verb": { "verbatim": true, "verbatimDelimited": true },
    "verb*": { "verbatim": true, "verbatimDelimited": true },
    "lstinline": { "args": [{ "kind": "opt", "content": "keyval" }], "verbatim": true, "verbatimDelimited": true },
    "mintinline": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "verbatim": true, "verbatimDelimited": true },
    "url": { "verbatim": true, "verbatimDelimited": true },
    "path": { "verbatim": true },
    "code": { "verbatim": true },

    "hline": { "rule": true },
    "hdashline": { "rule": true },
    "toprule": { "args": ["opt"], "rule": true },
    "midrule": { "args": ["opt"], "rule": true },
    "bottomrule": { "args": ["opt"], "rule": true },
    "cmidrule": { "args": ["opt", "req"], "rule": true },
    "cline": { "args": ["req"], "rule": true },
    "specialrule": { "args": ["req", "req", "req"], "rule": true },
    "addlinespace": { "args": ["opt"], "rule": true },
    "morecmidrules": { "rule": true },
    "multicolumn": { "args": ["req", "req", "req"] }
  },

  "environments": {
    "document": { "noIndent": true },
    "appendix": { "noIndent": true },

    "itemize": { "list": true },
    "enumerate": { "list": true },
    "description": { "list": true },

    "figure": { "block": true, "outline": "float" },
    "figure*": { "block": true, "outline": "float" },
    "table": { "block": true, "outline": "float" },
    "table*": { "block": true, "outline": "float" },
    "center": { "block": true },
    "flushleft": { "block": true },
    "flushright": { "block": true },
    "quote": { "block": true },
    "quotation": { "block": true },
    "verse": { "block": true },
    "abstract": { "block": true },
    "titlepage": { "block": true },
    "frame": { "block": true, "labelKey": true },

    "tikzpicture": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "pgfpicture": { "block": true, "statementBody": true },
    "scope": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "pgfonlayer": { "args": ["req"], "block": true, "statementBody": true },
    "axis": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "loglogaxis": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "semilogxaxis": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "semilogyaxis": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "groupplot": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "polaraxis": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },
    "ternaryaxis": { "args": [{ "kind": "opt", "content": "keyval" }], "block": true, "statementBody": true },

    "theorem": { "block": true, "outline": "theorem" },
    "lemma": { "block": true, "outline": "theorem" },
    "proof": { "block": true, "outline": "theorem" },
    "corollary": { "block": true, "outline": "theorem" },
    "proposition": { "block": true, "outline": "theorem" },
    "definition": { "block": true, "outline": "theorem" },
    "remark": { "block": true, "outline": "theorem" },
    "example": { "block": true, "outline": "theorem" },

    "tabular": { "args": ["opt", "req"], "align": true, "block": true },
    "tabular*": { "args": ["req", "opt", "req"], "align": true, "block": true },
    "array": { "args": ["opt", "req"], "math": true, "align": true, "block": true },
    "minipage": { "args": ["opt", "req"], "block": true },
    "multicols": { "args": ["req"], "block": true },
    "thebibliography": { "args": ["req"], "block": true },

    "verbatim": { "verbatimBody": true, "block": true },
    "verbatim*": { "verbatimBody": true, "block": true },
    "Verbatim": { "args": [{ "kind": "opt", "content": "keyval" }], "verbatimBody": true, "block": true },
    "Verbatim*": { "args": [{ "kind": "opt", "content": "keyval" }], "verbatimBody": true, "block": true },
    "alltt": { "verbatimBody": true, "block": true },
    "lstlisting": { "args": [{ "kind": "opt", "content": "keyval" }], "verbatimBody": true, "block": true, "labelKey": true },
    "minted": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "verbatimBody": true, "block": true },
    "codeexample": { "args": [{ "kind": "opt", "content": "keyval" }], "verbatimBody": true, "block": true },
    "oldcomments": { "verbatimBody": true, "block": true },
    "ltxcode": { "args": [{ "kind": "opt", "content": "keyval" }], "verbatimBody": true, "block": true },
    "ltxexample": { "args": [{ "kind": "opt", "content": "keyval" }], "verbatimBody": true, "block": true },
    "filecontents": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "verbatimBody": true, "block": true },
    "filecontents*": { "args": [{ "kind": "opt", "content": "keyval" }, "req"], "verbatimBody": true, "block": true },

    "macro": { "args": ["req"], "block": true, "verbatimArg": true },
    "function": { "args": ["req"], "block": true, "verbatimArg": true },
    "variable": { "args": ["req"], "block": true, "verbatimArg": true },
    "environment": { "args": ["req"], "block": true },
    "macrocode": { "code": true, "block": true },
    "macrocode*": { "code": true, "block": true },

    "Code": { "verbatimBody": true, "block": true },
    "CodeInput": { "verbatimBody": true, "block": true },
    "CodeOutput": { "verbatimBody": true, "block": true },
    "Sinput": { "verbatimBody": true, "block": true },
    "Soutput": { "verbatimBody": true, "block": true },
    "Scode": { "verbatimBody": true, "block": true },

    "math": { "math": true },
    "displaymath": { "math": true },
    "equation": { "math": true },
    "equation*": { "math": true },
    "align": { "math": true, "align": true },
    "align*": { "math": true, "align": true },
    "alignat": { "math": true, "align": true },
    "alignat*": { "math": true, "align": true },
    "gather": { "math": true },
    "gather*": { "math": true },
    "multline": { "math": true },
    "multline*": { "math": true },
    "flalign": { "math": true, "align": true },
    "flalign*": { "math": true, "align": true },
    "eqnarray": { "math": true, "align": true },
    "eqnarray*": { "math": true, "align": true },

    "aligned": { "math": true, "align": true },
    "alignedat": { "math": true, "align": true },
    "split": { "math": true, "align": true },
    "cases": { "math": true, "align": true },
    "dcases": { "math": true, "align": true },
    "matrix": { "math": true, "align": true },
    "pmatrix": { "math": true, "align": true },
    "bmatrix": { "math": true, "align": true },
    "Bmatrix": { "math": true, "align": true },
    "vmatrix": { "math": true, "align": true },
    "Vmatrix": { "math": true, "align": true },
    "smallmatrix": { "math": true, "align": true },
    "tikzcd": { "args": [{ "kind": "opt", "content": "keyval" }], "math": true }
  }
}