satitchula-prusa/Firmware/le.sh

30 lines
1.1 KiB
Bash
Raw Permalink Normal View History

2022-01-29 10:28:20 +00:00
# line ending management script
# CRLF - windows default ('\r\n')
# LF - unix default ('\n')
# arguments:
# ?crlf - print all .cpp and .h files with CRLF line endings
# ?lf - print all .cpp and .h files with LF line endings
# crlf - replace line endings in all .cpp and .h files to CRLF
# lf - replace line endings in all .cpp and .h files to LF
if [ "$1" == "?crlf" ] || [ $# -eq 0 ]; then
echo 'cpp and h files with CRLF line endings:'
find {*.cpp,*.h} -not -type d -exec file "{}" ";" | grep CRLF | sed 's/:.*//g'
elif [ "$1" == "?lf" ]; then
echo 'cpp and h files with LF line endings:'
find {*.cpp,*.h} -not -type d -exec file "{}" ";" | grep -v CRLF | sed 's/:.*//g'
fi
if [ "$1" == "crlf" ]; then
echo 'replacing LF with CRLF in all cpp and h files:'
find {*.cpp,*.h} -not -type d -exec file "{}" ";" | grep -v CRLF | sed 's/:.*//g' | while read fn; do
echo "$fn"
sed -i 's/$/\r/g' $fn
done
elif [ "$1" == "lf" ]; then
echo 'replacing CRLF with LF in all cpp and h files:'
find {*.cpp,*.h} -not -type d -exec file "{}" ";" | grep CRLF | sed 's/:.*//g' | while read fn; do
echo "$fn"
sed -i 's/\r\n/\n/g' $fn
done
fi