Package: reformat-gherkin
Reformat-gherkinTable of ContentsAboutInstallationUsageVersion control integrationAcknowledgementsAboutReformat-gherkin automatically formats Gherkin files. It ensures a consistent
look regardless of who wrote the file.It can be used either as a command-line tool, or apre-commithook.InstallationInstall reformat-gherkin usingpip.pipinstallreformat-gherkinIt requiresPython 3.7+to run.UsageTo get started straight away:reformat-gherkin{source_file_or_directory}You should get good results without specifying any options, as reformat-gherkin
uses sensible defaults.Command-line optionsYou can list the available options by runningreformat-gherkin --help.Usage: reformat-gherkin [OPTIONS] [SRC]...

  Reformat the given SRC files and all .feature files in SRC folders. If -
  is passed as a file, reformat stdin and print the result to stdout.

Options:
  --check                         Don't write the files back, just return the
                                  status. Return code 0 means nothing would
                                  change. Return code 1 means some files would
                                  be reformatted. Return code 123 means there
                                  was an internal error.

  -a, --alignment [left|right]    Specify the alignment of step keywords
                                  (Given, When, Then,...). If specified, all
                                  statements after step keywords are left-
                                  aligned, spaces are inserted before/after
                                  the keywords to right/left align them. By
                                  default, step keywords are left-aligned, and
                                  there is a single space between the step
                                  keyword and the statement.

  -n, --newline [LF|CRLF]         Specify the line separators when formatting
                                  files inplace. If not specified, line
                                  separators are preserved.

  --fast / --safe                 If --fast given, skip the sanity checks of
                                  file contents. [default: --safe]

  --single-line-tags / --multi-line-tags
                                  If --single-line-tags given, output
                                  consecutive tags on one line. If --multi-
                                  line-tags given, output one tag per line.
                                  [default: --single-line-tags]

  --tab-width INTEGER             Specify the number of spaces per
                                  indentation-level. [default: 2]

  --use-tabs                      Indent lines with tabs instead of spaces.
  --config FILE                   Read configuration from FILE.
  --version                       Show the version and exit.
  --help                          Show this message and exit.Reformat-gherkin is a well-behaved Unix-style command-line tool:it does nothing if no sources are passed to it;it will read from standard input and write to standard output if - is used as the filename;it only outputs messages to users on standard error;it exits with code 0 unless an internal error occurred (or --check was used).Config fileReformat-gherkin can read project-specific default values for its command line
options from a.reformat-gherkin.yamlfile.By default,reformat-gherkinlooks for the config file starting from the
common base directory of all files and directories passed on the command line.
If it's not there, it looks in parent directories. It stops looking when it
finds the file, or a .git directory, or a .hg directory, or the root of the file
system, whichever comes first.Example config file:check:Falsealignment:lefttab_width:4Version control integrationYou can integrate reformat-gherkin into your version control workflow by usingpre-commit. Once you have installed pre-commit, add
this to the.pre-commit-config.yamlfile in your repository:repos:
  - repo: https://github.com/ducminh-phan/reformat-gherkin
    rev: stable
    hooks:
      - id: reformat-gherkinThen runpre-commit installand you're ready to go.AcknowledgementsThis project is inspired byblack. Some
functions are taken fromblack's source code.