waybar-battery(5) File Formats Manual waybar-battery(5)

waybar-battery - ماژول باتری (battery) در waybar

ماژول battery ظرفیت فعلی و وضعیت (مانند در حال شارژ) باتری شما را نمایش می‌دهد.

bat:
نوع: string
باتری مورد نظر برای پایش، همان‌طور که در مسیر /sys/class/power_supply/ نام‌گذاری شده، به جای تشخیص خودکار.

adapter:
نوع: string
آداپتور مورد نظر برای پایش، همان‌طور که در مسیر /sys/class/power_supply/ نام‌گذاری شده، به جای تشخیص خودکار.

full-at:
نوع: integer
تعیین حداکثر درصد باتری، برای زمانی که جهت حفظ سلامت و طول عمر باتری، آن را طوری تنظیم کرده‌اید که در سطح پایین‌تری شارژ متوقف شود. به عنوان مثال، اگر باتری را برای توقف در ۸۰٪ تنظیم کرده باشید، آن مقدار به عنوان ۱۰۰٪ جدید در نظر گرفته می‌شود.

design-capacity:
نوع: bool
پیش‌فرض: false
گزینه‌ای برای استفاده از ظرفیت اسمی طراحی‌شده باتری به جای ظرفیت بیشینه فعلی آن.

interval:
نوع: integer
پیش‌فرض: 60
فاصله زمانی (به ثانیه) که اطلاعات در آن دریافت و پایش می‌شود.

states:
نوع: object
تعدادی از وضعیت‌های باتری که در سطوح ظرفیت مشخصی فعال می‌شوند. صفحه waybar-states(5) را ببینید.

format:
نوع: string
پیش‌فرض: {capacity}%
قالب نحوه نمایش اطلاعات.

format-time:
نوع: string
پیش‌فرض: {H} h {M} min
قالب نحوه نمایش زمان.

format-icons:
نوع: array/object
بر اساس ظرفیت فعلی، آیکون متناظر انتخاب می‌شود.
ترتیب از low (کم) به high (زیاد) است. یا در صورتی که یک شیء باشد، بر اساس وضعیت انتخاب می‌شود.

max-length:
نوع: integer
حداکثر طول بر حسب تعداد نویسه‌ها (کاراکترها) که ماژول باید نمایش دهد.

min-length:
نوع: integer
حداقل طول بر حسب تعداد نویسه‌ها که ماژول باید بپذیرد.

align:
نوع: float
تراز برچسب درون ماژول، که در آن 0 به معنای چپ‌چین و 1 به معنای راست‌چین است. در صورت چرخش ماژول، جهت جریان متن دنبال خواهد شد.

justify:
نوع: string
تراز متن درون برچسب ماژول، که گزینه‌های 'left' (چپ)، 'right' (راست) یا 'center' (وسط) را برای تعیین موقعیت می‌پذیرد.

rotate:
نوع: integer
مقدار مثبت برای چرخش برچسب متنی (با گام‌های ۹۰ درجه).

on-click:
نوع: string
دستوری که هنگام کلیک روی ماژول اجرا می‌شود.

on-click-middle:
نوع: string
دستوری که هنگام کلیک‌وسط روی ماژول با استفاده از چرخ ماوس اجرا می‌شود.

on-click-right:
نوع: string
دستوری که هنگام راست‌کلیک روی ماژول اجرا می‌شود.

on-update:
نوع: string
دستوری که هنگام به‌روزرسانی ماژول اجرا می‌شود.

on-scroll-up:
نوع: string
دستوری که هنگام پیمایش به بالا (اسکرول) روی ماژول اجرا می‌شود.

weighted-average:
نوع: bool
پیش‌فرض: true
گزینه‌ای برای ترکیب چند باتری با ظرفیت‌های مختلف بر اساس میانگین وزنی.

on-scroll-down:
نوع: string
دستوری که هنگام پیمایش به پایین (اسکرول) روی ماژول اجرا می‌شود.

smooth-scrolling-threshold:
نوع: double
آستانه مورد استفاده هنگام پیمایش روان.

tooltip:
نوع: bool
پیش‌فرض: true
گزینه‌ای برای غیرفعال کردن راهنمای شناور (tooltip) هنگام رفتن نشانگر روی آن.

bat-compatibility:
نوع: bool
پیش‌فرض: false
گزینه‌ای برای فعال‌سازی سازگاری باتری در صورت عدم شناسایی آن.

menu:
نوع: string
عملیاتی که منو را نمایان می‌سازد (popup).

menu-file:
نوع: string
محل فایل توصیف‌کننده منو. باید عنصری از نوع

GtkMenu با شناسه menu در آن وجود داشته باشد.

menu-actions:
نوع: array
عملیات متناظر با دکمه‌های منو.

expand:
نوع: bool
پیش‌فرض: false
به این ماژول امکان می‌دهد تمام فضای باقی‌مانده را به صورت پویا مصرف کند.

events:
نوع: object
دستوراتی را برای اجرا در وضعیت‌های خاص باتری تعیین می‌کند. بخش رویدادها (EVENTS) در زیر را ببینید.

{capacity}: ظرفیت به درصد

{power}: توان بر حسب وات

{icon}: آیکون، طبق تعریف‌شده در format-icons.

{time}: تخمین زمان تا پر یا خالی شدن. توجه داشته باشید که این مقدار بر اساس مصرف توان در آخرین زمان نوسازی است، نه میانگین.

{cycles}: تعداد چرخه‌های شارژی که باتری با بیشترین ظرفیت پشت سر گذاشته است. (فقط لینوکس)

{health}: درصد شارژ بیشینه اولیه باتری با بیشترین ظرفیت که هنوز می‌تواند نگه دارد.

ماژول battery به شما امکان می‌دهد نحوه قالب‌بندی زمان را از طریق format-time مشخص کنید.

سه آرگومان عبارتند از: {H}: ساعت {M}: دقیقه {m}: دقیقه با صفر پیش‌رو

ماژول battery امکان تعریف قالب‌های سفارشی بر اساس حداکثر دو عامل را فراهم می‌کند. قالبی که بهترین تطابق را دارد انتخاب خواهد شد.

format-<state>: به همراه states، یک قالب سفارشی را می‌توان بسته به ظرفیت باتری تعیین کرد.

format-<status>: با وضعیت (status)، می‌توان یک قالب سفارشی بسته به وضعیت موجود در /sys/class/power_supply/<bat>/status (با حروف کوچک) تعیین کرد.

format-<status>-<state>: همچنین می‌توانید قالبی سفارشی وابسته به هر دو مقدار تعیین کنید.

  • هر مدخل (state) شامل یک <name> (نوع: string) و یک <value> (نوع: integer) است.
  • این وضعیت می‌تواند به عنوان یک کلاس CSS در style.css آدرس‌دهی شود. نام کلاس CSS همان <name> وضعیت است. هر کلاس زمانی فعال می‌شود که ظرفیت فعلی کمتر یا مساوی با مقدار <value> پیکربندی‌شده باشد.
  • همچنین هر وضعیت می‌تواند format اختصاصی خود را داشته باشد. این قالب‌ها را می‌توان از طریق format-<name> یا حتی برای تفکیک بیشتر به صورت format-<status>-<state> پیکربندی کرد. برای اطلاعات بیشتر قالب‌های سفارشی (custom-formats) را ببینید.

هر مدخل در شیء events شامل یک <event-name> (نوع: string) و یک <command> (نوع: string) است.
<event-name> می‌تواند در یکی از قالب‌های زیر باشد:

  • on-<status>-<state>
  • on-<status>-<capacity>

که در آن:

  • <status> یکی از مقادیر charging یا discharging است،
  • <state> نام یکی از وضعیت‌های مشخص‌شده در شیء states است،
  • <capacity> مقدار سطح شارژ باتری است (بین 0-100).

"battery": {
	"bat": "BAT2",
	"interval": 60,
	"states": {
		"warning": 30,
		"critical": 15
	},
	"events": {
		"on-discharging-warning": "notify-send -u normal 'Low Battery'",
		"on-discharging-critical": "notify-send -u critical 'Very Low Battery'",
		"on-charging-100": "notify-send -u normal 'Battery Full!'"
	},
	"format": "{capacity}% {icon}",
	"format-icons": ["", "", "", "", ""],
	"max-length": 25
}

  • #battery
  • #battery.<status>
•
<status> مقدار /sys/class/power_supply/<bat>/status با حروف کوچک است.
•
#battery.<state>
•
<state> را می‌توان در config تعریف کرد. برای اطلاعات بیشتر وضعیت‌ها (states) را ببینید.
•
#battery.<status>.<state>
•
ترکیب هر دو مورد <status> و <state>.

کلاس‌های زیر به جای فقط ابزارک باتری، بر کل Waybar اعمال می‌شوند:

•
window#waybar.battery-<state>
•
<state> را می‌توان همان‌طور که پیش‌تر ذکر شد در config تعریف کرد.
2026-08-31