summaryrefslogtreecommitdiff
path: root/src/web/lang/_bin/transpile.sh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xsrc/web/lang/_bin/transpile.sh29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/web/lang/_bin/transpile.sh b/src/web/lang/_bin/transpile.sh
new file mode 100755
index 0000000..18bb4c4
--- /dev/null
+++ b/src/web/lang/_bin/transpile.sh
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+lang_part() {
+ echo "$1" | awk "{split(\$0,a,\" = \"); print a[$2]}"
+}
+export -f lang_part
+
+handle_line() {
+ line="$1"
+ left=$(lang_part "$line" 1)
+ right=$(lang_part "$line" 2)
+ echo "$left" | grep -Ev '_content|_line' > /dev/null
+ if [ "$?" -eq 0 ]; then
+ right=$(echo "$right" | uwuify)
+ fi;
+ right=${right%;};
+ echo "$left = $right;"
+}
+export -f handle_line
+
+transpile() {
+ file="$1"
+ out="$2"
+ printf "" > "$out"
+ printf "<?php /* Copyright (c) 2024 Freya Murphy */\n\n" > "$out";
+ cat "$file" | grep '$lang' | xargs -d'\n' -I {} bash -c 'handle_line "$@"' _ {} >> "$out"
+}
+
+transpile "$1" "$2"