Pentru a putea vota, modifica pagini sau abona la modificările unei pagini trebuie să fiți autentificați. Cu această ocazie scăpați și de acest mesaj deranjant.

Validare fișiere .po

De la l10n.ro
Versiunea din 20 noiembrie 2009 16:33, autor: Reptila (Discuție | contribuții)
(dif) ← Versiunea anterioară | Versiunea curentă (dif) | Versiunea următoare → (dif)
Salt la: navigare, căutare

Aceasta este o serie de mici progrămele, sau scripturi raportate anterior pe listele de e-mail ale grupului. Fiecare program este distribuit sub o licență proprie. Dacă nu se menționează explicit, programul se găsește în domeniul public.

Script pentru verificarea validității unui fișier .po

 #!/bin/bash
 rasp_conv="d"
 
 echo "----"
 echo "Se verifică fișier: $1"
 echo "----"
 
 #verific Copy text ... here, cauzat de un copy/paste aiurea în LP
 grep "Copy text  " $1 > /dev/null
 if [ $? -eq 0  ]; then
   echo "EROARE: Fișierul conține 'Copy text' - eroare din LP"
   echo ""
 fi
 
 #verific dacă are sedilă
 #sed nu merge cu unicode... la Perl sunt probleme cu locale
 #grep -u "[ŞşŢţ]" $1 #> /dev/null
 cat $1 | perl -pi -e 'exit(1) if /[ŞşŢţ]/'  2>/dev/null
  
 if [ $? -eq 1 ]; then
   echo "INFORMARE: Fișierul conține caractere cu sedilă."
   echo "Doriți să fie convertite la virgulă dedesubt? [D/n]"
   read rasp_conv
   if [ "x$rasp_conv" != "xn" ]; then
     echo "Se efectuează conversia..."
     sed -i "s/ş/ș/g" $1
     sed -i "s/Ş/Ș/g" $1
     sed -i "s/Ţ/Ț/g" $1
     sed -i "s/ţ/ț/g" $1
    echo "Conversie finalizată"
   fi
 fi
 
 #la final verific validitatea fișierului și acceleratorii
 echo "Se verifică validitatea fișierului... "
 msgfmt -v -o /dev/null -c --check-accelerators=_ $1
 
 echo "----"
 echo "Finalizat"

Frecvență apariție cuvinte

Scriptul produce o listă cu toate cuvintele care apar în unul sau mai multe fișiere, și frecvența de apariție. Este util pentru construirea de lexicoane de traducere, testare de dicționare, etc.

Versiune awk:

 #!/bin/awk -f 
 # 
 # Print list of word frequencies 
 # 
 # Save it as wfreq.awk, and run it as: 
 #   ./wfreq.awk file(s) | sort -nr 
 # or as: 
 #    tr A-Z a-z < file | ./wfreq.awk | sort -nr 
 # 
 BEGIN { RS = "[ |\n|\t|<|>|,|.|\"|?|!|:|;|(|)]" } 
 { 
       freq[$0]++
 } 
 
 END { 
    for (word in freq) 
        printf "%d\t%s\n", freq[word], word
 }

Versiune Perl:

 # Save it as wfreq.pl, and run it as: 
 #    perl ./wfreq.pl file(s) | sort -nr 
 # or as: 
 #    tr A-Z a-z < file | perl ./wfreq.pl | sort -nr 
 while (<>) { 
     $freq{$_}++ for split /[ \n\t<>,."?!:;\()|]+/ ;
 } 
 
 print( $freq{$_}, "\t$_\n" ) for keys %freq;

sau Perl oneliner:

perl -ne 'BEGIN { $RS=qr/[ \n\t<>,.\"?!:;\()|]+/; } $freq{$_}++ for split /$RS/; END{print( $freq{$_}, "\t$_\n") for keys %freq }' file[s] | sort -n

Conversie ortografie pre/ante 1993

Scripturile sunt distribuite sub GPL la http://bucovina.chem.tue.nl/reguli_ortografie/index.htm

Proiectul msgextras

Diverse scripturi și utilitare pentru traducători.

Disponibil direct la http://users.alioth.debian.org/~eddyp-guest/darcs/msgextras/

sau prin darcs:

darcs get http://users.alioth.debian.org/~eddyp-guest/darcs/msgextras/

Licența pentru msgextras este MIT, dacă nu se precizează o alta în sursă.

msgdiacr: Script pentru verificarea și/sau conversia automată la diacriticele corecte (.po)

Parte din msgextras, msgdiacr poate verifica și converti automat unul sau mai multe fișiere .po să folosească diacriticele corecte.

  • verifică faptul că .po-ul este codat în utf-8 înainte de a încerca conversia
  • evidențiază la verificare liniile care conțin diacriticele vechi
  • poate verifica și/sau converti mai multe fișiere odată
  • la conversie creează copii de siguranță pentru fiecare din fișierele convertite


Disponibil direct la http://users.alioth.debian.org/~eddyp-guest/darcs/msgextras/msgdiacr


sau ca parte din msgextras:

darcs get http://users.alioth.debian.org/~eddyp-guest/darcs/msgextras/


msgstat: Script care poate verifica validitatea fișierelor .po și afișa statistici despre ele

Parte din msgextras, msgstat poate verifica corectitudinea sintactică a unuia sau mai multor fișiere .po, oferind și statistici depre acestea.

  • poate verifica oricât de multe fișiere odată
  • oferă statistici pentru fiecare dintre ele

Disponibil direct la http://users.alioth.debian.org/~eddyp-guest/darcs/msgextras/msgstat

sau ca parte din proiectul msgextras:

darcs get http://users.alioth.debian.org/~eddyp-guest/darcs/msgextras/

Program căutare termeni prin traduceri

Distribuit sub GPL sub numele de trascheck, programul poate fi descărcat de la http://sourceforge.net/project/showfiles.php?group_id=144374

Discuția asociată se găsește la http://groups.google.com/group/diacritice/browse_thread/thread/c880eac1513e40b7/6bd64b4d08470371?lnk=gst&q=transcheck#6bd64b4d08470371