.\" This file is generated automatically by convert.pl from global/manual.in. .TH GLOBAL 1 "May 2015" "GNU Project" .SH "نام (NAME)" global \- چاپ مکان نمادهای مشخص‌شده .SH "خلاصه دستور (SYNOPSIS)" \fBglobal\fP [-adEFGilMnNqrstTvx][-S dir][-e] \fIpattern\fP .br \fBglobal\fP -c[dFiIMoOPqrsTv] \fIprefix\fP .br \fBglobal\fP -f[adlnqrstvx][-L file-list][-S dir] \fIfiles\fP .br \fBglobal\fP -g[aEGilMnoOqtvVx][-L file-list][-S dir][-e] \fIpattern\fP [\fIfiles\fP] .br \fBglobal\fP -I[ailMnqtvx][-S dir][-e] \fIpattern\fP .br \fBglobal\fP -P[aEGilMnoOqtvVx][-S dir][-e] \fIpattern\fP .br \fBglobal\fP -p[qrv] .br \fBglobal\fP -u[qv] .br .SH "توضیحات (DESCRIPTION)" دستور \fBGlobal\fP مکان نمادهای داده‌شده را در فایل‌های مبدأ C،‏ Yacc،‏ Java،‏ PHP و اسمبلی پیدا کرده و نام مسیر، شماره خط و محتوای خطِ مربوط به آن مکان‌ها را چاپ می‌کند. \fBGlobal\fP نه تنها تعاریف، بلکه مراجع و سایر نمادها را نیز می‌تواند بیابد. .PP \fBGlobal\fP می‌تواند یک درخت مبدأ (یعنی دایرکتوری‌ای که شامل زیردایرکتوری‌ها و فایل‌های مبدأ است) را به عنوان یک پروژه در نظر بگیرد. پیش از به‌کارگیری این دستور، باید \fBgtags\fP(1) را در دایرکتوری ریشه پروژه‌ای که قصد بررسی آن را دارید اجرا کنید تا فایل‌های برچسب ایجاد شوند. سپس می‌توانید از دستور \fBglobal\fP در هر کجای پروژه استفاده کنید. نیازی نیست مشخص کنید فایل برچسب کجاست؛ در عوض، \fBglobal\fP خودش مکان آن را پیدا می‌کند. .PP شما می‌توانید یک عبارت باقاعده برای \fIpattern\fP مشخص کنید. \fBGlobal\fP دو نگارش مختلف از نحو عبارات باقاعده را درک می‌کند: پایه (basic) و تعمیم‌یافته (extended که پیش‌فرض است). .SH "دستورها (COMMANDS)" دستورهای زیر در دسترس هستند: .PP .TP <بدون دستور> \fIpattern\fP عدم تعیین دستور به معنای دستور جستجوی برچسب است. برچسب‌هایی را که با \fIpattern\fP مطابقت دارند چاپ می‌کند. به‌طور پیش‌فرض، برچسب‌های تعریف چاپ می‌شوند. .TP \fB-c\fP, \fB--completion[=\fIlimit\fP]\fP [\fIprefix\fP] چاپ نمادهایی که با \fIprefix\fP آغاز می‌شوند. اگر \fIprefix\fP داده نشود، همه نمادها را چاپ می‌کند. اگر \fIlimit\fP داده شود، حداکثر تا تعداد خطوط مشخص‌شده در limit چاپ می‌کند. .TP \fB-f\fP, \fB--file\fP \fIfiles\fP چاپ همه برچسب‌های موجود در \fIfiles\fP. این دستور مستلزم گزینه \fB-x\fP است. .TP \fB-g\fP, \fB--grep\fP \fIpattern\fP [\fIfiles\fP] چاپ همه خطوطی که با \fIpattern\fP مطابقت دارند. اگر \fIfiles\fP مشخص شده باشد، این دستور در آن فایل‌ها جستجو می‌کند. .TP \fB--help\fP چاپ پیام راهنما. .TP \fB-I\fP, \fB--idutils\fP \fIpattern\fP چاپ تمام خطوطی که با \fIpattern\fP مطابقت دارند. این تابع از \fBidutils\fP(1) به عنوان موتور جستجو استفاده می‌کند. برای استفاده از این دستور، باید \fBidutils\fP(1) را روی سیستم خود نصب کرده و \fBgtags\fP(1) را با گزینه \fB-I\fP اجرا کنید. .TP \fB-P\fP, \fB--path\fP [\fIpattern\fP] چاپ نام مسیرهایی که با \fIpattern\fP مطابقت دارند. اگر الگویی داده نشود، تمام مسیرهای موجود در پروژه را چاپ می‌کند. .TP \fB-p\fP, \fB--print-dbpath\fP چاپ مکان \'GTAGS\'. .TP \fB--print\fP \fIname\fP چاپ مکان \fIname\fP، که می‌تواند یکی از این موارد باشد: \'root\'، \'dbpath\' یا \'conf\'. \'root\' به معنی دایرکتوری ریشه پروژه است. \'dbpath\' به معنی دایرکتوری‌ای است که پایگاه‌های داده برچسب در آن قرار دارند. \'conf\' به معنی فایل پیکربندی است. .TP \fB-u\fP, \fB--update\fP به‌روزرسانی افزایشی فایل‌های برچسب. این دستور به صورت درونی \fBgtags\fP(1) را فرامی‌خواند. برخلاف \fBgtags\fP(1)، می‌توانید این دستور را در هر کجای پروژه اجرا کنید. .TP \fB--version\fP نمایش شماره نگارش. .SH "گزینه‌ها (OPTIONS)" گزینه‌های زیر در دسترس هستند: .PP .TP \fB-a\fP, \fB--absolute\fP چاپ نام مسیرهای مطلق. به‌طور پیش‌فرض، نام مسیرهای نسبی چاپ می‌شوند. .TP \fB--color\fP \fIwhen\fP استفاده از رنگ برای برجسته‌سازی الگو در خط؛ \fIwhen\fP می‌تواند یکی از این موارد باشد: \fInever\fP، \fIalways\fP یا \fIauto\fP (پیش‌فرض). رنگ پیش‌فرض، متن قرمز پررنگ روی پس‌زمینه فعلی است؛ متغیر محیطی \fBGREP_COLORS\fP (در حال حاضر تنها \fBmt\fP و \fBms\fP مؤثر هستند) یا \fBGREP_COLOR\fP آن را تعیین می‌کند. این گزینه برای دستورهای زیر مؤثر است: <بدون دستور>، -f، -g، -I، -P. .TP \fB-C\fP, \fB--directory\fP \fIdir\fP تغییر دایرکتوری پیش از انجام تمام کارها از جمله تحلیل پارامترها. .TP \fB-d\fP, \fB--definition\fP چاپ مکان‌های تعاریف. .TP \fB-e\fP, \fB--regexp\fP \fIpattern\fP استفاده از \fIpattern\fP به عنوان الگو؛ برای محافظت از الگوهایی که با \'-\' آغاز می‌شوند کاربرد دارد. .TP \fB-E\fP, \fB--extended-regexp\fP تفسیر \fIpattern\fP به عنوان یک عبارت باقاعده تعمیم‌یافته (extended). این حالت پیش‌فرض است. .TP \fB--encode-path\fP \fIchars\fP تبدیل نویسه‌های مسیرِ موجود در \fIchars\fP به نماد \'%\'، همراه با نمایش شانزده‌شانزدهی دو رقمی آن نویسه. فاصله (blank) به \'%20\' تبدیل خواهد شد. .TP \fB-F\fP, \fB--first-match\fP پایان دادن به جستجو بدون پیمایش تمام فایل‌های برچسب فهرست‌شده در \fBGTAGSLIBPATH\fP هنگامی که برچسب‌ها در یک فایل برچسب پیدا شوند. این حالت پیش‌فرض است. .TP \fB--from-here\fP \fIcontext\fP تعیین نوع برچسب بر اساس \fIcontext\fP. نحو آن باید به صورت \'lineno:path\' باشد. اگر سیاق (context) تعریفی از الگو باشد آنگاه از \fB-r\fP استفاده می‌شود، در غیر این صورت اگر حداقل یک تعریف از الگو وجود داشته باشد از \fB-d\fP استفاده می‌شود، وگرنه از \fB-s\fP استفاده خواهد شد. اگر این گزینه مشخص شود، گزینه‌های \fB-d\fP، \fB-r\fP و \fB-s\fP روی خط فرمان نادیده گرفته می‌شوند. استفاده از عبارت باقاعده برای \fIpattern\fP مجاز نیست. این گزینه برای استفاده در محیط‌های تعاملی مانند ویرایشگرها و محیط‌های یکپارچه توسعه نرم‌افزار (IDE) در نظر گرفته شده است. .TP \fB-G\fP, \fB--basic-regexp\fP تفسیر \fIpattern\fP به عنوان یک عبارت باقاعده پایه (basic). پیش‌فرض، عبارت باقاعده تعمیم‌یافته است. .TP \fB--gtagsconf\fP \fIfile\fP تنظیم متغیر محیطی \fBGTAGSCONF\fP روی \fIfile\fP. .TP \fB--gtagslabel\fP \fIlabel\fP تنظیم متغیر محیطی \fBGTAGSLABEL\fP روی \fIlabel\fP. .TP \fB-i\fP, \fB--ignore-case\fP نادیده گرفتن تمایز حروف کوچک و بزرگ در الگو. .TP \fB-L\fP, \fB--file-list\fP \fIfile\fP دریافت فایل‌ها از \fIfile\fP علاوه بر آرگومان‌ها. آرگومان \fIfile\fP می‌تواند روی '-' تنظیم شود تا فهرستی از فایل‌ها را از ورودی استاندارد بپذیرد. نام فایل‌ها باید با خط جدید از یکدیگر جدا شوند. .TP \fB-l\fP, \fB--local\fP تنها چاپ برچسب‌هایی که زیر دایرکتوری فعلی قرار دارند. .TP \fB--literal\fP انجام جستجوی دقیق نویسه‌ای (literal) به جای جستجوی عبارت باقاعده. این گزینه با دستور جستجوی برچسب، دستور \fB-g\fP، دستور \fB-P\fP و دستور \fB-I\fP کار می‌کند. .TP \fB-M\fP, \fB--match-case\fP جستجو به بزرگی و کوچکی حروف حساس باشد. این حالت پیش‌فرض است. .TP \fB--match-part \fIpart\fP\fP مشخص کردن چگونگی تطابق تکمیل نام مسیر، که در آن \fIpart\fP یکی از این موارد است: \'first\'، \'last\' یا \'all\' (پیش‌فرض). این گزینه تنها با دستور \fB-c\fP در ترکیب با \fB-P\fP معتبر است. .TP \fB-n\fP, \fB--nofilter\fP غیرفعال کردن فیلتر مرتب‌سازی و فیلتر تبدیل مسیر. .TP \fB-N\fP, \fB--nearness\fP[=\fIstart\fP] استفاده از روش مرتب‌سازی بر اساس نزدیکی (مرتب‌سازی بر مبنای نزدیک‌ترین از \fIstart\fP) برای خروجی. به‌طور پیش‌فرض، از روش مرتب‌سازی الفبایی استفاده می‌شود. این گزینه برای دستور جستجوی برچسب، دستور \fB-P\fP و دستور \fB-g\fP مؤثر است. به عنوان یک استثنا، دستور \fB-g\fP زمانی که فایل‌ها با آرگومان مشخص شده باشند این گزینه را نادیده می‌گیرد. میزان نزدیکی بر اساس این تعریف می‌شود که برای رسیدن به هدف باید از چند دایرکتوری والد بالا رفت. نتیجه مرتب‌سازی بر اساس نزدیکی، الحاق موارد زیر ([0]-[n]) به همین ترتیب است. مقدار پیش‌فرض \fIstart\fP دایرکتوری فعلی است. .nf [0] اگر شروع یک فایل باشد، خروجی جستجوی محلی در آن فایل. [1] خروجی جستجوی محلی در دایرکتوری شروع به جز [0]. [2] خروجی جستجوی محلی در دایرکتوری والد به جز [0]-[1]. [3] خروجی جستجوی محلی در دایرکتوری والدِ والد به جز [0]-[2]. \&... (تکرار تا دایرکتوری ریشه پروژه) [n] خروجی جستجوی محلی در دایرکتوری ریشه پروژه به جز [0]-[n-1]. .fi در هر دایرکتوری، آن‌ها بر اساس ترتیب الفبایی مرتب می‌شوند. .TP \fB-O\fP, \fB--only-other\fP تنها در نظر گرفتن فایل‌های متنی غیر از کد مبدأ، مانند \'README\'. این گزینه تنها با دستور \fB-g\fP یا \fB-P\fP معتبر است. این گزینه بر گزینه \fB-o\fP اولویت دارد..TP \fB-o\fP, \fB--other\fP علاوه بر فایل‌های کد مبدأ، فایل‌های متنی دیگر (مانند \'README\') را نیز پردازش می‌کند. این گزینه تنها با دستورهای \fB-g\fP یا \fB-P\fP معتبر است. .TP \fB--path-style\fP \fIformat\fP نام‌های مسیر را با استفاده از \fIformat\fP چاپ می‌کند که می‌تواند یکی از موارد زیر باشد: \'relative\'، \'absolute\'، \'shorter\'، \'abslib\' یا \'through\'. \'relative\' به معنای مسیر نسبی است. \'absolute\' به معنای مسیر مطلق است. \'shorter\' به معنای مسیر کوتاه‌تر بین مسیر نسبی و مطلق است. \'abslib\' به معنای مسیر مطلق برای کتابخانه‌ها (GTAGSLIBPATH) و مسیر نسبی برای باقی موارد است. \'through\' به معنای مسیر نسبی از دایرکتوری ریشه پروژه است (قالب داخلی GPATH). وقتی از این شیوه استفاده شود، GTAGSLIBPATH نادیده گرفته می‌شود. پیش‌فرض \'relative\' است. گزینه \fB--path-style\fP اولویت بالاتری نسبت به گزینه \fB-a\fP دارد. .TP \fB--print0\fP هر رکورد را به جای خط جدید، با یک نویسه نال (null) در انتها چاپ می‌کند. .TP \fB-q\fP, \fB--quiet\fP حالت بی‌صدا. .TP \fB-r\fP, \fB--reference\fP, \fB--rootdir\fP برچسب‌های مرجع را چاپ می‌کند. مرجع به معنای ارجاع به نمادی است که دارای تعریف باشد. همراه با گزینه \fB-p\fP، دایرکتوری ریشه پروژه را چاپ می‌کند. .TP \fB--result\fP \fIformat\fP خروجی را با استفاده از \fIformat\fP چاپ می‌کند که می‌تواند یکی از موارد زیر باشد: \'path\' (پیش‌فرض)، \'ctags\'، \'ctags-x\'، \'grep\' یا \'cscope\'. گزینه‌های \fB--result=ctags\fP و \fB--result=ctags-x\fP به ترتیب معادل گزینه‌های \fB-t\fP و \fB-x\fP هستند. گزینه \fB--result\fP اولویت بالاتری نسبت به گزینه‌های \fB-t\fP و \fB-x\fP دارد. .TP \fB--single-update\fP \fIfile\fP فایل‌های برچسب را با استفاده از \fBgtags\fP(1) همراه با گزینه \fB--single-update\fP به‌روزرسانی می‌کند. فرض بر این است که \fIfile\fP اضافه، به‌روزرسانی یا حذف شده است و هیچ تغییری در فایل‌های دیگر وجود ندارد. این گزینه مستلزم گزینه \fB-u\fP است. .TP \fB-s\fP, \fB--symbol\fP برچسب‌های نمادهای دیگر را چاپ می‌کند. نماد دیگر به معنای ارجاع به نمادی است که هیچ تعریفی ندارد. .TP \fB-S\fP, \fB--scope\fP \fIdir\fP فقط برچسب‌هایی را که زیر دایرکتوری \fIdir\fP قرار دارند چاپ می‌کند. مشابه گزینه \fB-l\fP است، اما نیازی به تغییر دایرکتوری ندارید. .TP \fB-T\fP, \fB--through\fP تمام فایل‌های برچسب فهرست‌شده در \fBGTAGSLIBPATH\fP را بررسی می‌کند. به‌طور پیش‌فرض، جستجو با یافتن اولین برچسب متوقف می‌شود. در صورت مشخص شدن هر یک از گزینه‌های \fB-s\fP، \fB-r\fP یا \fB-l\fP، این گزینه نادیده گرفته می‌شود. .TP \fB-t\fP, \fB--tags\fP استفاده از قالب استاندارد ctags. .TP \fB-V\fP, \fB--invert-match\fP منطق تطابق را معکوس می‌کند تا خطوط غیرمنطبق انتخاب شوند. این گزینه تنها با دستورهای \fB-g\fP یا \fB-P\fP معتبر است. .TP \fB-v\fP, \fB--verbose\fP حالت پرگو (مشروح). .TP \fB-x\fP, \fB--cxref\fP استفاده از قالب استاندارد cxref در ctags (با \fB-x\fP). .SH "مثال‌ها (EXAMPLES)" .nf $ ls -F Makefile src/ lib/ $ gtags $ ls G* GPATH GRTAGS GTAGS $ global main src/main.c $ (cd src; global main) main.c $ global -x main main 10 src/main.c main (argc, argv) { $ global -f src/main.c main 10 src/main.c main (argc, argv) { func1 55 src/main.c func1() { func2 72 src/main.c func2() { func3 120 src/main.c func3() { $ global -x '^[sg]et' set_num 20 lib/util.c set_num(values) { get_num 30 lib/util.c get_num() { $ global -rx set_num set_num 113 src/op.c set_num(32); set_num 225 src/opop.c if (set_num(0) > 0) { $ global strlen $ (cd /usr/src/sys; gtags) $ export GTAGSLIBPATH=/usr/src/sys $ global -a strlen /usr/src/sys/libkern/strlen.c $ (cd /usr/src/lib; gtags) $ GTAGSLIBPATH=/usr/src/lib:/usr/src/sys $ global -a strlen /usr/src/lib/libc/string/strlen.c .fi .SH "فایل‌ها (FILES)" .TP \'GTAGS\' فایل برچسب برای تعاریف. .TP \'GRTAGS\' فایل برچسب برای ارجاعات. .TP \'GPATH\' فایل برچسب برای فایل‌های منبع. .TP \'GTAGSROOT\' اگر متغیر محیطی \fBGTAGSROOT\fP تنظیم نشده باشد و فایل \'GTAGSROOT\' در همان دایرکتوری حاوی \'GTAGS\' وجود داشته باشد، آن‌گاه \fBglobal\fP مقدار \fBGTAGSROOT\fP را برابر با محتوای این فایل قرار می‌دهد. .TP \'gtags.conf\', \'$HOME/.globalrc\' داده‌های پیکربندی برای GNU Global. \fBgtags.conf\fP(5) را ببینید..SH "محیط (ENVIRONMENT)" متغیرهای محیطی زیر بر اجرای \fBglobal\fP تأثیر می‌گذارند: .PP .TP \fBGREP_COLOR\fP رنگی که برای \fB--color\fP استفاده می‌شود؛ \fBGREP_COLORS\fP اولویت دارد. .TP \fBGREP_COLORS\fP رنگ (\fImt\fP یا \fIms\fP) برای استفاده با \fB--color\fP؛ به \fBgrep\fP(1) مراجعه کنید. .TP \fBGTAGSBLANKENCODE\fP اگر این متغیر مقداردهی شود، گزینهٔ \fB--encode-path=" "\fP تعیین می‌شود. .TP \fBGTAGSCACHE\fP اندازهٔ حافظهٔ موقت (کَش) B-tree. مقدار پیش‌فرض 50000000 (بایت) است. .TP \fBGTAGSCONF\fP فایل پیکربندی. .TP \fBGTAGSDBPATH\fP دایرکتوری محل قرارگیری فایل‌های برچسب. این مقدار در صورتی که \fBGTAGSROOT\fP تعریف نشده باشد نادیده گرفته می‌شود. استفاده از این متغیر توصیه نمی‌شود. .TP \fBGTAGSFORCECPP\fP اگر این متغیر مقداردهی شود، با هر فایلی که پسوند آن \'.h\' باشد مانند یک فایل منبع C++ رفتار می‌شود. .TP \fBGTAGSLABEL\fP برچسب پیکربندی. مقدار پیش‌فرض \fIdefault\fP است. .TP \fBGTAGSLIBPATH\fP اگر این متغیر مقداردهی شود، به عنوان مسیر جستجو برای توابع کتابخانه‌ای استفاده می‌شود. اگر نماد داده‌شده در پروژهٔ کنونی پیدا نشود، \fBglobal\fP در این مسیرها نیز جستجو می‌کند. از آنجا که در بازیابی تنها \'GTAGS\' هدف قرار می‌گیرد، هنگام تعیین \fB-r\fP یا \fB-s\fP این متغیر نادیده گرفته می‌شود. .TP \fBGTAGSLOGGING\fP اگر این متغیر مقداردهی شود، \'$GTAGSLOGGING\' به عنوان مسیر فایل لاگ استفاده می‌شود. مقدار پیش‌فرضی وجود ندارد. .TP \fBGTAGSROOT\fP دایرکتوری ریشهٔ پروژه. معمولاً از طریق وجود فایل \'GTAGS\' شناسایی می‌شود. استفاده از این متغیر توصیه نمی‌شود. .TP \fBGTAGSTHROUGH\fP اگر این متغیر مقداردهی شود، گزینهٔ \fB-T\fP تعیین می‌گردد. .TP \fBGTAGSOBJDIR\fP, \fBMAKEOBJDIR\fP اگر هر یک از این دو متغیر مقداردهی شود، به عنوان نام objdir به سبک BSD استفاده می‌شود. اولویت با متغیر اول است. مقدار پیش‌فرض \'obj\' است. .TP \fBGTAGSOBJDIRPREFIX\fP, \fBMAKEOBJDIRPREFIX\fP اگر هر یک از این دو متغیر مقداردهی شود، به عنوان پیشوند objdir به سبک BSD استفاده می‌شود. اولویت با متغیر اول است. مقدار پیش‌فرض \'/usr/obj\' است. .SH "پیکربندی (CONFIGURATION)" متغیرهای پیکربندی زیر بر اجرای \fBglobal\fP تأثیر می‌گذارند: .PP .TP icase_path (boolean) نادیده گرفتن تمایز حروف کوچک و بزرگ در \fIpattern\fP. .PP .SH "خطاها (DIAGNOSTICS)" در صورت بروز خطا، \fBglobal\fP با مقداری غیر از ۰ خارج می‌شود، و در غیر این صورت با ۰. .SH "همچنین ببینید (SEE ALSO)" \fBgtags\fP(1), \fBhtags\fP(1), \fBless\fP(1), \fBgtags.conf\fP(5). .PP سامانه برچسب‌گذاری کد منبع GNU Global .br (http://www.gnu.org/software/global). .SH "نویسندگان (AUTHORS)" Shigio YAMAGUCHI، Hideki IWAMOTO و دیگران. .SH "تاریخچه (HISTORY)" دستور \fBglobal\fP نخستین بار در FreeBSD 2.2.2 پدیدار شد.