Show Command

מפרט פקודת /show

  • התנהגות ברירת מחדל: ללא ארגומנטים, נשלחת הודעת שימוש ידידותית. כאשר שם הקובץ חסר/לא קיים, נשלחת הודעת ”לא נמצא“.

  • עיצוב קוד: גם שם הקובץ (file_name) וגם תוכן הקוד עוברים תמיד html.escape. יש לשמור על אחידות ולהעדיף ParseMode=HTML.

  • מבנה מקלדת (Keyboard): - שורות כפתורים לדוגמה: מחיקה, עריכה, עריכת הערה, הורדה, שיתוף, ומועדפים. - כפתור מועדפים: הטקסט משתנה לפי מצב (⭐ הוסף / 💔 הסר). - מגבלת 64 bytes ל-callback_data: כולל הקידומת. - העדפה להשתמש ב-_id כאשר (len(»fav_toggle_id:«) + len(id)) <= 60. - אחרת: שימוש בטוקן קצר token_urlsafe(6) חתוך לכ~24 תווים, ושמירת המיפוי תחת context.user_data[»fav_tokens«][short_tok] = file_name.

דוגמת תגובת HTML

<b>File:</b> <code>readme.md</code>
<b>Language:</b> markdown

<pre><code>&lt;b&gt;x&lt;/b&gt;</code></pre>

הערות יישום

  • יש לקרוא html.escape על כל תוכן שמקורו מהמשתמש (קוד, שמות קבצים, הערות).

  • בתשובות ארוכות: ניתן להשתמש בפיצול בטוח להודעות ארוכות (4096 תווים) באמצעות פונקציה ייעודית.

  • יש להגדיר ParseMode=HTML באופן קונסיסטנטי כדי למנוע חוסר אחידות עם Markdown.

קישורים