لینوکس و من

باز هم تبدیل زیرنویس ها به UTF8

این زیرنویس فارسی هم معضلی شده برای خودش! و تنبلی ما هم مزید بر علت! مشکل اینجاست که با وجود تنظیم vlc روی windows-1256 برای زیرنویس های با این انکدینگ، باز هم درست نشون داده نمیشن. و حتما باید utf8 باشن. چند باری در این مورد مطلب نوشتم.
اما مشکل روش های قبلی این بود که فایل ها رو باید دونه دونه میدادیم تا تبدیل میشدن. فرض کنید میخواید در مورد یه سریال چندین قسمتی این کار رو بکنید. خب چه کاریه واقعا! پیر میشه آدم. اما راه حل خیلی ساده است. به طوری که با یک خط دستور همه ی فایل های زیرنویس تبدیل میشن. برای اینکار در ترمینال وارد پوشه ی زیرنویسها بشید و این دستور رو اجرا کنید:
for i in *.srt; do iconv -f windows-1256 -t utf8 "$i" > "utf8-$i"; done
توجه کنید که:
 
۱- این دستور فایل های با پسوند srt با حروف کوچک رو شناسایی میکنه. پس اگه پسوند فایل های شما با حروف بزرگ هست، دستور رو تغییر بدید.
۲- در ابتدای نام زیرنویسهای جدید عبارت-utf8 اضافه میشه. میتونید به دلخواه خودتون تغییرش بدید. (قرمز رنگ در دستور)
 
ما باز هم میتونیم کار رو ساده تر کنیم! وای که چقدر تنبلیم! این دستور رو تبدیل میکنیم به یک فایل اجرایی و میذاریمش توی پوشه ی usr/bin/ . اون وقت کافیه با ترمینال وارد پوشه ی مورد نظر بریم و فقط نام اسکریپت رو تایپ کنیم! این فایل رو دانلود کنید. و بذاریدش توی مثلا فولدر home یوزر خودتون. و بعد در ترمینال این دستور رو اجرا کنید تا مجوز اجرا شدن رو به این فایل بدیم:
sudo chmod o+x ~/srtconv
حالا اون رو کپی میکنیم:
sudo cp ~/srtconv /usr/bin/srtconv
شما میتونید این کارها رو در حالت گرافیکی هم انجام بدید.
 
خب. حالا در ترمینال وارد پوشه ی زیرنویسها بشید و تایپ کنید: srtconv و اینتر بزنید!
برای اینکه کار ما با ترمینال هم ساده تر شه و وجبور نباشیم با دستور cd وارد پوشه ی زیرنویسها بشیم، این بسته رو نصب کنید: nautilus-open-terminal
sudo apt-get install  nautilus-open-terminal
 
حالا که با فایل منیجر (nautilus) وارد پوشه ی زیرنویس ها میشید راست کلیک کنید و open in terminal رو انتخاب کنید!
در فکر اینم که این کار رو به اسکریپتی به nautilus بسپریم. تا مثلا با راست کلیک روی فایل srt گزینه ای ظاهر بشه که تبدیل رو برامون انجام بده. 
دسته:

ترفند

کلیدواژه:

utf8

دبیان

زیرنویس

گنوم

نظرات  (۲)

ممنون :)
سلام اقای دکتر. فقط می خوام بهت بگم دمت گرم. کارت درسته. من خیلی تو سایت ها و فروم های داخلی و خارجی گشتم. ولی این مشکلم را نتونستم حل کنم ولی با خوندن این مطلب در وبلاگ شما مشکلم حل شد و حالا از لینوکس مینت لذت می برم. موفق و برقرار باشی
پاسخ:
سلام. خواهش میکنم. خوشحالم مشکلت برطرف شده :)