RSS

Mετατροπη αρχειων κειμενου (και υποτιτλων) σε UTF8

09 Μαρ

Πολλες φορες θα σας εχει τυχει να εχετε κατεβασει καποιο αρχειο κειμενου ή καποιο υποτιτλο για ταινια και μολις το ανοιγετε να βλεπετε κινεζικα. Αυτο οφειλετε γιατι πιθανοτατα το αρχειο αυτο προερχετε απο τον «κοσμο» των Windows, οπου εκει χρησιμοποιουν διαφορετικη κωδικοποιηση χαρακτηρων για τα αρχεια. Ως συνηθως, τα Windows ειναι αυτα που φταινε και οχι το Linux/Ubuntu, καθως αυτο χρησιμοποιει την κωδικοποιηση UTF8 που υποστηριζει και Ελληνικους χαρακτηρες.

Γιαυτο θα φτιαξουμε ενα script για το Nautilus ωστε με ενα δεξι κλικ, να αλλαζετε την κωδικοποιηση του αρχειου και να βλεπετε τους Ελληνικους χαρακτηρες.

Καταρχας εγκαταστηστε τα εξεις, με την παρακατω εντολη:

sudo apt-get install libnotify-bin recode

Μετα ανοιξτε το Nautilus ωστε να βλεπει τον Home φακελο και πηγαινετε στον φακελο gnome2 απο εκει μετα στον φακελο nautilus-scripts. Μεσα σε αυτο το φακελο δημιουργηστε ενα αρχειο και επικοληστε τα εξεις:

#!/bin/sh
recode windows-1253..utf8 "$@"
# Display success / error message
if [ "$?"-ne 0]
then
notify-send -i /usr/share/icons/Humanity/actions/48/gtk-cancel.svg "Error" "Files were not converted"
exit 1
else
notify-send -i /usr/share/icons/Humanity/actions/48/document-export.svg "Success" "Files were successfully converted"
fi
exit 0

Αποθηκευστε το αρχειο, δινωντας του μια καταλληλη ονομασια πχ. «Convert to UTF8″ και μετα με δεξι κλικ, πηγαινετε στα properties του αρχειου και στην καρτελα Permissions επιλεξτε το κουτακι που λεει «Αllow executing file as program». Aυτο ηταν. Τωρα οποτε θελετε να αλλαξετε την κωδικοποιηση σε καποιο αρχειο, κανετε δεξι κλικ, επιλεγετε το menu, Scripts και απο εκει το ονομα του αρχειου που μολις αποθηκευσατε, οπως στο παραδειγμα «Convert to UTF8″.

About these ads
 
11 σχόλια

Posted by στο 09/03/2011 in Hints & Tips

 

Ετικέτες: , , , , ,

11 responses to “Mετατροπη αρχειων κειμενου (και υποτιτλων) σε UTF8

  1. ηλιας

    13/03/2011 at 12:12

    Για καποιο λογο,ενω μου λεει success,δεν αλλαζει την κωδικοποιηση..Εχεις ιδεα για το τι μπορεινα φταιει?

     
    • xqtr

      14/03/2011 at 18:17

      Eχεις δικιο… δυστυχως το πακετο enca δεν υποστηριζει Ελληνικα… To script διορθώθηκε

       
  2. ηλιας

    17/03/2011 at 15:57

    ευχαριστω!

     
  3. ...

    17/05/2011 at 17:51

    Η εντολη ειναι
    sudo apt-get install libnotify-bin

    και οχι
    sudo apt-get install ibnotify-bin

    εφαγες ενα l.
    Επισης,το script για καποιο λογο δεν λειτουργει για υποτιτλους ανω των 20 λεπτων..Ξερεις γιατι?

     
  4. xqtr

    17/05/2011 at 18:07

    Για το libnotify εχεις δικιο το διορθωσα. ;)

    Για τον υποτιτλο που λες, δεν ξερω… δοκιμασε μεσα απο το τερματικο να δωσεις:
    iconv -f windows-1253 -t utf8 αρχειο_απο_windows.srt -o αρχειο_που_σωζεις.srt

    και δες αν σου το κανει σωστα. Αν και παλι δεν πετυχαινει, το πιο πιθανο ειναι να φταιει το αρχειο των υποτιτλων ή το προγραμμα iconv που χρησιμοποιειτε στο script εχει καποιο προβλημα. Αν σου πετυχει ετσι, τοτε εχει προβλημα το script. Δοκιμασε και πες μου.

     
  5. ...

    17/05/2011 at 20:38

    Ετσι το εκανε κανονικα… :/

     
  6. xqtr

    18/05/2011 at 21:52

    Eκανα καποιες δοκιμες και βασικα… μπερδευτικα… σε αρχεια που μεσα απο το script δεν επιανε η αλλαγη, οταν τα μετετρεπα στο τερματικο μου εβγαζε σφαλμα πχ «iconv: illegal input sequence at position 171″ που σημαινει οτι στο αρχειο υποτιτλων, υπαρχει καποιο σφαλμα και γιαυτο το iconv δεν τελειωνει την μετατροπη.

    Βρηκα και αυτο το script:
    #!/bin/bash
    mypath=»`pwd`»
    for filename in «$@»
    do
    # Convert. Modify arguments to handle different encodings
    iconv -f windows-1253 -t utf-8 «$mypath/$filename» -o «$mypath/$filename-new»
    # Create backup
    mv «$mypath/$filename» «$mypath/$filename~»
    mv «$mypath/$filename-new» «$mypath/$filename»
    done

    …παλι για το nautilus το οποιο και αυτο παρουσιαζει το ιδιο προβλημα.

    Συνεχιζω το ψαξιμο…

     
  7. ...

    19/05/2011 at 16:57

    Βασικα αυτο δεν κανει τιποτα για καποιο λογο..

     
    • xqtr

      21/05/2011 at 20:58

      Για δες στο καινουργιο script… το δοκιμασα και ειναι ενταξει… ;)

       
  8. Ανώνυμος

    08/06/2011 at 11:40

    μια χαρα!

     
  9. Ανώνυμος

    20/05/2012 at 22:47

    Μπράβο ! Δούλεψε άψογα και σε μένα…

     

Σχολιάστε

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

WordPress.com Logo

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Log Out / Αλλαγή )

Twitter picture

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Log Out / Αλλαγή )

Facebook photo

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Log Out / Αλλαγή )

Google+ photo

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Log Out / Αλλαγή )

Σύνδεση με %s

 
Follow

Get every new post delivered to your Inbox.

%d bloggers like this: