28 lines
1.1 KiB
Bash
Executable File
28 lines
1.1 KiB
Bash
Executable File
#!/bin/zsh
|
|
# Format all c files
|
|
GLOB=( **/*.c )
|
|
# Astyle options:
|
|
# --mode=c : c formatting
|
|
# -xc : Brace attached to class names
|
|
# --style=stroustrup : stroustrup style (similar to 1tbs)
|
|
# -j : Always add brackets (even on one line if statements)
|
|
# -s2 : Three spaces
|
|
# -xG : Indent modifiers
|
|
# -S : Indent switches
|
|
# -K : Indent cases
|
|
# -N : Indent namespaces
|
|
# -xn : Attach bracket to namespace
|
|
# -xl : Attach inlines
|
|
# -n : Don't make a backup
|
|
# -p : Pad operators
|
|
# -H : Pad header (space after if, for, while)
|
|
OPTS=( --mode=c -xc --style=stroustrup -j -s2 -xG -S -K -N -xn -xl -n -p -H )
|
|
# Process the c files by adding the comment and removing newlines
|
|
perl "${0:h}/process.pl" $GLOB
|
|
# Colorize output if you can
|
|
if which colout>/dev/null; then
|
|
astyle $OPTS $GLOB|\grep -P '^(?!Unchanged)'|colout '(Formatted)' green||true
|
|
else
|
|
astyle $OPTS $GLOB|\grep -P '^(?!Unchanged)'||true
|
|
fi
|