-
Notifications
You must be signed in to change notification settings - Fork 56
Book Opening
כל פתיחת ספר באפליקציה — מהספרייה, מחיפוש, מקישור, מהיסטוריה או מ־deep link — עוברת דרך מסלול אחד: lib/utils/navigation/.
open_book.dart — הפונקציה הגלובלית openBook(context, book, index, ...) מאצילה ל־BookOpenCoordinator:
-
לכידת מצב להיסטוריה —
CaptureStateForHistoryעל הטאב הנוכחי. -
שחזור מיקום אחרון — לפי
bookIdentity(זהות יציבה: id ← מזהה חיצוני ← נתיב ← קטגוריה+כותרת — שני PDF באותו שם מקבלים זהויות נפרדות). -
עדיפות הדגשות:
markText> markSection> pinpointHighlight. - יצירת
OpenedTab.fromBookושליחתOpenOrFocusTab(מיחזור טאב קיים אם יש) + ניווט למסך העיון.
פרמטרים חשובים: ignoreHistory, requiresStableLayout (ל־PDF), insertAdjacent, initialCommentators.
הגדרה המאפשרת לבחור אם התלמוד נפתח כטקסט או כצילום (PDF):
-
talmudBavliOpensInPdf()— קריאת ההגדרה. -
isTalmudBavliBook— מזהה מסכת אמיתית (ולא מפרש) לפי נתיב הקטגוריה/מיקום הקובץ. -
resolveTalmudBavliPdfTarget(textBook, textIndex)— ממיר יעד טקסטואלי בבבלי ליעד PDF דרךtextToPdfPage; מחזיר null אם אין מהדורת PDF או אין מיפוי אמין. -
buildLinkTargetTab— בניית טאב מקישור, עם פתיחת בבלי כ־PDF כשמוגדר.
-
utils/file/page_map_builder.dart— PageMap: המרה דו־כיוונית עם חיפוש בינארי + אינטרפולציה בין עוגנים (התאמת ערכי outline של ה־PDF מול ערכי TOC של הטקסט; התאמה מלאה ואז fallback ל־suffix חד־משמעי). -
utils/file/page_converter.dart— API ממוטמם:textToPdfPage/pdfToTextPage, דורש לפחות 2 עוגנים תואמים.
-
refFromIndex/refFromTocList— בניית כתובת היררכית ("ברכות ב' ע"א") משורת טקסט לפי עץ ה־TOC. -
refFromPageNumber— כתובת מעמוד PDF דרך ה־outline. - משמש את האינדוקס (reference לכל מסמך), תצוגת המיקום הנוכחי, וההיסטוריה.
TocParser — מזהה כותרות Markdown (#–######) ו־HTML (<h1>–<h6>) ובונה היררכיית TocEntry. מקור אמת יחיד לזיהוי כותרות — משותף לנווט תוכן העניינים, לספרים אישיים ולכלי "שמור וזכור".
פורמט otzaria:// מאפשר פתיחת ספר/מסך/כלי/תוסף מבחוץ ומבפנים, כולל פרמטרים כמו ?mark (הדגשה קבועה של שורה). הפירוט בארכיטקטורה.
📖 מדריך למשתמש
- התחלת העבודה
- הספרייה
- קריאת ספר
- קריאת PDF
- חיפוש
- איתור מקורות
- טאבים ושולחנות
- סימניות והערות
- ספרים אישיים
- הגדרות
- גיבוי ושחזור
- עדכונים
- תוספים
- כלים
- קישורי עומק
🛠️ למפתחים — יסודות
נתונים וספרייה
קריאה
חיפוש
אישי ומערכת
עיצוב ו־UI