{
  "name": "R",
  "description": "Start R or invoke an R tool using CMD",
  "options": [
    {
      "names": [
        "--help",
        "-h"
      ],
      "description": "Print help message and exit"
    },
    {
      "names": [
        "--version",
        "-v"
      ],
      "description": "Print version info and exit"
    },
    {
      "names": [
        "--encoding"
      ],
      "description": "Specify encoding to be used for stdin",
      "separator": "=",
      "args": [
        {
          "name": "encoding",
          "suggestions": [
            "UTF-8"
          ]
        }
      ]
    },
    {
      "names": [
        "--save"
      ],
      "description": "Save workspace at the end of the session",
      "exclusiveOn": [
        "--no-save",
        "--vanilla"
      ]
    },
    {
      "names": [
        "--no-save"
      ],
      "description": "Do not save workspace at the end of the session",
      "exclusiveOn": [
        "--save"
      ]
    },
    {
      "names": [
        "--no-environ"
      ],
      "description": "Do not read the site and user environment files"
    },
    {
      "names": [
        "--no-site-file"
      ],
      "description": "Do not read the site-wide Rprofile"
    },
    {
      "names": [
        "--no-init-file"
      ],
      "description": "Do not read the user R profile"
    },
    {
      "names": [
        "--restore"
      ],
      "description": "Do restore previously saved objects at startup",
      "exclusiveOn": [
        "--no-restore-data",
        "--vanilla"
      ]
    },
    {
      "names": [
        "--no-restore-data"
      ],
      "description": "Do not restore previously saved objects",
      "exclusiveOn": [
        "--restore"
      ]
    },
    {
      "names": [
        "--no-restore-history"
      ],
      "description": "Do not restore the R history file"
    },
    {
      "names": [
        "--no-restore"
      ],
      "description": "Do not restore anything"
    },
    {
      "names": [
        "--vanilla"
      ],
      "description": "Combine --no-save, --no-restore, --no-site-file, --no-init-file and --no-environ",
      "exclusiveOn": [
        "--save",
        "--restore"
      ]
    },
    {
      "names": [
        "--no-readline"
      ],
      "description": "Do not use readline for command-line editing"
    },
    {
      "names": [
        "--max-ppsize"
      ],
      "description": "Set max size of protect stack",
      "separator": "=",
      "args": [
        {
          "name": "max size",
          "description": "Max size of protect stack"
        }
      ]
    },
    {
      "names": [
        "--min-nsize"
      ],
      "description": "Set min number of fixed size obj's ('cons cells')",
      "separator": "=",
      "args": [
        {
          "name": "min size",
          "description": "Minimum number of fixed size objects"
        }
      ]
    },
    {
      "names": [
        "--min-vsize"
      ],
      "description": "Set vector heap minimum (in bytes or '4M' = 4 MegaB)",
      "separator": "=",
      "args": [
        {
          "name": "min vsize",
          "description": "Minimum vector heap size"
        }
      ]
    },
    {
      "names": [
        "--quiet",
        "--silent",
        "-q"
      ],
      "description": "Do not print startup message",
      "exclusiveOn": [
        "--verbose"
      ]
    },
    {
      "names": [
        "--no-echo",
        "-s"
      ],
      "description": "Make R run as quietly as possible"
    },
    {
      "names": [
        "--interactive"
      ],
      "description": "Force an interactive session"
    },
    {
      "names": [
        "--verbose"
      ],
      "description": "Print more information about progress",
      "exclusiveOn": [
        "--quiet",
        "--silent",
        "-q",
        "--no-echo",
        "-s"
      ]
    },
    {
      "names": [
        "--debugger",
        "-d"
      ],
      "description": "Run R through a debugger",
      "separator": "=",
      "args": [
        {
          "name": "debugger",
          "description": "Debugger to use"
        }
      ]
    },
    {
      "names": [
        "--debugger-args"
      ],
      "description": "Pass arguments to the debugger",
      "separator": "=",
      "args": [
        {
          "name": "args",
          "description": "Arguments for the debugger"
        }
      ]
    },
    {
      "names": [
        "--gui",
        "-g"
      ],
      "description": "Type of GUI to use",
      "separator": "=",
      "args": [
        {
          "name": "gui",
          "description": "Type of GUI",
          "suggestions": [
            "X11",
            "Tk"
          ]
        }
      ]
    },
    {
      "names": [
        "--arch"
      ],
      "description": "Specify a sub-architecture",
      "separator": "=",
      "args": [
        {
          "name": "arch",
          "description": "Sub-architecture"
        }
      ]
    },
    {
      "names": [
        "--args"
      ],
      "description": "Skip the rest of the command line"
    },
    {
      "names": [
        "--file",
        "-f"
      ],
      "description": "Take input from a file",
      "separator": "=",
      "args": [
        {
          "name": "file",
          "description": "File to run",
          "template": "filepaths"
        }
      ]
    },
    {
      "names": [
        "-e"
      ],
      "description": "Execute and R expression and exit",
      "separator": "=",
      "args": [
        {
          "name": "expr",
          "description": "Expression to evaluate"
        }
      ]
    }
  ],
  "subcommands": [
    {
      "name": "RHOME",
      "description": "Print path to R home directory and exit"
    },
    {
      "name": "CMD",
      "description": "Invoke an R tool",
      "subcommands": [
        {
          "name": "BATCH",
          "description": "Batch Execution of R",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--no-timing"
              ],
              "description": "Do not report the timings"
            },
            {
              "names": [
                "--"
              ],
              "description": "End processing of options"
            }
          ],
          "args": [
            {
              "name": "infile",
              "description": "A file with R code to be executed",
              "template": "filepaths"
            },
            {
              "name": "outfile",
              "description": "A file to which to write output. If not given, the name used is that of infile, with a possible .R extension stripped, and .Rout appended"
            }
          ]
        },
        {
          "name": "COMPILE",
          "description": "Compile files for use with R (not available on Windows)",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            }
          ],
          "args": [
            {
              "name": "files",
              "description": "Source files to be compiled",
              "isVariadic": true,
              "template": "filepaths"
            }
          ]
        },
        {
          "name": "SHLIB",
          "description": "Compile the given source files and then link all specified object files",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--clean",
                "-c"
              ],
              "description": "Remove files created during compilation"
            },
            {
              "names": [
                "--preclean"
              ],
              "description": "Remove files created during a previous run"
            },
            {
              "names": [
                "--output",
                "-o"
              ],
              "description": "Name for the built library",
              "separator": "=",
              "args": [
                {
                  "name": "LIB",
                  "description": "Full name for the built library"
                }
              ]
            },
            {
              "names": [
                "--dry-run",
                "-n"
              ],
              "description": "Dry run; shows commands that would be used"
            },
            {
              "names": [
                "--use-LTO"
              ],
              "description": "Use Link-Time Optimization",
              "exclusiveOn": [
                "--no-use-LTO"
              ]
            },
            {
              "names": [
                "--no-use-LTO"
              ],
              "description": "Do not use Link-Time Optimization",
              "exclusiveOn": [
                "--use-LTO"
              ]
            },
            {
              "names": [
                "--debug",
                "-d"
              ],
              "description": "Build a debug DLL (Windows only)"
            }
          ],
          "args": [
            {
              "name": "files",
              "description": "The object files to be included in the shared object/DLL",
              "isVariadic": true,
              "template": "filepaths"
            }
          ]
        },
        {
          "name": "INSTALL",
          "description": "Utility for installing add-on packages",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--clean",
                "-c"
              ],
              "description": "Remove files created during compilation"
            },
            {
              "names": [
                "--preclean"
              ],
              "description": "Remove files created during a previous run"
            },
            {
              "names": [
                "--debug",
                "-d"
              ],
              "description": "Turn on debugging messages"
            },
            {
              "names": [
                "--library",
                "-l"
              ],
              "description": "Install packages to library tree LIB",
              "separator": "=",
              "args": [
                {
                  "name": "LIB",
                  "description": "Path to the R library tree to install to",
                  "generators": [
                    {
                      "script": [
                        "Rscript",
                        "-e",
                        ".libPaths()"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--no-configure"
              ],
              "description": "Do not use the package's configure script"
            },
            {
              "names": [
                "--no-docs"
              ],
              "description": "Do not install HTML, LaTeX or examples help"
            },
            {
              "names": [
                "--html"
              ],
              "description": "Build HTML help",
              "exclusiveOn": [
                "--no-html"
              ]
            },
            {
              "names": [
                "--no-html"
              ],
              "description": "Do not build HTML help",
              "exclusiveOn": [
                "--html"
              ]
            },
            {
              "names": [
                "--latex"
              ],
              "description": "Install LaTeX help"
            },
            {
              "names": [
                "--example"
              ],
              "description": "Install R code for help examples"
            },
            {
              "names": [
                "--fake"
              ],
              "description": "Do minimal install for testing purposes"
            },
            {
              "names": [
                "--no-lock"
              ],
              "description": "Install on top of any existing installation without using a lock directory",
              "exclusiveOn": [
                "--lock",
                "--pkglock"
              ]
            },
            {
              "names": [
                "--lock"
              ],
              "description": "Use a per-library lock directory (default)",
              "exclusiveOn": [
                "--no-lock",
                "--pkglock"
              ]
            },
            {
              "names": [
                "--pkglock"
              ],
              "description": "Use a per-package lock directory (default for a single package)",
              "exclusiveOn": [
                "--no-lock",
                "--lock"
              ]
            },
            {
              "names": [
                "--build"
              ],
              "description": "Build binaries of the installed package(s)"
            },
            {
              "names": [
                "--install-tests"
              ],
              "description": "Install package-specific tests (if any)"
            },
            {
              "names": [
                "--no-R"
              ],
              "description": "Suppress installation of the package R code"
            },
            {
              "names": [
                "--no-libs"
              ],
              "description": "Suppress installation of the package libs"
            },
            {
              "names": [
                "--no-data"
              ],
              "description": "Suppress installation of the package data"
            },
            {
              "names": [
                "--no-help"
              ],
              "description": "Suppress installation of the package help"
            },
            {
              "names": [
                "--no-demo"
              ],
              "description": "Suppress installation of the package demo"
            },
            {
              "names": [
                "--no-exec"
              ],
              "description": "Suppress installation of the 'exec' directory"
            },
            {
              "names": [
                "--no-inst"
              ],
              "description": "Suppress installation of the 'inst' directory"
            },
            {
              "names": [
                "--no-multiarch"
              ],
              "description": "Build only the main architecture"
            },
            {
              "names": [
                "--libs-only"
              ],
              "description": "Only install the libs directory"
            },
            {
              "names": [
                "--data-compress"
              ],
              "description": "Compression to be used for lazy-loading of data",
              "separator": "=",
              "args": [
                {
                  "name": "compression",
                  "description": "Compression method",
                  "suggestions": [
                    "gzip",
                    "none",
                    "bzip2",
                    "xz"
                  ]
                }
              ]
            },
            {
              "names": [
                "--resave-data"
              ],
              "description": "Re-save data files as compactly as possible"
            },
            {
              "names": [
                "--compact-docs"
              ],
              "description": "Re-compress PDF files under inst/doc"
            },
            {
              "names": [
                "--with-keep.source"
              ],
              "description": "'keep.source' for R code",
              "exclusiveOn": [
                "--without-keep.source"
              ]
            },
            {
              "names": [
                "--without-keep.source"
              ],
              "description": "Do not use 'keep.source' for R code",
              "exclusiveOn": [
                "--with-keep.source"
              ]
            },
            {
              "names": [
                "--with-keep.parse.data"
              ],
              "description": "Use 'keep.parse.data' for R code",
              "exclusiveOn": [
                "--without-keep.parse.data"
              ]
            },
            {
              "names": [
                "--without-keep.parse.data"
              ],
              "description": "Do not 'keep.parse.data' for R code",
              "exclusiveOn": [
                "--with-keep.parse.data"
              ]
            },
            {
              "names": [
                "--byte-compile"
              ],
              "description": "Byte-compile R code",
              "exclusiveOn": [
                "--no-byte-compile"
              ]
            },
            {
              "names": [
                "--no-byte-compile"
              ],
              "description": "Do not byte-compile R code",
              "exclusiveOn": [
                "--byte-compile"
              ]
            },
            {
              "names": [
                "--staged-install"
              ],
              "description": "Install to a temporary directory and then move to the target directory (default)",
              "exclusiveOn": [
                "--staged-install"
              ]
            },
            {
              "names": [
                "--no-staged-install"
              ],
              "description": "Install directly to the target directory",
              "exclusiveOn": [
                "--no-staged-install"
              ]
            },
            {
              "names": [
                "--no-test-load"
              ],
              "description": "Skip test of loading installed package"
            },
            {
              "names": [
                "--no-clean-on-error"
              ],
              "description": "Do not remove installed package on error"
            },
            {
              "names": [
                "--merge-multiarch"
              ],
              "description": "Multi-arch by merging (from a single tarball only)"
            },
            {
              "names": [
                "--use-vanilla"
              ],
              "description": "Do not read any Renviron or Rprofile files"
            },
            {
              "names": [
                "--use-LTO"
              ],
              "description": "Use Link-Time Optimization",
              "exclusiveOn": [
                "--no-use-LTO"
              ]
            },
            {
              "names": [
                "--no-use-LTO"
              ],
              "description": "Do not use Link-Time Optimization",
              "exclusiveOn": [
                "--use-LTO"
              ]
            },
            {
              "names": [
                "--configure-args"
              ],
              "description": "Set arguments for the configure scripts",
              "separator": "=",
              "args": [
                {
                  "name": "ARGS",
                  "description": "Arguments for the configure script"
                }
              ]
            },
            {
              "names": [
                "--configure-vars"
              ],
              "description": "Set variables for the configure scripts",
              "separator": "=",
              "args": [
                {
                  "name": "ARGS",
                  "description": "Variables for the configure scripts"
                }
              ]
            },
            {
              "names": [
                "--strip"
              ],
              "description": "Strip shared object(s) (Unix only)"
            },
            {
              "names": [
                "--strip-lib"
              ],
              "description": "Strip static/dynamic libraries under 'lib/' (Unix only)"
            },
            {
              "names": [
                "--dsym"
              ],
              "description": "Generate dSYM directory (macOS only)"
            },
            {
              "names": [
                "--built-timestamp"
              ],
              "description": "Set timestamp for 'Built' entry in DESCRIPTION (Unix only)",
              "separator": "=",
              "args": [
                {
                  "name": "STAMP",
                  "description": "A timestamp for the build (Unix only)"
                }
              ]
            },
            {
              "names": [
                "--force-biarch"
              ],
              "description": "Attempt to build both architectures (Windows only)"
            },
            {
              "names": [
                "--compile-both"
              ],
              "description": "Compile both architectures on 32-bit Windows (Windows only)"
            }
          ],
          "args": [
            {
              "name": "packages",
              "description": "Directories with the package sources",
              "generators": [
                {
                  "template": "folders"
                }
              ]
            }
          ]
        },
        {
          "name": "REMOVE",
          "description": "Remove add-on packages",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--library",
                "-l"
              ],
              "description": "The library tree to remove from",
              "separator": "=",
              "args": [
                {
                  "name": "LIB",
                  "description": "Library tree",
                  "generators": [
                    {
                      "script": [
                        "Rscript",
                        "-e",
                        ".libPaths()"
                      ]
                    }
                  ]
                }
              ]
            }
          ],
          "args": [
            {
              "name": "packages",
              "description": "Packages to remove",
              "isVariadic": true
            }
          ]
        },
        {
          "name": "build",
          "description": "Build R packages from package sources",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--force"
              ],
              "description": "Force removal of INDEX file",
              "isDangerous": true
            },
            {
              "names": [
                "--keep-empty-dirs"
              ],
              "description": "Do not remove empty dirs"
            },
            {
              "names": [
                "--no-build-vignettes"
              ],
              "description": "Do not (re)build package vignettes"
            },
            {
              "names": [
                "--no-manual"
              ],
              "description": "Do not build the PDF manual"
            },
            {
              "names": [
                "--resave-data"
              ],
              "description": "Re-save data files as compactly as possible",
              "separator": "=",
              "exclusiveOn": [
                "--no-resave-data"
              ],
              "args": [
                {
                  "name": "Compression method",
                  "isOptional": true,
                  "suggestions": [
                    "best",
                    "gzip",
                    "no"
                  ]
                }
              ]
            },
            {
              "names": [
                "--no-resave-data"
              ],
              "description": "Do not save data",
              "exclusiveOn": [
                "--resave-data"
              ]
            },
            {
              "names": [
                "--compact-vignettes"
              ],
              "description": "Try to compact PDF files under 'inst/doc'",
              "separator": "=",
              "args": [
                {
                  "name": "Compression method",
                  "isOptional": true,
                  "suggestions": [
                    "no",
                    "qpdf",
                    "gs",
                    "gs+qpdf",
                    "both"
                  ]
                }
              ]
            },
            {
              "names": [
                "--compression"
              ],
              "description": "Type of compression to be used on tarball",
              "separator": "=",
              "args": [
                {
                  "name": "Compression method",
                  "isOptional": true,
                  "suggestions": [
                    "gzip",
                    "none",
                    "bzip2",
                    "xz"
                  ]
                }
              ]
            },
            {
              "names": [
                "--md5"
              ],
              "description": "Add MD5 sums"
            },
            {
              "names": [
                "--log"
              ],
              "description": "Log to file 'pkg-00build.log' when processing the pkgdir with basename 'pkg'"
            }
          ],
          "args": [
            {
              "name": "pakgdirs",
              "description": "Package directories",
              "isVariadic": true,
              "generators": [
                {
                  "template": "folders"
                }
              ]
            }
          ]
        },
        {
          "name": "check",
          "description": "Check R packages from package sources",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--library",
                "-lib"
              ],
              "description": "Library used for test installation of packages",
              "args": [
                {
                  "name": "LIB",
                  "description": "Library tree",
                  "generators": [
                    {
                      "template": "folders"
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--output",
                "-o"
              ],
              "description": "Directory for output",
              "separator": "=",
              "args": [
                {
                  "name": "directory",
                  "description": "Directory for output",
                  "generators": [
                    {
                      "template": "folders"
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--no-clean"
              ],
              "description": "Do not clean 'outdir' before using it"
            },
            {
              "names": [
                "--no-codoc"
              ],
              "description": "Do not check for code/documentation mismatches"
            },
            {
              "names": [
                "--no-examples"
              ],
              "description": "Do not run the examples in the Rd files"
            },
            {
              "names": [
                "--no-install"
              ],
              "description": "Skip installation and associated tests"
            },
            {
              "names": [
                "--no-tests"
              ],
              "description": "Do not run code in 'tests' subdirectory"
            },
            {
              "names": [
                "--no-manual"
              ],
              "description": "Do not produce the PDF manual"
            },
            {
              "names": [
                "--no-vignettes"
              ],
              "description": "Do not run R code in vignettes nor build outputs"
            },
            {
              "names": [
                "--no-build-vignettes"
              ],
              "description": "Do not build vignette outputs"
            },
            {
              "names": [
                "--ignore-vignettes"
              ],
              "description": "Skip all tests on vignettes"
            },
            {
              "names": [
                "--run-dontrun"
              ],
              "description": "Do run `dontrun{}` sections in the Rd files"
            },
            {
              "names": [
                "--run-donttest"
              ],
              "description": "Do run `donttest{}` sections in the Rd files"
            },
            {
              "names": [
                "--use-gct"
              ],
              "description": "Use `gctorture(TRUE)` when running examples, tests"
            },
            {
              "names": [
                "--use-valgrind"
              ],
              "description": "Use `valgrind` when running examples, tests, vignettes"
            },
            {
              "names": [
                "--timings"
              ],
              "description": "Record timings for examples"
            },
            {
              "names": [
                "--install-args"
              ],
              "description": "Command-line args to be passed to INSTALL",
              "separator": "=",
              "args": [
                {
                  "name": "args",
                  "description": "Command-line args to be passed to INSTALL"
                }
              ]
            },
            {
              "names": [
                "--test-dir"
              ],
              "description": "Look in this subdirectory for test scripts",
              "separator": "=",
              "args": [
                {
                  "name": "directory",
                  "description": "Directory with the tests directory",
                  "generators": [
                    {
                      "template": "folders"
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--no-stop-on-test-error"
              ],
              "description": "Do not stop running tests after first error"
            },
            {
              "names": [
                "--check-subdirs"
              ],
              "description": "Run checks on the package subdirectories",
              "separator": "=",
              "args": [
                {
                  "name": "yes-or-no",
                  "description": "Run checks on subdirectories?",
                  "suggestions": [
                    "default",
                    "yes",
                    "no"
                  ]
                }
              ]
            },
            {
              "names": [
                "--as-cran"
              ],
              "description": "Select customizations similar to those used by CRAN"
            },
            {
              "names": [
                "--extra-arch"
              ],
              "description": "Do only runtime tests needed for an additional sub-architecture"
            },
            {
              "names": [
                "--multiarch"
              ],
              "description": "Do runtime tests on all installed sub-archs",
              "exclusiveOn": [
                "--no-multiarch"
              ]
            },
            {
              "names": [
                "--no-multiarch"
              ],
              "description": "Do runtime tests only on the main sub-architecture",
              "exclusiveOn": [
                "--multiarch"
              ]
            },
            {
              "names": [
                "--force-multiarch"
              ],
              "description": "Run tests on all sub-archs even for packages with no compiled code",
              "exclusiveOn": [
                "--no-multiarch"
              ]
            }
          ],
          "args": [
            {
              "name": "packages",
              "description": "Packages to check",
              "isVariadic": true,
              "template": "filepaths"
            }
          ]
        },
        {
          "name": "LINK",
          "description": "Perform the specified linkcmd",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            }
          ],
          "args": [
            {
              "name": "linkcmd",
              "description": "Command for linkcmd"
            }
          ]
        },
        {
          "name": "rprof",
          "description": "Post-process profiling information from `Rprof()`",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--lines"
              ],
              "description": "Print line information"
            },
            {
              "names": [
                "--total"
              ],
              "description": "Print only by total"
            },
            {
              "names": [
                "--self"
              ],
              "description": "Print only by self"
            },
            {
              "names": [
                "--linesonly"
              ],
              "description": "Print only by line"
            },
            {
              "names": [
                "--min%total"
              ],
              "description": "Minimum % to print for 'by total'",
              "separator": "=",
              "args": [
                {
                  "name": "min % total",
                  "description": "Minimum % to print for 'by total'",
                  "suggestions": [
                    "1",
                    "10",
                    "50"
                  ]
                }
              ]
            },
            {
              "names": [
                "--min%self"
              ],
              "description": "Minimum % to print for 'by self'",
              "separator": "=",
              "args": [
                {
                  "name": "min % self",
                  "description": "Minimum % to print for 'by self'",
                  "suggestions": [
                    "1",
                    "10",
                    "50"
                  ]
                }
              ]
            }
          ],
          "args": [
            {
              "name": "Rprof output file",
              "description": "File generated by `Rprof()`",
              "isOptional": true,
              "generators": [
                {
                  "template": "filepaths"
                }
              ]
            }
          ]
        },
        {
          "name": "Rdconv",
          "description": "Convert R documentation to other formats",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--type",
                "-t"
              ],
              "description": "Output format type",
              "isRequired": true,
              "separator": "=",
              "args": [
                {
                  "name": "type",
                  "description": "Output format type",
                  "suggestions": [
                    "txt",
                    "html",
                    "latex",
                    "example"
                  ]
                }
              ]
            },
            {
              "names": [
                "--encoding"
              ],
              "description": "Encoding of the output",
              "separator": "=",
              "args": [
                {
                  "name": "enc",
                  "description": "Output encoding"
                }
              ]
            },
            {
              "names": [
                "--package"
              ],
              "description": "Package name",
              "separator": "=",
              "args": [
                {
                  "name": "package",
                  "description": "Package name"
                }
              ]
            },
            {
              "names": [
                "--output",
                "-o"
              ],
              "description": "The output file",
              "separator": "=",
              "args": [
                {
                  "name": "output file",
                  "description": "Name of the output file, '\"\"' to use the input file without '.Rd'",
                  "suggestions": [
                    "\"\"",
                    "-"
                  ]
                }
              ]
            },
            {
              "names": [
                "--os",
                "--OS"
              ],
              "description": "Set name of OS ('unix' or 'windows')",
              "separator": "=",
              "args": [
                {
                  "name": "OS",
                  "description": "Name of the OS",
                  "suggestions": [
                    "unix",
                    "windows"
                  ]
                }
              ]
            },
            {
              "names": [
                "--RdMacros"
              ],
              "description": "Packages from which to get Rd macros",
              "separator": "=",
              "args": [
                {
                  "name": "package list",
                  "description": "List of packages"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "R doc file to convert",
              "template": "filepaths"
            }
          ]
        },
        {
          "name": "Rd2pdf",
          "description": "Generate PDF output from R documentation files",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--batch"
              ],
              "description": "No interaction between files"
            },
            {
              "names": [
                "--no-clean"
              ],
              "description": "Do not remove created temporary files"
            },
            {
              "names": [
                "--no-preview"
              ],
              "description": "Do not preview generated PDF file"
            },
            {
              "names": [
                "--encoding"
              ],
              "description": "Set the default input encoding",
              "separator": "=",
              "args": [
                {
                  "name": "enc",
                  "description": "Output encoding"
                }
              ]
            },
            {
              "names": [
                "--outputEncoding"
              ],
              "description": "Set the default output encoding",
              "separator": "=",
              "args": [
                {
                  "name": "enc",
                  "description": "Output encoding"
                }
              ]
            },
            {
              "names": [
                "--os",
                "--OS"
              ],
              "description": "Set name of OS ('unix' or 'windows')",
              "separator": "=",
              "args": [
                {
                  "name": "OS",
                  "description": "Name of the OS",
                  "suggestions": [
                    "unix",
                    "windows"
                  ]
                }
              ]
            },
            {
              "names": [
                "--output",
                "-o"
              ],
              "description": "Write output to a file",
              "separator": "=",
              "args": [
                {
                  "name": "file",
                  "description": "Name of output file"
                }
              ]
            },
            {
              "names": [
                "--force"
              ],
              "description": "Overwrite output file if it exists",
              "isDangerous": true
            },
            {
              "names": [
                "--title"
              ],
              "description": "Set the title of the document",
              "separator": "=",
              "args": [
                {
                  "name": "title",
                  "description": "Title of the document"
                }
              ]
            },
            {
              "names": [
                "--no-index"
              ],
              "description": "Do not index output"
            },
            {
              "names": [
                "--no-description"
              ],
              "description": "Do not typeset the description of a package"
            },
            {
              "names": [
                "--internals"
              ],
              "description": "Typeset 'internal' documentation (usually skipped)"
            },
            {
              "names": [
                "--build_dir"
              ],
              "description": "Set the working directory",
              "separator": "=",
              "args": [
                {
                  "name": "working dir",
                  "description": "Working directory for the build",
                  "generators": [
                    {
                      "template": "folders"
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--RdMacros"
              ],
              "description": "Packages from which to get Rd macros",
              "separator": "=",
              "args": [
                {
                  "name": "package list",
                  "description": "List of packages"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "files or pkgs",
              "description": "Rd files, or a directory with the sources of a pkg, or an installed pkg",
              "generators": [
                {
                  "template": "folders"
                }
              ]
            }
          ]
        },
        {
          "name": "Rd2txt",
          "description": "Convert R documentation to text",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--type",
                "-t"
              ],
              "description": "Output format type",
              "isRequired": true,
              "separator": "=",
              "args": [
                {
                  "name": "type",
                  "description": "Output format type",
                  "suggestions": [
                    "txt",
                    "html",
                    "latex",
                    "example"
                  ]
                }
              ]
            },
            {
              "names": [
                "--encoding"
              ],
              "description": "Encoding of the output",
              "separator": "=",
              "args": [
                {
                  "name": "enc",
                  "description": "Output encoding"
                }
              ]
            },
            {
              "names": [
                "--package"
              ],
              "description": "Package name",
              "separator": "=",
              "args": [
                {
                  "name": "package",
                  "description": "Package name"
                }
              ]
            },
            {
              "names": [
                "--output",
                "-o"
              ],
              "description": "The output file",
              "separator": "=",
              "args": [
                {
                  "name": "output file",
                  "description": "Name of the output file, '\"\"' to use the input file without '.Rd'",
                  "suggestions": [
                    "\"\"",
                    "-"
                  ]
                }
              ]
            },
            {
              "names": [
                "--os",
                "--OS"
              ],
              "description": "Set name of OS ('unix' or 'windows')",
              "separator": "=",
              "args": [
                {
                  "name": "OS",
                  "description": "Name of the OS",
                  "suggestions": [
                    "unix",
                    "windows"
                  ]
                }
              ]
            },
            {
              "names": [
                "--RdMacros"
              ],
              "description": "Packages from which to get Rd macros",
              "separator": "=",
              "args": [
                {
                  "name": "package list",
                  "description": "List of packages"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "R doc file to convert",
              "template": "filepaths"
            }
          ]
        },
        {
          "name": "Stangle",
          "description": "A front-end for Stangle and other vignette engines",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--engine"
              ],
              "description": "Use named vignette engine",
              "separator": "=",
              "args": [
                {
                  "name": "pkg::engine",
                  "description": "Vignette engine",
                  "suggestions": [
                    "Stangle",
                    "knitr::knit",
                    "utils::Sweave"
                  ]
                }
              ]
            },
            {
              "names": [
                "--encoding"
              ],
              "description": "Set the encoding for file",
              "separator": "=",
              "args": [
                {
                  "name": "enc",
                  "description": "File encoding"
                }
              ]
            },
            {
              "names": [
                "--options"
              ],
              "description": "Comma-separated list of Stangle options",
              "separator": "=",
              "args": [
                {
                  "name": "options",
                  "description": "Options for Stangle"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "File to process",
              "generators": [
                {
                  "template": "folders"
                }
              ]
            }
          ]
        },
        {
          "name": "Sweave",
          "description": "A front-end for Sweave and other vignette engines",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--driver"
              ],
              "description": "Use named Sweave driver",
              "separator": "=",
              "args": [
                {
                  "name": "driver",
                  "description": "Sweave driver"
                }
              ]
            },
            {
              "names": [
                "--engine"
              ],
              "description": "Use named vignette engine",
              "separator": "=",
              "args": [
                {
                  "name": "pkg::engine",
                  "description": "Vignette engine"
                }
              ]
            },
            {
              "names": [
                "--encoding=enc"
              ],
              "description": "Default encoding 'enc' for file",
              "separator": "=",
              "args": [
                {
                  "name": "enc",
                  "description": "File encoding"
                }
              ]
            },
            {
              "names": [
                "--clean"
              ],
              "description": "Remove some of the created files",
              "separator": "=",
              "args": [
                {
                  "name": "method",
                  "description": "How to clean the results",
                  "isOptional": true,
                  "suggestions": [
                    "default",
                    "keepOuts"
                  ]
                }
              ]
            },
            {
              "names": [
                "--options"
              ],
              "description": "Comma-separated list of Sweave/engine options",
              "separator": "=",
              "args": [
                {
                  "name": "options",
                  "description": "Options for Sweave/engine"
                }
              ]
            },
            {
              "names": [
                "--pdf"
              ],
              "description": "Convert to PDF document"
            },
            {
              "names": [
                "--compact"
              ],
              "description": "Try to compact PDF document",
              "separator": "=",
              "args": [
                {
                  "name": "Compacting method",
                  "description": "How to compact the PDF doc",
                  "isOptional": true,
                  "suggestions": [
                    "no",
                    "qpdf",
                    "gs",
                    "gs+qpdf",
                    "both"
                  ]
                }
              ]
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "Vignette to build",
              "generators": [
                {
                  "template": "filepaths"
                }
              ]
            }
          ]
        },
        {
          "name": "Rdiff",
          "description": "Diff R output files, discarding the R startup message",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            }
          ],
          "args": [
            {
              "name": "from",
              "description": "'From' R output file (or '-' for stdin)",
              "generators": [
                {
                  "template": "filepaths"
                }
              ]
            },
            {
              "name": "to",
              "description": "'To' R output file",
              "generators": [
                {
                  "template": "filepaths"
                }
              ]
            }
          ]
        },
        {
          "name": "config",
          "description": "Get the value of a basic R configure variable",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--cppflags"
              ],
              "description": "Print pre-processor flags required to compile a C/C++ file as part of a front-end using R as a library"
            },
            {
              "names": [
                "--ldflags"
              ],
              "description": "Print linker flags needed for linking a front-end against the R library"
            },
            {
              "names": [
                "--no-user-files"
              ],
              "description": "Ignore customization files under '~/.R'"
            },
            {
              "names": [
                "--no-site-files"
              ],
              "description": "Ignore site customization files under 'R_HOME/etc'"
            },
            {
              "names": [
                "--all"
              ],
              "description": "Print names and values of all variables"
            }
          ],
          "args": [
            {
              "name": "variable",
              "description": "R config variable",
              "suggestions": [
                "AR",
                "BLAS_LIBS",
                "CC",
                "CFLAGS",
                "CPICFLAGS",
                "CPPFLAGS",
                "CXX",
                "CXXFLAGS",
                "CXXPICFLAGS",
                "CXX11",
                "CXX11STD",
                "CXX11FLAGS",
                "CXX11PICFLAGS",
                "CXX14",
                "CXX14STD",
                "CXX14FLAGS",
                "CXX14PICFLAGS",
                "CXX17",
                "CXX17STD",
                "CXX17FLAGS",
                "CXX17PICFLAGS",
                "CXX20",
                "CXX20STD",
                "CXX20FLAGS",
                "CXX20PICFLAGS",
                "DYLIB_EXT",
                "DYLIB_LD",
                "DYLIB_LDFLAGS",
                "FC",
                "FFLAGS",
                "FCFLAGS",
                "FLIBS",
                "FPICFLAGS",
                "JAR",
                "JAVA",
                "JAVAC",
                "JAVAH",
                "JAVA_HOME",
                "JAVA_LIBS",
                "JAVA_CPPFLAGS",
                "LAPACK_LIBS",
                "LIBnn",
                "LDFLAGS",
                "LTO",
                "MAKE",
                "NM",
                "OBJC",
                "OBJCFLAGS",
                "RANLIB",
                "SAFE_FFLAGS",
                "SHLIB_CFLAGS",
                "SHLIB_CXXFLAGS",
                "SHLIB_CXXLD",
                "SHLIB_CXXLDFLAGS",
                "SHLIB_EXT",
                "SHLIB_FFLAGS",
                "SHLIB_LD",
                "SHLIB_LDFLAGS",
                "TCLTK_CPPFLAGS",
                "TCLTK_LIBS"
              ]
            }
          ]
        },
        {
          "name": "javareconf",
          "description": "Detect current Java setup and update the corresponding configuration in R",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "-n",
                "--dry-run"
              ],
              "description": "Perform Java detection, but don't touch any configuration files"
            },
            {
              "names": [
                "-e"
              ],
              "description": "Same as -n but exports all detected variables and runs '<prog>'",
              "args": [
                {
                  "name": "program",
                  "description": "Program to run or '' to use shell"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "expression",
              "description": "Evaluate the corresponding expression",
              "isOptional": true,
              "suggestions": [
                "JAVA_HOME=/usr/lib/java",
                "JAVAC=/usr/bin/javac",
                "JAR=/usr/bin/jar"
              ]
            }
          ]
        },
        {
          "name": "rtags",
          "description": "Tag C, R, and Rd files under a directory",
          "options": [
            {
              "names": [
                "--help",
                "-h"
              ],
              "description": "Print help message and exit"
            },
            {
              "names": [
                "--version",
                "-v"
              ],
              "description": "Print version info and exit"
            },
            {
              "names": [
                "--output",
                "-o"
              ],
              "description": "Write output to a file",
              "args": [
                {
                  "name": "file",
                  "description": "Output file name",
                  "isOptional": true
                }
              ]
            },
            {
              "names": [
                "--no-c"
              ],
              "description": "Do not tag C (.c, .h) files"
            },
            {
              "names": [
                "--no-R"
              ],
              "description": "Do not tag R (.R, .r, .S, .s) files"
            },
            {
              "names": [
                "--no-Rd"
              ],
              "description": "Do not tag Rd (.Rd) files"
            },
            {
              "names": [
                "--ctags"
              ],
              "description": "Write Ctags format (default is Etags)"
            },
            {
              "names": [
                "--append",
                "-a"
              ],
              "description": "Append to output file (overwrites by default)"
            },
            {
              "names": [
                "--verbose",
                "-V"
              ],
              "description": "Echo the name of files processed"
            }
          ],
          "args": [
            {
              "name": "path",
              "description": "Directory in which files will be tagged",
              "isOptional": true
            }
          ]
        }
      ]
    }
  ]
}
