כללי אינדיזיין - החלפת מספרים לאותיות

בבלי

משתמש מקצוען
עיצוב גרפי
מאז נודע לי על חבילת הסקריפטים להערות בטורים (קרדיט - שלמה!), אני לא מפסיק להשתמש בהם.
(ראה https://www.prog.co.il/showthread.php?t=88826)

בעזרת הסקריפט אפשר למספר סגנון תו. במקרה שלנו הוא הופך את הסגנון "מספרי הפניות" למספרים רציפים, כך שאם מחליטים להוסיף הפניה (להערת שוליים) - פשוט כותבים תו כלשהו בסגנון הנ"ל, ובעזרת הסקריפט ממספרים מחדש.

הבעיה היא שאני זקוק למספור באותיות - ואין לי דרך לעשות זאת.
אוכל להשתמש בחיפוש החלפה, או אולי בסקריפט מוכן.
מישהו מכיר??

לכאורה צריך להכין לו מראש רשימה של החלפות, 11=יא 304=דש וכו'.

למבינים בתחום, אולי שייך לבצע שינויים בסקריפט המקורי?
 

ונתנו10

משתמש מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי DIP
D I G I T A L
השאלה איך בנוי הסקריפט המקורי.
אני מאמין שהוא מתבסס על מספור מובנה מאינדיזיין ולא על רשימה שיש לו בתוך הסקריפט.
לכאורה למה שלא יהיה אפשר להפוך את זה למספור אותיות?
או יותר נכון, איך הוא מבצע את המספור מחדש.
ניסית לפתוח את הסקריפט? לראות איך זה בנוי (בהנחה שזה לא bin)
 

ונתנו10

משתמש מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי DIP
D I G I T A L
אתה יכול להסביר לי בקצרה מה הסקריפט הזה עושה?
 

בבלי

משתמש מקצוען
עיצוב גרפי
אין לי רקע בכלל בתכנות אבל זה התוכן שלו:

#target indesign;

try{
SetGrep ("\\d+", {CS: app.activeDocument.footnoteOptions.footnoteMarkerStyle});
var noterefs = app.activeDocument.findGrep();
for (var n = noterefs.length-1; n >= 0; n--)
noterefs[n].contents = String(n+1);
SetGrep ("^.", {PS: app.activeDocument.footnoteOptions.footnoteTextStyle, FN: true});
var notes = app.activeDocument.findGrep();
if (noterefs.length != notes.length)
alert ("Footnote numbers do not match footnote references.\r("+notes.length+" footnotes, "+noterefs.length+" references.)");
} // try
catch (e) {alert (e.message);}


function SetGrep (find, change, obj) {
app.findGrepPreferences = app.changeGrepPreferences = null;
try {app.findGrepPreferences.findWhat = find} catch(e) {};
try {app.changeGrepPreferences.changeTo = change} catch(e) {};
if (arguments.length > 0) {
var last = arguments[arguments.length-1];
last.constructor.name == "Object" ? obj = last : obj = {};
try {app.findGrepPreferences.appliedParagraphStyle = obj.PS} catch(e){};
try {app.findGrepPreferences.appliedCharacterStyle = obj.CS} catch(e){};
}
else {obj = {}}
app.findChangeGrepOptions.properties = {
includeFootnotes: (obj.FN == null ? false: true),
includeHiddenLayers: (obj.HL == null ? false: true),
includeLockedLayersForFind: (obj.LL == null ? false: true),
includeLockedStoriesForFind: (obj.LS == null ? false: true),
includeMasterPages: (obj.MP == null ? false: true)
}
} // end set_grep
 

בבלי

משתמש מקצוען
עיצוב גרפי
למעשה הוא תוספת על הסקריפט הראשו:

סקריפט א - הופך הערות שוליים לפסקאות ממוספרות (תוך שמירה על העיצוב) ומכניס אותן לתיבה בת שני טורים. הופך את מה שהיו מספרי ההפניות לסגנון תו.

סקריפט ב - נועד לעדכן את מספרי ההערות במקרה של הוספת הערה:
מוסיפים תו כלשהו (לדוגמא "000"), מחילים עליו את סגנון התו האמור, וכאשר מפעילים את הסקריפט הוא פשוט ממספר מחדש.

כלומר - מבחינתו כל "הופעה" של סגנון תו X תומר למספר עוקב: הפעם הראשונה בה פוגש את סגנון תו X (גם אם היה כתוב בה "000") תהפוך למספר "1", הפעם השניה "2", הפעם המאתים ושנים עשר "212" וכן הלאה. כך שאם הוספנו עוד "הופעה" בין (הפניה) מספר 67 לבין 68, הסקריפט מחשב מחדש ומוצא כי ה"000" שהוספנו הוא כרגע 68, ולכן מציין אותו במספר זה, ואילו מה שהיה עד עכשיו 68 הופך ל 69 וכך הלאה.
 

ונתנו10

משתמש מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי DIP
D I G I T A L
ההבנה שלי בסקריפטים שואף לאפס.
יש לי הרגשה שאפשר לסדר את זה. קודם כל להגדיר את ההערות שוליים לאותיות בהגדרות ההערות שוליים..
ואחרי זה בסקריפט האחרון לסדר את הנוסחה במקום \d+ ומשהו כמו ^.+?\. (צריך לבדוק. בעבודה אין לי אפשרות להתקין סקריפטים).
אבקש מהארבס אם הוא יכול לעזור.
 

בבלי

משתמש מקצוען
עיצוב גרפי
גם אני ניסיתי לקרוא את הסקריפט -
הבנתי שהוא לוקח את ההגדרות מההערות שוליים.
הגדרתי אותיות וזה לא ממש עזר.

בכלל, זה עשוי להיות שימושי לכמה דברים - סקריפט פשוט המחליף (בבחירת סגנון תו) מספרים לאותיות.
ואם באותה הזדמנות יהיו האותיות במספור "יהודי", הרי זה רווח כפול.

ממתין להתקדמות.
תודה רבה מאוד.
 

Harbs

משתמש רשום
הנה סקריפט שממספר לפי סגנון תו.

אני מקווה שיעזור...
 

קבצים מצורפים

  • NumberByStyle.zip
    KB 3.6 · צפיות: 44

ונתנו10

משתמש מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי DIP
D I G I T A L
מקווה שמה שהארבס הביא עוזר לך.

נכתב ע"י יהודה בבלי;703933:
הגדרתי אותיות וזה לא ממש עזר.
מה זאת אומרת לא עזר.
הרי למעלה הוא החליף לאותיות, נכון?
מה שנשאר, זה הסקריפט שלוקח את הטקסט מלמעלה שמעתיק ללמטה.
בשביל זה צריך לסדר את הסקריפט השלישי.
יש שם נוסחה של חפש מספר (ויותר) בסגנון תו מסויים (מה שמוגדר), תעתיק אותו, ותדביק אותו במקום הראשון שיש מספור הערה למטה.
יש סיכוי שאם הנוסה בגרפ יהיה נכון, זה יעבוד.
אבל שוב אני לא יכול לנסות כאן.
 

בבלי

משתמש מקצוען
עיצוב גרפי
תודה רבה מאוד.
הרעיון מעולה, אך לצערי יש בעיה במספור: הסקריפט מגיע עד "קט", וחוזר ל"ק", במקום "קי".
אחרי מאה אותיות הוא מגיע ל"ר" (כן: קח,קט,ר,רא...), ושוב עד "רט" וחוזר ל"ר"...
כך עוד תשע פעמים ולפתע "ש" עד "שט" ושוב "ש" וחוזר חלילה...
 

בבלי

משתמש מקצוען
עיצוב גרפי
הרי למעלה הוא החליף לאותיות

אם התכוונת למספרי ההפניות להערות, התשובה היא - לא!
למרות שבהגדרות ההערות ההפניות ממוספרות כאותיות הסקריפט הופך אותן למספרים!

למטה, כלומר בהערות עצמן - אין שום בעיה. פשוט לוחצים 'אנטר'. פסקא חדשה = מספור חדש, אלו הרי פסקאות ממוספרות.
 

אולי מעניין אותך גם...

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק צח

א מִזְמוֹר שִׁירוּ לַיי שִׁיר חָדָשׁ כִּי נִפְלָאוֹת עָשָׂה הוֹשִׁיעָה לּוֹ יְמִינוֹ וּזְרוֹעַ קָדְשׁוֹ:ב הוֹדִיעַ יי יְשׁוּעָתוֹ לְעֵינֵי הַגּוֹיִם גִּלָּה צִדְקָתוֹ:ג זָכַר חַסְדּוֹ וֶאֱמוּנָתוֹ לְבֵית יִשְׂרָאֵל רָאוּ כָל אַפְסֵי אָרֶץ אֵת יְשׁוּעַת אֱלֹהֵינוּ:ד הָרִיעוּ לַיי כָּל הָאָרֶץ פִּצְחוּ וְרַנְּנוּ וְזַמֵּרוּ:ה זַמְּרוּ לַיי בְּכִנּוֹר בְּכִנּוֹר וְקוֹל זִמְרָה:ו בַּחֲצֹצְרוֹת וְקוֹל שׁוֹפָר הָרִיעוּ לִפְנֵי הַמֶּלֶךְ יי:ז יִרְעַם הַיָּם וּמְלֹאוֹ תֵּבֵל וְיֹשְׁבֵי בָהּ:ח נְהָרוֹת יִמְחֲאוּ כָף יַחַד הָרִים יְרַנֵּנוּ:ט לִפְנֵי יי כִּי בָא לִשְׁפֹּט הָאָרֶץ יִשְׁפֹּט תֵּבֵל בְּצֶדֶק וְעַמִּים בְּמֵישָׁרִים:
נקרא  4  פעמים

אתגר AI

ותשובה ותפילה וצדקה • אתגר 111

לוח מודעות

למעלה