InggrisPerancisSpanyol

Ad


favorit OnWorks

FvwmScript - Online di Cloud

Jalankan FvwmScript di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

Ini adalah perintah FvwmScript yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


FvwmScript - modul untuk membangun antarmuka pengguna grafis

RINGKASAN


FvwmScript harus dimunculkan oleh Fvwm. Ini tidak akan berfungsi dari baris perintah.

DESKRIPSI


FvwmScript adalah modul yang memungkinkan Anda membangun banyak aplikasi grafis seperti:
aksesoris desktop, panel tombol dengan menu pop up, dialog modal... Saat startup,
FvwmScript membaca file yang ditentukan pada baris perintah. File ini berisi
naskah. Script ini tidak termasuk dalam file konfigurasi Fvwm.

Skrip FvwmScript sepenuhnya dapat dikontrol dengan menggunakan keyboard. (Shift) -Tab beredar
di sekitar widget, Kembali mensimulasikan klik mouse, panah memindahkan kursor atau mengubah
nilai widget dan Escape "membatalkan" untuk Menu dan PopupMenu.

DOA


FvwmScript dapat dipanggil dengan menyisipkan baris `Modul FvwmScript name_of_script' di
berkas .fvwm2rc. File "name_of_script" dapat dimulai dengan garis miring, dalam hal ini adalah a
jalur yang sepenuhnya memenuhi syarat, dan file dibaca. Jika "name_of_script" tidak dimulai dengan a
slash, FvwmScript akan terlihat di beberapa tempat berbeda. Jika .fvwm2rc berisi
baris perintah `*FvwmScript: Path path_of_the_script_directory', FvwmScript akan mencobanya
direktori. Jika itu tidak berhasil, FvwmScript mencoba direktori konfigurasi sistem dan
direktori konfigurasi pengguna seperti yang dijelaskan di bawah perintah "Baca" di man fvwm
.

Perintah untuk memulai FvwmScript dapat ditempatkan pada baris dengan sendirinya, jika FvwmScript ingin
muncul selama inisialisasi fvwm, atau dapat diikat ke menu atau tombol mouse atau
keystroke untuk memanggilnya nanti.

KONFIGURASI PILIHAN


Perintah berikut dapat digunakan dalam file konfigurasi (lihat fvwm(1), bagian MODUL
PERINTAH untuk rincian). Mereka hanya digunakan jika perintah skrip yang sesuai tidak
digunakan dalam naskah.

*FvwmScript: Font Default fon
Menentukan font default yang akan digunakan. Jika tidak ditentukan dengan perintah ini atau di
script dengan perintah Font, font tetap diasumsikan.

*FvwmScript: DefaultFore warna
Menentukan warna latar depan default yang akan digunakan. Jika tidak ditentukan dengan ini
perintah atau dalam skrip dengan perintah ForeColor, hitam digunakan.

*FvwmScript: DefaultKembali warna
Menentukan warna latar belakang default yang akan digunakan. Jika tidak ditentukan dengan ini
perintah atau dalam skrip dengan perintah BackColor, grey85 digunakan.

*FvwmScript: DefaultHilight warna
Menentukan warna hilight default yang akan digunakan. Jika tidak ditentukan dengan perintah ini
atau dalam skrip dengan perintah HilightColor, grey100 digunakan.

*FvwmScript: Bayangan Default warna
Menentukan warna bayangan default yang akan digunakan. Jika tidak ditentukan dengan perintah ini
atau dalam skrip dengan perintah ShadowColor, digunakan grey55.

*FvwmScript: Kumpulan Warna Default rangkaian warna
Memberitahu modul untuk menggunakan colorset rangkaian warna sebagai rangkaian warna default. Mengacu kepada
Halaman manual FvwmTheme untuk detail tentang kumpulan warna.

ANATOMI OF A SCRIPT


FvwmScript menggunakan bahasa pemrograman tertentu. Sebuah naskah terdiri dari lima bagian.
Judul berisi karakteristik umum jendela dan properti default untuk semua
widget. Bagian kedua berisi instruksi yang dieksekusi pada saat startup
naskah. Bagian ketiga berisi tugas-tugas periodik yang dijalankan setiap detik. Itu
bagian keempat berisi instruksi yang dieksekusi saat keluar. Dan bagian terakhir berisi
deskripsi widget. Sebuah widget terdiri dari sebelas jenis item: label teks,
input teks satu baris, tombol radio, kotak centang, tombol tekan, horizontal dan vertikal
scrollbar, persegi panjang, menu pop up, Swallowexecs dan scrollbar mini.

KEPALA OF A SCRIPT


Sintaksnya adalah sebagai berikut:

Judul Jendela tali
Opsi ini menetapkan judul jendela.

Ukuran Jendela lebar tinggi
Opsi ini menetapkan ukuran jendela. lebar dan tinggi adalah nilai numerik.

Posisi Jendela x y
Opsi ini mengatur posisi jendela. x dan y adalah nilai numerik.

Warna Depan {warna}
Opsi ini menetapkan warna latar depan default untuk semua widget.

Warna Belakang {warna}
Opsi ini menetapkan warna latar belakang default untuk semua widget.

Warna Sorot {warna}
Opsi ini menetapkan warna sorot default untuk semua widget.

Warna Bayangan {warna}
Opsi ini menetapkan warna bayangan default untuk semua widget.

rangkaian warna {n}
Opsi ini menetapkan rangkaian warna default untuk semua widget.

Fon {fon}
Opsi ini menetapkan font default untuk semua widget.

GunakanDapatkanteks [lokal_jalur]
Aktifkan penggunaan mekanisme gettext yang digunakan oleh WindowLocaleTitle,
LocaleTitle, instruksi ChangeLocaleTitle dan fungsi Gettext. Jika tidak
argumen diberikan, katalog lokal FvwmScript default digunakan. Katalog ini adalah
di bawah direktori instalasi fvwm lokal dan domain teks adalah FvwmScript
(install_prefix/share/locale/*/LC_MESSAGES/FvwmScript.mo). Anda dapat mengatur ulang ini
katalog atau tambahkan beberapa katalog dengan cara yang sama persis dengan LokalPath fvwm
perintah (lihat halaman manual fvwm). Instruksi ini harus ditempatkan sebelum
Instruksi WindowLocaleTitle.

JendelaLokalJudul tali
Opsi ini menetapkan judul jendela, tetapi gunakan katalog lokal yang ditentukan dengan
GunakanDapatkan teks.

INITIALISASI


Bagian ini berisi instruksi yang akan dijalankan pada saat startup. Sebagai contoh:
Init
Mulai
Lakukan "Exec cat tada.voc > /dev/dsp"
Warp Pointer 1
Setel $ToDo=Mulai Ulang
Akhir
Instruksi ini digunakan untuk memutar suara, pindahkan penunjuk ke widget 1 dan ke
inisialisasi $ToDo ke ​​"Restart" di setiap startup.

BERKALA TUGAS


Bagian skrip ini berisi instruksi yang dieksekusi setiap detik. Untuk
contoh:
Tugas Berkala
Mulai
Jika (RemainderOfDiv (GetTime) 10)==0 Kemudian
Lakukan {Exec xcalc}
Akhir
Contoh ini menunjukkan cara meluncurkan xcalc setiap 10 detik.

THE QUIT FUNGSI


Bagian skrip ini berisi instruksi yang dieksekusi ketika skrip keluar
(setelah instruksi Keluar atau jika Anda menutup jendela dengan tombol Tutup, Hapus, atau Hancurkan
perintah fvwm). Misalnya
KeluarFunc
Mulai
Lakukan {Echo bye, bye}
Akhir
Ketahuilah bahwa jika Anda menggunakan perintah KillModule fvwm untuk menutup skrip, beberapa
instruksi atau fungsi yang mengandalkan adanya hubungan komunikasi antara
script dan fvwm tidak akan dieksekusi (misalnya perintah Do). Untuk membunuh a
skrip dengan perintah fvwm lihat PERINTAH bagian.

UTAMA OF A SCRIPT


Bagian kedua skrip berisi deskripsi untuk setiap widget dalam skrip.
Setiap deskripsi widget memiliki dua bagian. Bagian pertama menjelaskan sifat awal,
bagian kedua berisi instruksi yang dijalankan saat widget menerima pesan.
Semua widget dapat mengirim dan menerima pesan. Semua pesan diidentifikasi dengan nomor. Itu
pesan "UserAction" dikirim ke widget saat pengguna mengoperasikan widget. Sintaksnya
untuk bagian pertama adalah:
ID widget # Angka antara 1 dan 999 inklusif
Milik
Ketik string
Ukuran lebar tinggi:
Posisi xy
Judul { string }
Nilai ke dalam
MaxValue ke dalam
MinValue ke dalam
String font
Warna Depan { warna }
Warna Belakang { warna }
Warna Hilight { warna }
Warna Bayangan { warna }
Colorset menjadi
Bendera benderaPilihan
Opsi flagsOpt ke Flags adalah daftar yang dipisahkan spasi yang berisi satu atau lebih dari
kata kunci Tersembunyi, TanpaReliefString, Tidak Fokus, kiri / pusat / Kanan. Tersembunyi digunakan untuk
tentukan apakah widget disembunyikan saat startup. TanpaReliefString menentukan apakah string ditarik
dengan lega atau tidak. Tidak Fokus menentukan apakah widget bisa mendapatkan fokus keyboard atau tidak.
Secara default semua widget mengambil fokus, kecuali Rectangle, HDipstick dan VDipstick yang tidak bisa.
Selain itu, widget NoFocus dilewati saat Anda mengedarkan widget dengan
(Shift-) Jalan pintas tab. kiri / pusat / Kanan menentukan posisi teks. Ini berlaku
hanya untuk ItemDraw, List, Menu, PopupMenu dan PushButton. Standarnya adalah pusat untuk ItemDraw
dan Tombol Tekan dan kiri untuk widget lainnya.

LocaleTitle dapat digunakan sebagai pengganti Judul, untuk menggunakan katalog lokal yang didefinisikan dengan
GunakanDapatkan teks.

Posisi setiap widget harus ditentukan.

Sintaks untuk bagian kedua adalah:
Utama
Pesan kasus dari
Klik Tunggal:
Mulai
# daftar instruksi yang akan
# dieksekusi saat widget menerima
# pesan "SingleClic". Pesan ini adalah
# dihasilkan oleh pengguna.
Akhir
1:
Mulai
# daftar instruksi yang akan
# dieksekusi saat widget menerima
# pesan 1
Akhir
Akhir

DAFTAR OF WIDGET


Ada lima belas jenis widget.

kotak centang: Menampilkan kotak centang dengan string.

Judul: judul kotak centang.

Nilai: jika Nilai sama dengan 1, kotak dicentang jika tidak.

Grafik Ukuran properti diabaikan.

tongkat HDip: Menampilkan dipstick horizontal.
Widget ini dapat digunakan untuk menampilkan penggunaan disk.

Nilai: menentukan nilai dipstick saat ini.

Nilai Min: tentukan nilai minimum dipstick.

Nilai Maks: tentukan nilai maksimum dipstick.

Ukuran minimum 30x11 dikenakan.

HSScrollBar: Menampilkan bilah gulir horizontal.

Nilai: posisi ibu jari.

Nilai Maks: batas atas Nilai.

Nilai Min: batas bawah Nilai.

Properti tinggi diabaikan dan lebar minimum dikenakan. Lebarnya harus
setidaknya rentang ditambah 37 jika semua nilai dapat dipilih misalnya min 0 dan
maksimal 10 memiliki rentang 11 dan oleh karena itu harus memiliki lebar minimum 48.

BarangDraw: Menampilkan ikon dan/atau string.

Judul: string untuk ditampilkan.

icon: ikon untuk ditampilkan.

Nilai Maks: x koordinat kursor.

Nilai Min: y koordinat kursor.

Ukuran dibuat cukup besar untuk memuat judul dan/atau ikon.

Daftar: Menampilkan daftar.
Daftar memungkinkan pengguna untuk memilih di antara berbagai opsi.

Nilai: menentukan opsi mana yang dipilih.

Nilai Min: Opsi pertama yang terlihat.

Judul: judul berisi opsi yang ditampilkan dalam daftar. Sintaksnya adalah sebagai berikut:
{Opsi 1|Opsi 2|...|Opsi N}. Semua menu ditampilkan di bagian atas jendela.

Tinggi minimum tiga item dikenakan dan lebarnya dibuat setidaknya
108.

menu: Menampilkan menu yang memungkinkan pengguna memilih opsi.
Item tipe Menu diletakkan dari kiri ke kanan di sepanjang bagian atas jendela.
Properti ukuran dan posisi diabaikan.

Nilai: menentukan opsi mana yang dipilih.

Judul: judul berisi opsi yang ditampilkan dalam menu. Sintaksnya adalah sebagai berikut:
{Opsi 1|Opsi 2|...|Opsi N}.

Gulir Mini: Menampilkan bilah gulir vertikal yang sangat kecil.

Nilai: posisi ibu jari.

Nilai Maks: batas atas Nilai.

Nilai Min: batas bawah Nilai.

Ukuran diatur ke 19x34.

Menu Popup: Menampilkan menu pop-up.

Nilai: menentukan opsi apa yang dipilih.

Judul: judul memiliki sintaks berikut: {Opsi 1|Opsi 2|...|Opsi N}."Opsi
1|Opsi 2|...|Opsi N" adalah menu pop-up yang ditampilkan saat menekan mouse
.

Properti ukuran diabaikan.

Tekan tombol: Menampilkan tombol tekan dengan ikon dan/atau string.

Judul: string ini memiliki sintaks berikut {Judul tombol|Opsi 1|Opsi
2|Opsi3|...|Opsi N}. "Opsi 1|Opsi 2|...|Opsi N" adalah menu pop-up yang
ditampilkan saat menekan tombol kanan.

icon: ikon untuk ditampilkan.

Tombol dibuat cukup besar agar sesuai dengan ikon dan atau label.

Tombol radio: Menampilkan tombol radio dengan string.

Judul: judul tombol radio.

Nilai: jika Nilai sama dengan 1, kotak dicentang jika tidak.

Properti ukuran diabaikan

empat persegi panjang: Menampilkan persegi panjang.
Jenis widget ini dapat digunakan untuk menghias jendela.

SwallowExec
Jenis widget ini menyebabkan FvwmScript menelurkan suatu proses, dan menangkap yang pertama
jendela yang nama atau sumbernya sama dengan Judul, dan tampilkan dalam skrip
jendela.

Judul: tentukan nama jendela yang akan diambil dan ditampilkan dalam skrip
jendela.

SwallowExec: tentukan baris perintah yang akan dieksekusi untuk menelurkan proses. Modul bisa
juga ditelan.

Nilai: menentukan tampilan perbatasan. Nilai yang mungkin: -1, 0, 1.

Ukuran dibuat minimal 30x30

BidangTeks: Menampilkan bidang input teks.
Bidang input teks dapat digunakan untuk mengedit string satu baris.

Judul: isi bidang teks.

Nilai: posisi titik sisip.

Nilai Min: posisi akhir seleksi.

Nilai Maks: karakter pertama yang terlihat dari judul

Properti tinggi diabaikan, lebar dibuat setidaknya 40 piksel lebih lebar
daripada isi awal.

V Dipstick: Menampilkan dipstick vertikal.

Nilai: menentukan nilai dipstick saat ini.

Nilai Min: tentukan nilai minimum dipstick.

Nilai Maks: tentukan nilai maksimum dipstick.

Ukurannya dibuat minimal 11x30.

VScrollBar: Menampilkan bilah gulir vertikal.

Nilai: posisi ibu jari.

Nilai Maks: batas atas Nilai.

Nilai Min: batas bawah Nilai.

Properti lebar diabaikan dan tinggi minimum dikenakan. Tingginya harus
setidaknya rentang plus 37 jika semua nilai dapat dipilih misalnya min 0
dan maksimal 10 memiliki jangkauan 11 dan oleh karena itu harus memiliki tinggi minimal 48.

INSTRUKSI


Berikut adalah deskripsi dari semua instruksi.

Sembunyikan Widget id : sembunyikan widget bernomor id.

Tampilkan Widget id: tampilkan widget bernomor id.

UbahNilai id1 id2
Tetapkan nilai widget bernomor id1 untuk id2.

UbahMaxValue id1 id2
Tetapkan nilai maksimum widget bernomor id1 untuk id2.

Ubah NilaiMin id1 id2
Tetapkan nilai minimum widget bernomor id1 untuk id2.

Ganti Judul id1 id2
Atur judul widget bernomor id1 untuk id2.

UbahJendelaJudul tali
Atur judul jendela menjadi tali.

UbahJendelaJudulDariArg angka
Atur judul jendela ke nilai angkaargumen skrip -th.

Ubah JudulLokal id1 id2
Sebagai ChangeTitle tetapi gunakan katalog lokal yang ditentukan dengan UseGettext.

UbahIkon id1 id2
Atur ikon widget bernomor id1 untuk id2.

UbahForeColor id1 {warna}
Atur warna latar depan widget bernomor id1 ke {warna}.

UbahBackColor id1 {warna}
Atur warna latar belakang widget bernomor id1 ke {warna}.

UbahWarnaSet id1 id2
Atur colorset dari widget bernomor id1 untuk id2. Menentukan widget 0 menetapkan
rangkaian warna jendela utama.

Ubah Posisi id1 x y
Pindahkan widget bernomor id1 ke posisi (x,y).

Ubah Ukuran id1 lebar tinggi
Atur ukuran widget bernomor id1 kepada (lebar,tinggi).

UbahFont id1 font baru
Atur font widget bernomor id1 untuk font baru.

Penunjuk Warp id
Warp pointer mouse ke widget bernomor id.

TulisToFile nama file {str1} {str2} dll
Tulis ke file nama file string yang merupakan gabungan dari semua argumen
str1, str2, Dll

Mengerjakan {Command args}
Jalankan perintah fvwm di dalam blok Do. Perintah fvwm apa pun seperti yang dijelaskan dalam
halaman manual fvwm2 dapat digunakan. Perintah dikirim dari modul ini ke fvwm main
program untuk diproses. Panjang perintah dan argumen tidak boleh melebihi 988
karakter.

Setel $adalah={str1} {str2} dll
Gabungkan semua argumen ke string dan atur variabel $adalah untuk string ini.

Keluar: keluar dari program.

KirimSinyal id1 id2
Kirim pesan bernomor id2 untuk widget id1.

KirimToScript skrip_id {str11} {str2} dll
Kirim pesan ke skrip yang diidentifikasi oleh id_script. Pesannya adalah
gabungan dari str1, str2...

kunci Nama kunci Mengubah id sig str1 str2 dll
Mengikat tombol keyboard ke instruksi

KirimSinyal id sig

dan menyetel "string terakhir" ke rangkaian str1, str2... (lihat bagian
fungsi LastString). Itu Nama kunci dan Pengubah bidang didefinisikan seperti dalam fvwm
Perintah kunci.

ARGUMEN


Sebagian besar perintah menggunakan argumen. Ada dua jenis argumen: angka dan string. SEBUAH
argumen numerik adalah nilai antara -32000 dan +32000. Sebuah string selalu
dikelilingi dengan kawat gigi. Variabel selalu dimulai dengan karakter "$" dan dapat berisi keduanya
angka dan string.

FUNGSI


Semua fungsi menggunakan argumen. Fungsi dapat mengembalikan string dan angka. Sintaksnya
adalah:
(fungsi argument1 argument2 dll)
Berikut adalah daftar lengkap argumen:

(Dapatkan Judul id)
Kembalikan judul widget bernomor id.

(DapatkanNilai id)
Kembalikan nilai widget bernomor saat ini id.

(Dapatkan NilaiMin id)
Kembalikan nilai Min saat ini dari widget bernomor id.

(DapatkanMaxValue id)
Kembalikan nilai Max saat ini dari widget bernomor id.

(Dapatkan Kedepan id)
Kembalikan nilai latar depan RGB saat ini dari widget bernomor id dalam format heksagonal
RRGGBB.

(Kembali id)
Kembalikan nilai latar belakang RGB saat ini dari widget bernomor id dalam format heksagonal
RRGGBB.

(Dapatkan Hilight id)
Kembalikan nilai hilight RGB saat ini dari widget bernomor id dalam format heksagonal
RRGGBB.

(Dapatkan Bayangan id)
Kembalikan nilai bayangan RGB saat ini dari widget bernomor id dalam format heksagonal
RRGGBB.

(Dapatkan Keluaran {str} int1 int2)
Jalankan perintah str, mendapatkan output standar dan mengembalikan kata yang ada di
baris int1 dan di posisi int2. Jika int2 sama dengan -1, GetOutput kembali
garis yang lengkap.

(JumlahToHex int)
Mengembalikan nilai heksadesimal dari int.

(HexToNum {str})
Mengembalikan nilai desimal dari str, str harus berupa nilai heksadesimal.

(Menambahkan int1 int2)
Mengembalikan hasil (int1+int2).

(Banyak int1 int2)
Mengembalikan hasil (int1*int2).

(Div int1 int2)
Mengembalikan hasil (int1/int2).

(StrSalinan {str} int1 int2)
Kembalikan string yang berada di antara posisi int1 dan int2. Misalnya, (StrCopy
{Halo} 1 2) mengembalikan {He}

(Peluncuran Skrip {str})
Fungsi ini meluncurkan skrip bernama str dan mengembalikan nomor identifikasi.
Nomor ini diperlukan untuk menggunakan fungsi SendToScript dan ReceiveFromScript.
String str berisi nama skrip dan beberapa argumen.

(GetScriptArgument {int})
Fungsi ini mengembalikan skrip argumen yang digunakan dalam fungsi LaunchScript. Jika
int sama dengan nol, GetScriptArgument mengembalikan nama skrip.

(DapatkanScriptAyah)
Fungsi ini mengembalikan nomor identifikasi ayah skrip.

(TerimaDariScript {int})
Fungsi ini mengembalikan pesan yang dikirim oleh skrip bernomor int.

(SisaDiv {int1 int2}): T
Fungsi ini mengembalikan sisa pembagian (int1/int2).

(Dapatkan Waktu)
Fungsi ini mengembalikan waktu dalam detik.

(DapatkanPid)
Fungsi ini mengembalikan id proses skrip.

(Dapatkan teks {str})
Fungsi ini mengembalikan terjemahan dari str dengan menggunakan katalog lokal yang ditentukan
dengan UseGettext.

(KirimMsgDanDapatkan {comId} {cmd} bool)
Mengirimkan perintah cmd dengan pengenal comId ke program eksternal yang siap untuk
berkomunikasi dengan skrip menggunakan protokol khusus untuk FvwmScript. Jika bool adalah 0
FvwmScript tidak menunggu jawaban dari program eksternal. Dalam hal ini
nilai yang dikembalikan adalah 1 jika pesan dapat dikirim ke program eksternal dan 0 jika
ini bukan kasusnya. Jika bool adalah 1, maka FvwmScript menunggu jawaban dari
program eksternal dan nilai baliknya adalah jawaban ini (baris tidak lebih dari 32000
karakter). Jika komunikasi gagal, nilai yang dikembalikan adalah 0. Lihat bagian
A KOMUNIKASI PROTOKOL untuk deskripsi protokol komunikasi yang digunakan.

(Mengurai {str} int)
dimana str harus berupa string dalam bentuk:
X1S1X2S2X3S3...SnXn
di mana Xn adalah angka yang berisi empat angka desimal dan di mana Sn adalah string dari
panjang persis Xn. Nilai yang dikembalikan adalah string Sint. Jika int di luar jangkauan
(misalnya, >n) nilai yang dikembalikan adalah string kosong. Jika str tidak dari yang ditentukan
bentuk, nilai pengembalian tidak dapat diprediksi (tetapi rata-rata kosong). Fungsi ini
berguna untuk menangani string yang dikembalikan oleh fungsi SendMsgAndGet.

(String Terakhir)
Fungsi ini mengembalikan "string kerja saat ini" untuk instruksi Kunci dan
Perintah SendString (lihat PERINTAH bagian). Saat startup string ini kosong, tapi
ketika pengikatan Kunci terdeteksi (masing-masing, perintah SendString diterima),
maka string ini diatur ke string yang terkait dengan instruksi (masing-masing,
ke perintah).

BERSYARAT LOOP


Ada tiga jenis loop bersyarat. Instruksi "Jika-Lalu-Lain" memiliki
sintaks berikut:
Jika $ToDo=={Buka xcalc} Lalu
Lakukan {Exec xcalc &} # Daftar instruksi
Lain
Mulai
Lakukan {Exec killall xcalc &} # Daftar instruksi
Lakukan {Exec echo xcalc kill > /dev/console}
Akhir
Bagian kedua "Else-Begin-End" adalah opsional. Jika loop hanya berisi satu instruksi,
Mulai dan Akhir dapat dihilangkan. Instruksi "While-Do" memiliki sintaks berikut:
Sementara $i<5 Do
Mulai
Set $i=(Tambahkan i 1) # Daftar instruksi
Akhir
Dua string dapat dibandingkan dengan "==" dan dua angka dapat dibandingkan dengan "<", "<=",
"==", ">=", ">". Loop "For-Do-Begin-End" memiliki sintaks berikut:
Untuk $i=1 Sampai 20 Do
Mulai
Lakukan {Exec xcalc &} # Daftar instruksi
Akhir

PERINTAH


Perintah fvwm berikut dapat dijalankan kapan saja

KirimKeModul Nama Skrip KirimString id sig str

itu mengirim ke modul apa pun dengan alias atau nama yang cocok Nama Skrip stringnya

KirimString id sig str

Ketika FvwmScript menerima pesan seperti itu, ia dikirim ke Widget id sinyal bernomor
sig dan tali str dapat diperoleh dengan fungsi LastString. Mari kita beri
contoh. Katakanlah Anda memiliki skrip MyScript dengan widget:
Gawit 50
Milik
Ketik Tombol Tekan
Judul {Keluar}
...
Utama
Pesan kasus dari

Klik Tunggal:
Mulai
Berhenti
Akhir

1:
Mulai
Setel $str = (String Terakhir)
Jika $str == {Keluar} Kemudian
Berhenti
Lain
UbahJudul 33 $str
Akhir

Akhir
Kemudian perintah
SendToModule MyScript SendString 50 1 str
memaksa MyScript untuk keluar jika str sama dengan "Keluar" dan jika tidak itu mengubah judul
Widget 33 ke str.

Perintah ini dapat digunakan untuk mengubah judul jendela

KirimKeModul Nama Skrip UbahJendelaJudul Judul baru [Judul lama]

itu menyebabkan modul apa pun dengan alias atau nama yang cocok Nama Skrip mengubah nya
judul jendela terkait ke Judul baru. Argumen opsional judul lama masuk akal ketika ada
adalah beberapa contoh dari skrip yang sama. Itu memungkinkan seseorang untuk menghindari mengubah nama
semua contoh ini dengan menentukan nama jendela yang terkait dengan skrip target
(lihat contoh di bawah).

+ I Modul FvwmScript FvwmStorageSend "/dev/hda6"
+ Saya Tunggu FvwmStorageSend
+ Saya SendToModule FvwmStorageKirim PerubahanWindowTitle HDA6
+ I Modul FvwmScript FvwmStorageSend "/dev/hda1"
+ Saya Tunggu FvwmStorageSend
+ I SendToModule FvwmStorageKirim PerubahanJendelaTitle HDA1 FvwmStorageKirim

Tanpa argumen FvwmStorageSend dalam kasus terakhir, perintah SendToModule akan memiliki
diubah menjadi HDA1 nama kedua instance FvwmStorageSend.

CONTOH


Anda akan menemukan contoh skrip di direktori konfigurasi fvwm.

FvwmScript-BellSetup, FvwmScript-KeyboardSetup, FvwmScript-PointerSetup dan FvwmScript-
ScreenSetup adalah kumpulan skrip yang mengubah pengaturan X. Skrip ini menyimpan preferensi
ke dalam file bernama ~/.xinit-fvwmrc (Jika Anda ingin menggunakan nama file lain, berikan sebagai
argumen pertama skrip). Jika Anda ingin memuat preferensi ini di setiap startup,
Anda harus menyertakan baris ".xinit-fvwmrc" di file .xinitrc (atau .xsession) Anda sebelum
mulai fvwm.

FvwmScript-BaseConfig memodifikasi fokus fvwm dan kebijakan mouse paging, penempatan jendela,
opacity dan fitur lain dari perintah pindahkan dan ubah ukuran, tarik-menarik dan bayangan
animasi. Skrip ini menyimpan preferensi ke dalam file bernama .FvwmBaseConfig di . pengguna
direktori data (yaitu, $HOME/.fvwm atau $FVWM_USERDIR jika disetel). Jika Anda ingin memuat ini
preferensi di setiap startup Anda harus menambahkan baris "Baca .FvwmBaseConfig" di fvwm Anda
berkas konfigurasi. Jika Anda ingin menggunakan nama file lain, berikan sebagai argumen pertama
dari naskah. Ketika Anda mengklik Ok atau Terapkan fungsi fvwm yang dapat Anda tentukan bernama
BaseConfigOkFunc atau BaseConfigApplyFunc disebut. Ini memungkinkan untuk memuat ulang tertentu
gaya aplikasi yang telah dihancurkan skrip (misalnya, AddToFunc BaseConfigOkFunc Saya Baca
Gaya Aplikasi Saya).

FvwmScript-Buttons adalah panel tombol yang dapat menggantikan FvwmButtons (skrip ini mendukung
menu popup dan membutuhkan xload, xclock, FvwmPager, TkDesk). FvwmScript-Colorset memungkinkan
Anda untuk mengedit colorset Anda (lihat FvwmTheme). FvwmScript-Date memungkinkan Anda mengatur tanggal dan
waktu. FvwmScript-FileBrowser adalah browser file yang digunakan oleh skrip lain. FvwmScript-
Temukan adalah ujung depan dasar untuk menemukan. FvwmScript-Quit memungkinkan seseorang untuk keluar dari fvwm, memulai kembali
fvwm atau pengelola jendela lainnya, atau matikan dan nyalakan ulang komputer. FvwmScript-
ScreenDump adalah dumper layar. FvwmScript-WidgetDemo adalah skrip contoh murni. Lihat
bagian berikutnya untuk FvwmScript-ComExample.

A KOMUNIKASI PROTOKOL


FvwmScript adalah bahasa pemrograman yang lemah (tapi sederhana). Jika Anda perlu berurusan dengan banyak
data dan/atau Anda perlu menggunakan algoritme kompleks, Anda harus menggunakan program eksternal (dalam perl
misalnya) dan "kirim" informasi yang diinginkan ke skrip FvwmScript Anda. Pertama
pendekatan adalah dengan menggunakan fungsi GetOutput. Ini sederhana tetapi Anda harus menjalankan kembali
program eksternal setiap kali Anda membutuhkan informasi darinya (dan ini dapat menyebabkan penampilan
masalah). Pendekatan kedua adalah dengan menggunakan fungsi SendMsgAndGet yang meluas
FvwmScript dengan menggunakan bahasa pemrograman apa pun yang dapat menangani pipa bernama (fifos). Kami
jelaskan solusi ini di bagian ini. (Pendekatan ketiga adalah menggunakan fvwm-themes-com dari
paket fvwm-themes, tetapi sebenarnya metode SendMsgAndGet adalah implementasi dari
fvwm-themes-com di dalam FvwmScript dan ini memberikan kinerja yang lebih baik).

Pada dasarnya, Anda memulai program "eksternal" (singkatnya program) dari FvwmScript Anda
skrip (singkatnya skrip). Program ini berjalan di latar belakang dan Anda menggunakan
SendMsgAndGet berfungsi dalam skrip Anda untuk mengajukan pertanyaan atau memberikan instruksi kepada
program. Program harus benar-benar menghormati protokol komunikasi tertentu. Pertama dari
semua ada pengenalnya comId untuk komunikasi, itu harus berisi id proses
skrip untuk implementasi protokol yang baik (gunakan fungsi GetPid dan pass
itu comId melalui opsi untuk program). Protokol menggunakan dua fifo, di pengguna fvwm
direktori, bernama: .tmp-com-in-comId dan .tmp-com-out-comId. Program harus membuat dan
dengarkan di .tmp-com-in-comId fifo. Kemudian, ketika FvwmScript menjalankan fungsi dari
bentuk:

Setel $jawaban = (KirimMsgAndGet {comId} {cmd} bool)

FvwmScript menulis cmd di fifo ini. Dengan cara ini program dapat membaca cmd dan bisa
jalankan tindakan yang sesuai (harus menghapus in fifo untuk mendukung multi-
komunikasi). Jika bool adalah 0, FvwmScript tidak menunggu jawaban dari program dan
kembalikan 1 jika tindakan sebelumnya berhasil dan 0 jika gagal (maka program harus "pergi
kembali" ke dalam fifo). Jika bool adalah 1, maka FvwmScript menunggu (20 detik) untuk jawaban dari
program dan pada gilirannya mengembalikan jawaban ke skrip (perhatikan bahwa bool tidak diteruskan ke
program karena harus tahu perintah mana yang membutuhkan jawaban). Untuk menjawabnya, program membuat
.tmp-com-out-comId fifo dan menulis jawabannya di atasnya. Program harus menunggu sampai
FvwmScript membaca jawabannya dan kemudian harus menghapus fifo keluar dan kembali ke in
fifo. Jawaban harus terdiri dari satu baris tidak lebih dari 32000 karakter (lihat
di fungsi Parse untuk menangani beberapa baris sebagai satu baris).

Cara sederhana untuk memahami protokol ini dan menulis skrip dan program yang menggunakannya adalah
untuk melihat contoh (tidak berguna) FvwmScript-ComExample dan fvwm-script-
ComExample.pl (yang dapat ditemukan di direktori data fvwm). Selain itu, implementasi ini
protokol memecahkan pertanyaan sebagai: Apa yang harus dilakukan jika skrip keluar karena alasan yang buruk?
Apa yang harus dilakukan jika program keluar karena alasan yang buruk? ...dll.

Gunakan FvwmScript online menggunakan layanan onworks.net


Server & Workstation Gratis

Unduh aplikasi Windows & Linux

  • 1
    Bootloader EFI semanggi
    Bootloader EFI semanggi
    Proyek telah pindah ke
    https://github.com/CloverHackyColor/CloverBootloader..
    Fitur: Boot macOS, Windows, dan Linux
    dalam UEFI atau mode lama di Mac atau PC dengan
    UE...
    Unduh bootloader Clover EFI
  • 2
    bersaturpms
    bersaturpms
    Bergabunglah dengan kami di Gitter!
    https://gitter.im/unitedrpms-people/Lobby
    Aktifkan repositori URPMS di . Anda
    sistem -
    https://github.com/UnitedRPMs/unitedrpms.github.io/bl...
    Unduh unitedrpms.dll
  • 3
    Tingkatkan Perpustakaan C++
    Tingkatkan Perpustakaan C++
    Boost menyediakan portabel gratis
    pustaka C++ peer-review. Itu
    penekanannya adalah pada perpustakaan portabel yang
    bekerja dengan baik dengan C++ Standard Library.
    Lihat http://www.bo...
    Unduh Boost C++ Libraries
  • 4
    VirtualGL
    VirtualGL
    VirtualGL mengalihkan perintah 3D dari a
    Aplikasi OpenGL Unix/Linux ke a
    GPU sisi server dan mengonversi
    merender gambar 3D menjadi aliran video
    dengan yang ...
    Unduh VirtualGL.dll
  • 5
    libusb
    libusb
    Perpustakaan untuk mengaktifkan ruang pengguna
    program aplikasi untuk berkomunikasi dengan
    perangkat USB. Pemirsa: Pengembang, Akhir
    Pengguna/Desktop. Bahasa Pemrograman:C.
    Kategori ...
    Unduh libusb.dll
  • 6
    menenggak
    menenggak
    SWIG adalah alat pengembangan perangkat lunak
    yang menghubungkan program yang ditulis dalam C dan
    C++ dengan berbagai level tinggi
    bahasa pemrograman. SWIG digunakan dengan
    berbeda...
    Unduh SWIG.dll
  • Lebih banyak lagi »

Perintah Linux

Ad