.\" Automatically generated by Pandoc 3.10.2 .\" .TH "XMONAD" "1" "27 October 2021" "Tiling Window Manager" .SH "نام (NAME)" xmonad \- مدیر پنجره کاشی‌کار .SH "توضیحات (DESCRIPTION)" \f[I]xmonad\f[R] یک مدیر پنجره کاشی‌کار کمینه‌گرا برای سامانه پنجره X است که با Haskell نوشته شده است. پنجره‌ها با استفاده از الگوریتم‌های چیدمان خودکار مدیریت می‌شوند که می‌توان آن‌ها را به‌صورت پویا بازپیکربندی کرد. در هر زمان، پنجره‌ها به‌گونه‌ای مرتب می‌شوند که بیشترین بهره‌وری از مساحت مفید صفحه نمایش به عمل آید. تمامی امکانات این مدیر پنجره صرفاً از طریق صفحه‌کلید در دسترس هستند: استفاده از موشواره کاملاً اختیاری است. \f[I]xmonad\f[R] با استفاده از Haskell پیکربندی می‌شود و کاربر می‌تواند در فایل‌های پیکربندی، الگوریتم‌های چیدمان سفارشی را پیاده‌سازی کند. یکی از اصول \f[I]xmonad\f[R] پیش‌بینی‌پذیری است: کاربر باید بتواند از پیش به‌طور دقیق بداند که در نتیجه هر اقدامی چه چیدمانی از پنجره‌ها حاصل خواهد شد. .PP به‌طور پیش‌فرض، \f[I]xmonad\f[R] سه الگوریتم چیدمان ارائه می‌دهد: tall (بلند/عمودی)، wide (عریض/افقی) و fullscreen (تمام‌صفحه). در حالت tall یا wide، پنجره‌ها برای جلوگیری از هم‌پوشانی و به حداکثر رساندن استفاده از صفحه، کاشی‌کاری و مرتب می‌شوند. دسته‌هایی از پنجره‌ها روی صفحه‌های مجازی گروه‌بندی می‌شوند و هر صفحه چیدمان ویژه خود را حفظ می‌کند که می‌تواند به‌صورت پویا تغییر کند. چندین نمایشگر فیزیکی از طریق Xinerama پشتیبانی می‌شوند که امکان نمایش هم‌زمان چندین صفحه را فراهم می‌سازد. .PP با بهره‌گیری از قدرت بیان یک زبان تابعی مدرن با سیستم نوع ایستای غنی، \f[I]xmonad\f[R] یک مدیر پنجره کامل و پرامکانات را در کمتر از ۱۲۰۰ خط کد، با تأکید بر صحت عملکرد و پایداری فراهم می‌کند. ویژگی‌های درونی مدیر پنجره با استفاده از ترکیبی از تضمین‌های ایستای ارائه‌شده توسط سیستم نوع و آزمون‌های خودکار مبتنی بر نوع بررسی می‌شوند. یکی از مزایای این کار، سادگی درک کدها و آسانی اصلاح آن‌ها است. .SH "نحوه استفاده (USAGE)" \f[I]xmonad\f[R] هر پنجره را در یک \(lqفضای کاری\(rq (workspace) قرار می‌دهد. هر فضای کاری می‌تواند شامل هر تعداد پنجره باشد که می‌توانید با استفاده از mod\-j و mod\-k میان آن‌ها پیمایش کنید. پنجره‌ها به‌صورت تمام‌صفحه، کاشی‌کاری افقی یا کاشی‌کاری عمودی نمایش داده می‌شوند. می‌توانید با فشردن mod\-space حالت چیدمان را تغییر دهید که میان حالت‌های موجود جابه‌جا خواهد شد. .PP می‌توانید با فشردن mod\-N به فضای کاری N بروید. برای نمونه، جهت تغییر به فضای کاری ۵، باید mod\-5 را فشار دهید. به‌همین ترتیب، می‌توانید با mod\-shift\-N پنجره فعلی را به فضای کاری دیگری منتقل کنید. .PP هنگام اجرا با چندین نمایشگر (Xinerama)، در هر صفحه دقیقاً ۱ فضای کاری قابل مشاهده است. کلیدهای mod\-{w,e,r} تمرکز را میان صفحه‌ها جابه‌جا می‌کنند، در حالی که shift\-mod\-{w,e,r} پنجره فعلی را به آن صفحه منتقل می‌کنند. هنگام آغاز به‌کار \f[I]xmonad\f[R]، فضای کاری ۱ روی صفحه ۱، فضای کاری ۲ روی صفحه ۲ و غیره قرار دارد. هنگام جابه‌جایی به فضای کاری که هم‌اکنون نمایان است، فضای کاری فعلی و فضای کاری نمایان جای خود را با یکدیگر عوض می‌کنند. .SS "پرچم‌ها (Flags)" xmonad چندین پرچم دارد که می‌توانید به فایل اجرایی ارسال کنید. این پرچم‌ها عبارتند از: .TP \(enrecompile کامپایل مجدد پیکربندی \f[I]xmonad.hs\f[R] شما .TP \(enrestart باعث راه‌اندازی مجدد فرایند در حال اجرای \f[I]xmonad\f[R] می‌شود .TP \(enreplace جایگزین کردن مدیر پنجره فعلی با xmonad .TP \(enversion نمایش نسخه \f[I]xmonad\f[R] .TP \(enverbose\-version نمایش اطلاعات دقیق نسخه \f[I]xmonad\f[R] .SS "کلیدهای میانبر پیش‌فرض (Default keyboard bindings)" .TP mod\-shift\-return .IP .EX اجرای ترمینال .EE .TP mod\-p .IP .EX اجرای dmenu .EE .TP mod\-shift\-p .IP .EX اجرای gmrun .EE .TP mod\-shift\-c .IP .EX بستن پنجره دارای تمرکز .EE .TP mod\-space .IP .EX چرخش میان الگوریتم‌های چیدمان موجود .EE .TP mod\-shift\-space .IP .EX بازنشانی چیدمان‌ها در فضای کاری فعلی به پیش‌فرض .EE .TP mod\-n .IP .EX تغییر اندازه پنجره‌های مشاهده‌شده به اندازه صحیح .EE .TP mod\-tab .IP .EX انتقال تمرکز به پنجره بعدی .EE .TP mod\-shift\-tab .IP .EX انتقال تمرکز به پنجره قبلی .EE .TP mod\-j .IP .EX انتقال تمرکز به پنجره بعدی .EE .TP mod\-k .IP .EX انتقال تمرکز به پنجره قبلی .EE .TP mod\-m .IP .EX انتقال تمرکز به پنجره اصلی (master) .EE .TP mod\-return .IP .EX جابه‌جایی پنجره دارای تمرکز و پنجره اصلی (master) .EE .TP mod\-shift\-j .IP .EX جابه‌جایی پنجره دارای تمرکز با پنجره بعدی .EE .TP mod\-shift\-k .IP .EX جابه‌جایی پنجره دارای تمرکز با پنجره قبلی .EE .TP mod\-h .IP .EX کوچک کردن ناحیه اصلی (master) .EE .TP mod\-l .IP .EX بزرگ کردن ناحیه اصلی (master) .EE.TP mod\-t .IP .EX بازگرداندن پنجره به حالت کاشی‌کاری .EE .TP mod\-comma .IP .EX افزایش تعداد پنجره‌ها در ناحیه اصلی (master) .EE .TP mod\-period .IP .EX کاهش تعداد پنجره‌ها در ناحیه اصلی (master) .EE .TP mod\-shift\-q .IP .EX خروج از xmonad .EE .TP mod\-q .IP .EX راه‌اندازی مجدد xmonad .EE .TP mod\-shift\-slash .IP .EX اجرای xmessage با خلاصه‌ای از کلیدهای میانبر پیش‌فرض (کاربردی برای تازه‌کاران) .EE .TP mod\-question .IP .EX اجرای xmessage با خلاصه‌ای از کلیدهای میانبر پیش‌فرض (کاربردی برای تازه‌کاران) .EE .TP mod\-[1..9] .IP .EX رفتن به فضای کاری N .EE .TP mod\-shift\-[1..9] .IP .EX انتقال کلاینت به فضای کاری N .EE .TP mod\-{w,e,r} .IP .EX رفتن به صفحه‌نمایش فیزیکی/Xinerama شماره ۱، ۲ یا ۳ .EE .TP mod\-shift\-{w,e,r} .IP .EX انتقال کلاینت به صفحه‌نمایش شماره ۱، ۲ یا ۳ .EE .TP mod\-button1 .IP .EX تنظیم پنجره روی حالت شناور و جابه‌جایی آن با کشیدن .EE .TP mod\-button2 .IP .EX بالا آوردن پنجره به بالای پشته (stack) .EE .TP mod\-button3 .IP .EX تنظیم پنجره روی حالت شناور و تغییر اندازه با کشیدن .EE.SH "مثال‌ها (EXAMPLES)" برای استفاده از xmonad به عنوان مدیر پنجرهٔ خود، خط زیر را به فایل \f[I]\(ti/.xinitrc\f[R] اضافه کنید: .RS .PP exec xmonad .RE .SH "شخصی‌سازی (CUSTOMIZATION)" شخصی‌سازی xmonad در فایل \f[I]xmonad.hs\f[R] انجام شده و سپس با mod\-q بازنشانی می‌شود. می‌توانید مکان قرارگیری فایل پیکربندی خود را با روش‌های زیر مشخص کنید: .IP "1." 3 تنظیم \f[CR]XMONAD_DATA_DIR\f[R]، \f[CR]XMONAD_CONFIG_DIR\f[R] و \f[CR]XMONAD_CACHE_DIR\f[R]؛ در این حالت انتظار می‌رود \f[I]xmonad.hs\f[R] در \f[CR]XMONAD_CONFIG_DIR\f[R] باشد. .IP "2." 3 ایجاد \f[I]xmonad.hs\f[R] در \f[I]\(ti/.xmonad\f[R]. .IP "3." 3 ایجاد \f[I]xmonad.hs\f[R] در \f[CR]XDG_CONFIG_HOME\f[R]. توجه داشته باشید که در این حالت، xmonad به ترتیب از \f[CR]XDG_DATA_HOME\f[R] و \f[CR]XDG_CACHE_HOME\f[R] برای دایرکتوری داده و حافظه موقت (cache) استفاده خواهد کرد. .PP می‌توانید افزونه‌های بسیاری را برای قابلیت‌های اصلی در بستهٔ xmonad\-contrib پیدا کنید که از طریق مدیر بستهٔ شما یا از نشانی \c .UR https://xmonad.org xmonad.org .UE \c \& در دسترس است. .SS "پیکربندی ماژولار" از نسخهٔ \f[I]xmonad\-0.9\f[R] به بعد، هر ماژول اضافی Haskell که در \f[I]\(ti/.xmonad/lib/\f[R] قرار گیرد، در مسیر جستجوی GHC در دسترس خواهد بود. ماژول‌های سلسله‌مراتبی پشتیبانی می‌شوند؛ برای مثال، فایل \f[I]\(ti/.xmonad/lib/XMonad/Stack/MyAdditions.hs\f[R] می‌تواند شامل موارد زیر باشد: .IP .EX \f[B]module\f[R] XMonad.Stack.MyAdditions (function1) \f[B]where\f[R] function1 = error \(dqfunction1: Not implemented yet!\(dq .EE .PP سپس xmonad.hs شما می‌تواند XMonad.Stack.MyAdditions را طوری وارد کند که گویی آن ماژول در xmonad یا xmonad\-contrib قرار داشته است. .SH "گزارش باگ‌ها (BUGS)" احتمالاً وجود دارد. اگر موردی یافتید، لطفاً آن را در \c .UR https://github.com/xmonad/xmonad/issues سامانه پیگیری باگ (bugtracker) .UE \c \& گزارش دهید.