.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "zshdb 1" .TH zshdb 1 2026-04-09 1.1.4dev "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "نام (NAME)" zshdb \- اشکال‌زدای zsh .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" \&\fBzshdb\fR [\fIoptions\fR] [\-\-] \fIscript\-name\fR [\fIscript options\fR] .PP \&\fBzshdb\fR [\fIoptions\fR] \-c \fIexecution\-string\fR .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" اسکریپت \&\f(CW\*(C`zshdb\*(C'\fR یک اسکریپت zsh است که شرایط را برای اشکال‌زدایی از یک اسکریپت zsh دیگر فراهم می‌کند. این اشکال‌زدا دارای رابط دستوری مشابه با \f(CWgdb(1)\fR است. .PP اگر از اسکریپت zshdb استفاده می‌کنید و نیاز است گزینه‌هایی را به اسکریپت تحت اشکال‌زدایی ارسال کنید، علامت \f(CW\*(C`\-\-\*(C'\fR را قبل از نام اسکریپت اضافه کنید. این کار به zshdb اعلام می‌کند که نباید هیچ گزینهٔ دیگری را پردازش کند. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" .IP "\-h | \-\-help" 4 .IX Item "-h | --help" پیام راهنمای استفاده را در خطای استاندارد چاپ می‌کند و با کد بازگشتی ۱۰۰ خارج می‌شود. .Sp .IP "\-A | \-\-annotation \fIlevel\fR" 4 .IX Item "-A | --annotation level" اطلاعات تکمیلی پشته و وضعیت را در خروجی تنظیم می‌کند که به پیش‌نماهایی (front\-end) نظیر emacs امکان می‌دهد بدون نیاز به بررسی مداوم (polling)، رویدادها را ردیابی کنند. .Sp این گزینه برای آزمون‌های رگرسیون مورد نیاز است. استفاده از این گزینه معادل اجرای دستور زیر درون اشکال‌زدا است: .Sp .Vb 1 \& set annotation LEVEL .Ve .Sp درون اشکال‌زدا. .IP "\-B | \-\-basename" 4 .IX Item "-B | --basename" در جاهایی که نام فایل در خروجی اشکال‌زدا ظاهر می‌شود، فقط نام پایه (basename) را ارائه می‌دهد. این گزینه برای آزمون‌های رگرسیون مورد نیاز است. استفاده از این گزینه معادل اجرای دستور زیر درون اشکال‌زدا است: .Sp .Vb 1 \& set basename on .Ve .Sp درون اشکال‌زدا. .Sp .IP "\-n | \-\-nx | \-\-no\-init" 4 .IX Item "-n | --nx | --no-init" به‌طور معمول اشکال‌زدا پیش از پذیرش تعامل کاربر، در صورت وجود فایل \f(CW\*(C`~/.zshdbinit\*(C'\fR دستورهای اشکال‌زدا را از آن می‌خواند. فایل \f(CW\*(C`.zshdbinit\*(C'\fR مشابه \f(CW\*(C`.perldb\*(C'\fR در Perl یا \f(CW\*(C`.gdbinit\*(C'\fR در GNU gdb است: کاربر ممکن است بخواهد چنین نمایهٔ اشکال‌زدایی را ایجاد کند تا سفارشی‌سازی‌های گوناگون مد نظر خود را به آن بیفزاید. .Sp با استفاده از گزینهٔ \f(CW\*(C`\-n\*(C'\fR این فایل مقداردهی اولیه خوانده نخواهد شد. این مورد در آزمون‌های رگرسیون یا برای ردیابی اشکال در نمایهٔ \f(CW\*(C`.zshdbinit\*(C'\fR کاربر مفید است. .Sp .IP "\-c | \-\-command \fIcommand\-string\fR" 4 .IX Item "-c | --command command-string" به جای مشخص کردن نام یک فایل اسکریپت، می‌توان یک رشتهٔ اجرایی را برای اشکال‌زدایی تعیین کرد. از این گزینه برای انجام این کار استفاده کنید. .Sp .IP "\-q | \-\-quiet" 4 .IX Item "-q | --quiet" اطلاعات مقدماتی نسخه و کپی‌رایت را چاپ نمی‌کند. این گزینه نیز در آزمون‌های رگرسیون که در آن‌ها نمی‌خواهیم تاریخ متغیر کپی‌رایت در انطباق آزمون‌های رگرسیون وارد شود، مفید است. .Sp .IP "\-x | \-\-eval\-command \fIdebugger\-cmdfile\fR" 4 .IX Item "-x | --eval-command debugger-cmdfile" دستورهای اشکال‌زداییِ موجود در \fIdebugger\-cmdfile\fR را پیش از پذیرش ورودی کاربر اجرا می‌کند. با این حال، این دستورها پس از هرگونه دستورات \f(CW\*(C`.zshdbinit\*(C'\fR خوانده می‌شوند. این گزینه نیز هنگام اجرای اسکریپت‌های اشکال‌زدایی برای آزمون رگرسیون مفید است. .Sp .IP "\-L | \-\-library \fIdebugger\-library\fR" 4 .IX Item "-L | --library debugger-library" اشکال‌زدا نیاز دارد تعدادی تابع را بارگذاری یا ضمیمه (source/include) کند و این توابع در یک کتابخانه قرار دارند. اگر این گزینه داده نشود، مکان پیش‌فرض کتابخانه نسبت به اسکریپت نصب‌شدهٔ zshdb عبارت است از: \f(CW\*(C`../lib/zshdb\*(C'\fR. .Sp .IP "\-T | \-\-tempdir \fItemporary\-file\-directory\fR" 4 .IX Item "-T | --tempdir temporary-file-directory" اشکال‌زدا باید برای ذخیرهٔ اطلاعات پایدار هنگام بازگشت از زیرپوسته (subshell) یا جهت ارزیابی یک عبارت، از مقداری فضای ذخیره‌سازی موقت در سیستم‌فایل استفاده کند. دایرکتوری پیش‌فرض \f(CW\*(C`/tmp\*(C'\fR است، اما با استفاده از این گزینه می‌توانید دایرکتوری ایجاد فایل‌های موقت اشکال‌زدا را مشخص کنید. .Sp .IP "\-t | \-\-tty \fItty\-name\fR" 4 .IX Item "-t | --tty tty-name" خروجی اشکال‌زدا معمولاً به یک ترمینال ارسال می‌شود، نه به stdout یا stdin که ممکن است توسط برنامهٔ در حال اشکال‌زدایی استفاده شوند. تعیین tty یا شبه‌tty معمولاً به‌طور خودکار انجام می‌گیرد. با این حال، اگر می‌خواهید مقصد خروجی اشکال‌زدا را کنترل کنید، از این گزینه استفاده نمایید. .Sp .IP "\-V | \-\-version" 4 .IX Item "-V | --version" شمارهٔ نسخه و عدم وجود گارانتی را نمایش می‌دهد و با کد بازگشتی ۱ خارج می‌شود. .SH "گزارش باگ‌ها (BUGS)" .IX Header "BUGS" نحوهٔ سازماندهی اشکال‌زدایی توسط این اسکریپت به این صورت است که ابتدا کدهای پشتیبانی اشکال‌زدایی را ضمیمه (یا در واقع «source») می‌کند و سپس اسکریپت یا رشتهٔ دستوری داده‌شده را منبع‌یابی (source) می‌نماید. .PP یک مشکل در source کردن اسکریپت تحت اشکال‌زدایی این است که نام برنامه ذخیره‌شده در \f(CW$0\fR نام اسکریپت مورد نظر برای اشکال‌زدایی نخواهد بود. اسکریپت تحت اشکال‌زدایی در پشتهٔ فراخوانی (call stack) نه به عنوان بالاترین مورد، بلکه به عنوان موردِ پایین‌تر از \f(CW\*(C`zshdb\*(C'\fR نمایش داده خواهد شد. .PP گزینهٔ اسکریپت \f(CW\*(C`zshdb\*(C'\fR فرض را بر این می‌گذارد که نسخهٔ zsh از اشکال‌زدایی پشتیبانی می‌کند، یعنی نسخهٔ zsh 4.3.6\-dev\-2 یا جدیدتر. .PP اشکال‌زدا کارها را کمی کند می‌کند، زیرا اشکال‌زدا باید هر دستور را رهگیری کند و بررسی نماید که آیا نیاز به انجام اقدامی هست یا خیر. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" .IP \(bu 4 \- تا زمانی که یک راهنمای کامل نوشته شود، این راهنما برای اشکال‌زدای مشابه bash ممکن است رهنمودهایی ارائه دهد. این دو اشکال‌زدا دارای رابط دستوری (و کدهای) مشابهی هستند. .IP \(bu 4 \- صفحهٔ اصلی پروژه برای خانوادهٔ اشکال‌زداهای zshdb و bashdb. .SH "نویسندگان (AUTHORS)" .IX Header "AUTHOR" نسخهٔ کنونی توسط Rocky Bernstein نگهداری می‌شود (یا نمی‌شود). .SH "کپی‌رایت و تکثیر (COPYRIGHT)" .IX Header "COPYRIGHT" .Vb 5 \& Copyright (C) 2009 Rocky Bernstein \& This program is free software; you can redistribute it and/or modify \& it under the terms of the GNU General Public License as published by \& the Free Software Foundation; either version 2 of the License, or \& (at your option) any later version. \& \& This program is distributed in the hope that it will be useful, \& but WITHOUT ANY WARRANTY; without even the implied warranty of \& MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the \& GNU General Public License for more details. \& \& You should have received a copy of the GNU General Public License \& along with this program; if not, write to the Free Software \& Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111\-1307 USA .Ve