Summary Files Commits Branches @commit @diff @stats
diff options
context:
space:
mode:
Commit2baf546a28b946e9ebf90ed730c8bab4273c8317 (patch)
Author
 Syndamia <kamen@syndamia.com>
2023-10-16 18:29:15 +0300
Committer
 Syndamia <kamen@syndamia.com>
2023-10-16 18:29:15 +0300
Filesbe72f8c6681e2c10c41e59c6a542f483033002bf
csg-2baf546a28b946e9ebf90ed730c8bab4273c8317.tar
csg-2baf546a28b946e9ebf90ed730c8bab4273c8317.tar.gz
csg-2baf546a28b946e9ebf90ed730c8bab4273c8317.zip
Parentd7ddea872004db0656f1355ff3593491dd6ad68e (diff)
(csg) Added stage timers
1 files changed, 24 insertions, 1 deletions
-rwxr-xr-xcsg25
diff --git a/csg b/csg
index 636b052..012a5cc 100755
--- a/csg
+++ b/csg
@@ -14,6 +14,19 @@ isCommand() {
}
overwriteLine() {
+ printf "\e[1A\e[K$1\n"
+}
+
+_dur=0
+startTimer() {
+ _dur="$(date +%s%N)"
+ printf "$1\n"
+}
+endTimer() {
+ _dur="$(echo "scale=4 ; ($(date +%s%N) - $_dur) / 1000000000" | bc -l)"
+ printf "\e[1A\e[K$1 %.3fs\n" $_dur
+}
+
### Stage 0
### Create timestamps.txt file, if necessary
@@ -31,14 +44,17 @@ then
headc=$(git rev-parse HEAD)
if [ ! -f "$TIMESTAMPS" ] || [ "$headc" != "$(head -1 "$TIMESTAMPS")" ]
then
+ startTimer "[Stage 0] Creating timestamps file"
echo "$headc" > "$TIMESTAMPS"
(cd "$SOURCE" && timestamps_writeDates)
+ endTimer "[Stage 0] Done"
fi
fi
-# Copy from SOURCE to OUTPUT
### Stage 1
### Copy everything from SOURCE to OUTPUT
+startTimer "[Stage 1] Moving files to output"
+
(cd "$SOURCE" && \
find . -type f -not -name "\.*" -not -name '_header.html' -not -name '_footer.html' | \
cpio -pdu "$OUTPUT" >/dev/null 2>&1)
@@ -48,6 +64,8 @@ do
mv "$file" "${file%md}html"
done
+overwriteLine "[Stage 1] Combining awk scripts"
+
scr_path=()
scr_recip=()
while read -r reg; read -r scripts
@@ -73,8 +91,12 @@ END {
}
' $(find $AWKS -type f -name "[A-Z]*.awk"))
+endTimer "[Stage 1] Done"
+
### Stage 2
### Transforming Markdown
+startTimer "[Stage 2] Transforming Markdown to HTML"
+
transform-file() {
local file="$1"
local outf="${file%md}html"
@@ -137,3 +159,4 @@ do
transform-file "$file" "$scripts" &
done < <(find "$OUTPUT" -type f -name "*.md")
wait
+endTimer "[Stage 2] Done"