יצוא PDF וארכיון חומרי הספר
יצוא PDF וארכיון חומרי הספר
ב־GitHub Actions בחרו Export book PDF and companion archive, ואז Run workflow בענף master. היצוא מופעל גם בעקבות שינוי בטקסט, בתמונות, במדיה או בסקריפט היצוא.
לאחר הצלחה, באזור Artifacts של ההרצה נמצאים שני תוצרים:
open-music-theory-static-pdf: PDF אחד של כל הטקסט הסטטי הקיים, התמונות ו־PDF מקוריים כנספחים. GitHub אורז את ה־artifact להורדה; בתוכו נמצא ה־PDF היחיד.open-music-theory-companion: ZIP אחד הכולל את כל קובצי המקור של המאגר. בתיקייהקבציםיש עותקים בשמות עבריים קריאים, והתיקייהrepositoryמשמרת את מבנה המקור. בכלל זה הקלטות, קובצי תיווי ועיצוב, מסמכים ותמונות. נשמרים גם המקורות הסטטיים כדי שהארכיון יהיה מלא ויאפשר לשחזר את היצוא. דוח הכיסוי נמצא גם לצד ה־ZIP וגם בתוכו.
הטקסט מיוצא במצבו הנוכחי — גם פרקים שעדיין באנגלית. הסדר מתחיל בפתיחה ובתוכן העניינים, ממשיך לפי סדר הספר, ולאחר מכן כולל עמודי עזר ותיעוד נוספים. תמונות שאינן משולבות במסמכים נכללות בנספח התמונות; מסמכי PDF מקושרים מצורפים מיד אחרי כל פרק שמפנה אליהם, עם קישורים פנימיים ישירים לעמודיהם. מסמך משותף לכמה פרקים חוזר אחרי כל אחד מהם; מסמכים ללא הפניה מצורפים בסוף, ללא שינוי תוכנם. תבניות HTML וקוד האתר נשמרים בארכיון, ואינם מוצגים כפרקי ספר.
סרטונים, נגנים ותרגילים משירותים חיצוניים מיוצגים בהפניות. היצוא אינו מוריד סרטונים ואינו הופך תרגיל אינטראקטיבי לתמונה. קובצי מדיה מקומיים נשמרים בארכיון. אין צורך במפתח API או בסוד, ואין כתיבה לענף מתוך ה־workflow.
היצוא נכשל אם תמונה נדרשת חסרה, למעט האיור הידוע abstractedRowClass.png שאינו קיים במקור: במקומו מוצג סימון חסר מפורש, והוא מתועד בדוח. היצוא נכשל אם PDF מצורף אינו ניתן לקריאה, או אם בדיקת הארכיון נכשלת. קישורי טקסט ישנים ליעדים חסרים מתועדים בדוח ולא מוצגים כהצלחה של בדיקת קישורים. לכל קובץ מקורי נשמר SHA-256. ה־PDF כולל את מזהה ה־commit, סימניות וקישורים פנימיים למסמכים ולפרקים. הפניה לקובץ אחר מוצגת בשם עברי התואם לשמו בארכיון; סדר עמודות סכמות מוזיקליות נשמר LTR.
להרצה מקומית בסביבת Linux עם Pango וגופנים מתאימים:
python -m pip install -r scripts/requirements-export.txt
python scripts/export_book.py
התוצרים נוצרים ב־dist/export/. אין צורך להעלותם חזרה למאגר. GitHub שומר את ה־artifacts למשך 30 יום; אפשר להוריד אותם או להריץ מחדש בכל עת.
הפניות ישנות לתת־כותרת שכבר אינה קיימת לאחר תרגום מופנות לתחילת הפרק ומתועדות בשדה heading_links_redirected_to_chapter בדוח.