Skip to content

Commit a696722

Browse files
committed
Combined multiple translation requests into one
1 parent daae777 commit a696722

1 file changed

Lines changed: 50 additions & 18 deletions

File tree

cheat.sh

Lines changed: 50 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -21,22 +21,54 @@ fi
2121
lang=$(locale | grep -i lang)
2222
lang="${lang:5:2}"
2323

24-
curl "cheat.sh/$1" | while read -r src; do
25-
if [[ ${src:11:1} == "#" ]]
26-
then
27-
# flag="no"
28-
enString=${src#*\#}
29-
enString=${enString%[*}
30-
echo -e "\\e[30;1m# [en]$enString[0m"
31-
IFS=$'\n'
32-
count=0
33-
for answ in $(trans "$enString"); do
34-
if [ $count == 1 ]; then
35-
echo -e "\\e[32;1m# [ru] $answ\\e[0m"
36-
fi
37-
count=$((count + 1))
38-
done
39-
else
40-
echo "$src"
41-
fi
24+
T=0
25+
while [ -n "$1" ]
26+
do
27+
case "$1" in
28+
-T) T=1;;
29+
*) U="$1"; break;;
30+
esac
31+
shift
32+
done
33+
34+
src=$(curl "cht.sh/${U}?T")
35+
IFS=$'\n'
36+
S=''
37+
for answ in $src
38+
do
39+
if [[ "${answ:0:1}" == "#" ]]
40+
then
41+
S+="
42+
$answ"
43+
fi
44+
done
45+
res=$(trans -b "$S")
46+
R=''
47+
C=0
48+
IFS=$'\n'
49+
for row in $res
50+
do
51+
R[$C]="$row"
52+
((C++))
53+
done
54+
55+
count=0
56+
IFS=$'\n'
57+
for answ in $src
58+
do
59+
if [[ "${answ:0:1}" == "#" ]]
60+
then
61+
VR="${R["$count"]//#/# \[ru\]}"
62+
VE="${answ//#/# \[en\]}"
63+
if [[ "$T" == 0 ]]
64+
then
65+
echo -e "\e[32;1m$VR\e[0m\n\e[32m$VE\e[0m"
66+
else
67+
echo -e "$VR\n$VE"
68+
fi
69+
((count++))
70+
else
71+
echo "$answ"
72+
echo
73+
fi
4274
done

0 commit comments

Comments
 (0)