طراحی میانبر برای مخفی کردن و نمایش فایل ها در مک

سلام !

من معمولا زیاد با فایل های مخفی ( یا Hidden ) کار میکنم، چون تعدادشون هم زیاده وقتی کارم تموم میشه دوس دارم دوباره مخفیشون کنم چون ظاهر خوبی به صفحه ی کارم نمیدن، یکی از مشکلاتی که من زیاد باهاش مواجه میشم اینه که برای نمایش فایل های مخفی و دوباره مخفی کردن اون ها باید کامند بزنم! چه خوب میشد اگر یک میانبر سر راست براش وجود داشت … توی این پست قصد دارم این میانبر رو طراحی کنم !

 

 

نیازمندی ها : applescript – automator

 

برای طراحی این میانبر راه های مختلف و زیادی وجود داره، من از applescript استفاده کردم

applescript یک زبان اسکریپتی مخصوص ماشین های مک طراحی شده تا انجام کار ها رو آسون تر کنه، تعامل با بیشتر بخش های سیستمی از طریق applescript ممکنه و اکثر کار هایی رو که با رابط کاربری میشه انجام داد اینجا هم میتونیم

اگر دوست دارین در موردش بیشتر بدونین یک سر به این صفحه بزنید Introduction to AppleScript Language

کد میتونه از توابع تشکیل بشه و Functional نوشته بشه، ولی من اینجا همه چیز رو ساده کردم!

خوب بریم سراغ کد!

 

گام اول:

من برای کد نویسی از محیط Script که جزو نرم افزار های پیشفرض مک هست استفاده کردم، اونو میتونید در محیط Lunchpad به همین نام پیدا کنید

 

اول باید بدونیم که حالت فعلی سیستم چیه ؟! پس باید یک فرمان shell اجرا کنیم و نتیجشو برسی کنیم

برای اجرای فرمان shell از این دستور استفاده میکنیم

 ” … ” do shell script

این دستور هر چیزی که داخل double quotation  نوشته بشه رو اجرا میکنه و نتیجه رو بهمون برمیگردونه با استفاده از دستور

Set <name> to <value>

میتونیم یک متغیر به نام name رو به مقدار Value (با هر نوعی) ایجاد کنیم

 

با این دستور مقدار پیشفرض صفت AppleShowAllFiles رو برای نرم افزار finder میخونم و بعد نتیجه رو توی متغییر FileState میریزم

این متغیر در صورت set شدن میتونه حالت نرم افزار finder رو از پنهان سازی فایل های مخفی به حالت نشون دادن اون ها و برعکس تغییر بده

 

اگر تا حالا کسی برای finder مقدار پیشفرض تعریف نکرده باشه مقدارش خالیه، اگر خالی بود پیش فرض یعنی False

 

فرض میکنم حالت بعدی اینه که باید فایل های مخفی شده رو نشون بدیم پس یک متغیر ایجاد میکنم با مقدار TRUE

حالا متغییر FileState رو با دو مقدار Yes یا True مقایسه میکنم ( چون امکان داره قبلا این مقدار دستی set شده باشه بهتره با هردو اون ها چک بشه ) اگر برابر بود بعنی فایل های مخفی در حال نمایش هستن و حالت بعدی False خواهد شد اگر برابر نبود که برابر حالت پیشفرضی که در نظر گرفتیم یعنی True خواهد شد !

با توجه با نتیجه برسی بالا یک پیغام خروجی مناسب ایجاد میکنم

 

خوب حالا وقتشه پیغام رو نشون بدیم

همونطور که میبینید دستورات applescript خیلی شبیه به زبان انگلیسیه ! و برای فهمیدنش فقط کافیه از روش بخونید !

این دستور پیغامی رو به متن  DialogMessage و با دو دکمه ی “No”, “Yes” که دکمه ی “No” پیشفرض انتخاب شده و صفتش هم cancel هست با عنوان پنجره ی “ShowHideAssistant” و نماد caution (مثلث خطر) ایجاد میکنه و نتیجشو میریزه توی متغیر dialogResult !

در گام آخر نتیجه پیغام نشون داده شده به کاربر رو برسی میکنیم و در صورتی که موافق بود ابتدا مقدار جدید صفت AppleShowAllFiles رو تعیین میکنیم بعد File Manager مک رو ریست میکنیم !

گام دوم!

حالا وقتشه برای کدمون یک میانبر شخصی بسازیم تا از این به بعد اون کلید کارامون رو انجام بده

نرم افزار automator رو اجرا  و یک پروژه ی جدید با عنوان  Service ایجاد میکینم

مقدار عبارت Service receive رو no input میکنیم

حالا یک ماژول Run Apple Script رو به میز کارمون اضافه میکنیم

توی این مرحله میشد کار های دیگه ای هم کرد مثلا Script نوشته شده رو به عنوان نرم افزار اجرا کرد یا چیز های دیگه ….

کد نوشته شده رو داخل کادر سفید Copy & Paste میکنیم ! اونو به اسم ShowHideAssistant ذخیره میکنیم

در گام آخر به بخش کلید های میانبر از تنظیمات صفحه کلید میریم، service ها رو انتخاب میکنیم و به پایین لیست میریم

اسم سرویسمون رو میبینید ! تموم شد 🙂

فقط کافیه روی none کلیک کنید و کلید های میانبر خودتون رو انتخاب کنید !

کد نهایی :

 

موفق باشید

نظر خود را بنویسید.

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *