Zenity dialogs for Golang, Windows, macOS
Go to file
2020-01-21 12:08:25 +00:00
cmd/zenity Refactoring. 2020-01-19 12:53:20 +00:00
internal/zenutil Use AppleScript for color (macos). 2020-01-21 12:08:25 +00:00
.gitignore WIP: zenity command (macos). 2020-01-07 00:57:50 +00:00
color_darwin.go Use AppleScript for color (macos). 2020-01-21 12:08:25 +00:00
color_test.go Color dialog (windows). 2020-01-18 12:40:16 +00:00
color_windows.go Color dialog (windows). 2020-01-18 12:40:16 +00:00
file_darwin.go Refactoring. 2020-01-19 12:53:20 +00:00
file_test.go File selection tweaks, options, API (windows). 2020-01-12 03:37:01 +00:00
file_unix.go Refactoring. 2020-01-19 12:53:20 +00:00
file_windows.go Convert wsl/cygwin paths (windows). 2020-01-17 12:28:44 +00:00
file.go Improved file selection (windows). 2020-01-09 17:06:12 +00:00
go.mod Color dialog (macos). 2020-01-19 04:28:06 +00:00
go.sum Refactoring. 2020-01-19 12:53:20 +00:00
LICENSE Initial commit 2019-12-10 10:51:21 +00:00
msg_darwin.go Refactoring. 2020-01-19 12:53:20 +00:00
msg_test.go Convert wsl/cygwin paths (windows). 2020-01-17 12:28:44 +00:00
msg_unix.go Refactoring. 2020-01-19 12:53:20 +00:00
msg_windows.go Convert wsl/cygwin paths (windows). 2020-01-17 12:28:44 +00:00
README.md Use AppleScript for color (macos). 2020-01-21 12:08:25 +00:00
util_windows_test.go Convert wsl/cygwin paths (windows). 2020-01-17 12:28:44 +00:00
util_windows.go Convert wsl/cygwin paths (windows). 2020-01-17 12:28:44 +00:00
zenity.go Color dialog (windows). 2020-01-18 12:40:16 +00:00

Zenity dialogs for Golang, Windows and macOS

GoDoc

This repo includes both a cross-platform Go package providing Zenity-like dialogs, as well as a “port” of the zenity command to both Windows and macOS based on that library.

This is a work in progress.

Lots of things are missing. For now, these are the only implemented dialogs:

Behavior on Windows, macOS and other Unixes might differ slightly. Some of that is intended (reflecting platform differences), other bits are unfortunate limitations, others still are open to be fixed.

Why?

There are a bunch of other dialog packages for Go.
Why reinvent this particular wheel?

Requirements:

  • no cgo (see benefits, mostly cross-compilation)
  • no main loop (or other threading requirements)
  • no initialization
  • on Windows:
    • no additional dependencies
      • Explorer shell not required
      • works in Server Core
    • Unicode support
    • WSL/Cygwin/MSYS2 support
  • on macOS:
    • only dependency is osascript
  • on other Unixes:
    • wraps either one of zenity, qarma, matedialog