כיווניות עברית לטקסט נקי מעורב

נכתב ב-27 בפברואר 2008, 1:36 | על-ידי לירון | קטגוריות: כללי

10

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

ל-Facebook אין תמיכה ב-RTL בכלל!

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

אני חושב שיש לי טלאי פחות מכוער: קוראים לו RIGHT-TO-LEFT EMBEDDING, או בקיצור RLE, או בפחות קיצור U+202B, והוא תו בקרה ביוניקוד. מה שהוא עושה זה להודיע לדפדפן (במקרה של דפי ווב זה הדפדפן, אבל זה יעבוד גם עם Notepad) שהטקסט שאחריו הוא מימין לשמאל (RTL, בקיצור), גם אם הוא מעורב בטקסט LTR (למשל אנגלית). שימו לב לטקסט הבא:

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

חדש iPod יש לי

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

רק אזהרה בקשר לשימוש: אם אתם משתמשים בו בפסקה עברית, ואז רוצים להמשיך לפסקה אנגלית, תצטרכו להוסיף את התו שמבטל את שינוי הכיווניות האחרון: POP DIRECTIONAL FORMATTING, או PDF בקיצור. באופן כללי, חכם להוסיף את התו הזה בסוף כל שורה/פסקה שבה השתמשתם ב-RLE, כי אחרת אפשר לחרבש את שארית הטקסט בקלות.

בנוסף, אם אתם רוצים לוודא שהיא תהיה בכיווניות אנגלית גם בדף עם כיווניות עברית, אתם יכולים להוסיף את אחיו ההפוך, ה-LRE.

בניתי דף הדגמה קטן, אתם מוזמנים להציץ.

למי שרוצה להרחיב בנושא, ולקרוא את ההמלצות והאזהרות של ה-W3C, הנה:
http://www.w3.org/International/questions/qa-bidi-controls.en.php

מי מתנדב להרים את הכפפה ולבנות איזה תוסף לשועל שיאפשר להוסיף את התווים האלה איפה שצריך, בלי לשכוח להוסיף תו PDF אם המשתמש שכח?

תגובות (10)

לפי התקן של יוניקוד, תווי RLE/LRE תופסים לאורך הפסקה הנוכחית בלבד. ברגע שעוברים לפיסקה הבאה הם יאבדו אוטומטית את התפקוד שלהם, ממש כמו כאשר נכניס PDF בסוף הפסקה.

אני מניח שכתיבת הרחבה שתעשה את זה היא לא תהיה פעולה מסובכת, ואולי ההרחבה הזו כבר קיימת.

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

אתה מגניב!
אם יהיה לי זמן, אנסה להשקיע בעניין בניית התוסף לשועל

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

:-)

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

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

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

שלום,
אני השתמשתי בתווים האלו ושרשרתי אותם למחרוזת ,
את המחרוזת הכנסתי לקובץ pdf
והתווים האלו מופיעים כקווים מאונכים ומכערים את הקובץ
רציתי לדעת אם יש אפשרות להתגבר על זה
בתודה מראש
adina

תלוי באיזו תוכנה השתמשת בשביל לבצע את ההמרה…

עבר קצת זמן מאז שהרמתי את הכפפה הזו, אבל היום (אחרי שלירון הזכיר לי את העניין הזה אתמול) בניתי סימנית שעושה את העבודה. ראו:
http://www.angeredbrackets.com/2009/06/inserting-bidi-support-tags-in-online-textareas

[…] עברית לטקסט נקי מעורב – עדכון 3 07 2009 בהמשך לפוסט הקודם שלי בנושא, איתן מ-Angered Brackets (שהוא גם במקרה חבר טוב שלי) בנה bookmarklet […]