אני משער שגם אתם מקבלים מלקוחותיכם קבצים שמלאים בתקלות הקלדה כמו רווחים לפני סימני פיסוק או בתחילת סוגריים, חוסר רווח אחרי פסיק, רווחים כפולים ועוד (יש גם את האלה שבמקום לעשות מירכוז לטקסט עושים רווח רווח רווח רווח).
ברור שלתקן את זה באמצעות חיפוש והחלפה יחסוך הרבה מאד זמן, אבל עדיין זה מתיש לבצע את סדרת החיפושים וההחלפות האלה בכל פרוייקט מחדש.
הבשורה הטובה היא שאפשר ליצור רשימת חיפושים והחלפות ולהריץ אותם בפעם אחת. זה לא משהו חדש אלא נמצא באינדיזיין לפחות מגרסה CS3 (ואולי גם לפני כן. אני לא מכיר את מה שהיה לפני כן). מדובר בסקריפט שמגיע יחד עם התוכנה – FindChangeByList.
בואו ונראה כיצד משתמשים בו.
ראשית ניגש לתיקיית הסקריפטים (Ctrl+Alt+F11 במקלדת, או דרך התפריט Window > Utilities > Scripts).
בחלונית של הסקריפטים נבחר ב-Application ושם ב- Samples ואז JavaScript (אפשר גם ב VBScript למשתמשי PC או ב-AppleScript למשתמשי מקינטוש. כל הסקריפטים שמגיעים עם אינדיזיין מגיעים בשלוש שפות, לנוחות מי שמכיר רק אחת מהם. אני אישית מעדיף תמיד להשתמש ב-JavaScript כי ג'אווה היא שפה 'חוצת פלטפומרות' ואפשר להשתמש באותו סקריפט גם על PC וגם על מק). שם נדפדף עד FindChangeByList.

נשים לב שמתחתיו מופיעה תיקיה בשם FindChangeSupport ובה קובץ טקסט בשם FindChangeList. מכיוuן שהקובץ הזה אינו סקריפט הוא מופיע במעומעם ומסומן באייקון אחר. הקובץ הזה הוא הקובץ שמכיל את רשימת החיפושים וההחלפות שלנו.
כדי לפתוח אותו, נלחץ על הלחצן הימני בעכבר ובתפריט הנפתח נבחר באפשרות הראשונה – Reveal in Explorer. התיקייה בה נמצא הקובץ תיפתח לנו במערכת ההפעלה, ושם נפתח את הקובץ עם עורך טקסט פשוט (פנקס רשימות / TextEdit במק).
שורות שמתחילות בסלאש כפול (השורות הראשונות בקובץ) הן הערות שהסקריפט מתעלם מהם. לאחריהן מופיעה הרשימה של החיפושים וההחלפות במבנה דומה לדוגמה הבאה:

כל רשומת חיפוש והחלפה, נמצאת בשורה נפרדת. בתוך כל רשומה, המאפיינים מופרדים באמצעות טאב. נתחיל להסביר לפי הדוגמה שהבאנו:
(1) סוג החיפוש. זה יכול להיות חיפוש טקסט, חיפוש GREP או חיפוש גליף (הסקריפט לא תומך בחיפוש אובייקט). כלומר האפשרויות כאן הן: grep, text או glyph. אני באופן אישי מעדיף ברוב המקרים להשתמש בחיפוש GREP גם בשביל טקסט רגיל.
(2) מה לחפש. כאן תופיע מחרוזת החיפוש בתוך סוגריים מסולסלים, במבנה הזה:
בתוך הגרשיים רושמים את מה שרוצים לחפש.
במקום טקסט אפשר לכתוב כאן גם מאפיינים כגון צבע, סגנון, פונט וכו' – לא נרחיב על האפשרויות, כי זה מורכב יותר.
(3) להחליף ל: כאן תופיע מחרוזת ההחלפה בתוך סוגריים מסולסלים, במבנה הזה:
גם כאן, אפשר להגדיר צבע, פונט וכו’ ע”י הוספת מאפיינים עם פסיק לאחר הגרשיים. מכיון שהאפשרויות מרובות לא נרחיב כאן על זה.
(4) הגדרות – כאן תופענה ההגדרות של החיפוש בתוך סוגריים מסולסלים, במבנה הזה:
includFootnotes: האם לכלול חיפוש גם בהערות שוליים.
includMasterPages: האם לכלול חיפוש גם בדפי מאסטר
wholeWord: האם להתייחס למחרוזת החיפוש כמילה שלמה ולהתעלם ממנה כשהיא מופיעה כחלק ממילה אחרת (בחיפוש Text בלבד)
לכל אחד מהפרמטרים הנ”ל יש שתי אפשרויות – True או False.
(5) הסבר – כאן אפשר לכתוב מה שרוצים. הסקריפט מתעלם ממה שנכתב לאחר הטאב הרביעי. המטרה היא שנוכל לרשום ליד כל שורה מה היא עושה כדי שנוכל לאתר ולבטל בקלות מה שאנחנו לא צריכים או גורם לנו בעיות.
שימו לב: בקודי GREP רבים משתמשים בלוכסן כזה: \ . מכיון שהסקריפט בנוי בשפת JavaScript, בה התו הזה משמש כתו החרגה, כדי להשתמש בו בחיפושי GREP צריך להכפיל אותו.
למשל, ב-GREP נקודה בודדת מציינת כל תו, כך שאם נרצה לחפש נקודה, זה לא בדיוק יעזור לנו לרשום נקודה, כי התוצאה תהיה כל תו, לכן אנו שמים סלאש כזה לפני הנקודה:
אבל בסקריפט FindChangeByList זה לא יעבוד, אלא צריך לרשום כך:
לא בדקתי זאת בגרסת ה-VBS, אך אני חושב ששם אין בזה צורך.
אם אתם יודעים כיצד לבצע את החיפושים וההחלפות באינדיזיין אך מסתבכים ברישום בקובץ – יש פתרון גם לזה. בע”ה בפעם הבאה נכתוב עליו.
תגובה אחת
מצויין אם הייתהמוסיף עוד תמונות זה היה יותר עוזר