#!/usr/bin/env node 'use strict'; const linuxBattery = require('linux-battery'); async function run() { try { const batteries = await linuxBattery(); batteries.forEach(battery => { if (battery.powerSupply === 'no') { return ''; } const color = battery.warningLevel !== 'none' ? '#ff0000' : '#eee8d5'; let stateSymbol = battery.state === 'charging' ? '↑' : '↓'; switch (battery.state) { case 'charging': stateSymbol = '↑'; break; case 'fully-charged': stateSymbol = 'F'; break; case 'discharging': stateSymbol = '↓'; break; default: } const timeLeft = battery.timeToFull || battery.timeToEmpty || ''; const text = `%{F${color}}${battery.percentage} ${stateSymbol} ${timeLeft}%{F-}`; process.stdout.write(text); }); } catch (error) { console.error(error); } } run();