.\" 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 "kitten-hints" 1 "Jul 30, 2026" "0.48.2" "kitty" .SH "نام (NAME)" kitten-hints \- انتخاب متن از صفحه نمایش با صفحه‌کلید .SH "نمای کلی (OVERVIEW)" .sp ترمینال \fIkitty\fP دارای یک «حالت راهنما» (\fIhints mode\fP) است که امکان انتخاب قطعات متنی دلخواه نمایان روی صفحه و انجام عملیات روی آن‌ها را فراهم می‌کند. برای نمونه، می‌توانید کلیدهای \fBctrl+shift+e\fP \%<#\:shortcut-kitty\:.Open-URL> را بفشارید تا هر نشانی اینترنتی (URL) نمایان روی صفحه را انتخاب کرده و آن را در مرورگر وب پیش‌فرض خود باز کنید. .INDENT 0.0 .INDENT 2.5 حالت راهنمای URL (تصاویر پشتیبانی نمی‌شوند) .UNINDENT .UNINDENT .sp به همین ترتیب، می‌توانید کلیدهای \fBctrl+shift+p>f\fP \%<#\:shortcut-kitty\:.Insert-selected-path> را فشار دهید تا هر متنی که شبیه به یک مسیر یا نام فایل است انتخاب شده و درون ترمینال درج گردد؛ این ویژگی برای انتخاب فایل‌ها از خروجی دستورات \fBgit\fP یا \fBls\fP و افزودن آن‌ها به خط فرمان برای دستور بعدی بسیار کاربردی است. .sp شما همچنین می‌توانید کلیدهای \fBctrl+shift+p>n\fP \%<#\:shortcut-kitty\:.Open-the-selected-file-at-the-selected-line> را بفشارید تا هر متنی که شبیه به یک مسیر یا نام فایل همراه با دونقطه و شماره خط است انتخاب شود و فایل مربوطه در ویرایشگر پیش‌فرض شما در همان شماره خط باز شود (باز شدن در شماره خط تنها زمانی کار می‌کند که ویرایشگر شما از نحو خط فرمان +linenum پشتیبانی کند یا یک ویرایشگر شناخته‌شده باشد). الگوها و ویرایشگر مورد استفاده را می‌توان با گزینه‌های ارسالی به این kitten تغییر داد. برای مثال: .INDENT 0.0 .INDENT 3.5 .sp .EX map ctrl+g kitten hints \-\-type=linenum \-\-linenum\-action=tab nvim +{line} {path} .EE .UNINDENT .UNINDENT .sp با فشردن کلیدهای \fBCtrl\fP+\fBG\fP، فایل انتخاب‌شده را در یک برگه جدید درون Neovim \% باز خواهد کرد. .sp فشردن کلیدهای \fBctrl+shift+p>y\fP \%<#\:shortcut-kitty\:.Open-the-selected-hyperlink> موجب باز شدن ابرپیوندها (hyperlinks) \%<#\:term-hyperlinks> می‌شود؛ یعنی نشانی‌های اینترنتی که توسط برنامه در حال اجرا در ترمینال بدین صورت نشانه‌گذاری شده‌اند، مانند خروجی دستور \fBls \-\-hyperlink=auto\fP\&. اگر دستور \fBls\fP همراه سیستم‌عامل شما از ابرپیوند پشتیبانی نمی‌کند، ممکن است نیاز به نصب GNU Coreutils \% داشته باشید. .sp شما همچنین می‌توانید تعیین کنید که برای انواع مختلف نشانی‌های اینترنتی چه اقداماتی انجام شود \%<>\&. .sp \fBنکته:\fP .INDENT 0.0 .INDENT 3.5 اگر تعداد راهنماها از تعداد حروف الفبا بیشتر باشد، از چندین حرف ترکیبی استفاده خواهد شد. در این حالت، هنگامی که نخستین حرف را می‌فشارید، فقط راهنماهایی که با آن حرف آغاز می‌شوند نمایش می‌یابند. با فشردن حرف دوم، آن راهنما انتخاب می‌شود، یا با فشردن \fBEnter\fP یا \fBSpace\fP می‌توانید راهنمای خالی را انتخاب کنید. .UNINDENT .UNINDENT .sp برای علاقه‌مندان به ماوس، برنامه hints kitten به شما امکان می‌دهد به‌جای تایپ نویسه راهنما، روی متن منطبق کلیک کنید تا انتخاب شود. .sp برنامه hints kitten بسیار قدرتمند است؛ برای مشاهده راهنمای تفصیلی درباره گزینه‌های گوناگون و حالت‌های عملکرد آن، بخش‌های زیر را مطالعه کنید. می‌توانید از این گزینه‌ها برای ایجاد کلیدهای میانبر در \fBkitty.conf\fP جهت انتخاب انواع مختلف قطعات متنی استفاده نمایید. برای نمونه‌ها به \fBinsert_selected_path\fP \%<#\:shortcut-kitty\:.Insert-selected-path> مراجعه کنید. .SH "سفارشی‌سازی کامل تطبیق و اقدامات برنامه (CUSTOMIZING HINTS)" .sp برنامه hints kitten از نگارش اسکریپت‌های ساده پایتون پشتیبانی می‌کند که می‌توان از آن‌ها برای سفارشی‌سازی کامل شیوه یافتن موارد منطبق و نحوه واکنش پس از انتخاب آن‌ها استفاده کرد. این کار به hints kitten اجازه می‌دهد تا رابط کاربری را ارائه دهد، در حالی که شما منطق مربوط به یافتن موارد منطبق و انجام اقدام روی آن‌ها را تعیین می‌کنید. این موضوع با یک مثال به بهترین شکل نشان داده می‌شود. فایلی به نام \fBcustom\-hints.py\fP در پوشه پیکربندی kitty \%<#\:confloc> با محتویات زیر ایجاد کنید: .INDENT 0.0 .INDENT 3.5 .sp .EX import re def mark(text, args, Mark, extra_cli_args, *a): # این تابع مسئول یافتن تمام متن‌های منطبق است # extra_cli_args آرگومان‌های اضافی ارسالی در خط فرمان هنگام فراخوانی kitten هستند # تمام کلمات منفرد را برای انتخاب احتمالی علامت‌گذاری می‌کنیم for idx, m in enumerate(re.finditer(r\(aq\ew+\(aq, text)): start, end = m.span() mark_text = text[start:end].replace(\(aq\en\(aq, \(aq\(aq).replace(\(aq\e0\(aq, \(aq\(aq) # دیکشنری خالی زیر به صورت groupdicts در handle_result() در دسترس خواهد بود # و می‌تواند شامل کلیدهای رشته‌ای و مقادیر قابل سریال‌سازی JSON باشد yield Mark(idx, start, end, mark_text, {}) def handle_result(args, data, target_window_id, boss, extra_cli_args, *a): # این تابع مسئول انجام اقدام روی متن انتخاب‌شده است # matches فهرستی از ورودی‌های انتخاب‌شده است و groupdicts داده‌های # مرتبط با هر ورودی در تابع mark() بالا را در بر دارد matches, groupdicts = [], [] for m, g in zip(data[\(aqmatch\(aq], data[\(aqgroupdicts\(aq]): if m: matches.append(m), groupdicts.append(g) for word, match_data in zip(matches, groupdicts): # جستجوی کلمه در واژه‌نامه، تابع open_url نشانی داده‌شده را # در مرورگر سیستم باز می‌کند boss.open_url(f\(aqhttps://www.google.com/search?q=define:{word}\(aq) .EE .UNINDENT .UNINDENT .sp سپس kitty را با دستور زیر اجرا کنید: .INDENT 0.0 .INDENT 3.5 .sp .EX kitty \-o \(aqmap f1 kitten hints \-\-customize\-processing custom\-hints.py\(aq .EE .UNINDENT .UNINDENT .sp هنگامی که کلید \fBF1\fP را فشار می‌دهید، می‌توانید کلمه‌ای را انتخاب کرده تا در واژه‌نامه گوگل جستجو شود. .SH "کد منبع برنامه (SOURCE CODE)" .sp کد منبع این kitten در گیت‌هاب موجود است \%\&. .SH "رابط خط فرمان (COMMAND LINE INTERFACE)" .INDENT 0.0 .INDENT 3.5 .sp .EX kitten hints [options] .EE .UNINDENT .UNINDENT .sp انتخاب متن از صفحه نمایش با استفاده از صفحه‌کلید. به طور پیش‌فرض برای یافتن نشانی‌های اینترنتی (URL) جستجو می‌کند. .SS "گزینه‌ها (OPTIONS)" .INDENT 0.0 .TP .B \-\-program برنامه‌ای که برای باز کردن متن منطبق استفاده می‌شود. به طور پیش‌فرض بر اساس برنامه پیش‌فرض سیستم‌عامل عمل می‌کند. مقادیر ویژه متعددی پشتیبانی می‌شوند: .INDENT 7.0 .TP .B \fB\-\fP چسباندن متن منطبق در پنجره ترمینال. .TP .B \fB@\fP رونوشت متن منطبق به کلیپ‌بورد. .TP .B \fB*\fP رونوشت متن منطبق به بخش گزینش اولیه (primary selection، در سیستم‌هایی که از آن پشتیبانی می‌کنند). .TP .B \fB@NAME\fP رونوشت متن منطبق به بافر مشخص‌شده، مانند \fB@a\fP .TP .B \fBdefault\fP اجرای برنامه پیش‌فرض بازگشایی. توجه داشته باشید هنگام استفاده از \fB\-\-type\fP با مقدار hyperlink، مقدار پیش‌فرض استفاده از قابلیت‌های مدیریت هایپرلینک کیتی \%<> است. .TP .B \fBlaunch\fP اجرای دستور launch \%<> برای باز کردن برنامه در یک برگه، پنجره یا لایه رویی جدید در کیتی. برای مثال: .INDENT 7.0 .INDENT 3.5 .sp .EX \-\-program \(dqlaunch \-\-type=tab vim\(dq .EE .UNINDENT .UNINDENT .UNINDENT .sp می‌تواند چندین بار برای اجرای چند برنامه مشخص شود. .UNINDENT .INDENT 0.0 .TP .B \-\-type نوع متن برای جستجو. مقدار \fBlinenum\fP ویژه است؛ این گزینه با استفاده از الگوی مشخص‌شده در \fB\-\-regex\fP که باید شامل گروه‌های نام‌گذاری‌شده \fBpath\fP و \fBline\fP باشد، به دنبال پیام‌های خطا می‌گردد. در صورت عدم تعیین، به دنبال \fBpath:line\fP خواهد گشت. گزینه \fB\-\-linenum\-action\fP تعیین می‌کند پیام خطای انتخاب‌شده کجا نمایش یابد؛ سایر گزینه‌ها نادیده گرفته می‌شوند. پیش‌فرض: \fBurl\fP انتخاب‌ها: \fBhash\fP, \fBhyperlink\fP, \fBip\fP, \fBline\fP, \fBlinenum\fP, \fBpath\fP, \fBregex\fP, \fBurl\fP, \fBword\fP .UNINDENT .INDENT 0.0 .TP .B \-\-regex عبارت باقاعده (Regex) مورد استفاده زمانی که گزینه \fB\-\-type\fP روی \fBregex\fP تنظیم شده باشد، با نحو پرل ۵ (Perl 5). اگر یک گروه شماره‌گذاری‌شده در عبارت باقاعده مشخص کنید، تنها همان گروه تطبیق داده خواهد شد. این ویژگی امکان تطبیق متن با نادیده‌گرفتن پیشوند/پسوند را در صورت نیاز فراهم می‌کند. عبارت پیش‌فرض کل سطرها را مطابقت می‌دهد. برای تطبیق متن روی چند سطر، پایان خط‌ها دنباله‌ای از صفر یا چند بایت null به همراه یک بازگشت به سر سطر (CR) یا خط جدید (LF) هستند؛ برای تطبیق روی پایان خطوط باید دسته کاراکتری \fB[\e0\er\en]\fP را تطبیق دهید. خطوط جدید و بایت‌های null به طور خودکار از متن استخراج‌شده حذف می‌شوند. اگر گروه‌های نام‌گذاری‌شده و یک \fB\-\-program\fP را مشخص کنید، آرگومان‌هایی متناظر با هر گروه نام‌گذاری‌شده در قالب \fBkey=value\fP به برنامه ارسال خواهند شد. پیش‌فرض: \fB(?m)^\es*(.+?)\es*$\fP .UNINDENT .INDENT 0.0 .TP .B \-\-linenum\-action محل انجام اقدام روی خطاهای منطبق. مقدار \fBself\fP پنجره جاری، \fBwindow\fP یک پنجره جدید kitty، \fBtab\fP یک برگه جدید، \fBos_window\fP یک پنجره جدید سیستم‌عامل و \fBbackground\fP اجرای دستور در پس‌زمینه است. مقدار \fBremote\-control\fP شبیه به پس‌زمینه عمل می‌کند اما برنامه می‌تواند بدون نیاز به فعال‌سازی سراسری کنترل از راه دور، از کنترل از راه دور kitty استفاده کند. اقدام واقعی همان آرگومان‌های ارائه‌شده به kitten است؛ برای مثال: \fBkitten hints \-\-type=linenum \-\-linenum\-action=tab vim +{line} {path}\fP مسیر منطبق را در شماره خط مربوطه در برنامه vim درون یک برگه جدید باز می‌کند. توجه کنید برای استفاده از \fB\-\-program\fP جهت کپی یا پیست آرگومان‌های ارائه‌شده، باید از مقدار ویژه \fBself\fP استفاده نمایید. پیش‌فرض: \fBself\fP انتخاب‌ها: \fBbackground\fP, \fBos_window\fP, \fBremote\-control\fP, \fBself\fP, \fBtab\fP, \fBwindow\fP .UNINDENT .INDENT 0.0 .TP .B \-\-url\-prefixes فهرست پیشوندهای شناخته‌شده نشانی‌های اینترنتی جدا شده با کاما. پیش‌فرض آن فهرستی از پیشوندها است که با گزینه \fBurl_prefixes\fP \%<#\:opt-kitty\:.url_prefixes> در \fBkitty.conf\fP تعریف شده است. پیش‌فرض: \fBdefault\fP .UNINDENT .INDENT 0.0 .TP .B \-\-url\-excluded\-characters نویسه‌هایی که هنگام تطبیق URLها باید نادیده گرفته شوند. به طور پیش‌فرض همان فهرست کاراکترهای مشخص‌شده در گزینه \fBurl_excluded_characters\fP \%<#\:opt-kitty\:.url_excluded_characters> در \fBkitty.conf\fP است. نحو این گزینه دقیقاً مشابه \fBurl_excluded_characters\fP \%<#\:opt-kitty\:.url_excluded_characters> است. پیش‌فرض: \fBdefault\fP .UNINDENT .INDENT 0.0 .TP .B \-\-word\-characters نویسه‌هایی که بخشی از یک کلمه در نظر گرفته می‌شوند. علاوه بر این، تمامی نویسه‌هایی که در پایگاه داده یونیکد الفبانمایی (alphanumeric) علامت‌گذاری شده‌اند به عنوان نویسه کلمه تلقی خواهند شد. پیش‌فرض از گزینه \fBselect_by_word_characters\fP \%<#\:opt-kitty\:.select_by_word_characters> در \fBkitty.conf\fP استفاده می‌کند. .UNINDENT .INDENT 0.0 .TP .B \-\-minimum\-match\-length حداقل تعداد نویسه‌ها برای اینکه یک تطابق به حساب آید. پیش‌فرض: \fB3\fP .UNINDENT .INDENT 0.0 .TP .B \-\-multiple [=no] انتخاب چند مورد منطبق و انجام اقدام روی تمامی آن‌ها به صورت همزمان در پایان. در این حالت، برای اتمام انتخاب کلید \fBEsc\fP را فشار دهید. .UNINDENT .INDENT 0.0 .TP .B \-\-multiple\-joiner رشته الحاق‌کننده برای پیوند دادن چندین مورد انتخاب‌شده هنگام رونوشت به کلیپ‌بورد یا درج در ترمینال. مقادیر ویژه عبارتند از: \fBspace\fP \- یک نویسه فاصله، \fBnewline\fP \- یک خط جدید، \fBempty\fP \- الحاق‌کننده خالی، \fBjson\fP \- یک فهرست سریال‌سازی‌شده در قالب JSON، و \fBauto\fP \- انتخاب خودکار بر اساس نوع متن انتخاب‌شده. علاوه بر این، اعداد صحیح به عنوان نمایه‌های مبتنی بر صفر در فهرست موارد انتخاب‌شده تفسیر می‌شوند. می‌توانید از \fB0\fP برای اولین مورد و \fB\-1\fP برای آخرین مورد استفاده کنید. پیش‌فرض: \fBauto\fP .UNINDENT .INDENT 0.0 .TP .B \-\-add\-trailing\-space افزودن فاصله پایانی پس از متن منطبق. پیش‌فرض روی \fBauto\fP است که در صورت استفاده همراه با \fB\-\-multiple\fP فاصله اضافه می‌کند. پیش‌فرض: \fBauto\fP انتخاب‌ها: \fBalways\fP, \fBauto\fP, \fBnever\fP .UNINDENT .INDENT 0.0 .TP .B \-\-hints\-offset میزان آفست (از صفر) که شماره‌گذاری راهنماها از آن آغاز می‌شود. توجه داشته باشید فقط اعداد بزرگتر یا مساوی صفر لحاظ می‌گردند. پیش‌فرض: \fB1\fP .UNINDENT .INDENT 0.0 .TP .B \-\-prefix\-free [=no] تولید برچسب‌های راهنما به گونه‌ای که هیچ راهنمایی پیشوند راهنمای دیگر نباشد. برای نمونه، با الفبای \(dqabc\(dq و ۴ تطابق، راهنماها \(dqb\(dq، \(dqc\(dq، \(dqaa\(dq، \(dqab\(dq خواهند بود به‌جای \(dqa\(dq، \(dqb\(dq، \(dqc\(dq، \(dqaa\(dq (که در آن \(dqa\(dq پیشوند \(dqaa\(dq است). این کار با اعمال یک آفست پویا به اندازه کافی بزرگ انجام می‌شود تا راهنماها بدون پیشوند تکراری باشند. هنگام ترکیب با \fB\-\-hints\-offset\fP بزرگتر از ۰، آفست موثر هرکدام که بزرگتر باشد در نظر گرفته خواهد شد. .UNINDENT .INDENT 0.0 .TP .B \-\-alphabet فهرست نویسه‌های مورد استفاده برای برچسب‌های راهنما. حالت پیش‌فرض استفاده از ارقام و حروف کوچک انگلیسی است. ترجیح خود را به عنوان رشته‌ای از کاراکترها مشخص کنید. توجه داشته باشید که برای استفاده از نخستین نویسه برای هایلایت اولین تطابق، باید \fB\-\-hints\-offset\fP را صفر تعیین کنید، در غیر این صورت به طور پیش‌فرض از نویسه دوم آغاز خواهد شد. .UNINDENT .INDENT 0.0 .TP .B \-\-ascending [=no] افزایش صعودی راهنماها از بالا به پایین، به‌جای کاهش نزولی از بالا به پایین. .UNINDENT .INDENT 0.0 .TP .B \-\-hints\-foreground\-color رنگ پیش‌زمینه برای برچسب‌های راهنما. می‌توانید از نام‌های رنگ یا مقادیر هگز استفاده کنید. برای هشت رنگ نام‌گذاری‌شده اصلی ترمینال می‌توانید از پیشوند \fBbright\-\fP نیز برای دریافت گونه روشن‌تر رنگ استفاده کنید. پیش‌فرض: \fBblack\fP .UNINDENT .INDENT 0.0 .TP .B \-\-hints\-background\-color رنگ پس‌زمینه برای برچسب‌های راهنما. می‌توانید از نام‌های رنگ یا مقادیر هگز استفاده نمایید. برای هشت رنگ نام‌گذاری‌شده اصلی ترمینال می‌توانید از پیشوند \fBbright\-\fP برای دریافت گونه روشن‌تر رنگ استفاده کنید. پیش‌فرض: \fBgreen\fP .UNINDENT .INDENT 0.0 .TP .B \-\-hints\-text\-color رنگ پیش‌زمینه برای متنی که توسط راهنماها به آن اشاره شده است (به استثنای خود برچسب راهنما). می‌توانید از نام‌های رنگ یا مقادیر هگز استفاده کنید. برای هشت رنگ اصلی ترمینال می‌توانید از پیشوند \fBbright\-\fP برای نوع روشن استفاده کنید. حالت پیش‌فرض گزینش خودکار یک رنگ مناسب است. پیش‌فرض: \fBauto\fP .UNINDENT .INDENT 0.0 .TP .B \-\-hints\-text\-background\-color رنگ پس‌زمینه برای متنی که توسط راهنماها به آن اشاره شده است (به استثنای برچسب راهنما). می‌توانید از نام‌های رنگ یا مقادیر هگز استفاده نمایید. برای هشت رنگ اصلی ترمینال می‌توانید از پیشوند \fBbright\-\fP برای گونه روشن استفاده کنید. حالت پیش‌فرض انتخاب رنگ مناسب به صورت خودکار است. پیش‌فرض: \fBauto\fP .UNINDENT .INDENT 0.0 .TP .B \-\-customize\-processing نام یک فایل پایتون در دایرکتوری پیکربندی kitty که برای ارائه پیاده‌سازی‌های سفارشی جهت الگویابی و انجام اقدامات روی موارد منطبقِ انتخاب‌شده ایمپورت می‌شود. همچنین می‌توانید مسیرهای مطلق را برای بارگذاری اسکریپت از سایر مسیرها مشخص کنید. برای جزئیات به \% مراجعه فرمایید. .UNINDENT .INDENT 0.0 .TP .B \-\-window\-title عنوان پنجره راهنما؛ عنوان پیش‌فرض بر اساس نوع متن در حال راهنمایی تعیین می‌شود. .UNINDENT .sp \fBنکته:\fP .INDENT 0.0 .INDENT 3.5 برای جلوگیری از لزوم تعیین مکرر گزینه‌های یکسان خط فرمان در هر فراخوانی، می‌توانید از گزینه \fBaction_alias\fP \%<#\:opt-kitty\:.action_alias> در فایل \fBkitty.conf\fP استفاده کرده و نام‌های مستعاری دارای مجموعه‌ای مشترک از گزینه‌ها بسازید. برای نمونه: .INDENT 0.0 .INDENT 3.5 .sp .EX action_alias myhints kitten hints \-\-alphabet qfjdkslaureitywovmcxzpq1234567890 map f1 myhints \-\-customize\-processing custom\-hints.py .EE .UNINDENT .UNINDENT .UNINDENT .UNINDENT .SH "نویسنده (AUTHOR)" Kovid Goyal .SH "حق نشر (COPYRIGHT)" 2026, Kovid Goyal .\" End of generated man page.