החלפת מקשי הקיצור לפיסקה עברית ולפיסקה אנגלית

מקשי הקיצור הקיימים בתוכנת אופיס הם Ctrl+Right-Shift לקביעת כיוון פיסקה עברית, כלומר, מימין לשמאל, ו- Ctrl+Left-Shift לקביעת פיסקה אנגלית, משמאל לימין. מה רע במקשים אלו?

תרחיש

אתה כותב מסמך בעברית, הכולל מספר פיסקאות באנגלית. אתה כותב פיסקה באנגלית, והפיסקה הבאה צריכה להיות בעברית. אתה לוחץ על Enter, מחליף את הכיווניות ומחליף את השפה.

בעיה

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

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

הפתרון

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

ישום

ניתן ליבא שני מקרואים מקובץ Visual Basic באתר זה (Bidi.bas), מה עושים? פותחים מסמך MS-Word, פותחים את ה-Macro Editor בעזרת תפריט Tools/Macro ומייבאים את הקובץ בתפריט File/Import File

הסבר

שני מקרואים (macros) פשוטים עושים את תהליך החלפת השפה כך שיהיה בלתי מותנה במצב השפה הפעילה:

Sub ParaLtr()

    Selection.LtrPara

    Selection.ParagraphFormat.Alignment = wdAlignParagraphLeft

    Application.Keyboard (1033)

End Sub

Sub ParaRtl()

    Selection.RtlPara

    Selection.ParagraphFormat.Alignment = wdAlignParagraphRight

    Application.Keyboard (1037)

End Sub

 

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

 

גם כאן, ניתן ליבא את המקרואים מקובץ Visual Basic באתר זה (Bidi.bas), או להוסיף אותם ידנית, בעזרת עורך המקרו בתפריט "כלים" (Tools).

בשלב שני, גם כאן, משייכים מקשי קיצור למקרואים בעזרת קופסת הדיאלוג Keyboard  שנפתחת עם הלחיצה על המקש בתחתית קופסת הדיאלוג Tools/Customize.

באופן אידיאלי, גם כאן, היה רצוי לבחור מקשי קיצור לכיווניות הכוללים את מקשי החצים, או להגדיר מחדש את מקשי הקיצור Ctrl+Shift ימני ושמאלי. ושוב, הבעיה היא שאופיס משתמש בהם באופן אקסקלוסיבי, ולכן יש צורך בבחירת מקשים חליפיים. המקשים בהם אני בחרתי הם הצירוף של Ctrl+Shift עם < ו- >.

חסרונות

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