{"id":13732951,"url":"https://github.com/kantord/twm-status-builder","last_synced_at":"2025-04-23T02:01:54.884Z","repository":{"id":86356725,"uuid":"294663618","full_name":"kantord/twm-status-builder","owner":"kantord","description":"See only the most relevant information in your status bar","archived":false,"fork":false,"pushed_at":"2024-07-03T06:49:17.000Z","size":1259,"stargazers_count":9,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-18T13:28:53.052Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kantord.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-11T10:22:44.000Z","updated_at":"2024-10-31T00:43:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"f02f048c-87e1-4b1b-8101-46819d167794","html_url":"https://github.com/kantord/twm-status-builder","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kantord%2Ftwm-status-builder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kantord%2Ftwm-status-builder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kantord%2Ftwm-status-builder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kantord%2Ftwm-status-builder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kantord","download_url":"https://codeload.github.com/kantord/twm-status-builder/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250354494,"owners_count":21416752,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T03:00:35.909Z","updated_at":"2025-04-23T02:01:54.705Z","avatar_url":"https://github.com/kantord.png","language":"Shell","funding_links":[],"categories":["Plugins"],"sub_categories":[],"readme":"# twm-status-builder\n\n![screenshot](screenshot.png)\n\n`twm-status-builder` is a script that helps you compile succint information as text to be displayed\nin the status bar of your (tiling) window manager. Should work with any status bar that is able to\ndisplay text from a shell script. Might also be used in your terminal.\n\n## Usage\n\n```\n./twm-status-builder.sh [modules]\n```\n\nYou have to supply a comma-separated list of modules to display. **The first module to have\na non-empty output will be displayed**. Example:\n\n```\n./twm-status-builder.sh pomodoro,calendar/upcoming,calendar/summary\n```\n\nSee the documentation for each module to see the required configuration.\n\nList of currently available modules: [calendar/summary](#summary-of-your-day), [calendar/upcoming](#summary-of-ongoing-and-upcoming-events), [pomodoro](#pomodoro), [weather](#weather), [task/count](#count), [task/strawberries](#strawberries), [task/emojis](#emojis), [battery/headphones](#headphones), [battery/laptop](#laptop-battery), [battery/controller](#controller-battery)\n\n\n\n### Usage with polybar\n\nExample:\n\n```\n[module/status_one_liner]\ntype = custom/script\nexec = twm-status-builder.sh pomodoro,calendar/upcoming,calendar/summary\ninterval = 0.5\n```\n\n### Cycling through multiple modules\n\nIf you have modules that could produce important information at the same time, you can cycle through\nthem. Use this feature sparingly, as it can be distracting. To cycle between modules, prepend each\nmodule with a `\u003e` character. Example:\n\n```\n./twm-status-builder.sh pomodoro,\u003ecalendar/upcoming,\u003ecalendar/summary\n```\n\n## Modules\n\n### Calendar\n\nThe calendar modules rely on `khal` for data. In order to use the calendar modules, you need\nto first [install khal](https://github.com/pimutils/khal). If you follow the instructions there,\nyou'll be able to connect to CalDAV servers, such as Google Calendar.\n\n#### Summary of your day\n\n**module name**: `calendar/summary`\n\nProvides a visual summary of your day using emoji. Each emoji represents a half-hour block,\nfor for example a one-hour meeting will be represented by `📅📅`. Any half hour block with a\nmeeting will be represented with `📅`, even if the meeting starts in the middle of the half\nhour block.\n\nPut the following configuration into your `.twm-status-builder-rc`:\n\n```\nlet FIRST_HOUR=7\nlet LAST_HOUR=23\nlet START=\"2*FIRST_HOUR\"\nlet END=\"2*LAST_HOUR\"\nlet WORK_START=\"2*10\"\nlet WORK_END=\"2*18\"\nlet LUNCH_BREAK_START=\"2*13\"\nlet LUNCH_BREAK_END=\"LUNCH_BREAK_START + 2\"\n```\n\nKeep in mind that `calendar/summary` is based on half-hour blocks. You have to specify times in\nhalf-hour blocks, not hours. Therefore `let WORK_START=\"2*10\"` means work starts at 10am.\n\n**Legend**:\n * `🚀` - Current time\n * `⏰` - Wake up time\n * `💤` - Sleep time\n * `🟩` - Free time\n * `🟦` - Work time\n * `📅` - Meetings and calendar events\n * `🍴` - Lunch break\n\n**output example**:\n\n`⏰🟩🟩🟩🟩🟩🟩📅🟦🟦🟦🚀🍴🍴🟦📅📅📅📅📅📅🟦🟦🟩🟩🟩🟩🟩🟩🟩🟩🟩💤`\n\n#### Summary of ongoing and upcoming events\n\n**module name**: `calendar/upcoming`\n\nProvides a summary of ongoing and up\n\n**output example**:\n\n`📅 In 51m: Dev standup`\n\n\n### Pomodoro\n\n**module name**: `pomodoro`\n\nIf you use the Pomodoro technique, you might want to hide your other information\nand instead see your Pomodoro status. The `pomodoro` module lets you do that using\n[i3-gnome-pomodoro](https://github.com/kantord/i3-gnome-pomodoro).\n\nIn order to use this module, please set up\n[i3-gnome-pomodoro](https://github.com/kantord/i3-gnome-pomodoro) first.\n\n**output example**:\n\n`🍅 Pomodoro 23:47`\n\n\n### Weather\n\n**module_name**: `weather:{city}`\n\nThis module shows weather information about a given city, for example `weather:London` or `weather:Berlin`.\nCities with spaces in their name can be spelled like so: `weather:New_York`.\n\n**output example**:\n\n`New York: ☁️ +18°C`\n\n### Taskwarrior\n\n#### Count\n\n**module_name**: `task/count`\n\nThis module shows the count of (over) due tasks in taskwarrior.\n\n**output example**:\n\n`11 tasks due`\n\n**module_name**: `task/count_icon`\n\nSame as `task/count`, but with an icon. Needs [nerd fonts](https://www.nerdfonts.com/).\n\n**output example**:\n\n`陼11`\n\n\n#### Strawberries\n\n**module_name**: `task/strawberries`\n\nThis module shows the count of (over) due tasks in taskwarrior, represented as `🍓` characters.\n\n**output example**:\n\n`🍓🍓🍓🍓🍓🍓🍓🍓🍓🍓🍓`\n\n#### Emojis\n\n**module_name**: `task/emojis`\n\nThis module shows the count of (over) due tasks in taskwarrior, each task represented\nby an emoji that corresponds to its project. For this to work, you need to\nset your project names to emoji.\n\n**output example**:\n\n`🏢🧹💪🛌`\n\n\n#### Headphones\n\n**module_name**: `battery/headphones`\n\nThis module shows the battery level of your bluetooth headphones as long as they are\nconnected and as long as this feature is supported in `upower` for your headphones.\n\n**output example**:\n\n`🎧 70%`\n\n#### Laptop battery\n\n**module_name**: `battery/laptop`\n\nThis module shows the battery level of your laptop as long as there is a\nbattery installed.\n\n**output example**:\n\n`💻 70%`\n\n\n#### Controller battery\n\n**module_name**: `battery/controllers`\n\nThis module shows the battery level of your bluetooth controllers as long as they are\nconnected and as long as this feature is supported in `upower` for your controllers.\n\n**output example**:\n\n`🎮 70%`\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkantord%2Ftwm-status-builder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkantord%2Ftwm-status-builder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkantord%2Ftwm-status-builder/lists"}