inglese:software_wordit
< indice
wordit
È un programma per il terminale Linux che permette di esercitarsi a tradurre dall'italiano all'inglese e di ascoltare la pronuncia. I file audio possono essere ottenuti da www.wiktionary.org con licenza CC-by-sa 4.0
Approfondimento: esiste un programma per il download dei file audio da wiktionary wordit-download-en
Licenza d'uso
MIT
Dipendenze
sudo apt install sox
Esempio d'uso
wordit.sh elenco-a.csv
elenco-a.csv contiene solo parole che iniziano con la lettera a* su ogni riga del file sono presenti quattro tipi di dati, separati da tre virgole, ad esempio:
italiano,./percorso/file-pronuncia-it.ogg,inglese,./percorso/file-pronuncia-en.ogg ancora,./a/it-ancora.ogg,again,./a/En-uk-again.ogg
(vedere esempio file di input in fondo alla pagina)
Codice sorgente
- wordit.sh
#!/bin/bash # programma per il terminale Linux che permette di esercitarsi # a tradurre dall'italiano all'inglese e di ascoltare la pronuncia # i file audio possono essere ottenuti da www.wiktionary.org con licenza CC-by-sa 4.0 # Licenza d'uso # MIT # Dipendenze: # sudo apt install sox # Esempio d'uso: # wordit.sh elenco-a.txt # elenco-a.txt contiene solo parole che iniziano con la lettera a* # al cui interno sono presenti quattro dati, separati da tre virgole: # italiano,file-pronuncia-it.ogg,inglese,file-pronuncia-en.ogg # ancora,./a/it-ancora.ogg,again,./a/En-uk-again.ogg #----------variables---------------- if [ -z "$1" ] then echo "Esempio d'uso: \n wordit.sh elenco-a.txt" exit 0; else file="$1" fi declare -a namearray #----------file reading---------------- i=0 while IFS= read -r varname; do namearray[i]=${varname} i=$((i+1)) done < "$file" unset IFS size=$i; echo "-- translate $size words --" echo "------------------------" IFS=$'\n' unsorted=($(shuf <<<"${namearray[*]}")) unset IFS i=0 while [ $i -lt ${size} ] do myvar=${unsorted[i]} #-------------split----------- wordit=${myvar%%,*} #uno it=${myvar#*,*} audioit=${it%%,*} #due en=${myvar%,*} worden=${en##*,} #tre audioen=${myvar##*,} #quattro #----------Italian question----------- attempt='' echo "$i) Type a word (or 'help') followed by [ENTER]" echo "(it) ${wordit}" if [ -z "${audioit}" ] then echo "no audio it" else play -q ${audioit} 2> /dev/null fi echo "(en)?" #----------English answer----------- while [ -z "${attempt}" ] do read attempt if [ "${attempt}" == "${worden}" ] then echo "YES! :) -----------------" result="ok" if [ -z "${audioen}" ] then echo "no audio en" else play -q ${audioen} 2> /dev/null fi elif [ "${attempt}" != "help" ] then echo -e "No :( \nType a word (or 'help')" echo "(it) ${wordit}" attempt='' fi if [ "${attempt}" == 'help' ] then echo "(it) ${wordit} -> (en) ${worden}" echo "No. Type a word (or 'help')" echo "(it) ${wordit}" attempt='' fi done i=$((i+1)); done
esempio file di input
Esempio di parole che iniziano solo con la lettera a*
- elenco-a.csv
arte,,art,./a/De-Art2.ogg ancora,,again,./a/En-uk-again.ogg anniversario,,anniversary,./a/En-uk-anniversary.ogg un altro,,another,./a/En-uk-another-unstressed.ogg appartamento,,apartment,./a/En-uk-apartment.ogg straniero,,abroad,./a/En-us-abroad.ogg accompagnare,,accompany,./a/En-us-accompany.ogg dolore,,ache,./a/En-us-ache.ogg ottenere,,achieve,./a/En-us-achieve.ogg difendere,,advocate,./a/En-us-advocate-verb.ogg contro,,against,./a/En-us-against.ogg tra,,among,./a/En-us-among.ogg quantità,,amount,./a/En-us-amount.ogg e,,and,./a/En-us-and-stressed.ogg animale,,animal,./a/En-us-animal.ogg caviglia,,ankle,./a/En-us-ankle.ogg anniversario,,anniversary,./a/En-us-anniversary.ogg annuncio,,announce,./a/En-us-announce.ogg annoiare,,annoy,./a/En-us-annoy.ogg annuale,,annual,./a/En-us-annual.ogg antico,,antique,./a/En-us-antique.ogg formica,,ant,./a/En-us-ant.ogg ansioso,,anxious,./a/En-us-anxious.ogg parte,,apart,./a/En-us-apart.ogg non sei (tu),,aren't,./a/En-us-arent.ogg intorno,,around,./a/En-us-around.ogg odiare,,ate,./a/En-us-ate.ogg zia,,aunt,./a/En-us-aunt.ogg terribile,,awful,./a/En-us-awful.ogg pancetta e uova,,ham and eggs,./a/En-us-ham-and-eggs.ogg
inglese/software_wordit.txt · Last modified: 2024/02/25 22:17 by profpro