انجمنهای فارسی اوبونتو
کمک و پشتیبانی => برنامهسازی => نویسنده: علیرضاامیرصمیمی در 13 آذر 1394، 10:54 قظ
-
حتما برای شما پیش اومده که در مرورگرتون در حال تایپ آدرس بودید و متوجه زبان کیبرد نبودید و مثلا به جای google.com عبارت "لخخلمث.زخپ " رو تایپ کردید . و یا در حالت چت به زبان پارسی بودید و متوجه زبان انگلیسی کیبرد نبودید و اشتباه تایپ کردید مثلا به جای جمله "سلام خوبی؟" نوشتید "sghl o,fd ? " و ... . این قضیه وقتی آزار دهنده میشه که متن طولانی تری نوشته باشید!
برای حل این مشکل یه اسکریپت ساده نوشتم و اسمش رو گذاشتم فینگیل! (شبیه فینگیلیش) که میتونید اون رو روی سیستمتون نصب کنید و یه شرتکات کیبرد هم براش درست کنید و بعد از هایلایت کردم جمله اشتباه (به فارسی یا انگلیسی) و کپی کردن اون در کلیپ برد سیستم و زدن کلید شرتکات برنامه خود برنامه اون رو براتون به طور اتوماتیک تبدیل میکنه :) نمونش رو میتونید ببینید.
(http://s3.picofile.com/file/8226246300/optimised2.gif)
با شما این اسکریپت رو به اشتراک میذارم شاید به دردتون خورد :)
امروز اسکریپتی از دوستی به نام آقای فرود به دستم رسید که کار مشابهی میکرد و ایده های بسیار خوبی در اسکریپت به کار بردند . با کمک اسکریپت ایشون ، اسکریپت خودم رو ارتقا دادم و دوباره منتشر کردم . ضمن تشکر از این دوست عزیز ، آدرس ایمیل ایشون در اسکریپت ذکر شده
برای نصب و اطلاعات بیشتر به این لینک مراجعه کنید (http://amirsamimi.mihanblog.com/post/38)
-
سلام
علیرضا کلا زدی تو کار خیر ... ;D ;D ;D
ممنون
-
آقا عالی!
اتفاقا منم چند روز پیش داشتم به این فکر میکردم که برنامهای برای حل این مشکل با پایتون بنویسم که الان دیدم شما یه نمونهٔ عالی ازش ساختید، راستش من اصلا ذهنم به طرف کلیپبرد و اینا نرفته بود، اینطوری کار خیلی راحتتر شده!
موفق باشی علیرضا جان.
-
قبلا هم یادمه دیدم یکی از بچه ها با جاوا همچین چیزی نوشته بود...
-
سلام
اسکریپت بانمکیه:)
ولی دو تا مشکل اساسی داره
اولش اینکه xdotool به فوکوس کاری نداره! یعنی اگر زمانی که داری شورتکات رو می زنی یک صفحه ی دیگه بیاد متن رو توی پنجره ی فعال تایپ می کنه!
دومیش اینکه من این مشکل رو توی ترمینال دارم. واین اسکریپت برای ترمبنال کار نمی کنه!
البته فعلا راه حلی برای این مشکلات ندارم :) (ولی اگر راهی پیدا کردم می گم!)
-
آقا دمت گرم
خیلی کارت عالیه.
منم یه برنامه مشابه نوشته بودم اما به ذهنم خوندن از Clipborad نرسید بود. این کارت عالیه
از طرفی هم برای افرادی که تحت خط فرمان کار میکنند، این روش جواب نمیده.
اگر بشه کاری کرد که تحت خط فرمان هم درست کار کنه، دیگه عالی عالیه.
باز هم ممنون از زحماتت
-
از کلیپ بورد X11 استفاده کردی؟
-
آقا یه راه حل پیدا کردم که دیگه نیاز به Copy کردن نباشه و مستقیم با زدن میانبر، برنامه متن را تبدیل کنه.
در برنامه خط
clipboard=$(xclip -o -sel clip )
را به
clipboard=$(xclip -out )
تغییر بدید.
-
آقا یه راه حل پیدا کردم که دیگه نیاز به Copy کردن نباشه و مستقیم با زدن میانبر، برنامه متن را تبدیل کنه.
در برنامه خط
clipboard=$(xclip -o -sel clip )
را به
clipboard=$(xclip -out )
تغییر بدید.
برای من کار نکرد متاسفانه :(
از کلیپ بورد X11 استفاده کردی؟
بله
-
دوستان لطفا دوباره برنامه رو نصب کنید بسیار بهینه تر شد و فکر میکنم مشکل focus هم حل شد :)
-
این نسخه ی جدید رو دقیق تست نکردم ولی برای مشکل ترمینال یک ایده دارم(هنوز اجرایی نکردم)
می گم بیاییم با همون
xdotool getactivewindow
یا با
xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}'
WIN ID رو بدست بیاریم بعد با
xwininfo -id
اطلاعات اون پنجره رو بدست بیاریم و اسم برنامه رو با grep فیلتر کنیم اگر اسم برنامه bash بود پس یعنی ترمینال هست و در این صورت باید به اندازه تعداد حروفی که توی کلیپ برد هست (با wc می شه تعداد کاراکتر رو بدست آورد) دستور
xdotool key Backspace
رو اجرا کرد سپس دوباره تایپ کنه!
clipboard=$(xclip -out )
برای من به خوبی کار می کنه و خیلی خوبه چون نمی خواد که کپی کنیم
ویرایش:نسخه جدید هم انگلیسی و هم فارسی هردو رو چاپ می کنه
-
این کار که قبلا انجام شده بود! اختراع دوباره چرخ!!!
بهتر بود روی همون اسکریپت قبلی (حالا یا همین جدیده) برای پشتیبانی زبان های بیشتر کار بشه: آلمانی، عربی، فرانسوی و...
-
این کار که قبلا انجام شده بود! اختراع دوباره چرخ!!!
بهتر بود روی همون اسکریپت قبلی (حالا یا همین جدیده) برای پشتیبانی زبان های بیشتر کار بشه: آلمانی، عربی، فرانسوی و...
منبع اسکریپت قبلی لطفا.
-
این کار که قبلا انجام شده بود! اختراع دوباره چرخ!!!
بهتر بود روی همون اسکریپت قبلی (حالا یا همین جدیده) برای پشتیبانی زبان های بیشتر کار بشه: آلمانی، عربی، فرانسوی و...
منبع اسکریپت قبلی لطفا.
منبع اسکریپت قبلی : http://linuxvaman.ir/post/283
-
این کار که قبلا انجام شده بود! اختراع دوباره چرخ!!!
بهتر بود روی همون اسکریپت قبلی (حالا یا همین جدیده) برای پشتیبانی زبان های بیشتر کار بشه: آلمانی، عربی، فرانسوی و...
پیش داوری کار درستی نیست! اگر اسکریپت من رو میخوندید متوجه استفاده من از اسکریپت قبلی میشدید! من از اون اسکریپت قبلی و اسکریپتی که قبلا خودم نوشتم استفاده کردم و این اسکریپت رو منتشر کردم. در ضمن نام نفر قبل هم در بالای اسکریپت من ذکر شده
خوب هست کمی تحقیق کنیم و بعد نظر بدیم
در ضمن اسکریپت من مجوز GPL داره و دست بقیه رو برای توسعه بر اساس این مجوز باز میذاره
-
مشکل تبدیل حروف بزرگ انگلیسی اسکریپت رو هم حل کردم :)
-
این کار که قبلا انجام شده بود! اختراع دوباره چرخ!!!
بهتر بود روی همون اسکریپت قبلی (حالا یا همین جدیده) برای پشتیبانی زبان های بیشتر کار بشه: آلمانی، عربی، فرانسوی و...
پیش داوری کار درستی نیست! اگر اسکر \\:D/یپت من رو میخوندید متوجه استفاده من از اسکریپت قبلی میشدید! من از اون اسکریپت قبلی و اسکریپتی که قبلا خودم نوشتم استفاده کردم و این اسکریپت رو منتشر کردم. در ضمن نام نفر قبل هم در بالای اسکریپت من ذکر شده
خوب هست کمی تحقیق کنیم و بعد نظر بدیم
در ضمن اسکریپت من مجوز GPL داره و دست بقیه رو برای توسعه بر اساس این مجوز باز میذاره
بله بله حق با شماست
هم ایده و هم اجرا خوب بوده، غمی از غمهامون کم شده
دست هر دو تا اسکریپت نویس (قدیم و جدید) درد نکنه.
فقظ تو ترمینال لازمه که اسکریپت اول یک ctrl+c درج کنه بعد برگرانش رو بذاره
-
خیلی دوست داشتم از قابلیت اتوماتیک ctrl+c استفاده کنم که نیازی به کپی دستی نباشه ولی متاسفانه همیشه جواب نمیده
ولی دارم روش کار میکنم :)
سپاس از همه دوستان
-
سلام به همه دوستان
نسخه جدید Fingil تکمیل شد.
در این نسخه میتوانید فارسی و English را به صورت همزمان تبدیل کنید.
نقاط ضعف برنامه: ( در حال بررسی )
- سرعت تبدیل مقداری کند است.
- قبل از تبدیل حتما باید Copy انجام دهید. ( در تلاش برای تبدیل فقط، با انتخاب کلمات )
- در خط فرمان کار نمی کند.
https://github.com/alireaza/fingil
-
سلام به همه دوستان
نسخه جدید Fingil تکمیل شد.
در این نسخه میتوانید فارسی و English را به صورت همزمان تبدیل کنید.
نقاط ضعف برنامه: ( در حال بررسی )
- سرعت تبدیل مقداری کند است.
- قبل از تبدیل حتما باید Copy انجام دهید. ( در تلاش برای تبدیل فقط، با انتخاب کلمات )
- در خط فرمان کار نمی کند.
https://github.com/alireaza/fingil
علیرضا جان خب اینکه همون کار قبلی رو میکنه با اسکریپت طولانی تر :)
-
علیرضا جان خب اینکه همون کار قبلی رو میکنه با اسکریپت طولانی تر :)
نشد دیگه :( معلومه برنامه را امتحان کردید. :-X ](*,) :oops:
در این نسخه میتوانید فارسی و English را به صورت همزمان تبدیل کنید.
شما متن زیر را با برنامه خود تبدیل کنید:
hdk fvkhli ldj,ki ilclhk thvsd , ٍدلمهسا vh jfndg ;kn.
خروجی که من از برنامه شما میگیرم:
hdk fvkhli ldj,ki ilclhk thvsd , ٍnglish vh jfndg ;kn.
احتمالا شما هم همین خروجی را میگیرید.
در برنامه شما تنظیم شده که اگر Charset متن UTF-8 باشه، از فارسی به English تبدیل کنه.
که در متن بالا هم چون در بین حروف از کلمات فارسی استفاده شده، برنامه UTF-8 تشخیص میده.
اما در برنامه اصلاح شده توسط اینجانب، بدونه توجه به Charset حروف را میگیره و به معادل آن در زبان مقابل تبدیل میکنه.
-
عااالی بود ! :) دفعه اول درست نخوندم اسکریپت رو
مرسی تغییرات رو اثر دادم و به عنوان ورژن ۱.۰۰ برنامه منتشر شد :)
-
یکی این لینک رو برام فرستاد :))) اون اسکریپت اول صرفا به درخواست یک دوست نوشته شده، و با wtfpl هم پابلیش کردم. اینه که حتی اگه ذکری هم نمیکردید از من، مشکلی نبود. ممنون و موفق باشید.
-
سلام
این خیلی برنامه کاربردی است. خدا قوت. من به تازگی تست کردم ولی کار نکرد. میخواستم بدانم مشکل از من است یا باید تغییراتی در کد داد؟
-
سلام مهدی جان
جناب امیر صمیمی خیلی وقته انجمن نیستن