تبدیل کاراکترهای تایپ شده از فارسی به انگلیسی و بالعکس

توجه: این مطلب قدیمی است و صرفا جهت آرشیو حفظ شده است. ممکن است امروزه برخی موارد یکسان نباشند.

در نسخه آرشیو شده وبلاگ نوشته بودم که دنبال یک اسکریپتی میگردم که اگر کیبورد فارسی بود و ما میخواستیم انگلیسی بنویسیم و مثلا بجای google.com نوشتیم لخخلمث.زخ این اسکریپت کمک کنه با یک روش ساده عبارت رو تبدیل کنه، و بالعکس...

یکی از خواننده های وبلاگ اومد و گفت چند سال پیش کسی یه چیز مشابهی نوشته بود، لینکش رو در کامنت ها گذاشت و منم پیداش کردم و باهاش تماس گرفتم و ایده ام رو مطرح کردم. آقای فرود. یا f0rud

تا اینکه دیروز بود که ایشون به ایمیلم پاسخ داد و اسکریپتی رو برام فرستاده بود که دقیقا همین کار رو میکنه.

این خیلی عالیه!

برای اینکه کاراکترهای فارسی ای که اشتباهی تایپ کردید به انگلیسی تبدیل کنید، و بالعکس، اسکریپت هایی که در ادامه مطلب هستند یک جا ذخیره کنید و سپس یک شورتکات کیبرد به هر کدوم از اونها اختصاص بدید.

من برای اینکه راحت باشم، Ctrl + Shift + E رو برای تبدیل به انگلیسی و Ctrl + Shift + P رو برای تبدیل به فارسی در نظر گرفتم.

حالا هر جایی که اشتباهی تایپ کرده باشم مثلا مهدعطرشپشد.هق با select کردن عبارت و فشردن کلید Ctrl + Shift + E پس از یک ثانیه عبارت خودش تبدیل میشه به معادل انگلیسیش یعنی linuxvaman.ir و من لازم نیست پاکش کنم و از اول بنویسمش.

راستی، باید xdotool ، xsel ، xclip در سیستم نصب باشند. و رابط گرافیکی دسکتاپ هم xorg باشه. در wayland عمل نمیکنه.

ممنون فرود، ممنون yakh، و ممنون جامعه ی دوست داشتنی متن باز.

ادامه مطلب

کپی فایل پیشرفته

یک چیزی که توی ترمینال برای من جالب نبود این بود که نمی‌شد ببینم چقدر حجم فایل کپی شده یا انتقال داده شده. کاری که Advanced Copy می‌کنه اینه که توی نوار پیشرفت همه چیزو نشون می‌ده. سرعت خیلی خوبی هم داره.

برای نصب این ابزار، در توزیع های مبتنی بر Arch کافیه از AUR بسته advcpmv رو نصب کنید.

برای راحتی کار این alias ها رو در فایل ~/.bashrc قرار میدیم:

echo 'alias cp="advcp -gR"' >> ~/.bashrc
echo 'alias mv="advmv -g"' >> ~/.bashrc

از این به بعد دستور کپی یعنی cp و دستور انتقال یعنی mv با دستورات این ابزار جایگزین میشن.

فیلم‌برداری از دسکتاپ با ffmpeg

توجه: این مطلب قدیمی است و صرفا جهت آرشیو حفظ شده است. ممکن است امروزه برخی موارد یکسان نباشند.

برای فیلم‌برداری از دسکتاپ نرم‌افزارهای زیادی هست ولی ffmpeg ساده‌ترین راه در xorg برای اینکار هست مخصوصاً اگر با alias ها راحت‌ترش هم بکنید.

من خودم از این روش استفاده می‌کنم چون دسکتاپ من 1680x1050 هست اینجا هم به همین صورت هست پس تغییرش بدید به اندازه تصویرتون.

برای بدست آوردن نسبت تصویر اگر xrandr در توزیع شما استفاده شده باشه با این دستور به راحتی نمایش میده:

xrandr | grep \* | awk '{print $1}'

و مقدار اندازه تصویر خودتون رو در دستور زیر قرار بدید:

echo "alias capture='ffmpeg -loglevel panic -video_size 3200x1800 -framerate 25 -f x11grab -i :0 output.mp4'" >> ~/.bashrc

از این پس Terminal رو باز کنید و capture رو بنویسید و اینتر بزنید خودکار شروع به ضبط کردن میشه تا وقتی که q رو بزنید و متوقفش کنید.

اگر میخواید صدا هم همراه فیلم ضبط بشه، ادامه مطلب رو ببینید...

ادامه مطلب

اضافه کردن یک خط به انتهای یک فایل

پیش میاد بخوایم فقط یک خط به انتهای یک فایلی اضافه کنیم. به جای اینکه به خودمون زحمت بدیم و فایل رو باز کنیم و کپی و پیست و ذخییییره... اووووه، با یه خط دستور میشه این کار رو انجام داد. البته برای تغییر فایل های سیستمی باید در حالت su باشید. با sudo کار نمیکنه.

برای مثال:

echo 'custom text' >> /file.txt

حواستون باشه که بجای دو تا << از یکی < استفاده نکنید. وگرنه کل فایل تبدیل میشه به این یدونه خط!

تبدیل یک فایل PDF به تصویر

گاهی ممکنه لازم بشه یک فایل pdf رو به فایل های تصویری تبدیل کنیم. برای اینکار نیاز به هیچ ابزار گرافیکی‌ای ندارید. با imagemagic که یک نرم‌افزار تحت خط فرمان عالی و کامل هست میشه این کار رو انجام داد

 convert -density 150 file.pdf[0-10]  file.png

این میگه با کیفیت ۱۵۰ (قابل قبوله. متونید ۳۰۰ هم بذارید که عالیه ولی حجم تصاویر زیاد میشه) از صفحه ۱ تا ۱۰ از فایل file.pdf به فایلهای file.png تبدیل کن. فایلهای حاصله هم عددگذاری میشن.

یک راه دیگه هم استفاده از gs هست:

 gs -dNOPAUSE -dBATCH -sDEVICE=jpeg -r96 -sOutputFile='page-%00d.jpg' input.pdf

بستن پنجره ای که داره منابع سیستم رو می بلعه!

اگه از xorg برای رابط گرافیکی دسکتاپ استفاده میکنید...

گاهی پیش میاد برنامه های گرسنه ای مثل فایرفاکس و کرومیوم و یا حالا هر چیز دیگه ای not responding میشن. با Alt+F4 هم نمیشه بستشون. و بقدری مشکل ساز میشن که حتی ماوس هم به زور تکون میخوره. قبلا برای بستن پنجره هایی که دچار مشکل شده بودند گفته بودم از xkill استفاده کنیم. ولی این مستلزم این بود که دستوری اجرا بشه و ماوس شما به حالت مخصوص در بیاد و بعد شما روی پنجره مورد نظر کلیک کنید تا اون بسته بشه.

اما زمانی که ماوس هم دیگه جواب نمیده چه کار کنیم؟

از ابزار جالبی به نام xdotool میتونیم استفاده کنیم. این برنامه رو توی توزیع خودتون نصب کنید و بعد این دستور رو به عنوان یک keyboard shortcut تعریف کنید:

xdotool getwindowfocus windowkill

وقتی کلید ترکیبی این دستور رو فشار میدید، اون پنجره ای که الان روی همه است بسته میشه. امیدوارم در زمان هایی که همه چی داره روی اعصابمون راه میره مفید باشه!




حاصل سر و کله زدن های من با لینوکس