זוהי הפקודה ctags.emacs24 שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו בחינם כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS
תָכְנִית:
שֵׁם
etags, ctags - צור קובץ תג עבור Emacs, vi
תַקצִיר
etags [-aCDGIRVh] [-i פילה] [-ל שפה]
[-אוֹ Tagfile] [-ר regexp] [--parse-stdin=פילה]
[--להוסיף] [--לא-מגדיר] [--גלובלים] [--לא-גלובלים] [--include=פילה]
[--ignore-indentation] [--language=שפה] [--חברים] [--אין-חברים] [--output=Tagfile]
[--regex=regexp] [--no-regex] [--help] [--version] פילה ...
ctags [-aCdgIRVh] [-BtTuvwx] [-l שפה]
[-אוֹ Tagfile] [-ר regexp] [--parse-stdin=פילה]
[--להוסיף] [--חיפוש אחורה] [--cxref] [--לא-מגדיר] [--גלובלים] [--לא-גלובלים]
[--ignore-indentation] [--language=שפה] [--חברים] [--אין-חברים] [--output=Tagfile]
[--regex=regexp] [--עדכון] [--עזרה] [--גרסה] פילה ...
תיאור
השמיים etags התוכנית משמשת ליצירת קובץ טבלת תגים, בפורמט המובן על ידי Emacs(1);
מה היא ctags התוכנית משמשת ליצירת טבלה דומה בפורמט המובן על ידי vi(1). שניהם
צורות התוכנית מבינות את התחביר של C, Objective C, C++, Java, Fortran, Ada,
Cobol, Erlang, Forth, HTML, LaTeX, Emacs Lisp/Common Lisp, Lua, Makefile, Pascal, Perl,
PHP, PostScript, Python, Prolog, Scheme ורוב התחבירים דמויי אסמבלר. שתי הטפסים נקראו
הקבצים שצוינו בשורת הפקודה, וכתוב טבלת תגים (ברירת מחדל: תגיות ל etags,
תיוגים ל ctags) בספריית העבודה הנוכחית. קבצים שצוינו עם קובץ יחסי
שמות יירשמו בטבלת התגים עם שמות קבצים ביחס לספרייה שבה
טבלת התגים נמצאת. אם טבלת התגים נמצאת / dev או שהפלט הסטנדרטי, לעומת זאת,
שמות הקבצים נעשים ביחס לספריית העבודה. קבצים שצוינו עם אבסולוט
שמות קבצים יוקלטו עם שמות קבצים מוחלטים. קבצים שנוצרו ממקור
קובץ - כמו קובץ C שנוצר מקובץ Cweb מקור - יוקלט עם השם של
קובץ המקור. קבצים דחוסים נתמכים באמצעות gzip, bzip2 ו-xz. התוכניות
לזהות את השפה המשמשת בקובץ קלט בהתבסס על שם הקובץ והתוכן שלו. ה
--שפה ניתן להשתמש ב-switch כדי לאלץ ניתוח של שמות הקבצים לאחר המעבר
לפי השפה הנתונה, ביטול ניחושים על סמך סיומות שמות קבצים.
אפשרויות
חלק מהאפשרויות הגיוניות רק עבור vi קבצי תג בסגנון המופקים על ידי ctags; etags לא
לזהות אותם. התוכניות מקבלים קיצורים חד משמעיים עבור שמות אופציות ארוכים.
-א, --לְצַרֵף
הוסף לקובץ התג הקיים. (ל vi-פורמט קבצי תג, ראה גם --עדכון.)
-ב, --חיפוש אחורה
תג קבצים שנכתבו בפורמט המצופה על ידי vi מכיל חיפוש ביטוי רגולרי
הוראות; ה -B option כותב אותם באמצעות המפריד `?', לחפש
אֲחוֹרָה דרך קבצים. ברירת המחדל היא להשתמש במפריד `/', לחפש
קדימה דרך קבצים. רק ctags מקבל את האפשרות הזו.
--הצהרות
בשפות C ושפות נגזרות, צור תגיות להצהרות פונקציות וצור תגיות
עבור משתנים חיצוניים אלא אם נעשה שימוש ב--no-globals. ב-Lisp, צור תגים עבור (defvar
הצהרות foo).
-ד, --לא-מגדיר
אל תיצור ערכי תג עבור הגדרות קבועות ו-enum של קדם-מעבד C
קבועים. זה עשוי להקטין את קובץ התגים בהרבה אם ישנם קובצי כותרות רבים
מתויג.
--גלובלים
צור ערכי תג עבור משתנים גלובליים ב-Perl וב-Makefile. זוהי ברירת המחדל
בשפות C ושפות נגזרות.
--לא-גלובלים
אין לתייג משתנים גלובליים בשפות C ושפות נגזרות. בדרך כלל זה מפחית את
גודל הקובץ ברביעית.
-i פילה, --include=פילה
כלול הערה בקובץ התג המציינת כי בעת חיפוש תג, אחד
צריך גם לעיין בקובץ התגים פילה לאחר בדיקת הקובץ הנוכחי. רק etags
מקבל את האפשרות הזו.
-אני, --התעלם מכניסה
אל תסתמך על הזחה כמו שאנחנו עושים בדרך כלל. נכון לעכשיו, זה אומר שלא
נניח שסוגר סוגר בעמודה הראשונה הוא הסוגר הסופי של פונקציה או
הגדרת מבנה ב-C ו-C++.
-l שפה, --שפה=שפה
נתח את הקבצים הבאים לפי השפה הנתונה. יותר מאחד כזה
אפשרויות עשויות להיות מעורבות עם שמות קבצים. להשתמש - עזרה כדי לקבל רשימה של
שפות זמינות וסיומת ברירת המחדל של שמות הקבצים שלהן. השפה 'אוטומטית' יכולה
לשמש לשחזור זיהוי אוטומטי של שפה בהתבסס על שם הקובץ. ה
ניתן להשתמש בשפת 'ללא' כדי להשבית לחלוטין את ניתוח השפה; רק ביטוי רגולרי
ההתאמה מתבצעת במקרה זה (ראה את --רגקס אוֹפְּצִיָה).
--חברים
צור ערכי תג עבור משתנים שהם חברים במבנים דמויי מבנה ב
PHP. זוהי ברירת המחדל עבור שפות C ושפות נגזרות.
--אין חברים
אין לתייג משתני חברים.
--חבילות בלבד
תייגו רק חבילות בקבצי עדה.
--parse-stdin=פילה
ניתן להשתמש (פעם אחת בלבד) במקום שם קובץ בשורת הפקודה. etags יצטרך
קרא מתוך קלט סטנדרטי וסמן את התגים שהופקו כשייכים לקובץ קובץ.
-o Tagfile, --פלט=Tagfile
שם מפורש של קובץ עבור טבלת התגים; ל etags רק, שם קובץ של - פירושו
פלט סטנדרטי; עוקף את ברירת המחדל תגיות or תיוגים. (אבל התעלמו עם -v or -x.)
-r regexp, --regex=regexp
צור תגיות המבוססות על התאמה של ביטויים רגועים עבור הקבצים בעקבות אפשרות זו, בנוסף
לתגים שנעשו עם הניתוח הסטנדרטי המבוסס על שפה. יכול להיות בחופשיות
מעורבב עם שמות קבצים ו- -R אוֹפְּצִיָה. הביטויים הרגולריים הם מצטברים, כלומר,
כל אפשרות כזו תוסיף לאפשרויות הקודמות. הביטויים הרגולריים הם של אחד מה-
צורות:
[{שפה}]/tagregexp/[nameregexp/]משנים
@קובץ regex
איפה tagregexp משמש כדי להתאים את התג. זה לא צריך להתאים לדמויות חסרות תועלת.
אם ההתאמה היא כזו שיותר תווים מהנדרש מותאמים באופן בלתי נמנע על ידי
tagregexp, ייתכן שיהיה שימושי להוסיף א nameregexp, כדי לצמצם את היקף התג.
ctags מתעלם מביטויים מחודשים ללא א nameregexp. התחביר של ביטויים רגועים זהה לזה
ב-emacs. רצפי הבריחה של התווים הבאים נתמכים: \a, \b, \d, \e,
\f, \n, \r, \t, \v, המייצגים בהתאמה את תווי ASCII BEL, BS, DEL,
ESC, FF, NL, CR, TAB, VT.
השמיים משנים הם רצף של 0 או יותר תווים ביניהם i, כלומר להתעלם
מקרה בעת התאמה; m, שפירושו ש- tagregexp יותאמו נגד
תוכן קובץ שלם בבת אחת, במקום שורה אחר שורה, והרצף התואם
יכול להתאים מספר שורות; ו s, מה שרומז m ופירושו כי תו הנקודה
in tagregexp מתאים גם ל-newline char.
המפריד, כלומר / בדוגמאות, יכול להיות כל תו שונה ממנו
רווח, כרטיסייה, פלטה ו @. אם יש צורך בתו המפריד בתוך הרגיל
ביטוי, יש לצטט אותו לפניו \.
האופציונלי {שפה} קידומת פירושה שיש ליצור את התג רק עבור קבצים
של שפה שפה, והתעלמו אחרת. זה שימושי במיוחד כאשר
אחסון ביטויים רגועים מוגדרים מראש רבים בקובץ.
בצורתו השנייה, קובץ regex הוא שם של קובץ המכיל מספר של
טיעונים ל --regex= אפשרות, אחת בכל שורה. שורות המתחילות ברווח או
מניחים שהכרטיסיות הן הערות, ומתעלמים מהן.
הנה כמה דוגמאות. כל הביטויים הרגולריים מצוטטים כדי להגן עליהם מפני פגז
פרשנות.
תייגו את פקודות המאקרו של DEFVAR בקבצי המקור של emacs:
--regex='/[ \t]*DEFVAR_[AZ_ \t(]+"\([^"]+\)"/'
תייגו קבצי VHDL (דוגמה זו היא שורה אחת ארוכה, שבורה כאן לצורך עיצוב
סיבות):
--שפה=אין --regex='/[ אדריכלות
תְצוּרָה\) +[^ ]* +OF/' --regex='/[ \t]*\
\(attribute\|ENTITY\|פונקציה\|חבילה\( גוּף\)?\
\|פרוצדורה\|תהליך\|סוג\)[ \t]+\([^ \t(]+\)/\3/'
תג קבצי TCL (דוגמה אחרונה זו מציגה את השימוש ב-a tagregexp):
--lang=אין --regex='/ proc[ \t]+\([^ \t]+\)/\1/'
אפשר להקדים את הביטוי הרגולרי על ידי {lang}, ובכך להגביל אותו כך שיתאים לשורות קבצים של
השפה שצוינה. להשתמש etags - עזרה לקבל רשימה של המוכרים
שפות. תכונה זו שימושית במיוחד בפנים regex קבצים. קובץ regex
מכיל ביטוי רגולרי אחד בכל שורה. שורות ריקות, והשורות האלה שמתחילות ברווח או
מתעלמים מהכרטיסיות. שורות המתחילות ב-@ הן הפניות לקבצי ביטוי רגולרי ששמם
עוקב אחרי הסימן @. שורות אחרות נחשבות לביטויים רגולריים כמו אלה
הבא --רגקס.
למשל, הפקודה
etags [מוגן בדוא"ל] *.c
קורא את הקבצים הרגולריים הכלולים בקובץ regex.file.
-ר, --ללא ביטוי רגולרי
אל תעשה יותר התאמה של ביטויים רגועים בקבצים הבאים. ניתן לערבב באופן חופשי
עם שמות הקבצים וה- --רגקס אוֹפְּצִיָה.
-את, --עדכון
עדכן ערכי תג עבור קבצים שצוין בשורת הפקודה, תוך השארת ערכי תג עבור
קבצים אחרים במקום. נכון לעכשיו, זה מיושם על ידי מחיקת הקיים
ערכים עבור הקבצים הנתונים ולאחר מכן כתיבה מחדש של הערכים החדשים בסוף הקובץ
קובץ תגים. לעתים קרובות יותר פשוט לבנות מחדש את קובץ התג כולו מאשר להשתמש
זֶה. רק ctags מקבל את האפשרות הזו.
-ב, --vgrind
במקום ליצור קובץ תג, כתוב אינדקס (ב vgrind פורמט) לסטנדרט
תְפוּקָה. רק ctags מקבל את האפשרות הזו.
-איקס, --cxref
במקום ליצור קובץ תג, כתוב הפניה צולבת (ב cxref פורמט) ל
פלט סטנדרטי. רק ctags מקבל את האפשרות הזו.
-ח, -ח, - עזרה
הדפס מידע שימוש. ואחריו הדפסה אחת או יותר --language=LANG מפורטת
מידע על אופן יצירת התגים עבור LANG.
-V, --גִרְסָה
הדפס את הגרסה הנוכחית של התוכנית (זהה לגרסת ה-emacs etags is
נשלח עם).
השתמש ב-ctags.emacs24 באינטרנט באמצעות שירותי onworks.net