Skip to content

Commit

Permalink
add season popovers
Browse files Browse the repository at this point in the history
  • Loading branch information
eyaler committed Mar 16, 2024
1 parent bc5ac73 commit 32df2ca
Show file tree
Hide file tree
Showing 8 changed files with 661 additions and 42 deletions.
2 changes: 1 addition & 1 deletion resen/journal.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="preload" href="fonts/MiriamLibre-Regular.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="fonts/DavidLibre-Medium.woff2" as="font" type="font/woff2" crossorigin>
- <script src="pages.js"></script>
<script src="pages.js"></script>
<link rel="stylesheet" href="style.css">
<link rel="icon" href="media/resen.svg">
<meta property="og:image" content="https://oulipoh.com/resen/media/resen.png">
Expand Down
30 changes: 18 additions & 12 deletions resen/pages.js
Original file line number Diff line number Diff line change
Expand Up @@ -345,17 +345,23 @@ function export_all(lang, skip) {
}


// Note: this accounts for lettercase and works cross keyboard layouts, but may miss keys due to input language change
function is_key(event, key) {
const keys = key.toLowerCase().split(/\+(?!$)/)
return event.altKey == keys.includes('alt') && (event.ctrlKey || event.metaKey) == keys.includes('ctrl') && event.shiftKey == keys.includes('shift') && event.key.toLowerCase() == keys.pop()
}


function shortcut(elem, key) {
if (key) {
elem.ariaKeyshortcuts = key
document.addEventListener('keydown', e => {if (is_key(e, key)) elem.click()})
function is_shortcut(event, shortcut) {
shortcut = shortcut.toLowerCase().split(/[+-](?!$)/)
const shortcut_key = shortcut.pop()
let event_key = event.key.toLowerCase()
if (shortcut_key == '+' && event.code == 'Equal' && !'-_'.includes(event.key)
|| shortcut_key == '-' && event.code == 'Minus' && !'+?\\'.includes(event.key)
|| event.code == 'Digit' + shortcut_key // For AZERTY keyboard
|| !event_key.match(/^[a-z]$/) && event.code == 'Key' + shortcut_key.toUpperCase()) // For Hebrew keyboard
event_key = shortcut_key
return event_key == shortcut_key && event.altKey == shortcut.includes('alt') && (event.ctrlKey || event.metaKey) == shortcut.includes('ctrl') && event.shiftKey == shortcut.includes('shift')
}


function add_shortcut(elem, shortcut) {
if (shortcut) {
elem.ariaKeyshortcuts = shortcut
document.addEventListener('keydown', e => {if (is_shortcut(e, shortcut)) elem.click()})
}
}

Expand All @@ -364,7 +370,7 @@ function add_nav_element(nav, url, label, cls, delta=0, key) {
const elem = nav.appendChild(make_link(url, label, ['nowrap', cls], key ? `[${key}]` : ''))
if (delta != null)
elem.style.marginInlineEnd = 1.5 + Math.max(delta, 0) + 'em'
shortcut(elem, key)
add_shortcut(elem, key)
return elem
}

Expand Down
8 changes: 7 additions & 1 deletion resen/seasons/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<body onload="document.body.style.visibility = 'visible'">
<script>make_header()</script>
<audio id="audio" src="media/i_shall_praise_you.mp3" aria-labelledby="music-text"></audio>
<object data="media/tile.svg" onload="event.currentTarget.contentDocument.getElementById('piyut').onclick = () => audio.play()" aria-desctiption="האנשים הלובשים וֵסטים כורעים שחוחים לצד הערוגות. יש להחליף בהן את הפרחים שוב ושוב. אין להם כאן די מים. הם רגישים לחום. השותלים משוחחים בינם לבין עצמם בחרישיות, לשונם זרה, קרובה, בלתי נשמעת. נדמה לי שזוהי ערבית. [יומן-מקום, כיכר הבימה, 11/3/15]
<object data="media/tile.svg" onload="event.currentTarget.contentDocument.getElementById('audio').onclick = () => audio.play()" aria-description="האנשים הלובשים וֵסטים כורעים שחוחים לצד הערוגות. יש להחליף בהן את הפרחים שוב ושוב. אין להם כאן די מים. הם רגישים לחום. השותלים משוחחים בינם לבין עצמם בחרישיות, לשונם זרה, קרובה, בלתי נשמעת. נדמה לי שזוהי ערבית. [יומן-מקום, כיכר הבימה, 11/3/15]
אותו קיץ שבו התקיימה המלחמה היה קיץ נוסף שבו התקיימה מלחמה, שכן גם בקיץ הקודם, זה של 2013, התקיימה מלחמה. נדמה היה שכך יהיה תמיד, כאילו המלחמה הייתה לחלק מעונות השנה כמו שהשמים הפכו לברזל והאדמה לתהום כסויה. בראשי נוצרה מחשבה מאגית: אשב שנה בכיכר מעל המקלט, בגינה שמצויה בה. אכתוב מתוך נסיגה, במעין היעשות צמח, סלע או אריח, מגובה שיחי החולות והפרחים, הדשא וגזעי העצים, קרוב לקרקע החפורה. קיוויתי שאולי כך, מתוך העדות הזו, אגיע לקיץ הבא מוכנה יותר. תחילה שרטטתי במחברת את מתווה שמונה הדלתות החבויות ברחבת הכיכר. ספרתי את המרצפות שחיפו עליהן: כך וכך לרוחב; כך וכך לאורך; ומסגרת ברזל דקה סביבן. רציתי לכתוב משהו שיהדהד את המבנה הזה. לאחר מכן הגעתי בבקרים אל הגינה בכיכר ומתוך העמדה הפסיבית, המקוננת, כתבתי במחברת. בסוף השנה הזו או כבר במהלכה, הבנתי שאני בעצם מנסה לבדוק מהו מקלט – האם הוא חייב להיות קונסטרוקט פיזי בלבד או שהוא יכול להיות גם מבנה לשוני, ומה בעצם יותר מגן? עלעלתי במילון עברי ישן. התברר שלמילה &quot;מקלט&quot; היה פעם מובן אחר מזה שאנו רגילים. עברתי למילונים החדשים וגיליתי שרק במהדורה הראשונה של המילון &quot;א. אבן שושן&quot; בשנת 1947, ובעקבות מלחמות העולם, מופיעה המילה מקלט כ&quot;מבנה מבוצר המוגן מפני הדף אויר ומפני רסיסי פצצות&quot;. לפני כן היא הופיעה במילון רק בסמיכות למילה &quot;עיר&quot;. &quot;עיר מקלט&quot; נועדה לקלוט ולהעניק מחסה למי שרצח בשגגה מפני מי שאמור להרגו, שמכונה &quot;גואל הדם&quot;. סבך חוקים חידתיים מגדיר את השהייה בה. הם מפורשים באופן מיוחד בתלמוד הבבלי, שרואה בטקסט עצמו ובפעולת הלימוד – עיר מקלט. הבנתי שלמילה מקלט הייתה פעם משמעות מיוחדת, שנועדה למנוע מעגלי דם ונקם. המידע הזה עורר בי עצב. וגם סקרנות. המשכתי בחיפושיי. תהיתי מי הם הרוצחים בשוגג המוזמנים לשערי העיר? מה תפקידם של אנשי הרוח האמונים עליה אך אינם בעליה? איך היא מתיקה קשרי דם רצחניים? מה פשר השלטים המורים על הדרך לערי המקלט, ופשר השבילים המובילים אליה – שיש לנקותם פעמיים בשנה? מדוע אסור למכור בה חבלים וכלי נשק ועליה להיות בינונית דווקא, ושרויה בין האוכלוסין? מה תפקידם של הבגדים והמגדנות המחולקים בעיר ובכלל, של מארגי החוקים המשונים?
Expand All @@ -37,6 +37,9 @@
<p>
<b>מוזיקה:</b> לחן וביצוע: <a href="https://maureen-nehedar.com/">מורין נהדר</a>, "אגדלך אלוהי כל נשמה", מתוך האלבום "<a href="https://open.spotify.com/album/0Coe45ZSd0Rn3le7VjzH9V">ישנה בחיק ילדות</a>"; מילים: אברהם אבן עזרא.
</p>
<p>
<b>רישום בין ערבית ועברית:</b>ספא קדח, מתוך מחברת סקיצות, 2020.
</p>
<p>
המחברת מודה ליוספה רז על עזרתה בתרגום לאנגלית ולאלמוג בהר על עזרתו בבחירת הפיוט.
</p>
Expand All @@ -58,6 +61,9 @@
<p dir="ltr" id="music-text">
<b>Music:</b> Composition and performance: <a href="https://maureen-nehedar.com/">Maureen Nehedar</a>, "I Shall Praise You", from the album "<a href="https://open.spotify.com/album/0Coe45ZSd0Rn3le7VjzH9V">Asleep in the Bosom of Childhood</a>"; Lyrics: Abraham Ibn Ezra.
</p>
<p dir="ltr">
<b>Drawing Between Arabic and Hebrew:</b> Safa Kadah, from a sketchbook, 2020.
</p>
<p dir="ltr">
The author thanks Yosefa Raz for her help with the English translation of this passage, and Almog Behar for his help in choosing the liturgical hymn.
</p>
Expand Down
Loading

0 comments on commit 32df2ca

Please sign in to comment.