אלגוריתם דו-כיווניות של יוניקוד קובע את כיוון זרימת הטקסט במחשב: ימין־לשמאל או שמאל־לימין. הוא מנתח כל תו לפי 'כיווניות' שלו: חזקה ימין־לשמאל, חזקה שמאל־לימין, חלשה או נייטרלית. תווים מטווח יוניקוד של עברית וערבית נחשבים חזקים ימין־לשמאל. תווים לטיניים חזקים שמאל־לימין. מספרים מסווגים כחזקה שמאל־לימין חלשה. פיסוק וניקוד נחשבים נייטרליים.
תווים נייטרליים (כמו נקודה או פסיק) מקבלים כיווניות מההקשר שלהם. אם הם בין שני תווים בעלי אותה כיווניות, הם יורשים אותה. אם התו הקודם והבא שייכים לכיווניות שונה, האלגוריתם נותן להם את כיווניות התו הבא ברצף. רצפים מורכבים של נייטרליים יצרו בעיות בעבר. בעבר היו פתרונות עקיפה, כמו קביעת כיווניות כללית לפסקה ב־Office 2000. בגרסה העדכנית של אלגוריתם יוניקוד רוב המקרים הללו תוקנו.
עדיין נשארות בעיות בעברית ובערבית עם רצפים מסוימים. יש מקרים בהם סדר התווים יוצג באופן שגוי, ובמצבים כמו מספרי טלפון הקידומת עשויה להופיע בצד הלא נכון. פתרון אפשרי הוא שימוש בתווים סמויים שמכתיבים כיווניות, או ברווחים מיוחדים שמפרידים או מאחדים הקשרים. אלה פתרונות טכניים שדורשים תמיכה תוכנתית.
תקן יוניקוד מגדיר שני תווים סמויים: LRM (לשמאל־לימין) ו־RLM (לימין־לשמאל). תווים אלה אינם נראים במסמך, והם קובעים כיווניות לטקסט שלידם. הם עדיין לא חלק מהמקלדת העברית הסטנדרטית. בטיוטת תקן מקלדת ניתן להוסיף LRM ו‑RLM באמצעות צירופים ספציפיים, וחלק מהמערכות (כולל Windows מאז Windows 8) תומכות בזה באופן חלקי. מערכות ויישומים אחרים מציעים דרכים נוספות להזנת תווים אלה.
אלגוריתם דו-כיווניות מחליט אם הטקסט זורם מימין לשמאל או להפך. אלגוריתם = כלל בתוכנה שמקבל החלטות. תווים בעברית וערבית זורמים מימין לשמאל. תווים באנגלית זורמים שמאל־לימין. מספרים בדרך כלל שמאל־לימין. סימני פיסוק כמו נקודה הם נייטרליים. = תווים נייטרליים =
תווים נייטרליים הם תווים בלי כיוון, כמו נקודה. הם מקבלים את הכיוון מהתווים סביבם. אם הם בין כיוונים שונים, הם לוקחים את הכיוון של התו שאחריהם.
לפעמים הסדר של מילים או מספרים יוצא לא נכון. לדוגמה, קידומת במספר טלפון עשויה להיבחר במקום הלא נכון. אפשר לתקן זאת בעזרת תווים חבויים שמכריחים כיוון, אבל זה קשה להקלדה רגילה.
יש שני תווים סמויים: LRM ו‑RLM. הם לא נראים, אבל הם אומרים לטקסט להזין כיוון שמאל־לימין או ימין־לשמאל. הם לא זמינים בכל מקלדת עברית. בגרסאות מסוימות של מערכות הפעלה יש דרכים להכניסם.
תגובות גולשים