# notes for additional commands
# 
# nargs: '*'                    to allow multiple arguments
# kwargs: &fookwargs            to definite keyword arguments
# kwargs: *fookwargs            to use the same keyword arguments as fookwargs
# NAME:   1                     to allow single keyword arguments
# NAME:   +                     to allow multiple keyword arguments
# NAME:   *                     to allow multiple keyword arguments
# spelling: FOO                 to use foo to FOO spelling

parse:
  additional_commands:
    FetchContent_Declare:
      pargs:
        nargs: '*'
        flags: []
      kwargs:
        GIT_TAG: 1
        GITHUB_REPOSITORY: 1
        GITLAB_REPOSITORY: 1
        GIT_REPOSITORY: 1
        SVN_REPOSITORY: 1
        SVN_REVISION: 1
        URL: 1
        URL_HASH: 1
        URL_MD5: 1
        FIND_PACKAGE_ARGS: +
    FetchContent_MakeAvailable:
      pargs:
        nargs: '*'
        flags: []
    execute_process:
      pargs:
        nargs: '*'
        flags: []
      kwargs:
        COMMAND: +
        WORKING_DIRECTORY: 1
    set_target_properties:
      pargs:
        nargs: '*'
        flags: []
      kwargs:
        PROPERTIES: +
        IMPORTED_LOCATION: 1
        INTERFACE_INCLUDE_DIRECTORIES: 1
format:
      tab_size: 2
      line_width: 120
      autosort: true
      dangle_parens: true
      max_subgroups_hwrap: 2
      max_pargs_hwrap: 3