mirror of
https://github.com/postgres/postgres.git
synced 2025-05-12 16:21:30 +03:00
Pgindent fixes for Tom, mostly indenting problems.
This commit is contained in:
parent
66e9ee79c7
commit
e7f47ed5b4
@ -33,6 +33,11 @@ do
|
|||||||
sed 's;\([} ]\)else[ ]*\(/\*.*\)$;\1else\
|
sed 's;\([} ]\)else[ ]*\(/\*.*\)$;\1else\
|
||||||
\2;g' |
|
\2;g' |
|
||||||
detab -t4 -qc |
|
detab -t4 -qc |
|
||||||
|
# work around bug where function that defines no local variables misindents
|
||||||
|
# switch() case lines and line after #else
|
||||||
|
sed 's,^{$,{\
|
||||||
|
int pgindent_func_no_var_fix;\
|
||||||
|
,g' |
|
||||||
# protect backslashes in DATA()
|
# protect backslashes in DATA()
|
||||||
sed 's;^DATA(.*$;/*&*/;' >/tmp/$$a
|
sed 's;^DATA(.*$;/*&*/;' >/tmp/$$a
|
||||||
|
|
||||||
@ -1309,7 +1314,21 @@ do
|
|||||||
# workaround indent bug
|
# workaround indent bug
|
||||||
sed 's;^static[ ][ ]*;static ;g' |
|
sed 's;^static[ ][ ]*;static ;g' |
|
||||||
sed 's;^}[ ][ ]*/\*;} /*;' |
|
sed 's;^}[ ][ ]*/\*;} /*;' |
|
||||||
|
# pull in #endif comments
|
||||||
sed 's;^#endif[ ][ ]*/\*;#endif /*;' |
|
sed 's;^#endif[ ][ ]*/\*;#endif /*;' |
|
||||||
|
# add space after comments that start on tab stops
|
||||||
|
sed 's,;\(/\*.*\*/\)$,; \1,' |
|
||||||
|
# work around #else indenting next line if #ifdef defines variables at top
|
||||||
|
# work around case misindenting function has no variables defined
|
||||||
|
awk '
|
||||||
|
{
|
||||||
|
if ($0 ~ "^[ ]*int[ ]*pgindent_func_no_var_fix;")
|
||||||
|
{
|
||||||
|
if (getline && $0 != "")
|
||||||
|
print $0;
|
||||||
|
}
|
||||||
|
else print $0;
|
||||||
|
}' |
|
||||||
detab -t8 -qc |
|
detab -t8 -qc |
|
||||||
entab -t4 -qc |
|
entab -t4 -qc |
|
||||||
# move trailing * in function return type
|
# move trailing * in function return type
|
||||||
@ -1373,6 +1392,30 @@ do
|
|||||||
if (skips <= 2)
|
if (skips <= 2)
|
||||||
print line2;
|
print line2;
|
||||||
}' |
|
}' |
|
||||||
|
# remove blank line before #endif
|
||||||
|
awk '
|
||||||
|
{
|
||||||
|
line2 = $0;
|
||||||
|
if (skips > 0)
|
||||||
|
skips--;
|
||||||
|
if (line1 ~ "^$" &&
|
||||||
|
line2 ~ "^#endif")
|
||||||
|
{
|
||||||
|
print line2;
|
||||||
|
line1 = "";
|
||||||
|
line2 = "";
|
||||||
|
skips = 2;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if (skips == 0 && NR >= 2)
|
||||||
|
print line1;
|
||||||
|
line1 = line2;
|
||||||
|
line2 = "";
|
||||||
|
}
|
||||||
|
END {
|
||||||
|
if (skips <= 1)
|
||||||
|
print line1;
|
||||||
|
}' |
|
||||||
# Move prototype names to the same line as return type. Useful for ctags.
|
# Move prototype names to the same line as return type. Useful for ctags.
|
||||||
# Indent should do this, but it does not. It formats prototypes just
|
# Indent should do this, but it does not. It formats prototypes just
|
||||||
# like real functions.
|
# like real functions.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user