Home

Awesome

pg-formatter

Canonical Code Style Twitter Follow

A PostgreSQL SQL syntax beautifier.

Note:

This project is a thin wrapper of https://github.com/darold/pgFormatter. Execution of the module relies on Perl being available on the host system.

Usage

import {
  format
} from 'pg-formatter';

format(`SELECT foo FROM bar`);

Configuration

ConfigurationFormatDefaultDescriptionpgFormatter equivalent
anonymizebooleanfalseObscure all literals in queries, useful to hide confidential data before formatting.anonymize
commaBreakbooleanfalseAdd a newline after each comma in an insert statement.comma-break
functionCasestring ("unchanged", "lowercase", "uppercase", "capitalize")unchangedChange the case of the function names.function-case
keywordCasestring ("unchanged", "lowercase", "uppercase", "capitalize")unchangedChange the case of the reserved keyword.keyword-case
noRcFilebooleanfalseDo not read ~/.pg_format automatically.no-rcfile
placeholderstring (regex)N/ARegex to find code that must not be changed.placeholder
spacesnumber4Number of spaces to indent the code.spaces
stripCommentsbooleanfalseRemove any comment from SQL code.nocomment
tabsbooleanfalseUse tabs instead of spaces. When true, the spaces option is ignored.tabs

CLI Usage

$ npm install pg-formatter -g
$ pg-formatter --help
Formats SQL files

Options:
      --version         Show version number                            [boolean]
      --anonymize       Obscure all literals in queries, useful to hide
                        confidential data before formatting.
                                                      [boolean] [default: false]
      --comma-break     Add a newline after each comma in an insert statement.
                                                      [boolean] [default: false]
      --function-case   Change the case of the function names.
         [string] [choices: "unchanged", "lowercase", "uppercase", "capitalize"]
                                                          [default: "unchanged"]
  -i, --inplace         Override input file with formatted content.
                                                      [boolean] [default: false]
      --keyword-case    Change the case of the reserved keyword.
         [string] [choices: "unchanged", "lowercase", "uppercase", "capitalize"]
                                                          [default: "unchanged"]
      --no-rc-file      Do not read ~/.pg_format automatically.
                                                      [boolean] [default: false]
      --placeholder     Regex to find code that must not be changed.    [string]
      --spaces          Number of spaces to indent the code.
                                                           [number] [default: 4]
      --strip-comments  Remove any comment from SQL code.
                                                      [boolean] [default: false]
      --tabs            Use tabs instead of spaces. When true, the spaces option
                        is ignored.                   [boolean] [default: false]
      --help            Show help                                      [boolean]