הפוך כל פעולה לקיצור מקשים ב-Mac שלך


למחשבי מק יש כמהקיצורי מקשים מובנים נהדרים, אבל אם ברצונך ליצור קיצורי דרך מותאמים אישית או גלובליים המבצעים משימות מסובכות יותר, תצטרך לעשות קצת עבודה נוספת. הנה איך להפוך כמעט כל פעולה לקיצור מקשים.

תמונה מאתדקלן ג'וול.

הראינו לך איך לעשות זאתלהפוך כל פעולה לקיצור מקשים ב-Windowsבאמצעות כלי הסקריפט המועדף עלינו של Windows,AutoHotkey. לְמַעֲשֶׂה,אנחנו רוצים למות שזה היה זמין ב-OS X, אבל זה לא. לא נוכל לעשות כל מה שיכולנו עם AutoHotkey ב-OS X, אבל אנחנו יכולים להתקרב למדי באמצעות שפת הסקריפט המובנית של OS X AppleScript.

במדריך זה, אנו הולכים להראות לך תחילה כיצד לשמור סקריפט והשתמש בו כטריגר ב-Quicksilver(אם אין לך את זה, תרצהלהוריד את זה עכשיו-זה באמתתוכנה מדהימה). ואז, אנחנו הולכים לעבורכמה תבניות סקריפטשידגים כמה מהדרכים בהן תוכל להשתמש ב-AppleScript כדי לחקות קיצורי מקלדת אחרים, להפוך קיצורי דרך מסוימים לגלובאליים או לבצע פעולות מסובכות יותר.

רועדים מפחד מהמילים "שפת תסריט"? אל תיבהל! AppleScript קל מאוד לשימוש; ברגע שאתה לומד כמה פקודות בסיסיות, זה בדיוק כמו לדבר אנגלית. יתר על כן, סוגי הסקריפטים שאנו הולכים לכסות כאן הם פשוטים מאוד (רק כמה שורות קוד), כך שגם אנשים ללא ניסיון בקידוד צריכים להיות מסוגלים לתפוס במהירות.

כיצד להקצות טריגר בקוויקסילבר

בעוד Quicksilver משמש בעיקר כמפעיל מהיר של יישומים, הוא יכול לעשות הרבה דברים שונים. אחד הדברים האלה הוא הקצאת מה שנקרא "טריגרים" - בעצם מונח מפואר לקיצורי מקלדת, או מקשי קיצור. יש לו הרבה טריגרים מובנים שמפעילים אפליקציות, שולטים ב-iTunes או עושים דברים אחרים, אבל לצורך המאמר הזה אנחנו בעיקר הולכים להשתמש בטריגרים האלה כדי להפעיל את הסקריפטים המותאמים אישית שלנו.

כדי שכל העניין הזה יעבוד, תצטרך לשמור את הסקריפטים שלך במקום בטוח. אם אין לך כבר תיקיה מיוחדת עבור סקריפטים, אני ממליץ בחום ליצור אחת. יש לי רק תיקייה בתיקיית המסמכים שלי שנקראת "סקריפטים" שבה אני זורק כמעט כל סקריפט שאין לו מקום, בין אם זה סקריפטים עבורGeekTool, פריטי התחברות או דברים כאלה שאני הולך להכניס לקוויקסילבר.

לאחר שכתבת את הסקריפט שלך ושמרת אותו בבית החדש שלו, פתח את Quicksilver ופנה אל ההעדפות שלו (ייתכן שתצטרך ללחוץ על החץ בפינה הימנית העליונה של התצוגה שלו, מכיוון שאולי אין לו סמל עגינה) . עבור לכרטיסייה טריגרים. רוב קיצורי הדרך שלך ייפלו תחת הכותרת טריגרים מותאמים אישית בצד שמאל. לחץ על סימן הפלוס ובחר מקש קיצור כדי להוסיף קיצור דרך חדש.

לאחר מכן תקבל חלון שבו תתאר מה עושה קיצור הדרך. בכל הדוגמאות האלה, אנחנו רק נריץ סקריפט, אז פשוט הקלד את שם הסקריפט שזה עתה כתבת בתיבה העליונה (שכותרתו "בחר פריט"). תיבת הפעולה צריכה לומר "הפעל" כברירת מחדל, אז ברגע שיש לך את הסקריפט הנכון בתיבה "בחר פריט", פשוט לחץ על שמור. אתה תראה את זה מופיע ברשימת הטריגרים.

כדי להקצות לסקריפט זה מקש קיצור, לחץ על החלק הימני ביותר של הערך של אותו סקריפט, במקום בו כתוב כרגע "ללא". בחלונית החדשה שצצה, לחץ על הכרטיסייה הגדרות ולחץ על התיבה שאומרת "מפתח חם". הקלד את קיצור המקלדת הרצוי (ודא שהוא לא נמצא כבר בשימוש גם על ידי משהו אחר), וצא מההעדפות של קוויקסילבר. כעת אתה אמור להיות מסוגל להפעיל את הסקריפט שלך עם קיצור הדרך הרצוי.

השימוש האהוב עלי בתכונה זו הוא הקצאת פעולות לשורה העליונה של המקשים במקלדת שלי. אם אינך מרוצה מהאפשרויות שאפל נותנת לך, אתה תמיד יכול לגרום להם לפעול כמקשי פונקציות רגילים על ידי מעבר אל העדפות מערכת > מקלדת וסימון "השתמש בכל מקשי F1, F2 וכו' כמקשי פונקציות סטנדרטיים". כך, אני יכול להקצות מחדש מקשי פונקציה מסוימים שאני לא משתמש בהם (כמו F4, שמפעיל את לוח המחוונים), למשהו שימושי (כמו השבת המחשב שלי). קיצורי הדרך האלה גם שימושיים מאוד להקצאת הפעולות הרגילות (כמו שליטה ב-iTunes, הפעלת Exposé או שינוי עוצמת הקול) למקשי הפונקציה במקלדות שאינן של Mac, מכיוון ש-OS X לא יתייחס אליהם כמו למקלדות של אפל. אתה יכול, כמובן, להקצות כל פעולות לכל קיצור דרך שתרצה - זה מה שעוסק בהתאמה אישית!

דוגמאות לתסריטים שימושיים

בעוד AppleScript יכול לעשות הרבה דברים, יש כמה פעולות נפוצות שמתאים לטריגרים ב-Quicksilver. אתה יכול להשתמש בו כדי לחקות קיצורי מקלדת אחרים, להפוך את קיצורי הדרך הקיימים לגלובאליים, או לבצע משימות מסובכות יותר עם הקשה אחת או שתיים בלבד. הנה כמה סקריפטים לדוגמה שיכולים לשמש כתבניות לפעולות שלך.

חיקוי קיצור מקשים קיים

חלק מקיצורי המקלדת של OS X לא בדיוק ידידותיים לבעלי האצבעות הקצרות (Control+Command+Option+Eject? ברצינות?). יתר על כן, אם זה קיצור דרך שאתה צריך לרוץ לעתים קרובות, אתה כנראה לא רוצה להתמתח ולהקיש על מספר מקשים מדי יום ביומו. למרבה המזל, אנחנו יכולים פשוט ליצור סקריפט קטן שלוחץ על המקשים האלה עבורנו ולהקצות אותו למקש קיצור פשוט יותר משלנו.

מכיוון שאני צריך לצלם הרבה צילומי מסך בעבודה ב-Lifehacker, שיניתי את כפתור Print Screen (הידוע גם בשם F15) במקלדת מבוססת Windows שלי למקש צילום מסך מהיר ב-Hackintosh שלי. מכיוון שכבר קיים קיצור מקשים לצילום מסך (Shift+Command+4), אנחנו יכולים פשוט לומר ל-OS X ללחוץ עבורנו על המקשים האלה באמצעות הסקריפט הבא:

 tell application "System Events"        key code 21 using {shift down, command down}end tell

אירועי מערכת הוא מה שמטפל בדברים כמו הקשות מקשים וkey code 21מתייחס למקש "4". לפעמים, אתה פשוט תוכל להקליד את המפתח שאתה רוצה (ראה את הסקריפט של המיני נגן בסעיף למטה), אבל חלק מהמקשים דורשים ממך להשתמש בקודים שלהם. בדוק את ארשימה מלאה של קודי מפתח כאן, או הורדקודי מפתח מלאיםלמצוא אותם בעצמך. אתה יכול גם למצואהרשימה המלאה של אפל של קיצורי מקשים קיימים באתר האינטרנט שלהם.

הפוך קיצורי דרך ספציפיים לאפליקציה לקיצורי דרך גלובליים

לחלק מהאפליקציות יש קיצורי דרך נחמדים מובנים, אבל לא חלות באופן גלובלי - כלומר האפליקציה צריכה להיות בפוקוס כדי שתוכל להשתמש בקיצור. זה לא אידיאלי עבור הרבה אפליקציות - נניח, נגני מוזיקה - אז אנחנו הולכים להפוך את קיצורי הדרך האלה לגלובאליים על ידי כתיבת סקריפט קצר שמבצע אותם עבורנו, לא משנה באיזה חלון יש מיקוד.

דוגמה טובה לכך היא אם אתה משתמש בנגן מוזיקה שאינו iTunes. iTunesחוטף לעצמו את כפתורי ההפעלה וההשהה של ה-Mac שלך, כך שאין קיצורי מקשים גלובליים טובים לנגן, להשהות או לדלג על רצועות באפליקציה כמושהוזכר קודם לכן קלֵמֶנטִינָה. אז, אנחנו פשוט נשתמש ב-AppleScript כדי לקרוא לאפשרויות התפריט שלו עבורנו באמצעות הסקריפט הבא:

tell application "System Events"        tell application "Clementine" to activate        tell process "Clementine" to click menu item "Previous Track" of menu "Music" of menu bar 1end tell

מכיוון שאפשרות שורת התפריט הזו תהיה זמינה רק אם Clementine הוא החלון הפעיל, עלינו תחילה לומר ל-OS X למקד אותו עםactivateפְּקוּדָה. לאחר מכן, אנו פשוט בוחרים את פריט שורת התפריט שלנו מ-Clementine שאנו רוצים להקצות לקיצור הדרך. במקרה זה, הפריט "הרצועה הקודמת" מתפריט "מוזיקה".

מכיוון שקלמנטיין מתייגת את קיצור הדרך 'הפעל/השהה' כ'הפעל' או 'השהיה', תלוי אם המוזיקה מתנגנת או לא, הגישה שלמעלה לא תעבוד (מכיוון שסקריפט יכול רק לומר לו לבחור בפריט התפריט "הפעל" או "השהה") . במקום זאת, נשתמש במקשי הקיצור המובנים והלא גלובליים של קלמנטיין כדי להפעיל את פונקציית ההפעלה/השהה. אז, במקום להגיד לו לבחור פריט ספציפי בתפריט, אנחנו פשוט נגיד ל-OS X להתמקד ב-Clementine וללחוץ על F6, קיצור הדרך שלה להפעלה/השהה:

tell application "System Events"        tell application "Clementine" to activate        tell process "Clementine" to key code 97end tell

למען היסודיות, הנה סקריפט דומה שבו אני משתמש כדי לעבור במהירות בין גרסת המיני-נגן לנגן המלא של iTunes. הוא ממקד את iTunes וקורא לקיצור הדרך המובנה Shift+Command+M:

 tell application "System Events"        tell application "iTunes" to activate        keystroke "m" using {shift down, command down}end tell

שימו לב שמכיוון ש-"m" מזוהה למעשה על ידי AppleScript, אני לא צריך למצוא את קוד המפתח שלו. ככזה, הפקודה שבה אני משתמש כדי לחקות לחיצה על מקש זה היאkeystrokeבניגוד לkey code, כפי שהשתמשנו בשתי הדוגמאות לעיל.

הפעל, התמקד או צא מאפליקציות באמצעות הקשה

הactivateהפקודה שהשתמשנו בה למעלה עושה שני דברים: היא ממקדת אפליקציה אם היא פתוחה, או שהיא מפעילה אפליקציה אם היא לא פתוחה. לפיכך, אם יש לך אפליקציות שאתה פותח וסוגר הרבה, נוכל לתת להן קיצור מקלדת גלובלי על ידי יצירת AppleScript פשוט:

tell application "Address Book" to activate

אמנם אתה יכול להשתמש בפונקציית "פתוח" המובנית של קוויקסילבר כדי להפעיל אפליקציה עם טריגר, אבל זה עושה קצת יותר. לדוגמה, מקש הקיצור שלך לא רק יפתח את האפליקציה, הוא גם יתמקד או יבטל אותה אם היא כבר פועלת - כך שעדיין יש לך רק מקום אחד ללכת אליו במקלדת כדי לקבל גישה לאותה אפליקציה ספציפית.

פקודה זו שימושית הרבה יותר, אולם כאשר אתה מצמיד אותה למשימות אחרות - כמו אם אתה רוצה להפעיל אפליקציה ולסגור אותה במהירות. לדוגמה, אני לא משתמש בכרטיס AirPort במחשב שלי; אני משתמש במקלט USB Wi-Fi במקום זאת. זה בסדר, אלא שאני צריך להפעיל את אפליקציית מנהל ההתקן שלו אם אני רוצה להתחבר לרשת Wi-Fi. אני לא צריך להשאיר אותו פתוח, אתה רק צריך להפעיל אותו פעם אחת כדי להפעיל את הדרייבר ואז לצאת ממנו. אז, יצרתי את הסקריפט הזה כדי להפעיל אותו, לחכות כמה שניות כדי לתת לו להירשם, ואז לצאת. זה עובד נהדר עבור קיצור מקלדת מהיר או פריט התחברות.

tell application "ASUSTek WLAN Client Utility" to activatedelay 5tell application "ASUSTek WLAN Client Utility" to quit

שימוש נהדר נוסף עבור AppleScript בתרחיש זה הוא להפעיל אפליקציית nagware וללחוץ על כפתור "הדגמה" בשבילך, כך שלא תצטרך. לְדוּגמָה,שהוזכר קודם לכן TextExpander, בעת ההשקה, מציג חלון מעצבן שגורם לך ללחוץ על כפתור "הדגמה" לפני שתוכל להתחיל להשתמש באפליקציה. כדי לעקוף את זה, פשוט השתמש ב-AppleScript זה:

 tell application "System Events"        tell application "TextExpander" to activate        key code 48        key code 48        key code 48        key code 48        key code 49        keystroke "w" using command downend tell

זה ילחץ על Tab ארבע פעמים כדי לנווט ללחצן ההדגמה, הקש על רווח כדי לבחור אותו ואז סגור את החלון. שים לב שתצטרך להגדיר את Tab לנווט "כל הפקדים" תחת העדפות מערכת > מקלדת כדי שזה יעבוד.

אפליקציות מסוימות דורשות ממך להמתין מספר שניות לפני שהן מאפשרות לך ללחוץ על כפתור ההדגמה. במקרים אלה, אתה יכול פשוט להוסיף בתור שמחכה את מספר השניות הדרוש. למשל, עבורשהוזכר קודם לכן Divvy, מה שגורם לך להמתין 3 שניות, השתמש בסקריפט הבא:

 tell application "System Events"        tell application "Divvy" to activate        delay 4        key code 48        key code 48        key code 48        key code 49end tell

על ידי הקצאת סקריפטים אלה למקשי קיצור, לעולם לא תצטרך ללחוץ על כפתור הדגמה בעצמך שוב!

הקצה קיצורי דרך לפונקציות שאין להם כרגע

הפונקציה האחרונה והמסובכת ביותר כאן היא הקצאת קיצורי דרך לפעולות שאין להן אותם כרגע (או שיש להן קיצורי דרך שלא ניתן לחקות בשיטות שלעיל). לְדוּגמָה. אני רוצה להכניס את המחשב למצב שינה עם הקשה, אבל קיצור הדרך לעשות זאת הוא Option+Command+Eject. זה לא קיצור דרך נחמד, אבל אין קוד מפתח למקש Eject, אז אנחנו לא יכולים להשתמש בשיטות שלמעלה כדי לחקות אותו ולהקצות אותו למקש קיצור פשוט יותר. במקום זאת, עלינו ליצור AppleScript שמשנה את המחשב ישירות:

 tell application "Finder" to sleep

שיטה זו תדרוש קצת יותר ידע ב-AppleScripting (או איזה גוגל-פו נחמד - מצאתי את זה בחיפושsleep computer with an applescript- אבל ראוי להזכיר עבור אותם זמנים שרק אוטומציה של משימות פשוטות לא יחסוך את זה.


אתה יכול לעשות לא מעט עם AppleScript אם בא לך ללמוד את הקוד, אבל גם אם לא, זה ממש קל ללמוד כמה פקודות שימושיות שיביאו אותך די רחוק. אם עד עכשיו לא היית מרוצה מהתמיכה בקיצורי המקלדת של OS X, שיטה זו אמורה לפתוח בפניך לא מעט אפשרויות. יש לך מקיצורי קיצור מותאמים אישית מועדפים משלך עבור OS X? שתפו אותנו בתגובות.

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe Now & Never Miss The Latest Tech Updates!

Enter your e-mail address and click the Subscribe button to receive great content and coupon codes for amazing discounts.

Don't Miss Out. Complete the subscription Now.