footclient(1) General Commands Manual footclient(1)

footclient - راه‌اندازی ترمینال‌های جدید در کارگزار foot

footclient [OPTIONS]
footclient [OPTIONS] <command> [COMMAND OPTIONS]

تمامی آرگومان‌های انتهایی (غیر از گزینه‌ها) به عنوان دستوری برای اجرا (به جای شل پیش‌فرض) و آرگومان‌های آن در نظر گرفته می‌شوند.

ابزار footclient همراه با دستور foot(1) در حالت --server استفاده می‌شود.

اجرای آن بدون هیچ آرگومانی یک پنجره ترمینال جدید (به میزبانی کارگزار foot) با شل پیش‌فرض شما باز می‌کند. کد خروج آن برابر با کد خروج ترمینال خواهد بود؛ یعنی footclient تا زمان پایان یافتن ترمینال خارج نمی‌شود.

-t,--term=TERM

مقداری که متغیر محیطی TERM روی آن تنظیم می‌شود (بخش‌های TERMINFO و محیط (ENVIRONMENT) را ببینید). پیش‌فرض: foot.

-T,--title=TITLE

عنوان اولیه پنجره. پیش‌فرض: foot.

-a,--app-id=ID

مقداری که ویژگی app-id پنجره وی‌لند روی آن تنظیم می‌شود. پیش‌فرض: foot (حالت عادی) یا footclient (حالت کارگزار).

--class=ID

نام مستعار برای --app-id.

toplevel-tag=TAG

مقداری که ویژگی toplevel-tag پنجره وی‌لند روی آن تنظیم می‌شود. کامپوزیتور می‌تواند از این مقدار برای مدیریت نشست، قوانین پنجره و غیره استفاده کند. پیش‌فرض: تنظیم‌نشده

-w,--window-size-pixels=WIDTHxHEIGHT

تنظیم عرض و ارتفاع اولیه پنجره بر حسب پیکسل. پیش‌فرض: 700x500.

-W,--window-size-chars=WIDTHxHEIGHT

تنظیم عرض و ارتفاع اولیه پنجره بر حسب نویسه‌ها. پیش‌فرض: تنظیم‌نشده.

-m,--maximized

شروع در حالت بیشینه (maximized). اگر هر دو گزینه --maximized و --fullscreen مشخص شوند، گزینه آخر اولویت خواهد داشت.

-F,--fullscreen

شروع در حالت تمام‌صفحه (fullscreen). اگر هر دو گزینه --maximized و --fullscreen مشخص شوند، گزینه آخر اولویت خواهد داشت.

-L,--login-shell

شروع یک شل ورود (login shell) با افزودن نویسه '-' به ابتدای argv[0].

-D,--working-directory=DIR

دایرکتوری کاری اولیه برای برنامه کلاینت. پیش‌فرض: دایرکتوری کاری جاری footclient.

-s,--server-socket=PATH

اتصال به مسیر PATH به جای $XDG_RUNTIME_DIR/foot-$WAYLAND_DISPLAY.sock.

-H,--hold

باز ماندن پنجره پس از خروج فرایند فرزند.

-N,--no-wait

جدا کردن فرایند کلاینت از ترمینال در حال اجرا و خروج فوری.

-o,--override=[SECTION.]KEY=VALUE

بازنویسی گزینه‌ای که در فایل پیکربندی تنظیم شده است. اگر SECTION مشخص نشود، پیش‌فرض main خواهد بود.

-E,--client-environment

فرایند فرزند در نمونه جدید ترمینال به جای محیط کارگزار، از محیط footclient استفاده خواهد کرد.

متغیرهای محیطی فهرست‌شده در بخش متغیرهای تنظیم‌شده در فرایند فرزند توسط کارگزار foot بازنویسی خواهند شد. برای نمونه، ترمینال جدید از TERM پیکربندی استفاده خواهد کرد، نه از محیط footclient.

-d,--log-level={info,warning,error,none}

سطح ثبت گزارش (log)، که هم برای خروجی گزارش روی stderr و هم برای syslog استفاده می‌شود. پیش‌فرض: warning.

-l,--log-colorize=[{never,always,auto}]

فعال‌سازی یا غیرفعال‌سازی رنگ‌آمیزی خروجی گزارش روی stderr.

-v,--version

نمایش شماره نسخه و خروج

-e

نادیده گرفته می‌شود؛ جهت سازگاری با xterm -e. برای جزئیات بیشتر foot(1) را ببینید.

اگر در خود footclient خطایی رخ دهد (برای نمونه، سوکت سرور وجود نداشته باشد)، با کد 220 خارج می‌شود.

در صورت استفاده از -N,--no-wait، به محض اینکه به کارگزار foot دستور باز کردن یک پنجره جدید داده شود، footclient با کد 0 خارج می‌شود.

در غیر این صورت، footclient ممکن است با کد 230 نیز خارج شود. این مقدار نشان‌دهنده بروز خطا در کارگزار foot است.

در تمام موارد دیگر کد خروج برابر با کد خروج برنامه کلاینت (یعنی همان شل) خواهد بود.

برنامه‌های کلاینت از شناسه terminfo که توسط متغیر محیطی TERM (تنظیم‌شده توسط foot) مشخص می‌شود، برای تعیین قابلیت‌های ترمینال استفاده می‌کنند.

ترمینال Foot دارای دو تعریف terminfo است: foot و foot-direct، که foot پیش‌فرض است.

تفاوت این دو در تعداد رنگ‌هایی است که توصیف می‌کنند؛ foot تعداد ۲۵۶ رنگ و foot-direct تعداد ۱۶.۷ میلیون رنگ (رنگ واقعی ۲۴ بیتی) را توصیف می‌کند.

توجه داشته باشید که استفاده از terminfo مربوط به foot تعداد رنگ‌های قابل استفاده را به ۲۵۶ محدود نمی‌کند؛ برنامه‌ها همچنان می‌توانند از رنگ‌های ۲۴ بیتی RGB استفاده کنند. در واقع، بیشتر برنامه‌ها با foot به بهترین شکل کار می‌کنند (از جمله رنگ‌های ۲۴ بیتی). استفاده از مدخل‌های terminfo با فرمت *-direct حتی ممکن است باعث کرش کردن برخی برنامه‌های ncurses شود.

با این حال، برنامه‌هایی وجود دارند که برای پشتیبانی از ۲۴ بیتی به مدخل terminfo از نوع *-direct نیاز دارند؛ Emacs یک نمونه از آن‌ها است.

اگرچه استفاده از foot یا foot-direct قویاً توصیه می‌شود، اما امکان استفاده از مواردی مانند xterm-256color نیز وجود دارد. این مورد می‌تواند هنگام اتصال از راه دور به سیستمی که مدخل‌های terminfo مربوط به foot به راحتی روی آن قابل نصب نیستند، سودمند باشد.

توجه داشته باشید که مدخل‌های terminfo می‌توانند در دایرکتوری خانگی کاربر نصب شوند. بدین معنا که اگر دسترسی ریشه ندارید، یا اگر در توزیع شما بسته‌ای برای مدخل‌های terminfo مربوط به foot وجود ندارد، می‌توانید مدخل‌های terminfo مربوط به foot را با رونوشت گرفتن از foot و foot-direct در مسیر ~/.terminfo/f/ به صورت دستی نصب کنید.

XDG_RUNTIME_DIR

برای ساخت مسیر پیش‌فرض PATH برای گزینه --server-socket، در صورتی که آرگومان صریحی ارائه نشده باشد استفاده می‌شود (بالا را ببینید).

WAYLAND_DISPLAY

برای ساخت مسیر پیش‌فرض PATH برای گزینه --server-socket، در صورتی که آرگومان صریحی ارائه نشده باشد استفاده می‌شود (بالا را ببینید).

اگر سوکت در مسیر پیش‌فرض PATH وجود نداشته باشد، footclient با اولویت زیر به مسیرهای با اختصاصیت کمتر رجوع می‌کند: $XDG_RUNTIME_DIR/foot-$WAYLAND_DISPLAY.sock، $XDG_RUNTIME_DIR/foot.sock، /tmp/foot.sock.

TERM

شناسه terminfo/termcap. این متغیر توسط برنامه‌های کلاینت استفاده می‌شود تا مشخص گردد ترمینال از چه قابلیت‌هایی پشتیبانی می‌کند. مقدار آن بر اساس گزینه خط فرمان --term یا گزینه پیکربندی term در فایل foot.ini(5) تنظیم می‌شود.

COLORTERM

این متغیر روی truecolor تنظیم می‌شود تا به برنامه‌های کلاینت نشان دهد که رنگ‌های ۲۴ بیتی RGB پشتیبانی می‌شوند.

PWD

دایرکتوری کاری جاری (در زمان راه‌اندازی foot).

SHELL

روی شل راه‌اندازی‌شده تنظیم می‌شود، به شرطی که آن شل معتبر باشد (در فایل /etc/shells فهرست شده باشد).

علاوه بر متغیرهای ذکرشده در بالا، متغیرهای محیطی سفارشی را نیز می‌توان در foot.ini(5) تعریف کرد.

TERM_PROGRAM TERM_PROGRAM_VERSION

این متغیرهای محیطی توسط برخی شبیه‌سازهای ترمینال دیگر تنظیم می‌شوند. ما آن‌ها را حذف (unset) می‌کنیم تا از تشخیص نادرست foot توسط برنامه‌ها جلوگیری شود.

علاوه بر متغیرهای ذکرشده در بالا، متغیرهای محیطی سفارشی جهت حذف شدن را می‌توان در foot.ini(5) تعریف کرد.

سیگنال‌های زیر در footclient دارای معانی ویژه‌ای هستند:

  • SIGUSR1: تغییر به تم رنگی تیره ([colors-dark]).
  • SIGUSR2: تغییر به تم رنگی روشن ([colors-light]).

هنگام ارسال SIGUSR1/SIGUSR2 به یک نمونه از footclient، تم تنها در آن نمونه تغییر می‌کند. این رفتار با حالتی که SIGUSR1/SIGUSR2 را به فرایند سرور ارسال می‌کنید و تم تمام نمونه‌ها تغییر می‌کند، متفاوت است.

نکته: به دلایل مشخص، این مورد زمانی که footclient با --no-wait راه‌اندازی شده باشد پشتیبانی نمی‌شود.

foot(1)

2026-09-03