• Stars
    star
    106
  • Rank 325,871 (Top 7 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Übersicht widget to monitor the state of Yabai tiling window manager

Nero

Nero

Nero is a Übersicht widget to monitor the state of Yabai tiling window manager.

Table of Contents

Requirements

Installation

CLI

git clone http://github.com/lucaorio/nero && cd nero
cp -r nero ~/Library/Application\ Support/Übersicht/widgets

Manual

  • Download the latest version
  • Unzip it
  • Copy nero to the ~/Library/Application\ Support/Übersicht/widgets directory

Usage

Nero follows macOS's appearance and switches between light/dark mode automatically. If the colors do not work well with your wallpaper, take a look at the customization section.

As of now, Nero provides multi-monitor indicators for:

  • Current layout (bsp vs. flt) of the active space
  • All spaces available (and the active one)
  • Current status (sticky and floating) of the active window

Nero Anatomy

The widgets do not refresh periodically to preserve battery life and stay as reactive as possible. The re-rendering should be triggered by relying on Yabai's own signals and the activation method / hotkey utility of choice.

If you need some examples, take a look at Intentio, another project I released. Intentio is a collection of config files for a shortcut system based on Karabiner (via Goku), Yabai, and Übersicht (via Nero.)

Customization

It's difficult to replicate the translucency effect of macOS native menubar because Übersicht does not play well with the mix-blend-mode and backdrop-filter CSS properties. Because of that, there are a couple of objects and a variable to customize the widgets quickly for those cases in which they don't look great with a particular wallpaper:

  • You can manually set the forcedTheme variable to prevent the theme from changing
  • You can tweak the lightTheme or darkTheme objects to customize the appearance
const forcedTheme = false // false, 'dark', or 'light'

const lightTheme = {
// regular indicators
txtColor: 'rgba(255, 255, 255, 1)',
bgColor: 'rgba(0, 0, 0, 0.2)',
borderWidth: '1px',
borderColor: 'rgba(255, 255, 255, 0.2)',

// active indicators
txtColorActive: 'rgba(29, 36, 26, 1)',
bgColorActive: 'rgba(255, 255, 255, 1)',
borderWidthActive: '1px',
borderColorActive: 'rgba(255, 255, 255, 1)',
}

// darkTheme ...

It is up to personal taste, but Nero works best when a bottom padding is defined in the yabairc config file:

yabai -m config bottom_padding 54

Notes

The first version of Nero was meant to replace macOS menubar and add a few additional indicators. It also included a widget for Yabai and a theme for Alfred.

With this version, I'm taking an entirely different approach and focus on Yabai, which seems to be the main reason why people discovered this repo in the first place:

  • The Alfred theme has been moved to alfred-theme-nero. The repository is available for whoever needs it, but it won't be updated anymore (as a note, I am currently using Raycast.)
  • The indicators for macOS have been removed because quick, periodic refreshing of Übersicht widgets was a real drag on the battery.

License

https://github.com/lucaorio/obsidian-image-gallery/blob/master/license

Contacts