שיחת תבנית:קידוד ניקוד

message: יצרתי את תבנית:מילון ההווה, שמקשרת לדף באתר האקדמיה ללשון העברית, שה-URL שלו כולל מילה מנוקדת בעברית. בדוגמאות שבדף התבנית ניתן לראות שהתבנית פועלת היטב כאשר ה-URL כולל מילה אחת (למשל "חָתוּל", אבל אינה פועלת כאשר ה-URL כולל צירוף של שתי מילים (למשל "חָתוּל-בַּשַּׂק"). מה הפתרון? דוד שי - שיחה 06:59, 30 בינואר 2022 (IST)
בבניית הקישור, השתמשת ב-keyword.  נראה שאתר האקדמיה מעדיף צורה שונה כשמדובר בביטוי: . קיפודנחש 16:44, 30 בינואר 2022 (IST)
replies: text: קיפודנחש, מדובר בדפים שונים. דוד שי, על פניו נראה שהבעיה ברמת המפענח. אעקוב אחר הדיון ובמקביל אחפש פתרון. עלי - שיחה 20:23, 30 בינואר 2022 (IST)
replies: text: :עלי, בעקבות הערתך מתברר שהבעיה היא באות שיש בה שני סימני ניקוד, למשל סגול ודגש, כמו באות הראשונה של המילה "כֶּלֶב". אצלנו הקידוד הוא , כלומר האות כ, הניקוד סגול והניקוד דגש, ואילו באתר האקדמיה הוא , כלומר האות כ, הניקוד דגש והניקוד סגול. בעיה דומה במילה "שִׁיר", שבה שני סימנים: חיריק והנקודה שמציינת שזו שין ימנית. איך מתאימים בין הקידודים? נראה לי שנדרש טיפול במילת הקסם urlencode, או במקום בסיסי יותר במדיה-ויקי. דוד שי - שיחה 23:31, 30 בינואר 2022 (IST)
replies: text: ::תודה על החידוד. ממה שהצלחתי לראות, ובהחלט לא חקרתי את העניין עד תום, המתודה String.prototype.normalize()‎ של JavaScript‎, למשל, צפויה ליצור בעיה מסוג זה. לצערי הנושא לא מוכר לי, ואם ערן הספיק לערוך עמו הכרות – כולנו נרוויח; אם לא, אשתדל להעמיק חקר בהמשך. עלי - שיחה 01:08, 31 בינואר 2022 (IST)

text: מש:ערן טיפל בזמנו בבעיה דומה באתר הזה עבור כלי קידוד הקישורים. כשיהיה לי זמן אנבור איפה בדיוק זה היה, אבל אני מאמין שהוא יֵדע לעזור גם בלי למצוא את הדיון... דגש - שיחה 23:43, 30 בינואר 2022 (IST)
replies: text: :אם יורשה לי, הכוונה כנראה , שלגמרי במקרה ביצעתי אנוכי ולא ערן. הסבר טכני קצר: כפי שדוד ציין, סטנדרט יוניקוד מאפשר במקרים מסוימים מספר קידודים שונים לאותה תיבה, כשזו כוללת ניקוד. התקן גם מגדיד אופן קנוני לניקוד במקרים כאלו, כלומר את הסדר "הנכון" לסימני הקידוד. מסיבה עלומה, אתר האקדמיה מצפה בחלק מהמקרים דווקא לקידוד שאינו הקידוד הקנוני.

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

text: :עד כאן הסבר הדיאגנוזה שביצע דוד, לגבי "פתרון" - אין לי, חוץ מאשר להשתמש בצורה המקודדת כפרמטר לתבנית, במקום שהיא תעשה זאת בעצמה. אולי עלי יכול לכתוב קוד לואה שיאפשר את שני האופנים, למשל על ידי הגבלת הקידוד למחרוזות שכוללות תווים בעברית, או הימנעות מקידוד מחרוזות שנראות מקודדות. באופן כזה יהיה ניתן להעביר לתבנית את ה-%91%D6%B7%D7%A8... כאשר מעבירים פרמטר מקודד. שינוי כזה ידרוש גם הוספת פרמטר אופציונלי שני, להצגת המחרוזת בצורתה הלא מקודדת, או העברת קוד התבנית כולה ליחידה בלואה.

text: :טכנית, הפתרון הנכון אינו כאן אלא באתר האקדמיה: אתר שמקבל מחרוזת יוניקוד כחלק מהכתובת, צריך לטפל בכתובת על ידי נירמול. לא לקבל מחרוזת בצורה לא קנונית זו עבירה קלה (אתר בנוי היטב צריך לקבל את כל הווריאציות, ולנרמל אותן מאחרי הקלעים כך שכולן יקשרו לדף הנכון), ולהתעקש על מחרוזת בצורה לא קנונית ולדחות את הצורה הקנונית זו עבירה קשה יותר. מן הראוי שהאתר של האקדמיה ללשון, שמקבל מילים מנוקדות בשורת הכתובת (ואף דורש זאת), יתנהג כשורה דווקא בנקודה הזו. לקריאה נוספת:  :en:Unicode equivalence#Canonical ordering. קיפודנחש 02:07, 31 בינואר 2022 (IST)
replies: text: ::תודה על ההסבר המפורט, קיפודנחש. לאחר שניתן נזכרתי שהספקתי לשכוח. ברצוני להביע תמיכה נלהבת בסיפה של תגובתך, ונקווה ששמו הטוב של הבירוקרט המיתולוגי שלנו, דוד שי, ימריץ את האקדמיה לטפל בתחלואיה. עלי - שיחה 02:26, 31 בינואר 2022 (IST)
אכן, גם אני כבר שכחתי, והדיאגנוזה המדויקת של דוד היא שהזכירה לי. בב"ח - קיפודנחש 03:34, 31 בינואר 2022 (IST)

text: בזמנו חיפשתי פתרון לקישור שמכיל גרש או גרשיים ובגללם הקישורים היו משתשבשים.  . מצאתי את זה במדיה ויקי. מובלט כהערת אזהרה באדום (השני). אולי זה יכול לעזור במשהו. Geagea - שיחה 11:45, 31 בינואר 2022 (IST)
הסיבה היא כנראה שכשטקסט בעברית מאוחסן במסד הנתונים של מדיה־ויקי, נעשית שם פעולת נרמול, שמעבירה את הדגש אחרי סימן הניקוד, גם אם מקלידים אותו לפניו. זה כנראה אותו העניין שגרם לבעיות תצוגה בחלונות XP ובדפדפנים ישנים בעשור הראשון של ויקיפדיה העברית – הדגש „ברח” מהאות. הרבה פעמים ביקשנו מהמתכנתים לתקן את זה, וזה לא תוקן מסיבות כלשהן – אולי עדיפות נמוכה ואולי זה היה גורם לבעיות טכניות אחרות. בגרסאות מאוחרות יותר של חלונות ודפדפנים מודרניים, בעיית התצוגה הזאת נעלמה, ולכן הפסקנו לדאוג בקשר לזה.
ועכשיו נראה שזה מרים את הראש שוב. אפשר לנסות להעלות שוב לדיון את הבעיה ההיא ולבקש להפסיק לעשות את הנרמול הזה. מכיוון שאני ממש לא בטוח שזה יתוקן במדיה־ויקי, ושגם אם יתוקן, זה בטוח לא יקרה מהר, הפתרון שאני יכול לחשוב עליו הוא לחזור להשתמש בתבניות הניקוד, שהיינו משתמשים בהן כדי להתגבר על בעיית הדגש ב־XP. לכבוד זה, רעננתי את התבניות האלו ואת התיעוד שלהן, יצרתי תבניות לכל הסימנים שהיו חסרים ושיכולים להיות נחוצים לזה. (לא יצרתי תבניות לחטפים, כי נדמה לי שהם אף פעם לא מופיעים על אותיות דגושות, אבל אם צריך, אפשר ליצור גם אותם.)
ניסיתי, ונדמה לי שזה עובד:
* קוד ויקי: 
* תוצאה: 
לא הכי נוח בעולם, אבל עובד. אם יש למישהו הצעה טובה יותר, אשמח לשמוע.
יש עוד הערות?.. --אמיר א׳ אהרוני - שיחה 10:49, 1 בפברואר 2022 (IST)

text: זה פתרון מסורבל לשימוש אנושי, אבל הוא יכול להיות בסיס ליחידה בלואה שתקבל טקסט מנוקד ותייצר ממנו את קוד הוויקי הזה. אם כבר הגענו לפתרון תכנותי אצלנו, אולי פשוט יותר לעבוד על הקישור המקודד (זה שיש בו סימני %), ובכל מקרה של רצף אות-ניקוד-דגש תשנה את הסדר לאות-דגש-ניקוד, ובאופו דומה תטפל בשין מנוקדת. דוד שי - שיחה 11:19, 1 בפברואר 2022 (IST)
replies: text: :, סימנתי כ"טופל" משום שאסגור לך את הפינה באמצעות יחידת לואה, אך אני מפציר בך לבקש מהאקדמיה לנרמל את הכתובות שלה בהתאם לתקן, לטובת המרשתת כולה. עלי - שיחה 13:33, 1 בפברואר 2022 (IST)
replies: text: ::התכנות היה ממש מהיר, כל הכבוד! הוספתי לתבנית את הדוגמה "מְנַשֵּׁק", שבה מצטרפים אל האות שין שלושה סימנים, וגם בה הפתרון עובד. דוד שי - שיחה 14:29, 1 בפברואר 2022 (IST)
 דוד שי - שיחה 19:31, 1 בפברואר 2022 (IST)
thread_title:  בעיה עם URL