From c32f0156d1f65c1fe50d7a49a295a3b2f80fead9 Mon Sep 17 00:00:00 2001 From: Alexei Bezborodov Date: Tue, 25 Feb 2025 10:35:18 +0300 Subject: [PATCH] Lang switch --- Script/a_lang | 41 +++++++++++++++++++++++++++++++++++++++++ Script/alias_main | 1 + 2 files changed, 42 insertions(+) create mode 100644 Script/a_lang diff --git a/Script/a_lang b/Script/a_lang new file mode 100644 index 0000000..42dbe0c --- /dev/null +++ b/Script/a_lang @@ -0,0 +1,41 @@ +#!/bin/bash + +lang_switch_custom() +{ + str="$1" + result="$str" + lang1="$2" + lang2="$3" + for (( i = 0; i < ${#result}; i++ )); do + word="${result:$i:1}" + for (( j = 0; j < ${#lang1}; j++ )); do + lang1_word="${lang1:$j:1}" + if [ "$word" = "$lang1_word" ]; then + lang2_word="${lang2:$j:1}" + result="${result:0:$i}${lang2_word}${result:$i+1}" + fi + done + done + echo "${result}" +} +mkalias_with_prefix 'lang_switch' + +lang_switch() +{ + str="$1" + [ "$str" = "" ] && read -p "Введите строчку:" str + lang1=$(cat <? +EOF + ) + lang2="ёйцукенгшщзхъфывапролдж\эячсмитьбю.ЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖ\ЭЯЧСМИТЬБЮ," + res1=$(lang_switch_custom "${str}" "${lang1}" "${lang2}") + res2=$(lang_switch_custom "${str}" "${lang2}" "${lang1}") + [ "$res1" != "$str" ] && echo "$res1" + [ "$res2" != "$str" ] && echo "$res2" + #echo "$lang1" "${#lang1}" + #echo "$lang2" "${#lang2}" +} +mkalias_with_prefix 'lang_switch' + + diff --git a/Script/alias_main b/Script/alias_main index 8f41e2c..fa5e6f3 100755 --- a/Script/alias_main +++ b/Script/alias_main @@ -27,6 +27,7 @@ source "${alias_dir}/a_video" source "${alias_dir}/a_image" source "${alias_dir}/a_ssh" source "${alias_dir}/a_download" +source "${alias_dir}/a_lang"