'\" t .\" Title: herbstclient .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 2026-04-03 .\" Manual: \ \& .\" Source: \ \& herbstluftwm 0.9.6 .\" Language: English .\" .TH "HERBSTCLIENT" "1" "2026\-04\-03" "\ \& herbstluftwm 0\&.9\&.6" "\ \&" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" herbstclient \- ارسال دستورها به یک نمونه در حال اجرای herbstluftwm از طریق X .SH "خلاصه دستور (SYNOPSIS)" .sp \fBherbstclient\fR [\fIOPTIONS\fR] \fICOMMAND\fR [\fIARGS \&...\fR] .sp \fBherbstclient\fR [\fIOPTIONS\fR] [\fI\-\-wait\fR|\fI\-\-idle\fR] [\fIFILTER \&...\fR] .SH "توضیحات (DESCRIPTION)" .sp یک \fICOMMAND\fR را با آرگومان‌های (اختیاری) \fIARGS\fR از طریق Xlib به یک نمونه در حال اجرای \fBherbstluftwm\fR(1) ارسال می‌کند\&. اگر \fICOMMAND\fR خروجی داشته باشد، توسط \fBherbstclient\fR چاپ می‌شود\&. چنانچه خروجی به یک خط تازه ختم نشود، برای بهبود خوانایی یک خط تازه افزوده می‌شود\&. .sp برای دیدن فهرست \fICOMMAND\fRهای موجود و \fIARGS\fRهای آن‌ها، به \fBherbstluftwm\fR(1) مراجعه کنید\&. .sp اگر \fI\-\-wait\fR یا \fI\-\-idle\fR داده شود، منتظر دریافت قلاب‌ها (hookها) از \fBherbstluftwm\fR می‌ماند\&. در صورت تطابق با \fIFILTER\fR اختیاری، قلاب چاپ می‌شود\&. مقادیر \fIFILTER\fR عبارات باقاعده هستند\&. برای مشاهده فهرست قلاب‌های موجود به \fBherbstluftwm\fR(1) مراجعه کنید\&. .SH "گزینه‌ها (OPTIONS)" .PP \fB\-n\fR, \fB\-\-no\-newline\fR .RS 4 اگر خروجی به یک خط تازه ختم نشود، خط تازه‌ای چاپ نمی‌کند\&. .RE .PP \fB\-0\fR, \fB\-\-print0\fR .RS 4 استفاده از نویسه تهی (null) به عنوان جداکننده میان خروجی قلاب‌ها\&. .RE .PP \fB\-l\fR, \fB\-\-last\-arg\fR .RS 4 هنگام استفاده از \fB\-i\fR یا \fB\-w\fR، تنها آخرین آرگومان قلاب را چاپ می‌کند\&. .RE .PP \fB\-i\fR, \fB\-\-idle\fR .RS 4 انتظار برای قلاب‌ها به جای اجرای دستورها\&. .RE .PP \fB\-w\fR, \fB\-\-wait\fR .RS 4 مشابه \fB\-\-idle\fR اما پس از دریافت اولین \fB\-\-count\fR قلاب خارج می‌شود\&. .RE .PP \fB\-c\fR, \fB\-\-count\fR \fICOUNT\fR .RS 4 تنظیم خروج \fB\-\-wait\fR پس از دریافت و چاپ شدن \fICOUNT\fR قلاب\&. مقدار پیش‌فرض \fICOUNT\fR برابر 1 است\&. .RE .PP \fB\-q\fR, \fB\-\-quiet\fR .RS 4 عدم چاپ پیام‌های خطا در صورتی که herbstclient نتواند به نمونه در حال اجرای herbstluftwm متصل شود\&. .RE .PP \fB\-v\fR, \fB\-\-version\fR .RS 4 چاپ نسخه herbstclient\&. برای دریافت نسخه herbstluftwm، از \fBherbstclient version\fR استفاده کنید\&. .RE .PP \fB\-h\fR, \fB\-\-help\fR .RS 4 چاپ نحوه استفاده herbstclient به همراه گزینه‌های خط فرمان آن\&. .RE .PP \fB\-\-binary\-pipe\fR .RS 4 اجرای چندین دستور از طریق یک رابط دودویی (binary)\&. پروتکل مربوطه در بخش \fBBINARY PIPE\fR در ادامه شرح داده شده است\&. .RE .SH "پایپ دودویی (BINARY PIPE)" .sp هنگامی که \fB\-\-binary\-pipe\fR داده می‌شود، یک کانال ارتباطی دودویی با herbstluftwm برقرار می‌گردد به گونه‌ای که می‌توان چندین دستور را از طریق یک نمونه منفرد herbstclient اجرا کرد\&. هر دو ورودی استاندارد (stdin) و خروجی استاندارد (stdout) در حالت دودویی قرار می‌گیرند، در حالی که کانال خطای استاندارد (stderr) در حالت متنی باقی می‌ماند\&. این رابط از توکن‌های متنی UTF\-8 که با بایت تهی (null\-byte) خاتمه می‌یابند تشکیل شده است\&. توالی توکن‌های زیر روی stdin پشتیبانی می‌شوند، که در آن‌ها \fB0\fR نشان‌دهنده یک بایت تهی است: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBARG\fR \fB0\fR \fIT\fR \fB0\fR توکن متنی \fIT\fR را به دستور بعدی برای اجرا اضافه می‌کند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBRUN\fR \fB0\fR دستور را اجرا می‌کند (یعنی آن را به herbstluftwm ارسال می‌نماید)\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} پس از نوشتن \fIRUN\fR و بایت تهی در ورودی استاندارد (stdin) herbstclient، خالی کردن بافر (flush) را فراموش نکنید! .RE .sp روی stdout، جفت‌های کلید\-مقدار جداشده با بایت تهی چاپ می‌شوند؛ بدین معنا که خروجی همواره توالی‌ای با قالب \fIKEY\fR \fB0\fR \fIVALUE\fR \fB0\fR خواهد بود\&. این پروتکل ممکن است در آینده گسترش یابد، اما همواره به قالب کلید\-مقدار پایبند خواهد ماند\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBSTDOUT\fR \fB0\fR \fITEXT\fR \fB0\fR بدین معنی است که stdout دستور اخیراً اجرا شده، برابر با \fITEXT\fR است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBSTDERR\fR \fB0\fR \fITEXT\fR \fB0\fR بدین معنی است که stderr دستور اخیراً اجرا شده، برابر با \fITEXT\fR است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBSTATUS\fR \fB0\fR \fIN\fR \fB0\fR بدین معنی است که وضعیت خروج دستور اخیراً اجرا شده، عدد صحیح \fIN\fR است\&. .RE .sp هر زمان که herbstluftwm خارج شود یا به انتهای فایل (EOF) در stdin برسد، پایپ دودویی نیز بسته می‌شود و herbstclient خارج می‌گردد\&. .sp مثال: .sp .if n \{\ .RS 4 .\} .nf printf \*(AqARG\e0echo\e0ARG\e0hello world\e0RUN\e0ARG\e0get_attr\e0ARG\e0tags\&.count\e0RUN\e0\*(Aq \e | herbstclient \-\-binary\-pipe \e | hexdump \-C .fi .if n \{\ .RE .\} .SH "متغیرهای محیطی (ENVIRONMENT VARIABLES)" .PP DISPLAY .RS 4 متغیر \fIDISPLAY\fR مورد استفاده را مشخص می‌کند، یعنی جایی که \fBherbstluftwm\fR(1) در آن در حال اجرا است\&. .RE .SH "وضعیت خروج (EXIT STATUS)" .sp وضعیت خروج حاصل از اجرای \fICOMMAND\fR را در کارساز \fBherbstluftwm\fR(1) بازمی‌گرداند\&. .PP \fB0\fR .RS 4 موفقیت\&. .RE .PP other .RS 4 شکست\&. برای فهرستی از کدهای خطا به \fBherbstluftwm\fR(1) مراجعه کنید\&. .RE .SH "گزارش باگ‌ها (BUGS)" .sp مسائل گیت‌هاب \fBherbstluftwm\fR را ببینید: https://github.com/herbstluftwm/herbstluftwm/issues .SH "جامعه کاربری (COMMUNITY)" .sp می‌توانید به کانال IRC به نشانی \fI#herbstluftwm\fR در \fIirc\&.libera\&.chat\fR بپیوندید\&. .SH "نویسندگان (AUTHORS)" .sp \fBherbstclient\fR توسط Thorsten Wißmann نوشته شده است\&. نام همه مشارکت‌کنندگان در فایل AUTHORS توزیع \fBherbstluftwm\fR آمده است\&. .SH "منابع (RESOURCES)" .sp وبگاه: http://herbstluftwm.org .sp صفحه گیت‌هاب: http://github.com/herbstluftwm/herbstluftwm .sp ارسال وصله و گزارش اشکال: .sp .if n \{\ .RS 4 .\} .nf hlwm@lists\&.herbstluftwm\&.org .fi .if n \{\ .RE .\} .SH "کپی‌رایت و تکثیر (COPYING)" .sp حق تکثیر 2011\-2020 متعلق به Thorsten Wißmann است\&. تمامی حقوق محفوظ است\&. .sp این نرم‌افزار تحت «Simplified BSD License» مجوزدهی شده است\&. برای جزئیات به LICENSE مراجعه کنید\&.