شما هنوز به سیستم وارد نشده اید.

#1 2018-10-17 18:20:20

LinArcX
Moderator
ثبت شده: 2015-09-18
ارسال ها: 832

TmuxFT

حتما براتون پیش اومده که حین کار با فایل منیجر نیاز داشته باشید که مسیر جاری رو در ترمینال باز کنید. یا مثلا یه فایل کانفیگ/سورس کد دارین که دوست دارین در ادیتور محبوب تون بازش کنید.
اغلب فایل منیجرها در راست کلیک منوشون گزینه ای به نام OpenInTerminal رو دارند که یه ترمینال جدید رو براتون باز میکنه و همزمان به مسیر جاری هم سوییچ میکنه.
ولی این ته ماجراست!
اگر شما tmux رو کانفیگ کرده باشین رو سیستم تون چه اتفاقی میفته؟
متاسفانه این گزینه دیگه کار نخواهد کرد!
فایل منیجر من نمو هست، ادیتور محبوبم ویم هست و از tmux برای مالتی پلکس کردن ترمینال و تر و تمیز شدن فضای کارم خیلی زیاد استفاده میکنم. ایرادی که tmux داره همین ارتباط بین ادیتور و فایل منیجرتون هست.
یه روز نشستم با خودم فکر کردم چه خوب میشد تو راست کلیک نمو قابلیتی بود که وقتی روش کلیک میکردی میرفت یه تب برات تو TMUX باز میکرد و ادامه کار رو انجام میدادی. اینجوری دیگه لازم نیست مدام مسیرها رو کپی پیست کنی.
این چالش ذهنمو درگیر کرد تا اینکه با دو بسته جادویی آشنا شدم:
1. WmCtrl
2. xdotool
اولی بهتون اجازه میده کنترل پنجره ها و سایر اجزای wm تونو در اختیار بگیرید.(مثلا میشه فایرفاکس رو با یه دستور آورد بالا و فوکوس رو برد روش!) و بسته دوم اجازه میده دستوراتی رو روی سیستم تون شبیه سازی کنید.(مثلا میشه برنامه ای نوشت که بعد از لاگین کردن به سیستم بره به مختصات x,y. روی اون نقطه دابل کلیک کنه و بعد از n ثانیه ببندش smile)
خوب من ایده مو به کمک این ابزارها پیاده کردم و حاصل شد پروژه tmuxFT.
فعلا تو مرحله اول F همون نمو هست و T ترمینال پیش فرضم یعنی DeepInTerminal هست. اگر از فایل منیجرها یا ترمینال های دیگه ای استفاده میکنید حتما قبل از استفاده، سورس کد پروژه رو بخونید و مقادیر دلخواه خودتونو جایگذاری کنید.
آدرس گیت هاب پروژه:
https://github.com/LinArcX/TmuxFT
آدرس بسته در AUR:
https://aur.archlinux.org/packages/tmuxft-git/
پ.ن: راستش دوست داشتم کار رو تمیز تر کنم. مثلا میشد یه اسکریپت نوشت که کار کانفیگ اولیه رو انجام بده و اسم فایل منیجر و ترمینال رو از کاربر بگیره و یه جا ذخیره کنه. و دیگه نیاز نباشه دستی این کارو انجام داد. ولی فرصت شو نداشتم خدایی D:
اگر کسی مایل بود میتونه رو این ویژگی کار کنه و در قالب یه pull request توی گیت هاب خبرم کنه.

آخرین ویرایش توسط LinArcX (2018-10-17 18:36:25)

آفلاین

پانوشت انجمن

پشتیبانی توسط تیم آرچ لینوکس ایران و نیرو گرفته با FluxBB