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

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

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

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

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

למבינים בתחום, אולי שייך לבצע שינויים בסקריפט המקורי?
 
  • הוסף לסימניות
  • #2
השאלה איך בנוי הסקריפט המקורי.
אני מאמין שהוא מתבסס על מספור מובנה מאינדיזיין ולא על רשימה שיש לו בתוך הסקריפט.
לכאורה למה שלא יהיה אפשר להפוך את זה למספור אותיות?
או יותר נכון, איך הוא מבצע את המספור מחדש.
ניסית לפתוח את הסקריפט? לראות איך זה בנוי (בהנחה שזה לא bin)
 
  • הוסף לסימניות
  • #3
אתה יכול להסביר לי בקצרה מה הסקריפט הזה עושה?
 
  • הוסף לסימניות
  • #4
אין לי רקע בכלל בתכנות אבל זה התוכן שלו:

#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
 
  • הוסף לסימניות
  • #5
למעשה הוא תוספת על הסקריפט הראשו:

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

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

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

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

ממתין להתקדמות.
תודה רבה מאוד.
 
  • הוסף לסימניות
  • #8
הנה סקריפט שממספר לפי סגנון תו.

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

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

  • NumberByStyle.zip
    KB 3.6 · צפיות: 54
  • הוסף לסימניות
  • #9
מקווה שמה שהארבס הביא עוזר לך.

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

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

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

פרוגבוט

תוכן שיווקי
פרסומת

הצטרפות לניוזלטר

איזה כיף שהצטרפתם לניוזלטר שלנו!

מעכשיו, תהיו הראשונים לקבל את כל העדכונים, החדשות, ההפתעות בלעדיות, והתכנים הכי חמים שלנו בפרוג!

לוח מודעות

הפרק היומי

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


תהילים פרק כה

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