Apakah ada setara dengan Mac OSX untuk zenity?

16

Saya porting beberapa skrip X windows / bash sederhana ke Mac OSX, tetapi saya tidak dapat menemukan build Zenity (aplikasi Gnome untuk dialog GUI dasar) untuk OSX. Apakah ada beberapa utilitas dialog yang didorong oleh command line yang dapat saya gunakan? Operasi dasar: dialog pemberitahuan

  • Daftar barang
  • (yaitu judul dasar, teks, ikon, tombol OK)
  • pemberitahuan kesalahan
  • ya / tidak atau ok / batal konfirmasi
  • pilih 1 atau n item dari daftar
  • masukan string teks

Saya belum (belum) kenal AppleScript (tapi sepertinya cukup verbose untuk tugas pemeliharaan file yang saya minati).

djb
sumber
Cocoadialog tidak memiliki dukungan untuk --username dan --password seperti halnya zenity. Hanya sebuah catatan!
Sindhu S
brew install zenity
user2707001

Jawaban:

12

Lihat cocoaDialog :

cocoaDialog adalah aplikasi OS X yang memungkinkan penggunaan kontrol GUI umum seperti penyeleksi file, input teks, bilah kemajuan, konfirmasi ya / tidak, dan lainnya dengan aplikasi baris perintah. Tidak memerlukan pengetahuan tentang Kakao, dan sangat ideal untuk digunakan dalam skrip shell dan Perl (atau Ruby, atau Python, atau ... dll).

Ini adalah konsep yang cukup sederhana - meneruskan argumen ke executable untuk membuat dialog, dan mengembalikan string hasil. Ada beberapa contoh dan dokumentasi yang bagus .

Tuan Mel
sumber
1
@ mklement0 cocoaDialog pada November 2017 kembali dalam pengembangan aktif: github.com/cocoadialog/cocoadialog
Rudolf Olah
Masalahnya tidak memiliki dokumentasi, hanya sumber di github. Donnow bagaimana cara menginstalnya.
DimiDak
4

Homebrew menyediakan paket kenyamanan. Ia menggunakan server MacOS X11 (emulasi) Xquartz.

Mempermudah implementasi lintas-OS, tetapi ini bukan MacOS X gui asli.

volker
sumber
Bagi mereka yang tertarik, zenitytersedia di x11keran. Jalankan brew install homebrew/x11/zenityuntuk menginstalnya.
Subin Sebastian
2

Coba juga Pashua .

Pashua adalah alat untuk membuat jendela dialog Aqua asli dari bahasa pemrograman yang tidak memiliki atau hanya mendukung terbatas untuk antarmuka pengguna grafis pada Mac OS X. Saat ini, ia mendukung AppleScript, Perl, PHP, Python, Groovy, Rexx, Ruby, skrip shell dan Tcl — dan jika bahasa favorit Anda tidak termasuk dalam daftar ini: menulis kode lem untuk berkomunikasi dengan Pashua cukup sederhana.

lhf
sumber
+1; Pashua sangat kuat, tetapi gaya API berbeda dari Zenity dalam bahwa alih-alih string konfigurasi baris perintah (multi-line) yang terpisah yang menggambarkan GUI yang diinginkan harus diteruskan. Mungkin butuh waktu lebih lama untuk memulai.
mklement0
1

Di terminal Anda

  brew install zenity && zenity --info --text "You did it!"

:)

DimiDak
sumber
0

Sudah bertahun-tahun, dan ini adalah pekerjaan yang sedang berjalan, tapi saya sedang mengerjakan zenity "port" untuk MacOS dan Windows.

Anda bisa mendapatkannya di sini:
https://github.com/ncruces/zenity/releases

Baca lebih lanjut:
https://github.com/ncruces/zenity

Di macOS, satu-satunya ketergantungan adalah osascript(dengan JXA , karena JavaScript lebih mudah digunakan daripada AppleScript).

Pada Windows tidak ada dependensi, bahkan shell Explorer (yang berarti itu akan bekerja pada Server Core).

Nuno Cruces
sumber
0

MacOS hadir dengan Tcl / Tk built-in. Python Mac hadir dengan layer Tkinter untuk menggunakannya, tetapi Anda juga bisa menggunakannya di shell dan X11.

benwiggy
sumber