AnyBar: OS X menubar status indicator
AnyBar is a small indicator for your menubar that does one simple thing: it displays a colored dot. What the dot means and when to change it is up to you.
Download
Version 0.2.3:
Or using Homebrew Cask:
brew install --cask anybar
Support us
Usage
AnyBar is controlled via a UDP port (1738 by default). Before any commands can be sent, AnyBar.app must be launched:
open -a AnyBar
Once launched, you may send it a message to change the style of the dot:
echo -n "black" | nc -4u -w0 localhost 1738
If you use bash, you might prefer this instead:
bash -c 'echo -n "black" > /dev/udp/localhost/1738'
The following default commands change the style of the dot:
Command | Preview |
---|---|
white |
|
red |
|
orange |
|
yellow |
|
green |
|
cyan |
|
blue |
|
purple |
|
black |
|
question |
|
exclamation |
|
filled |
|
hollow |
black
and white
always has black or white fill. On Big Sur, where text color of menubar might change depending on the wallpaper, you might want to use filled
and hollow
instead. They are inverted when menubar changes its appearance.
To quit, send quit
.
Alternative clients
Bash alias:
$ function anybar { echo -n $1 | nc -4u -w0 localhost ${2:-1738}; }
$ anybar red
$ anybar green 1739
Or with /dev/udp:
function anybar { echo -n $1 > /dev/udp/localhost/${2:-1738}; }
Zsh with completion:
Fish shell with completion:
Go:
Node:
Deno:
PHP:
Java:
Python:
Ruby:
Rust:
Nim:
Erlang:
C:
C#:
Crystal:
Emacs:
- rmuslimov/anybar.el
- tie-rack/anybar-el (Also on Melpa)
AppleScript:
tell application "AnyBar" to set image name to "blue"
tell application "AnyBar" to set current to get image name as Unicode text
display notification current
Alfred:
Integrations
- Webpack build status plugin roman01la/anybar-webpack
- boot-clj task tonsky/boot-anybar
- Idea plugin denofevil/AnyBarIdea
- Anybar-based CLI journal Andrew565/anybar-icon-journal
- Command monitoring rvirani1/with_anybar
- Monitor commands automatically, across several iterm tabs stacycurl/anybar_bash
- Extension for ipython/jupyter/ipython notebook ermakovpetr/ipython-anybar
Running multiple instances
You can run several instances of AnyBar as long as they listen on different ports. Use the ANYBAR_PORT
environment variable to change the port and open -na
to run several instances:
ANYBAR_PORT=1738 open -na AnyBar
ANYBAR_PORT=1739 open -na AnyBar
ANYBAR_PORT=1740 open -na AnyBar
Environment variables to specify a title and the initial color of the dot
A title can be set to distinguish dots in the menubar:
ANYBAR_PORT=1738 ANYBAR_TITLE=First open -na AnyBar
ANYBAR_PORT=1739 ANYBAR_TITLE=Second open -na AnyBar
ANYBAR_PORT=1740 ANYBAR_TITLE=Third open -na AnyBar
And the initial color of the dot can also be set:
ANYBAR_INIT=blue open -na AnyBar
Custom images
AnyBar can detect and use local custom images stored in the ~/.AnyBar
directory. For example, if you have a ~/.AnyBar/[email protected]
image, send square
to port 1738 and it will be displayed. Images should be 19×19 pixels for standard resolution, and 38x38 pixels for retina (@2x).
Ports
- Ubuntu Unity limpbrains/somebar
- i3wm with i3pystatus enkore/i3pystatus
- Windows 10 PavelStefanov/NoteBar
- Emacs plexus/.../emybar.el
License
Copyright © 2015 Nikita Prokopov
Licensed under Eclipse Public License (see LICENSE).