'\" t .\" Man page generated from reStructuredText .\" by the Docutils 0.23 manpage writer. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "FISH-TERMINAL-COMPATIBILITY" "1" "Sep 07, 2026" "4.9" "fish-shell" .SH "نام (NAME)" fish-terminal-compatibility \- سازگاری و تنظیمات شبیه‌سازهای ترمینال در پوسته فیش .SH "توضیحات (DESCRIPTION)" پوستهٔ .B fish توالی‌های کنترلی مختلفی را به ترمینال ارسال می‌کند. برخی از این توالی‌ها باید برای فعال‌سازی قابلیت‌های پایه‌ای پیاده‌سازی شوند، در حالی که برخی دیگر ویژگی‌های اختیاری را فعال می‌کنند و ممکن است توسط ترمینال نادیده گرفته شوند. .PP ترمینال باید قادر به تجزیهٔ دستورات معرفی توالی کنترلی (CSI)، دستورات سیستم‌عامل (OSC) و به‌صورت اختیاری رشته‌های کنترل دستگاه (DCS) باشد. این موارد توسط استاندارد .B ECMA\-48 تعریف شده‌اند. اگر یک توالی معتبر CSI، OSC یا DCS نشان‌دهندهٔ دستوری نباشد که توسط ترمینال پیاده‌سازی شده است، ترمینال باید آن را نادیده بگیرد. .PP توالی‌های کنترلی با ساختار نحوی شبیه به .B fish مشخص می‌شوند. نویسه‌های خاص به‌جز .B \e اسکیپ نمی‌شوند. فاصله‌ها صرفاً برای خوانایی افزوده شده‌اند و بخشی از توالی نیستند. متغیرهای جایگزین به‌صورت .B Ps برای یک عدد یا .B Pt برای یک رشتهٔ قابل‌چاپ دلخواه نوشته می‌شوند. .PP .B نکته: پوستهٔ .B fish به پایگاه‌دادهٔ .B terminfo سیستم شما وابسته نیست. در این سند، کدهای terminfo (TI) صرفاً جهت ارجاع و راهنمایی آورده شده‌اند. .SH "دستورات الزامی (REQUIRED COMMANDS)" .TS box center; l|l|l. T{ توالی T} T{ TI T} T{ توضیحات T} _ T{ \fB\er\fP T} T{ n/a T} T{ انتقال مکان‌نما به ابتدای سطر. T} _ T{ \fB\en\fP T} T{ cud1 T} T{ انتقال مکان‌نما یک سطر به پایین. T} _ T{ \fB\ee[\ Ps\ A\fP T} T{ cuu T} T{ انتقال مکان‌نما به بالا به تعداد Ps ستون (یا یک ستون در صورت نبود پارامتر). T} _ T{ \fB\ee[\ Ps\ C\fP T} T{ cuf T} T{ انتقال مکان‌نما به راست به تعداد Ps ستون (یا یک ستون در صورت نبود پارامتر). T} _ T{ \fB\ex08\fP T} T{ cub1 T} T{ انتقال مکان‌نما یک ستون به چپ. T} _ T{ \fB\ee[\ Ps\ D\fP T} T{ cub T} T{ انتقال مکان‌نما به چپ به تعداد Ps بار. T} _ T{ \fB\ee[H\fP T} T{ cup T} T{ تنظیم موقعیت مکان‌نما (بدون پارامتر به معنای: انتقال به سطر ۱، ستون ۱). T} _ T{ \fB\ee[K\fP T} T{ el T} T{ پاک کردن تا انتهای سطر. T} _ T{ \fB\ee[J\fP T} T{ ed T} T{ پاک کردن تا انتهای صفحه نمایش. T} _ T{ \fB\ee[2J\fP T} T{ clear T} T{ پاک کردن صفحه نمایش. T} _ T{ \fB\ee[0c\fP T} T{ T} T{ درخواست صفت‌های اولیهٔ دستگاه (Primary Device Attribute). ترمینال باید با یک دستور CSI پاسخ دهد که با بایت پارامتر \fB?\fP شروع شده (یعنی توالی‌ای که با \fB\ee[?\fP شروع می‌شود) و بایت پایانی آن \fBc\fP باشد. .sp عدم پیاده‌سازی این مورد باعث مکث کوتاهی در هنگام راه‌اندازی و سپس نمایش یک پیام هشدار می‌شود. در حال حاضر، هر دوی این‌ها را می‌توان با خاموش کردن فلگ ویژگی \fBquery\-terminal\fP \%<#\:featureflags>\& غیرفعال کرد. T} _ T{ n/a T} T{ am T} T{ شکستن نرم متن بر اساس پهنای صفحه نمایش (Soft wrap). T} _ T{ n/a T} T{ xenl T} T{ چاپ در آخرین ستون، مکان‌نما را به سطر بعدی منتقل نمی‌کند. با اجرای دستور \fBprintf %0\(dq$COLUMNS\(dqd 0; sleep 3\fP این مورد را بررسی کنید. T} .TE .SH "دستورات اختیاری (OPTIONAL COMMANDS)" .TS box center; l|l|l. T{ توالی T} T{ TI T} T{ توضیحات T} _ T{ \fB\et\fP T} T{ it T} T{ انتقال مکان‌نما به توقف تب بعدی (هر ۸ ستون یک‌بار). این مورد عمدتاً زمانی اهمیت دارد که خط فرمان (prompt) شما شامل تب باشد. T} _ T{ \fB\ee[m\fP T} T{ sgr0 T} T{ غیرفعال کردن حالت‌های صفت برجسته (bold)، کم‌نور (dim)، مورب (italic)، زیرخط‌دار (underline)، خط‌خورده (strikethrough)، معکوس (reverse) و انتخاب رنگ‌های پیش‌فرض. T} _ T{ \fB\ee[1m\fP T} T{ bold T} T{ ورود به حالت برجسته (bold). T} _ T{ \fB\ee[2m\fP T} T{ dim T} T{ ورود به حالت کم‌نور (dim). T} _ T{ \fB\ee[3m\fP T} T{ sitm T} T{ ورود به حالت مورب (italic). T} _ T{ \fB\ee[4m\fP T} T{ smul T} T{ ورود به حالت زیرخط‌دار (underline). T} _ T{ \fB\ee[4:2m\fP T} T{ Su T} T{ ورود به حالت دو زیرخط (double underline). T} _ T{ \fB\ee[4:3m\fP T} T{ Su T} T{ ورود به حالت زیرخط موج‌دار (curly underline). T} _ T{ \fB\ee[4:4m\fP T} T{ Su T} T{ ورود به حالت زیرخط نقطه‌چین (dotted underline). T} _ T{ \fB\ee[4:5m\fP T} T{ Su T} T{ ورود به حالت زیرخط خط‌چین (dashed underline). T} _ T{ \fB\ee[7m\fP T} T{ rev T} T{ ورود به حالت تصویر معکوس (جابجایی رنگ‌های پیش‌زمینه و پس‌زمینه). T} _ T{ \fB\ee[9m\fP T} T{ smxx T} T{ ورود به حالت خط‌خورده (strikethrough). T} _ T{ \fB\ee[23m\fP T} T{ ritm T} T{ خروج از حالت مورب (italic). T} _ T{ \fB\ee[24m\fP T} T{ rmul T} T{ خروج از حالت زیرخط‌دار (underline). T} _ T{ \fB\ee[29m\fP T} T{ rmxx T} T{ خروج از حالت خط‌خورده (strikethrough). T} _ T{ \fB\ee[38;5; Ps m\fP T} T{ setaf T} T{ انتخاب رنگ پیش‌زمینهٔ Ps از پالت ۲۵۶ رنگی. T} _ T{ \fB\ee[48;5; Ps m\fP T} T{ setab T} T{ انتخاب رنگ پس‌زمینهٔ Ps از پالت ۲۵۶ رنگی. T} _ T{ \fB\ee[58:5: Ps m\fP (توجه: دونقطه به‌جای نقطه‌ویرگول) T} T{ Su T} T{ انتخاب رنگ زیرخط Ps از پالت ۲۵۶ رنگی. T} _ T{ \fB\ee[ Ps m\fP T} T{ setaf setab T} T{ انتخاب رنگ پیش‌زمینه/پس‌زمینه. این دستور بر اساس محدوده‌ای که شامل پارامتر است، رنگی از پالت ۲۵۶ رنگی یادشده را استفاده می‌کند: 30\-37 به پیش‌زمینهٔ 0\-7 نگاشت می‌شود، 40\-47 به پس‌زمینهٔ 0\-7 نگاشت می‌شود، 90\-97 به پیش‌زمینهٔ 8\-15 نگاشت می‌شود و 100\-107 به پس‌زمینهٔ 8\-15 نگاشت می‌شود. T} _ T{ \fB\ee[38;2; Ps ; Ps ; Ps m\fP T} T{ T} T{ انتخاب رنگ پیش‌زمینه از میان رنگ‌های ۲۴ بیتی RGB. T} _ T{ \fB\ee[48;2; Ps ; Ps ; Ps m\fP T} T{ T} T{ انتخاب رنگ پس‌زمینه از میان رنگ‌های ۲۴ بیتی RGB. T} _ T{ \fB\ee[39m\fP T} T{ T} T{ بازنشانی رنگ پیش‌زمینه به مقدار پیش‌فرض ترمینال. T} _ T{ \fB\ee[49m\fP T} T{ T} T{ بازنشانی رنگ پس‌زمینه به مقدار پیش‌فرض ترمینال. T} _ T{ \fB\ee[58:2:: Ps : Ps : Ps m\fP (توجه: دونقطه به‌جای نقطه‌ویرگول) T} T{ Su T} T{ انتخاب رنگ زیرخط از میان رنگ‌های ۲۴ بیتی RGB. T} _ T{ \fB\ee[59m\fP T} T{ Su T} T{ بازنشانی رنگ زیرخط به مقدار پیش‌فرض (پیروی از رنگ پیش‌زمینه). T} _ T{ \fB\ee[ Ps S\fP T} T{ indn T} T{ پیمایش محتوا (نه نما یا دیدگاه) به بالا به تعداد Ps سطر (در استاندارد ECMA\-48 با عنوان \fBSCROLL UP\fP / \fBSU\fP و در terminfo با عنوان \(dqscroll forward\(dq نامیده می‌شود). هنگامی که fish پشتیبانی از این قابلیت را تشخیص دهد، \fBstatus test\-terminal\-features scroll\-content\-up\fP \%<#\:status-test-terminal-features> مقدار 0 را برمی‌گرداند، که امکان استفاده از کلید ترکیبی \fBctrl\fP\-\fBl\fP برای فراخوانی تابع ورودی ویژهٔ \fBscrollback\-push\fP \%<#\:special-input-functions-scrollback-push> را فراهم می‌سازد. T} _ T{ \fB\ee[= Ps u\fP, \fB\ee[? Ps u\fP T} T{ n/a T} T{ فعال‌سازی پروتکل صفحه‌کلید kitty. T} _ T{ \fB\ee[6n\fP T} T{ n/a T} T{ درخواست گزارش موقعیت مکان‌نما. پاسخ باید به فرم \fB\ee[ Ps ; Ps R\fP باشد که در آن پارامتر نخست شمارهٔ سطر و پارامتر دوم شمارهٔ ستون است. شمارش هر دو از ۱ آغاز می‌شود. .sp این توالی برای کوتاه کردن خودکار پیشنهادهای چندخطی در لبهٔ پایینی صفحه نمایش، توسط تابع ورودی ویژهٔ \fBscrollback\-push\fP \%<#\:special-input-functions-scrollback-push> و در درون ترمینال‌هایی که قابلیت click_events در OSC 133 را پیاده‌سازی کرده‌اند، استفاده می‌شود. T} _ T{ \fB\ee[ \ex20 q\fP T} T{ Se T} T{ بازنشانی سبک مکان‌نما به مقدار پیش‌فرض ترمینال. این مورد در حال حاضر استفاده نمی‌شود اما ممکن است در آینده به کار گرفته شود. T} _ T{ \fB\ee[ Ps \ex20 q\fP T} T{ Ss T} T{ تنظیم سبک مکان‌نما (DECSCUSR)؛ مقدار Ps برای شکل‌های بلوکی، زیرخط یا خط عمودی برابر ۲، ۴ یا ۶ است. T} _ T{ \fB\ee[ Ps q\fP T} T{ n/a T} T{ درخواست نام و نسخهٔ ترمینال (XTVERSION). این مورد صرفاً برای راهکارهای موقت سازگاری با ترمینال‌های ناسازگار استفاده می‌شود. T} _ T{ \fB\ee[?25h\fP T} T{ cvvis T} T{ فعال‌سازی قابلیت رؤیت مکان‌نما (DECTCEM). T} _ T{ \fB\ee[?1004h\fP T} T{ n/a T} T{ فعال‌سازی گزارش فوکوس (Focus Reporting). T} _ T{ \fB\ee[?1004l\fP T} T{ n/a T} T{ غیرفعال‌سازی گزارش فوکوس. T} _ T{ \fB\ee[?1049h\fP T} T{ n/a T} T{ فعال‌سازی بافر صفحهٔ جایگزین (Alternate screen buffer). T} _ T{ \fB\ee[?1049l\fP T} T{ n/a T} T{ غیرفعال‌سازی بافر صفحهٔ جایگزین. T} _ T{ \fB\ee[?2004h\fP T} T{ T} T{ فعال‌سازی چسباندن محصور (Bracketed paste). T} _ T{ \fB\ee[?2004l\fP T} T{ T} T{ غیرفعال‌سازی چسباندن محصور. T} _ T{ \fB\ee[?2031h\fP T} T{ T} T{ فعال‌سازی گزارش ناخواستهٔ تم رنگی \%\&. در صورت فعال بودن، ترمینال باید هر زمان که تم رنگی‌اش تغییر کرد، توالی \fB\ee[?997;1n\fP یا \fB\ee[?997;2n\fP را ارسال کند. این کار باعث می‌شود fish برای رنگ پس‌زمینه پرس‌وجو کند\&. T} _ T{ \fB\ee[?2031l\fP T} T{ T} T{ غیرفعال‌سازی گزارش ناخواستهٔ تم رنگی. T} _ T{ \fB\ee]0; Pt \ee\e\e\fP T} T{ ts T} T{ تنظیم عنوان پنجرهٔ ترمینال (OSC 0). در \fBfish_title\fP استفاده می‌شود\&. T} _ T{ \fB\ee]1; Pt \ee\e\e\fP T} T{ ts T} T{ تنظیم عنوان تب ترمینال (OSC 1). در \fBfish_tab_title\fP استفاده می‌شود\&. T} _ T{ \fB\ee]7;file:// Pt / Pt \ee\e\e\fP T} T{ T} T{ گزارش دایرکتوری کاری (OSC 7). از آنجا که ترمینال ممکن است روی سیستمی متفاوت از پوسته (از راه دور) اجرا شود، نام میزبان (پارامتر اول) \fBlocalhost\fP \fIنخواهد بود\fP\&. T} _ T{ \fB\ee]8;; Pt \ee\e\e\fP T} T{ T} T{ ایجاد یک ابرپیوند (OSC 8) \%\&. این مورد در صفحات راهنمای fish استفاده می‌شود. T} _ T{ \fB\ee]11;?\ee\e\e\fP T} T{ n/a T} T{ پرس‌وجوی رنگ پس‌زمینه. .sp یک پاسخ معتبر به فرم \fB\ee]11;rgb: Pt / Pt / Pt \ee\e\e\fP یا \fB\ee]11;rgba: Pt / Pt / Pt / Pt\ee\e\e\fP خواهد بود که در آن سه پارامتر اول هرکدام شامل یک تا چهار رقم هگزادسیمال هستند که مؤلفه‌های قرمز، آبی و سبز را نشان می‌دهند. .sp این توالی برای مقداردهی \fBfish_terminal_color_theme\fP \%<#\:envvar-fish_terminal_color_theme> استفاده می‌شود، که برای انتخاب یک گونهٔ تم \%<#\:fish-config-theme-files> بهینه‌سازی‌شده برای تم رنگی ترمینال به کار می‌رود. T} _ T{ \fB\ee]52;c; Pt \ee\e\e\fP T} T{ T} T{ کپی به کلیپ‌بورد (OSC 52). در \fBfish_clipboard_copy\fP استفاده می‌شود\&. T} _ T{ \fB\ee]133;A; click_events=1\ee\e\e\fP T} T{ T} T{ علامت‌گذاری آغاز خط فرمان (OSC 133)، با افزونهٔ \fBclick_events\fP ترمینال kitty. افزونهٔ \fBclick_events\fP با فرض در دسترس بودن گزارش موقعیت مکان‌نما، کلیک‌های ماوس را قادر می‌سازد مکان‌نما را جابه‌جا کرده یا آیتم‌های صفحه‌بند (pager) را انتخاب کنند. T} _ T{ \fB\ee]133;B\ee\e\e\fP T} T{ T} T{ علامت‌گذاری پایان خط فرمان (OSC 133). T} _ T{ \fB\ee]133;C; cmdline_url= Pt \ee\e\e\fP T} T{ T} T{ علامت‌گذاری آغاز دستور (OSC 133)، با افزونهٔ \fBcmdline_url\fP ترمینال kitty که پارامتر آن خط فرمان کدگذاری‌شده به‌صورت URL است. T} _ T{ \fB\ee]133;D; Ps \ee\e\e\fP T} T{ T} T{ علامت‌گذاری پایان دستور (OSC 133)؛ پارامتر Ps وضعیت خروج است. T} _ T{ \fB\eeP+q Pt \ee\e\e\fP T} T{ T} T{ درخواست قابلیت terminfo (XTGETTCAP). پارامتر آن کد terminfo کدگذاری‌شده به‌صورت هگزادسیمالِ قابلیت مورد نظر است. .sp پاسخ باید به فرم \fB\eeP1+q Pt \ee\e\e\fP (\(dqboolean\(dq) یا \fB\eeP1+q Pt = Pt \ee\e\e\fP (\(dqstring\(dq) باشد. در هر دو حالت، پارامتر اول باید مشابه پارامتر درخواست باشد. .sp پوستهٔ fish قابلیت‌های رشته‌ای زیر را استعلام می‌کند: .br \(bu \fBindn\fP: پارامتر دوم پاسخ نادیده گرفته می‌شود. .br \(bu \fBquery\-os\-name\fP (برای status terminal\-os \%<#\:status-terminal-os>): ترمینال‌هایی که روی یونیکس اجرا می‌شوند باید مقدار هگزادسیمالِ \fB$(uname \-s)\fP را به‌عنوان پارامتر دوم بازگردانند. T} .TE .SH "دستورات DCS و گنو اسکرین (DCS COMMANDS AND GNU SCREEN)" .sp تجزیهٔ DCS اختیاری است، زیرا fish قبل از چاپ هرگونه دستور DCS، موقتاً به بافر صفحهٔ جایگزین جابه‌جا می‌شود. با این حال، از آنجا که GNU screen به‌طور پیش‌فرض اجازهٔ روشن کردن بافر صفحهٔ جایگزین را نمی‌دهد، و همچنین با دستورات DCS به‌شکل سازگار رفتار نمی‌کند، خط فرمان اولیهٔ fish ممکن است با بار دادهٔ DCS مانند \fB+q696e646e\fP مخدوش شود\&. در حال حاضر، fish با بررسی وجود متغیر محیطی \fBSTY\fP این مشکل را دور می‌زند. اگر این روش بنا به دلایلی کارساز نبود، می‌توانید این تنظیم را به \fB~/.screenrc\fP خود اضافه کنید: .INDENT 0.0 .INDENT 3.5 .sp .EX altscreen on .EE .UNINDENT .UNINDENT .sp یا این قطعه کد را به \fBconfig.fish\fP خود بیفزایید: .INDENT 0.0 .INDENT 3.5 .sp .EX function GNU\-screen\-workaround \-\-on\-event fish_prompt commandline \-f repaint functions \-\-erase GNU\-screen\-workaround end .EE .UNINDENT .UNINDENT .SH "نقاط کد یونیکد (UNICODE CODEPOINTS)" .sp به‌طور پیش‌فرض، fish نویسه‌های غیر ASCII زیر را خروجی می‌دهد: .INDENT 0.0 .INDENT 3.5 .sp .EX × ► ¶ ⏎ • ● … μ ’ ‘ “ ” .EE .UNINDENT .UNINDENT .sp و همچنین تصاویر کنترلی (U+2400 تا U+241F)، و نویسه‌های خاص هر محلی (locale) در پیام‌های ترجمه‌شده \%<#\:variables-locale>\&. .SH "نویسندگان (AUTHORS)" توسعه‌دهندگان fish-shell .SH "حق نشر (COPYRIGHT)" توسعه‌دهندگان fish-shell .SH "همچنین ببینید (SEE ALSO)" .BR fish (1) .\" End of generated man page.