פורסם: 04/03/2013 - 14:34
נושא ההודעה: סוגריים בליברה אופיס
|
היי
שמתי לב לאחרונה שיש באג די מציג בליברה אופיס בנוגע לסוגריים עם טקסט עברי/אנגלי משולב.
עד עכשיו אני פתרתי אותו עם הוספת תווי כיווניות, עד שמישהו הפנה את תשומת ליבי לכך שזה בעייתי לרוב המשתמשים.
הבעיה קוראת עם טקסטים אשר נראים כך:
שלום (worl)d
(וכמו שאפשר לראות, הבעיה קוראת גם בדפדפנים).
אפשר בקלות לתקן את זה ע"י הוספת תו כיווניות:
שלום (worl)d
לפני הסוגר הבעייתי.
בלינוקס אפשר לעשות את זה עם פריסת lyx של עברית (shift+ט לתו ימין לשמאל ו־ shift+א לתו שמאל לימין). אבל מן הסתם שהפתרון הזה ספציפי רק ללינוקס, והוא עוקף את הבעיה (נחמד ל־power user לא ל־end user).
בליברה אופיס, אפשר להכניס את התוים האלו באמצעות insert>formatting mark . אבל גם זה לא פתרון אופטימלי ונוח.
הפתרון הטוב יהיה להכניס את התוים האלו בצורה אוטומטית כשצריך בטקסט. אני רוצה לדווח באג על הנושא, חיפשתי קודם אם קיים באג והדבר הכי קרוב שמצאתי היה :
https://bugs.freedesktop.org/show_bug.cgi?id=56408
(go kaplan)
אבל זה בעיקרון באג פחות נוראי . יש עוד אנשים שזה קורה להם? ציון גרסאות וכדומה כמובן יועילו. מישהו ראה פתרון לזה? אני רוצה לדעת אם זה משהו שקשור לאובונטו או לליברה אופיס.
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 15:07
נושא ההודעה:
|
מתי בדיוק אתה רוצה להכניס תו כיווניות? נסה להחיל את הצעתך על המקרים הבאים:
2. שלום (hello) עולם
3. שלום (hello באנגלית)
ותזכורת: בפרישת המקלדת החדשה, תווי הכיווניות הם אלט־ימני-שיפט-0 עבור RLM ואלט־ימני-שיפט-9 עבור LRM.
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 15:55
נושא ההודעה:
|
למה שזה לא יקבע לפי פריסת המקלדת הנוכחית? כלומר שאם אני מכניס תו עם כיווניות חלשה שירש את הכווניות של התו הקודם, אז בהתאם לפריסת המקלדת יכנס תו כיווניות שיתקן זאת.
זה מאוד אינטואיטיבי מבחינת המשתמש.
אם אני לא טועה, בגרסה ישנה יותר של ליברה אופיס ההתנהגות הנוכחית לא היתה מתרחשת. כנ"ל לגבי אופיס של מיקרוסופט.
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 16:09
נושא ההודעה:
|
לענ"ד זהו לא באג, וזה גם לא נכון לפתור זאת ע"י תו כיווניות אוטומטי.
מה שיכול להיעשות (האמנם?) באופן אוטומטי, צריך להיכנס לאלגוריתם עצמו.
במילים אחרות - נראה לי שצריך לשנות את אלגוריתם BiDi, כך שיכלול את המקרה המתואר.
המקרה של סוגריים הוא ייחודי, בכך שיש כאן שני תוים, במקומות רחוקים יחסית בטקסט, שקשורים אחד לשני (פותח וסוגר), ויש לכיווניות חשיבות לגביהם. לתוי הגרשיים למיניהם, יש גם תוים פותחים וסוגרים, אך אין בהם משמעות לכיווניות.
אינני מכיר מספיק את האלגוריתם ע"מ להציע מה התיקון שצריך להיעשות, רק רציתי להצביע על הייחודיות והכלליות של המקרה, ולכן על כך שזה צריך להיפתר ברמת האלגוריתם.
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 16:22
נושא ההודעה:
|
הבעיה לא יחודית לגמרי עבור סוגריים. לכל תו "חלש" (אני מקווה שאני משתמש במונח הנכון) תהיה את הבעיה הזו. למשל: שלום "worl"d
המרכאות אמורות לעטוף את המילה worl ולא את ה־d במקרה הזה. זה אמור להיראות כך:
שלום "worl"d
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 17:25
נושא ההודעה:
|
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 17:36
נושא ההודעה:
|
לא התייחסת לשתי הדוגמאות שהעליתי.
אם אתה מכניס כל מיני תווים קסומים, אתה צריך לזכור שהם נמצאים שם.
לדוגמה: כתבת שלום (h ואז מחקת את ה־h (התכוונת בעצם לכתוב י). נשארו לך סוגריים עם סימן LTR לפניהן.
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 18:08
נושא ההודעה:
|
צפריר : | לא התייחסת לשתי הדוגמאות שהעליתי.
אם אתה מכניס כל מיני תווים קסומים, אתה צריך לזכור שהם נמצאים שם.
לדוגמה: כתבת שלום (h ואז מחקת את ה־h (התכוונת בעצם לכתוב י). נשארו לך סוגריים עם סימן LTR לפניהן. |
לא התייחסתי כי אני לא טוען שהפתרון שלי מושלם. אבל אני כן טוען שבמקומות אחרים יש פתרון שעובד לא רע, וליברה אופיס צריך למצוא פתרון כלשהו. גם אם הפתרון יהיה תקין 50% מהפעמים. כרגע הפתרון שיש הוא לא לעשות כלום, וזה די גרוע.
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 19:01
נושא ההודעה:
|
אני עדיין לא מבין מה אתה בדיוק מציע. מתי אתה רוצה שיוכנס תו מיוחד?
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 19:50
נושא ההודעה:
|
צפריר : | אני עדיין לא מבין מה אתה בדיוק מציע. מתי אתה רוצה שיוכנס תו מיוחד? |
שוב אני לא מתיימר לתת פתרון נכון או יעיל שיתאים לכל המקרים. או פתרון בכלל. רק מציין עובדה בסיסית שקיים פתרון כזה שעובד טוב (אופיס של מיקרוסופט, ואם אני לא טועה גם בגרסה ישנה יותר של ליברה אופיס).
לצורך העניין אני מעלה את הבעיה, אין לי ידע מספיק כדי לתת פתרון. רק יכול להגיד שקיים כזה.
|
|
חזרה לתוכן הדיון |
פורסם: 04/03/2013 - 21:44
נושא ההודעה:
|
ההצעה שלך הצליחה לשבור את ההתנהגות בשני המקרים שהצעתי.
אם תקרא היטב את ההודעה שלך בתחילת הדיון תראה שיש בה משהו שהוא מקרה (3) שלי ("(shift+ט"), אבל אין בה משהו שהוא הדגמה של הבעיה שלך. הצלחת ליצור משהו שמרע את המצב אפילו בדוגמה הפשוטה של ההודעה שהציגה את הבעיה.
כמוכן באותה הודעה לא ברור לי מה הייתה שפת המקלדת כאשר התחלת לכתוב את "(וכמו שאפשר לראות". המשפט הזה נכתב מייד לאחר משפט באנגלית. אולי לא הספקת להחליף שפה.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 11:33
נושא ההודעה:
|
צפריר ההצעה שלי היתה זריקה לאוויר של רעיון, אף פעם לא טענתי שהיא מקיפה. בוא נפסיק להתייחס אליה ונתייחס לעיקר.
יש פה בעיה. יש דרכים שעובדות לפעמים, יש את הדרך של ליברה אופיס שמפילה על המשתמש באופן לא נוח בעליל את האחריות הזו. לא יודע מה הפתרון ואיך אפשר לשפר את האלגוריתם, אבל המצב הקיים אינו תקין ואינו אינטאיטיבי.
כמו שאפשר לראות יש מספר גישות לבעיה, אפשר להתווכח האם כדאי פשוט להרים ידיים ולהגיד שהמשתמש יתמודד עם הבעיה לבד או שאפשר לחשוב על פתרון.
אני מציין פה את הבעיה, מציין שיש גישות שונות שפותרות אותו, ומציין שהגישה של ליברה אופיס כרגע היא הגרועה ביותר שאפשר להציע למשתמש קצה.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 12:13
נושא ההודעה:
|
צפריר : | ההצעה שלך הצליחה לשבור את ההתנהגות בשני המקרים שהצעתי. |
אם הבנתי נכון את ההצעה של sijp, הוא רוצה להפוך תווים שיש להם כיווניות חלשה לתווים עם כיווניות חזקה בהתאם לפריסת המקלדת. זה נשמע לי מאוד דומה (אם לא זהה) לאיך ש-Microsoft Word עובד. איך זה שובר את ההתנהגות במקרים המדוברים?
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 12:43
נושא ההודעה:
|
Anonymous : | צפריר : | ההצעה שלך הצליחה לשבור את ההתנהגות בשני המקרים שהצעתי. |
אם הבנתי נכון את ההצעה של sijp, הוא רוצה להפוך תווים שיש להם כיווניות חלשה לתווים עם כיווניות חזקה בהתאם לפריסת המקלדת. זה נשמע לי מאוד דומה (אם לא זהה) לאיך ש-Microsoft Word עובד. איך זה שובר את ההתנהגות במקרים המדוברים? |
אלגוריתם bidi לא מתנהג למקלדת, אלא לתווים.
ההצעה שלו היתה רעיון בלבד בלי ידע אמיתי בנושא, וזה בסדר.
אבל לצפות מכל אחד שמעלה בעיה גם להציע פתרון נראה לי מוזר, לא כולם מבינים בתחום מסויים, אבל זה לא אומר שהם לא משתמשים בתוכנות שבאות מהתחום.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 14:52
נושא ההודעה:
|
אני מצפה ממנו שינסה לתאר את הבעיה. בתור התחלה, אני מצפה לראות דוגמה קצת פחות מלאכותית: בלי אות אנגלית שממלאת תפקיד של LRM.
הושקעה לא מעט מחשבה מחשבה באלגוריתם הקיים. הראיתי למה הוא מתנהג כפי שהוא מתנהג. כמו שהראיתי, הוספת תו LRM בזמן ההקלדה לרוב תרע את המצב במקום לשפרו (גם מבלי להתייחס לבעיה שנוצרת מתוספת התווים הקסומים). אני עדיין מחכה לאפיון יותר מדויק של הבעיה.
בינתיים ההתנהגות הנוכחית עדיפה על כל ההצעות האחרות שהוצעו כאן. אני לא הייתי ממהר לזלזל בה.
* שינוי תווים בהתאם לפרישת המקלדת - לא נראה לי מעשי. זה לא משהו שזוכרים לאחר שהמסמך נשמר ונטען מחדש. אלא אם כן אתה הולך לכיוון של MS-Word ויוצר סט שלם של תווים בעלי כיווניות ימין לשמאל. אבל אז אתה נכנס לבעיות מקבילות: מה קורה אם הקלדת בטעות תו בכיוון המקלדת השגוי?
זה גם שינוי עצום בהתנהגות עם סיכוי אפסי להתממש.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 17:42
נושא ההודעה:
|
צפריר : |
הושקעה לא מעט מחשבה מחשבה באלגוריתם הקיים. הראיתי למה הוא מתנהג כפי שהוא מתנהג. כמו שהראיתי, הוספת תו LRM בזמן ההקלדה לרוב תרע את המצב במקום לשפרו (גם מבלי להתייחס לבעיה שנוצרת מתוספת התווים הקסומים). אני עדיין מחכה לאפיון יותר מדויק של הבעיה.
בינתיים ההתנהגות הנוכחית עדיפה על כל ההצעות האחרות שהוצעו כאן. אני לא הייתי ממהר לזלזל בה.
|
עדיין לא ברור לי מדוע הגישה הזו עדיפה על הגישה של MS Word (ששוב, אם הבנתי נכון זה ש-sijp מציע: להפוך תווים בעלי כיווניות חלשה לתווים בעלי כיווניות חזקה בהתאם לפריסת המקלדת, ע"י הוספה של תווי LRM/RLM בהתאמה). אולי אני מפספס משהו, אבל אני חושב שהגישה הזו כן פותרת את הדוגמאות שהעלית: רוצה סוגריים עם כיווניות ימין-שמאל? כתוב אותם עם פריסה עברית. רוצה הפוך? כתוב באנגלית.
אני מבין שהגישה הזו פחות גמישה מהגישה שמאפשרת חופש מוחלט בעבודה עם כיווניות, אבל כמו ש-sijp כתב, ייתכן והגמישות הזו בעייתית לרוב המשתמשים. לדעתי, התנהגות בסגנון "כתבתי סוגריים באנגלית במקום בעברית ולכן הם הפוכים" פשוטה יותר להבנה עבור רוב המשתמשים מאשר "כתבתי תו בעל כיווניות חלשה בין שני תווים בעלי כיווניות חזקה מנוגדת, ולכן עלי להוסיף תו כיווניות חזקה בלתי-נראה כדי לקבל את הכיווניות הדרושה לי בעת הצגת הטקסט". למרות זאת, אני לא בטוח שהייתי רוצה ש-LO יתנהג כמו MS Word, אולי כי כבר התרגלתי.
צפריר : | זה גם שינוי עצום בהתנהגות עם סיכוי אפסי להתממש. |
כנראה שאתה צודק.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 17:58
נושא ההודעה:
|
מה שהאורח אמר.
בנוסף, אני לא יודע כמה זה שינוי עצום. בעיקרון זה כמו החלפה אוטומטית של אות קטנה באות גדולה בתחילת משפט (שאגב ניתן לעשות לה undo בקלות). הדבר היחיד שלא ברור כאן זה האם תמיכה של ליברה אופיס בגילוי פריסת המקלדת קיים או לא.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 19:31
נושא ההודעה:
|
קצת סדר: השינוי העצום הוא ההצעה של הוספת כיווניות שונה לסוגי תווים מסוימים.
הוספת תווי LRM ו־RLM זה משהו אחר. יותר פשוט למימוש (אבל כמו שכבר ציינתי: קל לראות שהוא מזיק יותר מלהועיל).
דרך אגב, אין עדיין דוגמה לא מלאכותית לבעיה.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 21:41
נושא ההודעה:
|
צפריר : | קצת סדר: השינוי העצום הוא ההצעה של הוספת כיווניות שונה לסוגי תווים מסוימים.
הוספת תווי LRM ו־RLM זה משהו אחר. יותר פשוט למימוש (אבל כמו שכבר ציינתי: קל לראות שהוא מזיק יותר מלהועיל). |
אבל לפני המימוש, מה ההתנהגות הרצויה? אתה אומר שברור שההתנהגות הנוכחית עדיפה, אבל אני לא מצליח לראות למה זה כל כך ברור. נראה לי שההתנהגות של MS Word (בתחום הזה לפחות) לא רעה בכלל.
צפריר : |
דרך אגב, אין עדיין דוגמה לא מלאכותית לבעיה.
|
מדובר במעין מקרה קצה, אז דוגמאות עלולות להיראות מעט מאולצות, אבל לא בלתי מתקבלות על הדעת. מניסיוני, בד"כ נתקלים בבעיות כמו ש-sijp תיאר כשצריך לכתוב טקסט מעורב שכולל יותר מכמה מילים בודדות מהשפה השניה. נראה לי שרשימה כמו:
חתול (חתולים) cat (cats), כלב (כלבים) dog (dogs), זברה (זברות) zebra (zebras)
שצריכה להיות:
חתול (חתולים) cat (cats), כלב (כלבים) dog (dogs), זברה (זברות) zebra (zebras)
היא דוגמה סבירה. אולי גם משפטים עם דיבור ישיר מקונן:
ג'ורג' אמר: "Steve said: 'Left and right'”.
ג'ורג' אמר: "Steve said: 'Left and right'”.
|
|
חזרה לתוכן הדיון |
פורסם: 05/03/2013 - 22:46
נושא ההודעה:
|
בדוגמה:
חתול (חתולים) cat (cats), כלב (כלבים) dog (dogs), זברה (זברות) zebra (zebras)
מה אמור להיות הכיוון של הפסיק? אתה בטוח שהוא באמת יוקלד בכיוון הנכון? מה קורה אם הוא מוקלד בכיוון השגוי?
במשפט:
ג'ורג' אמר: "Steve said: 'Left and right'”.
כנ"ל לגבי הנקודה שבסופו.
|
|
חזרה לתוכן הדיון |
פורסם: 06/03/2013 - 00:33
נושא ההודעה:
|
צפריר : | בדוגמה:
חתול (חתולים) cat (cats), כלב (כלבים) dog (dogs), זברה (זברות) zebra (zebras)
מה אמור להיות הכיוון של הפסיק? אתה בטוח שהוא באמת יוקלד בכיוון הנכון? מה קורה אם הוא מוקלד בכיוון השגוי?
במשפט:
ג'ורג' אמר: "Steve said: 'Left and right'”.
כנ"ל לגבי הנקודה שבסופו. |
אני לא בטוח שאני מבין לאן אתה חותר.
מה אמור להיות הכיוון של הפסיק? אני התכוונתי שהוא יהיה מימין-לשמאל, כפי שמופיע.
אתה בטוח שהוא באמת יוקלד בכיוון הנכון? לא בטוח בכלל.
מה קורה אם הוא מוקלד בכיוון השגוי? בהתנהגות המוצעת: יש למחוק אותו, ולכתוב אותו בפריסת המקלדת שלה הכיווניות שאותה רוצים להשיג (במקרה הזה, עברית).
האם זה מראה ש"התנהגות MS Word" טובה פחות?
|
|
חזרה לתוכן הדיון |
פורסם: 06/03/2013 - 01:20
נושא ההודעה:
|
ושוב דוגמה מההודעה האחרונה שלך:
האם זה מראה ש"התנהגות MS Word" טובה פחות?
המשפט מטופל נהדר. ללא צורך בניחושים לגבי שפת המקלדת בזמן ההקלדה. אם היינו הולכים לפי דרכך, מקלידים את המשפט ושוכחים להחליף את השפה בזמן, הוא לא היה מוצג כמו שצריך.
אז כן, אני מנסה למצוא משהו שלא ישבור את דרך העבודה הנוכחית. תיקונים זה דבר נחמד, אבל לפני זה, רצוי לא לשבור.
שאלה אחרת: מה קורה כאשר הטקסט הזה מועתק למשהו שאינו ליברה-אופיס?
|
|
חזרה לתוכן הדיון |
פורסם: 07/03/2013 - 01:51
נושא ההודעה:
|
צפריר : | ושוב דוגמה מההודעה האחרונה שלך:
האם זה מראה ש"התנהגות MS Word" טובה פחות?
המשפט מטופל נהדר. ללא צורך בניחושים לגבי שפת המקלדת בזמן ההקלדה. אם היינו הולכים לפי דרכך, מקלידים את המשפט ושוכחים להחליף את השפה בזמן, הוא לא היה מוצג כמו שצריך.
|
אז מה? האם אתה טוען שזה מוכיח שההתנהגות הזו טובה פחות? הרי מטעויות אי אפשר להימנע לחלוטין, והטענה לא הייתה שההתנהגות הזו פותרת את כל הבעיות, אלא שעבור רוב המשתמשים היא נוחה יותר להבנה ותאפשר להם להשיג בקלות רבה יותר את המשפט אותו הם מבקשים ליצור. אתה טענת שברור שההתנהגות הזו גרועה יותר, אבל לא שכנעת אותי בכך כלל וכלל.
אמרתי כבר קודם שמדובר בפשרה על גמישות, אבל כזו שפוטנציאלית תיטיב עם רוב המשתמשים. הנה דוגמה למשפט שאני חושב שלא ניתן יהיה ליצור עם ההתנהגות המוצעת (לפחות לא בצורה כזו שתוכנה שמקריאה טקסט תקריא את המשפט כמו שצריך):
ג'ורג' אמר: “Steve said: 'שמאל וימין', and I believed him”.
אבל זה נראה לי מקרה קיצוני מאוד, שמשתמשים ספורים ייתקלו בו, אם בכלל. אם רוצים בכל זאת, אפשר גם לבקש בדיווח הבאג שההתנהגות תהיה כזו שאפשר להפעיל ולכבות אותה. בכל מקרה, אני חושב שהבעייתיות ש-sijp מעלה היא אמיתית, ושלא ניתן לפסול את הפתרון שהוא מציע על הסף.
צפריר : |
אז כן, אני מנסה למצוא משהו שלא ישבור את דרך העבודה הנוכחית. תיקונים זה דבר נחמד, אבל לפני זה, רצוי לא לשבור. |
זה כבר טיעון אחר, שלא אומר שההתנהגות המוצעת גרועה יותר לכשלעצמה, אלא שונה. אני לא בטוח בכך, אבל נראה לי ש"לא לשבור" פירושו לשפר את אלגוריתם ה-BiDi (שכנראה תהיה משימה קשה הרבה יותר).
צפריר : |
שאלה אחרת: מה קורה כאשר הטקסט הזה מועתק למשהו שאינו ליברה-אופיס? |
אני לא בטוח שאני מבין את השאלה. כשמעתיקים אותו הוא מועתק כמו שצריך.
|
|
חזרה לתוכן הדיון |
פורסם: 07/03/2013 - 03:03
נושא ההודעה:
|
אוקי, אז בואו נסכם את הדיון לבינתיים.
הפתרון שהצעתי לא מושלם, יש בו המון בעיות והמון מקרים שלא יעבוד. נעבור הלאה.
המימוש כרגע של ליברה אופיס לא שווה הרבה. הוא נכשל בטקסטים מאוד בסיסיים כאשר משלבים שפות.
יש צורך בגישה חדשה שתהיה יותר אינטואיטיבית למשתמש. להגיד ככה האלגוריתם עובד וזה מה יש זה לא תשובה רצינית. במיוחד לתכנה חופשית.
|
|
חזרה לתוכן הדיון |
פורסם: 07/03/2013 - 11:02
נושא ההודעה:
|
אני לא מסכים (כמותית) עם הסיכום שלך. אך אין טעם לחזור על הנימוקים.
|
|
חזרה לתוכן הדיון |
פורסם: 07/03/2013 - 13:46
נושא ההודעה:
|
עניתי בבאג (באנגלית, כמובן):
https://bugs.freedesktop.org/show_bug.cgi?id=61795
בקצרה, הדרך הנכונה היא לא להשתמש בתווי כיווניות, לפחות לא בצורה שהמשתמש יצטרך להתעסק בהם, אלא לקרב את תקן OpenDocument לתקן HTML ולאפשר סימון כיווניות של טקסט בתוך פסקה ולא רק של כל הפסקה.
האם זה ייעשה באמצעות זיהוי אוטומטי של שפה או באמצעות סימון ידני על ידי המשתמש זו כבר שאלה לשלב הבא. קודם כול התקן צריך לתמוך בזה.
|
|
חזרה לתוכן הדיון |
פורסם: 08/03/2013 - 17:28
נושא ההודעה:
|
הדיון טיפה התארך, כך שלא קראתי את כולו. אני כן אציין ש–Unicode מעדכנים את אלגוריתם ה–BiDi כך שיתמוך במקרים האלו.
אני, באופן אישי, לא כל כך אוהב את הפתרון הספציפי, אבל זה מה יש. כשמיקרוסופט רוצה לדחוף משהו...
הוא כבר ממומש בחלונות 8.
שחר
_________________ שחר שמש
|
|
חזרה לתוכן הדיון |
|