Skip to content

Commit

Permalink
petri arrow fixes, disapearance spaces and hyphens
Browse files Browse the repository at this point in the history
  • Loading branch information
eyaler committed Jan 24, 2024
1 parent 08abc93 commit 70a936f
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 39 deletions.
2 changes: 1 addition & 1 deletion resen/disappearance/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>
<p class="story">
קיבוץ בְּאֵרִי נמצא בנגב המערבי, כ-4 קילומטר מזרחית לרצועת עזה. בארי הוקמה במוצאי יום כיפור ה' תש"ז – 1946, במסגרת 11 הנקודות. הקיבוץ נקרא על שם ברל כצנלסון, שבארי היה שמו העברי. הקיבוץ משתייך לתנועה הקיבוצית. בארי הינו קיבוץ שיתופי למהדרין. אין בו חלוקת משכורות לחברים, והוא דואג לרווחה מלאה של חבריו. ב-2022 הופרט חדר האוכל. הקיבוץ הינו משגשג כלכלית. השנים הרשונות: הקיבוץ עלה על הקרקע בזור ודי נחביר, על השפך של קניון בר שבע-עזה הקדום שהיה בתקופת המיוקן, מספר קילומטרים דרומית לקיבוץ ברות יצחק, משם יצו המקימים. מימי היבוץ היו משני גרעינים – הכשרת הנוער העובד והלומד במעוז חיים וגרעין של הצופים ב'. ליהם הצטרפה בוצה של עולים מעיר שעברו הכשרה ברמת הכובש. בשנים הרשונות ישב ר חל מהגרעין ביבוץ עצמו ושר הבוצה ישבה בגדרה, מטעמים ביטחוניים וכלכליים. במהך מחמת העצמות הופצץ היבוץ ע ידי הצב המצרי. יד היבוץ הום משט והתושבים היו חמושים במספר מצומצם ש רובים ומרגמה. חר ום המדינה, הועת היבוץ 3 יומטר דרום מזרחה, זור עם שטחים נוחים יותר עיבוד, ושם הו נמצ עד היום. היבוץ כיום: מור הפרנסה העירי ש היבוץ הו מפע דפוס מודרני "דפוס ברי", המתבסס ע דפוס שהום בשנים הרשונות ש היבוץ. יימת גם חות – גידוי שדה, פרדס הדרים, מטעי בודו ומנגו ומרכז ופניים "ה-מדווש". תרים בסביבת היבוץ: בסמוך יבוץ יימים מספר תרי תיירות. מצפון יבוץ נמצת שמורת בתרונות ברי, המהווה מוד משיכה בחורף, בעונת פריחת הכניות. בשמורה יים תר ההתיישבות הרשון ש ברי ("נחביר"), מכרות ופרית ברי מפע ופרית נטוש מימי המנדט הבריטי, יד נז נדרטה חי נז ממחמת העום הרשונה, ומבנים בריטיים חסון תחמושת ממחמת העום השנייה. כמו כן, יימים מסוי ופניים משפחות ורוכבים מנוסים. במחמת סיני, מחמת ששת הימים ומחמת יום הכיפורים הום בית ברות צבי שעת חירום בתר מצפון-מזרח יבוץ, ובו נברו ח מחי הרבות בסיני. חר שוש המחמות הועברו החים משם בורת בע ובית הברות פור. מפזמוני ברי, כפי שפורסמו בחוברת "ט פזמוני הבוצה", שיצה בשנות ה-70 בעריכת בוריס בר-סיני והרון יצחי. "בשבינו זה בית", מים: י זורע חן: מימי מר: "נוער עוב, הכשרת הצופים, ות פועים, התיישבות שיתופית, הבוצה ברה, החוץ מבב, היסטוריה וה, ממש מבב, בשבינו זה בית – פחות, יותר, וזה בעצמו ת הכ כבר ומר. בספרים הם ורים נו עו נוה וכותבים ע חום שהפך עובה, ההורים עו ורים מום – "מחנה" ך נחנו יועים שזה משנה... בשבינו זה בית – פחות, יותר וזה בעצמו ת הכ כבר ומר. נחנו החו שפני החוץ, בשיוב הבנים – תי היבוץ, בוה, הנה ושום, ובכ, י הום חורים שן במפ, בשבינו זה בית – פחות, יותר וזה בצמו ת הכ כבר ומר. פוי הום וי יתחו, וכ התוות הוורוות יתבו... ו ת הבן וי ו נבצר. ך הבית הו בית – וזה היר... בשבינו זה בית – פחות, יותר וזה בצמו ת הכ כבר ומר. משירי ח ה-30 ברי, 1976. יש נו י: מים: בוריס בר-סיני חן ממי, הות מירי, 1945. ש נו ה הו נחמ. וו זרת, מש ו ש מ. ום ום ופו – מחף הו חתוו. זה ה הו נו, בור הו ורשון. שרשרת נו – בשר בון. שור המחר, הן ו רבות חסר, בוצת הור – נרשם תרסר. ום ום ופו. הפוס זה נ / מם: סמר זור ברמ. משר ח ה-50 בר, 1996. נר-פרמנט-מה-שבם פרוֹת בנה בשנ-צבם נטוּ-ץ ון-שם תווות-פרס בופסט-מ חצ-ון – סור-בוה ובמנת הוּ ה... זה ה במת ו תב חה ם ה – פוט בוֹה. נו תו והו תנו נחנו ו והו – נו. ם חנו – תח מנ נ זה הפוס והפוס – זה נ. הנוות: מם: פוצ'ו חן: ממ מר. נת ת"ז, מנט ברץ, מוצ ום הפור. מבה פרם בנב רות וצות בטור. ובם צופם ברטט, בנ בוץ בהנף תפה פתם צח במצ, צח ההם בת התחה ההסטרה הנת. פזמן: ר נת ה ה ה ה ה, ה, הב, ה ס ב בט , ב בט צ ב – ה ה ה ! ה ה ה ה... הצ ב בב הבה ה ב הה ב ה ס ה ה צף הץ ב ה ה ב ב בב – ה! – צ ב...
קיבוץ בְּאֵרִי נמצא בנגב המערבי, כ-4 קילומטר מזרחית לרצועת עזה. בארי הוקמה במוצאי יום כיפור ה' תש"ז - 1946, במסגרת 11 הנקודות. הקיבוץ נקרא על שם ברל כצנלסון, שבארי היה שמו העברי. הקיבוץ משתייך לתנועה הקיבוצית. בארי הינו קיבוץ שיתופי למהדרין. אין בו חלוקת משכורות לחברים, והוא דואג לרווחה מלאה של חבריו. ב-2022 הופרט חדר האוכל. הקיבוץ הינו משגשג כלכלית. השנים הרשונות: הקיבוץ עלה על הקרקע בזור ודי נחביר, על השפך של קניון בר שבע-עזה הקדום שהיה בתקופת המיוקן, מספר קילומטרים דרומית לקיבוץ ברות יצחק, משם יצו המקימים. מימי היבוץ היו משני גרעינים - הכשרת הנוער העובד והלומד במעוז חיים וגרעין של הצופים ב'. ליהם הצטרפה בוצה של עולים מעיר שעברו הכשרה ברמת הכובש. בשנים הרשונות ישב ר חל מהגרעין ביבוץ עצמו ושר הבוצה ישבה בגדרה, מטעמים ביטחוניים וכלכליים. במהך מחמת העצמות הופצץ היבוץ ע ידי הצב המצרי. יד היבוץ הום משט והתושבים היו חמושים במספר מצומצם ש רובים ומרגמה. חר ום המדינה, הועת היבוץ 3 יומטר דרום מזרחה, זור עם שטחים נוחים יותר עיבוד, ושם הו נמצ עד היום. היבוץ כיום: מור הפרנסה העירי ש היבוץ הו מפע דפוס מודרני "דפוס ברי", המתבסס ע דפוס שהום בשנים הרשונות ש היבוץ. יימת גם חות - גידוי שדה, פרדס הדרים, מטעי בודו ומנגו ומרכז ופניים "ה-מדווש". תרים בסביבת היבוץ: בסמוך יבוץ יימים מספר תרי תיירות. מצפון יבוץ נמצת שמורת בתרונות ברי, המהווה מוד משיכה בחורף, בעונת פריחת הכניות. בשמורה יים תר ההתיישבות הרשון ש ברי ("נחביר"), מכרות ופרית ברי מפע ופרית נטוש מימי המנדט הבריטי, יד נז נדרטה חי נז ממחמת העום הרשונה, ומבנים בריטיים חסון תחמושת ממחמת העום השנייה. כמו כן, יימים מסוי ופניים משפחות ורוכבים מנוסים. במחמת סיני, מחמת ששת הימים ומחמת יום הכיפורים הום בית ברות צבי שעת חירום בתר מצפון-מזרח יבוץ, ובו נברו ח מחי הרבות בסיני. חר שוש המחמות הועברו החים משם בורת בע ובית הברות פור. מפזמוני ברי, כפי שפורסמו בחוברת "ט פזמוני הבוצה", שיצה בשנות ה-70 בעריכת בוריס בר-סיני והרון יצחי. "בשבינו זה בית", מים: י זורע חן: מימי מר: "נוער עוב, הכשרת הצופים, ות פועים, התיישבות שיתופית, הבוצה ברה, החוץ מבב, היסטוריה וה, ממש מבב, בשבינו זה בית - פחות, יותר, וזה בעצמו ת הכ כבר ומר. בספרים הם ורים נו עו נוה וכותבים ע חום שהפך עובה, ההורים עו ורים מום - "מחנה" ך נחנו יועים שזה משנה... בשבינו זה בית - פחות, יותר וזה בעצמו ת הכ כבר ומר. נחנו החו שפני החוץ, בשיוב הבנים - תי היבוץ, בוה, הנה ושום, ובכ, י הום חורים שן במפ, בשבינו זה בית - פחות, יותר וזה בצמו ת הכ כבר ומר. פוי הום וי יתחו, וכ התוות הוורוות יתבו... ו ת הבן וי ו נבצר. ך הבית הו בית - וזה היר... בשבינו זה בית - פחות, יותר וזה בצמו ת הכ כבר ומר. משירי ח ה-30 ברי, 1976. יש נו י: מים: בוריס בר-סיני חן ממי, הות מירי, 1945. ש נו ה הו נחמ. וו זרת, מש ו ש מ. ום ום ופו - מחף הו חתוו. זה ה הו נו, בור הו ורשון. שרשרת נו - בשר בון. שור המחר, הן ו רבות חסר, בוצת הור - נרשם תרסר. ום ום ופו. הפוס זה נ / מם: סמר זור ברמ. משר ח ה-50 בר, 1996. נר-פרמנט-מה--שבם פרוֹת בנה בשנ-צבם נטוּ-ץ ון-שם תווות-פרס בופסט-מ חצ-ון - סור-בוה ובמנת הוּ ה... זה ה במת ו תב חה ם ה - פוט בוֹה. נו תו והו תנו נחנו ו והו - נו. ם חנו - תח מנ נ זה הפוס והפוס - זה נ. הנוות: מם: פוצ'ו חן: ממ מר. נת ת"ז, מנט ברץ, מוצ ום הפור. מבה פרם בנב רות וצות בטור. ובם צופם ברטט, בנ בוץ בהנף תפה פתם צח במצ, צח ההם בת התחה ההסטרה הנת. פזמן: ר נת ה ה ה ה ה, ה, הב, ה ס ב בט , ב בט צ ב - ה ה ה ! ה ה ה ה... הצ ב בב הבה ה ב הה ב ה ס ה ה צף הץ ב ה ה ב ב בב - ה! - צ ב...
</p>
<script>make_footer()</script>
</body>
Expand Down
2 changes: 1 addition & 1 deletion resen/pages.js
Original file line number Diff line number Diff line change
Expand Up @@ -669,7 +669,7 @@ let wake_lock


function request_wake_lock() {
navigator.wakeLock?.request('screen').then(lock => wake_lock = lock).catch(e => console.error(e.message)) // Doesn't work in Firefox (< 122)
navigator.wakeLock?.request('screen').then(lock => wake_lock = lock).catch(e => console.error(e.message))
}


Expand Down
2 changes: 1 addition & 1 deletion resen/petri/leader-line.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion resen/petri/petri.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
"איבה עזה": 1
},

"labels": {"פטירה_ישראל": "PASSING_ISRAEL", "איבה ישראל": "ISRAEL ENMITY", "רבייה_ישראל": "BREEDING_ISRAEL", "צבא": "MILITARY", "פטירה_עזה": "PASSING_GAZA", "בית עלמין ישראל": "ISRAEL CEMETERY", "שחרור": "DISCHARGE", "ישראל": "ISRAEL", "מבצע": "OPERATION", "בית עלמין עזה": "GAZA CEMETERY", "חטיפה": "ABDUCTION", "ארגון טרור": "TERROR GROUP", "פיגוע": "TERROR ATTACK", "עזה": "GAZA", "רבייה_עזה": "BREEDING_GAZA", "שבי": "CAPTIVITY", "חילוף": "EXCHANGE", "כלא": "PRISON", "הסתה": "INCITING", "איבה עזה": "GAZA ENMITY"},
"labels": {"בית עלמין ישראל": "ISRAEL CEMETERY", "פיגוע": "TERROR ATTACK", "כלא": "PRISON", "חילוף": "SWAP", "שבי": "CAPTIVITY", "פטירה_ישראל": "PASSING", "ישראל": "ISRAEL", "חטיפה": "ABDUCTION|ABDUCT", "ארגון טרור": "TERROR GROUP", "רבייה_עזה": "BREEDING|BREED", "איבה ישראל": "ISRAEL ENMITY", "רבייה_ישראל": "BREEDING|BREED", "איבה עזה": "GAZA ENMITY", "הסתה": "INCITEMENT|INCITE", "עזה": "GAZA", "שחרור": "DISCHARGE|DISCHAR", "צבא": "MILITARY", "מבצע": "OPERATION|OPERATE", "בית עלמין עזה": "GAZA CEMETERY", "פטירה_עזה": "PASSING"},

"require": [
["ישראל", "צבא"],
Expand Down
60 changes: 25 additions & 35 deletions resen/petri/script.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ const restart_secs = 5
const fast = location.hash.slice(1) == 'fast'

const auto_vertical = true
const fix_above = true
const label_location = 'half' // Can be: 'half' (half above and half below, favoring the below), 'above', or anything else to indicate below
const default_token_symbol = 'o' // Cannot be of 1-9 or capital A-N
const arrow_width = 6
Expand Down Expand Up @@ -144,7 +143,9 @@ function arrows(inside, outside, clue) {
}

function step(grid, json, steps=0, max_tokens={}, result_counter={}, reset_counter=0, tokens) {
const comp = grid.parentElement.id
let comp
if (grid.parentElement.id in json.transitions)
comp = grid.parentElement.id
const transitions = comp ? [comp] : Object.keys(json.transitions)
if (tokens == undefined)
tokens = comp ? Object.fromEntries(json.transitions[comp][0].map(p => [p, comp_marking])) : {...json.marking}
Expand Down Expand Up @@ -231,7 +232,7 @@ function step(grid, json, steps=0, max_tokens={}, result_counter={}, reset_count
}
})

if (!steps) {
if (!comp && !grid.querySelector('.leader-line')) {
const leaderline_options = {color: getComputedStyle(grid.parentElement).getPropertyValue('--color'), dash: {len: 5, gap: 6}, endPlug: 'arrow2', endPlugSize: 2, path: 'straight', size: 1}
missing_arrows.forEach(([telem, pelem, inp, out]) => {
const tindex = elems.indexOf(telem)
Expand All @@ -240,17 +241,20 @@ function step(grid, json, steps=0, max_tokens={}, result_counter={}, reset_count
const tcol = tindex % grid_columns
const prow = pindex / grid_columns | 0
const pcol = pindex % grid_columns
const dy1 = (1 + (trow-prow)/3)*50 + '%'
const dx1 = (1 + (pcol-tcol)/3)*50 + '%'
const dy2 = (1 + (prow-trow)/3)*50 + '%'
const dx2 = (1 + (tcol-pcol)/3)*50 + '%'
let line
const factor1 = 1/6
const y1 = 50 + (trow-prow)*factor1*100
const x1 = 50 + (pcol-tcol)*factor1*100
const y2 = 50 + (prow-trow)*factor1*100
const x2 = 50 + (tcol-pcol)*factor1*100
const factor2 = 0.025
const dy = Math.abs(pcol-tcol) * factor2 * 100
const dx = (prow-trow) * Math.sign(pcol - tcol) * factor2 * 100
const c = (inp + out - 1) / 2
for (let i = 0; i < inp; i++)
line = new LeaderLine(LeaderLine.pointAnchor(pelem, {x: dx1, y: dy1}), LeaderLine.pointAnchor(telem, {x: dx2, y: dy2}), leaderline_options)
for (let i = 0; i < out; i++)
line = new LeaderLine(LeaderLine.pointAnchor(telem, {x: dx2, y: dy2}), LeaderLine.pointAnchor(pelem, {x: dx1, y: dy1}), leaderline_options)
new LeaderLine(LeaderLine.pointAnchor(pelem, {x: x1 + (i-c)*dx + '%', y: y1 + (i-c)*dy + '%'}), LeaderLine.pointAnchor(telem, {x: x2 + (i-c)*dx + '%', y: y2 + (i-c)*dy + '%'}), leaderline_options)
for (let i = inp; i < inp + out; i++)
new LeaderLine(LeaderLine.pointAnchor(telem, {x: x2 + (i-c)*dx + '%', y: y2 + (i-c)*dy + '%'}), LeaderLine.pointAnchor(pelem, {x: x1 + (i-c)*dx + '%', y: y1 + (i-c)*dy + '%'}), leaderline_options)
})
grid.append(...document.querySelectorAll('body > svg'))
}

if (reset_counter < global_reset_counter) {
Expand Down Expand Up @@ -287,19 +291,19 @@ fetch(json_file).then(response => response.json()).then(json => {
let transitions = all_transitions
let labels = all_labels
let cols = grid_columns
if (elem.id) {
if (elem.id in json.transitions) {
transitions = [elem.id]
labels = [...new Set([...json.transitions[elem.id][0], elem.id, ...json.transitions[elem.id][1]])]
cols = labels.length
}
} else
grid.id = 'leader-line-container'
cols = Math.min(cols, labels.length)
elem.style.setProperty('--cols', cols)
let anti_above = []
labels.forEach((label, index) => {
const pre = document.createElement('pre')
pre.dataset.id = label
if (transitions.includes(label)) {
if (json.vertical?.includes(label) || json.transitions[label][2] == 'vertical' || elem.id)
if (json.vertical?.includes(label) || json.transitions[label][2] == 'vertical' || elem.id in json.transitions)
pre.classList.add('vertical')
let hor = ver = outer = 0
let top_arrows = bottom_arrows = false
Expand All @@ -312,29 +316,15 @@ fetch(json_file).then(response => response.json()).then(json => {
bottom_arrows |= bottom_arrow
const is_ver = top_arrow || bottom_arrow
ver += is_ver
is_diag = (labels[index - cols - 1] == place || labels[index + cols - 1] == place) && index % cols || (labels[index - cols + 1] == place || labels[index + cols + 1] == place) && (index+1) % cols
//if (!is_hor && !is_ver && !is_diag) {
// place_index = labels.indexOf(place)
// outer += place_index % cols == 0 || (place_index+1) % cols == 0 || place_index < cols || place_index >= labels.length - cols
//}
})
if (auto_vertical)
//if ((index % cols == 0 || (index+1) % cols == 0) && index >= cols && index < labels.length - cols)
// hor += outer
//else if ((index < cols || index >= labels.length - cols) && index % cols && index % cols < cols - 1)
// ver += outer
if (hor > ver)
pre.classList.add('vertical')
if (fix_above && !elem.id && pre.classList.contains('vertical')) {
if (top_arrows && !anti_above.includes(labels[index - cols]))
grid.children[index - cols].classList.add('above')
if (bottom_arrows)
anti_above.push(labels[index + cols])
}
if (auto_vertical && hor > ver)
pre.classList.add('vertical')
if (json.labels[label].includes('|'))
json.labels[label] = json.labels[label].split('|')[pre.classList.contains('vertical') | 0]
} else {
pre.classList.add('place')
pre.addEventListener('click', () => pre.dataset.clicks = (pre.dataset.clicks | 0) + 1)
if (!elem.id && (json.above?.includes(label) || !anti_above.includes(label) && (label_location == 'above' || label_location == 'half' && index < (labels.length/cols/2 | 0) * cols)))
if (!(elem.id in json.transitions) && (json.above?.includes(label) || label_location == 'above' || label_location == 'half' && index < (labels.length/cols/2 | 0) * cols))
pre.classList.add('above')
}
const span = document.createElement('span')
Expand Down
1 change: 1 addition & 0 deletions resen/petri/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
letter-spacing: initial;
line-height: 1.5;
margin-inline: auto;
position: relative;
text-align: center;
--hor_offset: -2ch;
--ver_offset: -1.5em;
Expand Down

0 comments on commit 70a936f

Please sign in to comment.