2.1 KiB
2.1 KiB
Zenity dialogs for Golang, Windows and macOS
This repo includes both a cross-platform Go package providing
Zenity-like dialogs
(simple dialogs that interact graphically with the user),
as well as a “port” of the zenity
command to both Windows and macOS based on that library.
Implemented dialogs:
- message (error, info, question, warning)
- text entry
- list (simple)
- password
- file selection
- color selection
- progress
- notification
Behavior on Windows, macOS and other Unixes might differ slightly. Some of that is intended (reflecting platform differences), other bits are unfortunate limitations.
Why?
There are a bunch of other dialog packages for Go.
Why reinvent this particular wheel?
Benefits:
- no
cgo
(see benefits, mostly cross-compilation) - no main loop (or any other threading or initialization requirements)
- cancelation through
context
- on Windows:
- no additional dependencies
- Explorer shell not required
- works in Server Core
- Unicode support
- High DPI (no manifest required)
- Visual Styles (no manifest required)
- WSL/Cygwin/MSYS2 support
- no additional dependencies
- on macOS:
- only dependency is
osascript
- only dependency is
- on other Unixes:
- wraps either one of
zenity
,qarma
,matedialog
- wraps either one of