Files
PgTidy/docs/config/default.pgtidy.yaml
warkanum c8030247f2
CI / Test (push) Failing after 25s
CI / Build (push) Has been skipped
chore: more work done and planning with AI.
2026-06-30 22:43:25 +02:00

69 lines
2.9 KiB
YAML

# PgTidy house style — all fields with their default values.
# Place as .pgtidy.yaml in your project root (or any parent directory).
# Any field you omit keeps its default.
# --- Core ---
indent: " " # One indentation level (two spaces).
newline: "\n" # Line terminator emitted by the formatter.
# --- Casing ---
# upper | lower | preserve
keyword_case: upper # SQL keywords (SELECT, FROM, WHERE, …)
ident_case: lower # Unquoted identifiers (column/variable names)
type_case: lower # Built-in type names (text, integer, boolean, …)
alias_case: lower # Token immediately following AS in SELECT / FROM
builtin_case: lower # Built-in function names (COALESCE, MAX, NOW, …)
custom_type_case: lower # User-defined / domain types not in the built-in set
# --- Query layout ---
commas: leading # leading → ,col | trailing → col,
align_columns: false # Pad SELECT list items so values align vertically
align_line_comments: false # Align trailing -- comments within a block
select_align_as: false # Pad between expression and AS keyword in SELECT list
set_align_equal: false # Align = in UPDATE SET list
indent_join: false # Extra indentation for JOIN … ON lines
join_indent_size: 1 # Number of extra indent levels for JOINs
# always | when_long | never
where_wrap: always # Each AND/OR condition on its own line
where_and_or_indent: true # AND/OR indented one level under WHERE
# --- Subqueries ---
# same_line | new_line
subquery_opening: same_line # Opening ( placement
subquery_content: new_line # Content indentation inside parens
subquery_closing: new_line # Closing ) placement
subquery_space_before_paren: false # Space before ( in subqueries
# --- INSERT ---
insert_collapse_values: true # Fold multiple VALUES rows onto fewer lines
# --- Routines (functions / procedures) ---
align_param_types: true # Pad param names so type column aligns across all params
routine_as_wrap: true # Newline before AS $$ (false = keep AS on same line)
# --- PL/pgSQL body ---
plpgsql_max_blank_lines: 1 # Max consecutive blank lines in body
plpgsql_declare_align_type: false # Align type column in DECLARE block
plpgsql_declare_align_eq: false # Align := / = in DECLARE block
plpgsql_if_then_newline: true # THEN on its own line (false = same line as condition)
plpgsql_loop_collapse: true # Collapse empty loop bodies to one line
# --- Expressions ---
binary_op_align: false # Align =, <>, || etc. vertically in WHERE/expression lists
space_after_comma_in_calls: false # Space after , in function calls: func(a, b)
case_when_wrap: false # Each WHEN … THEN on its own line
case_end: new_line # END placement: same_line | new_line
case_collapse: false # Collapse short CASE expressions to one line
record_space_before_paren: false # Space before ( in ROW(…) / record constructors