İngilizceFransızcaİspanyolca

Ad


OnWorks favicon'u

FvwmScript - Bulutta Çevrimiçi

FvwmScript'i Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü üzerinden OnWorks ücretsiz barındırma sağlayıcısında çalıştırın

Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen FvwmScript komutudur.

Program:

ADI


FvwmScript - grafik kullanıcı arayüzü oluşturmak için modül

SİNOPSİS


FvwmScript, Fvwm tarafından oluşturulmalıdır. Komut satırından çalışmayacaktır.

TANIM


FvwmScript, aşağıdakiler gibi birçok grafik uygulama oluşturmanıza izin veren bir modüldür.
masaüstü aksesuarları, açılır menüleri olan düğme paneli, kalıcı iletişim kutuları... Başlangıçta,
FvwmScript komut satırında belirtilen dosyayı okur. Bu dosya şunları içerir:
senaryo. Bu komut dosyası, Fvwm'nin yapılandırma dosyasına dahil değildir.

Bir FvwmScript betiği klavye kullanılarak tamamen kontrol edilebilir. (Shift)-Sekme dolaşıyor
Widget'ların etrafında, Return bir fare tıklamasını simüle eder, oklar imleci hareket ettirir veya değiştirir
Menü ve PopupMenu için widget ve Escape "iptal eder" değerleri.

ÇAĞRI


FvwmScript, "Module FvwmScript name_of_script" satırı eklenerek çağrılabilir.
.fvwm2rc dosyası. "name_of_script" dosyası eğik çizgi ile başlayabilir, bu durumda
tam yol ve dosya okunur. "name_of_script" ile başlamıyorsa
eğik çizgi, FvwmScript birkaç farklı yerde görünecektir. .fvwm2rc şunları içeriyorsa:
komut satırı `*FvwmScript: Path_of_the_script_directory', FvwmScript bunu deneyecek
dizin. Bu işe yaramazsa, FvwmScript sistem yapılandırma dizinini dener ve
fvwm man'de "Oku" komutu altında açıklandığı gibi kullanıcı yapılandırma dizini
gidin.

FvwmScript olacaksa, FvwmScript'i başlatma komutu kendi başına bir satıra yerleştirilebilir.
fvwm'nin başlatılması sırasında ortaya çıkar veya bir menüye veya fare düğmesine veya
daha sonra çağırmak için tuşa basın.

YAPILANDIRMA SEÇENEKLER


Yapılandırma dosyasında aşağıdaki komutlar kullanılabilir (bkz. fvwm(1), bölüm MODÜL
KOMUTLAR detaylar için). Yalnızca ilgili komut dosyası komutları değilse kullanılırlar.
komut dosyasında kullanılır.

*FvwmScript: Varsayılan Yazı Tipi yazı tipi
Kullanılacak varsayılan yazı tipini belirtir. Bu komutla veya
Yazı tipi komutuyla komut dosyası, sabit yazı tipi varsayılır.

*FvwmScript: VarsayılanFore renk
Kullanılacak varsayılan ön plan rengini belirtir. Bununla belirtilmemişse
komutunda veya ForeColor komutuyla betikte siyah kullanılır.

*FvwmScript: VarsayılanGeri renk
Kullanılacak varsayılan arka plan rengini belirtir. Bununla belirtilmemişse
komutunda veya BackColor komutuyla betikte grey85 kullanılır.

*FvwmScript: VarsayılanHilight renk
Kullanılacak varsayılan tepe rengini belirtir. Bu komutla belirtilmemişse
veya HilightColor komutuyla komut dosyasında grey100 kullanılır.

*FvwmScript: Varsayılan Gölge renk
Kullanılacak varsayılan gölge rengini belirtir. Bu komutla belirtilmemişse
veya ShadowColor komutunun olduğu komut dosyasında grey55 kullanılır.

*FvwmScript: Varsayılan Renk Kümesi renk seti
Modüle renk kümesini kullanmasını söyler renk seti varsayılan renk kümesi olarak. Bakın
Renk kümeleriyle ilgili ayrıntılar için FvwmTheme kılavuz sayfası.

ANATOMİ OF A SCRIPT


FvwmScript belirli bir programlama dili kullanır. Bir senaryo beş bölümden oluşur.
Başlık, pencerenin genel özelliklerini ve tümü için varsayılan özellikleri içerir.
widget'lar. İkinci kısım, programın başlangıcında yürütülen talimatları içerir.
senaryo. Üçüncü bölüm, her saniye yürütülen periyodik görevleri içerir. bu
dördüncü bölüm, çıkışta yürütülen talimatları içerir. Ve son bölüm içerir
widget'ların açıklaması. Bir pencere öğesi on bir tür öğeden oluşur: metin etiketleri,
tek satırlı metin girişleri, radyo düğmeleri, onay kutusu, basmalı düğmeler, yatay ve dikey
kaydırma çubukları, dikdörtgenler, açılır menüler, yutma işlemleri ve mini kaydırma çubukları.

HEADING OF A SCRIPT


Sözdizimi aşağıdaki gibidir:

Pencere Başlığı dizi
Bu seçenek pencere başlığını ayarlar.

Pencere boyutu genişlik yükseklik
Bu seçenek pencere boyutunu ayarlar. genişlik ve yükseklik sayısal değerlerdir.

Pencere Konumu x y
Bu seçenek pencere konumunu ayarlar. x ve y sayısal değerlerdir.

Ön renk {renk}
Bu seçenek, tüm widget'lar için varsayılan ön plan rengini ayarlar.

Arka plan rengi {renk}
Bu seçenek, tüm widget'lar için varsayılan arka plan rengini ayarlar.

VurguRengi {renk}
Bu seçenek, tüm widget'lar için varsayılan tepe rengini ayarlar.

gölge rengi {renk}
Bu seçenek, tüm widget'lar için varsayılan gölge rengini ayarlar.

renk kümesi {n}
Bu seçenek, tüm widget'lar için varsayılan renk kümesini ayarlar.

Yazı tipi {yazı tipi}
Bu seçenek, tüm widget'lar için varsayılan yazı tipini ayarlar.

KullanGettext [yerel_yol]
WindowLocaleTitle tarafından kullanılan gettext mekanizmasının kullanımını etkinleştirin,
LocaleTitle, ChangeLocaleTitle yönergeleri ve Gettext işlevi. Eğer hayırsa
argüman verildiğinde, varsayılan FvwmScript yerel ayar kataloğu kullanılır. Bu katalog
yerel ayar fvwm kurulum dizini altında ve metin etki alanı FvwmScript'tir
(install_prefix/share/locale/*/LC_MESSAGES/FvwmScript.mo). bunu sıfırlayabilirsiniz
ile tam olarak aynı şekilde kataloglayın veya bazı katalogları ekleyin. Yerel Yol fvwm
komutu (fvwm kılavuz sayfasına bakın). Bu talimat önce yerleştirilmelidir
WindowLocaleTitle talimatı.

PencereYerelBaşlığı dizi
Bu seçenek, pencere başlığını ayarlar, ancak ile tanımlanan yerel katalog(lar)ı kullanın.
Gettext'i kullanın.

BAŞLATMA


Bu bölüm, başlangıçta yürütülecek talimatları içerir. Örneğin:
İçinde
Başlamak
"cat tada.voc > /dev/dsp yürütün" yapın
Çarpıtmaİşaretçisi 1
$ToDo=Yeniden Başlat ayarla
Son
Bu talimatlar bir ses çalmak, işaretçiyi widget 1'e taşımak ve
$ToDo'yu her açılışta "Yeniden Başlat" olarak başlatın.

PERİYODİK GÖREVLER


Komut dosyasının bu bölümü, her saniye yürütülen talimatları içerir. İçin
örnek:
Periyodik Görevler
Başlamak
(RemainderOfDiv (GetTime) 10)==0 ise
{Exec xcalc} yapın
Son
Bu örnek, her 10 saniyede bir xcalc'in nasıl başlatılacağını gösterir.

L' ÇIK FONKSİYONU


Komut dosyasının bu bölümü, komut dosyası çıktığında yürütülen talimatları içerir.
(Çıkış komutundan sonra veya pencereyi Kapat, Sil veya Yok Et ile kapatırsanız)
fvwm komutu). Örneğin
ÇıkFunc
Başlamak
{Echo bye, bye} yap
Son
Komut dosyasını kapatmak için KillModule fvwm komutunu kullandıysanız, bazılarının
arasında bir iletişim bağlantısının varlığına dayanan komutlar veya işlevler.
komut dosyası ve fvwm yürütülmez (örneğin, Do komutu). Sorunsuz bir şekilde öldürmek için
fvwm komutuyla komut dosyası, bkz. KOMUTLAR Bölüm.

ANA OF A SCRIPT


Komut dosyasının ikinci bölümü, komut dosyasındaki her bir widget'ın açıklamasını içerir.
Her widget açıklamasının iki bölümü vardır. İlk bölüm, başlangıç ​​özelliklerini açıklar,
ikinci kısım, widget mesajları aldığında yürütülen talimatları içerir.
Tüm widget'lar mesaj gönderebilir ve alabilir. Tüm mesajlar bir numara ile tanımlanır. bu
kullanıcı pencere aracını çalıştırdığında bir pencere aracına "UserAction" mesajı gönderilir. sözdizimi
ilk kısım için:
Widget kimliği # 1 ile 999 arasında bir sayı dahil
Varlığınızı
dize yazın
Boyut genişliği yükseklik
xy konumu
Başlık { dize }
Değer int
Maksimum Değer int
MinDeğer int
yazı tipi dizesi
ForeColor { renk }
ArkaRenk { renk }
HilightColor { renk }
ShadowColor { renk }
renk kümesi int
Bayraklar bayraklarOpt
FlagsOpt seçeneği, aşağıdakilerden bir veya daha fazlasını içeren boşlukla ayrılmış bir listedir.
anahtar kelimeler Gizli, NoReliefString, Odak Yok, Sol / Merkez / Sağ. Gizli için kullanılır
widget'ın başlangıçta gizli olup olmadığını belirtin. NoReliefString dizelerin çizilip çizilmediğini belirtir
rahatlama ile veya değil. Odak Yok widget'ın klavye odağını alıp alamayacağını belirtir.
Varsayılan olarak tüm widget'lar, odaklanamayan Dikdörtgen, HDipstick ve VDipstick dışında odaklanır.
Ayrıca, NoFocus pencere öğeleri,
(Shift-) Sekme kısayolu. Sol / Merkez / Sağ metin konumunu belirtir. Bunlar geçerlidir
yalnızca ItemDraw, List, Menu, PopupMenu ve PushButton'a. Varsayılan Merkez ItemDraw için
ve Basma Düğmesi ve Sol diğer widget'lar için.

LocaleTitle ile tanımlanan yerel katalog(lar)ı kullanmak için Başlık yerine kullanılabilir.
Gettext'i kullanın.

Her widget'ın konumu belirtilmelidir.

İkinci bölümün sözdizimi şöyledir:
Ana
vaka mesajı
TekKlik:
Başlamak
# olacak talimatların listesi
# widget alındığında yürütülür
# "SingleClic" mesajı. Bu mesaj
# kullanıcı tarafından oluşturulur.
Son
1:
Başlamak
# olacak talimatların listesi
# widget alındığında yürütülür
# mesaj 1
Son
Son

LİSTESİ OF WIDGET'LAR


On beş çeşit widget vardır.

CheckBox: Bir dize ile onay kutusunu göster.

Başlık: onay kutusunun başlığı.

Özellik: Değer 1'e eşitse kutu işaretlenir, aksi takdirde değildir.

The beden mülkiyet göz ardı edilir.

HDip çubuğu: Yatay bir seviye çubuğu görüntüleyin.
Bu widget, disk kullanımını görüntülemek için kullanılabilir.

Özellik: seviye çubuğunun mevcut değerini belirtin.

MinDeğer: seviye çubuğunun minimum değerini belirtin.

Maksimum değer: seviye çubuğunun maksimum değerini belirtin.

Minimum 30x11 boyutu uygulanır.

HScrollBar: Yatay bir kaydırma çubuğu görüntüleyin.

Özellik: başparmağın konumu.

Maksimum değer: Değerin üst sınırı.

MinDeğer: Değerin alt sınırı.

Yükseklik özelliği yoksayılır ve minimum genişlik uygulanır. Genişlik olmalıdır
tüm değerler seçilebilir ise, en azından aralık artı 37, örneğin minimum 0 ve
maksimum 10, 11 aralığına sahiptir ve bu nedenle minimum genişliği 48 olmalıdır.

ÖğeÇizim: Bir simge ve/veya bir dize görüntüleyin.

Başlık: görüntülenecek dize.

ikon: görüntülenecek simge.

Maksimum değer: imlecin x koordinatı.

MinDeğer: imlecin y koordinatı.

Boyut, başlığı ve/veya simgeyi içerecek kadar büyük yapılmıştır.

Liste: Bir liste görüntüleyin.
Liste, kullanıcının çeşitli seçenekler arasından seçim yapmasını sağlar.

Özellik: hangi seçeneğin seçildiğini belirtin.

MinDeğer: İlk görünen seçenek.

Başlık: başlık, listede görüntülenen seçenekleri içerir. Sözdizimi aşağıdaki gibidir:
{Seçenek 1|Seçenek 2|...|Seçenek N}. Tüm menüler pencerenin üst kısmında görüntülenir.

Minimum üç öğe yüksekliği uygulanır ve genişlik en az
108

Menü: Kullanıcının bir seçenek seçmesine izin veren bir menü görüntüleyin.
Menü türündeki öğeler, pencerenin üst kısmı boyunca soldan sağa doğru düzenlenir.
Boyut ve konum özellikleri yoksayılır.

Özellik: hangi seçeneğin seçildiğini belirtin.

Başlık: başlık, menüde görüntülenen seçenekleri içerir. Sözdizimi aşağıdaki gibidir:
{Seçenek 1|Seçenek 2|...|Seçenek N}.

Mini Kaydırma: Çok küçük bir dikey kaydırma çubuğu görüntüler.

Özellik: başparmağın konumu.

Maksimum değer: Değerin üst sınırı.

MinDeğer: Değerin alt sınırı.

Boyut 19x34 olarak ayarlanmıştır.

Açılır menü: Bir açılır menü görüntüleyin.

Özellik: hangi seçeneğin seçildiğini belirtin.

Başlık: başlık aşağıdaki sözdizimine sahiptir: {Seçenek 1|Seçenek 2|...|Seçenek N}."Seçenek
1|Seçenek 2|...|Seçenek N", fareye basıldığında görüntülenen açılır menüdür
düğmesine basın.

Size özelliği yoksayılır.

Butona basınız: Bir simge ve/veya bir dize ile basma düğmesini görüntüleyin.

Başlık: bu dize aşağıdaki sözdizimine sahiptir {Title of the button|Seçenek 1|Seçenek
2|Seçenek3|...|Seçenek N}. "Seçenek 1|Seçenek 2|...|Seçenek N" açılır menüdür.
sağ tuşa basıldığında görüntülenir.

ikon: görüntülenecek simge.

Düğme, simgeye ve/veya etikete sığacak kadar büyük yapılmıştır.

RadioButton: Bir dize ile radyo düğmesini görüntüleyin.

Başlık: radyo düğmesinin başlığı.

Özellik: Değer 1'e eşitse kutu işaretlenir, aksi takdirde değildir.

size özelliği yoksayılır

Dikdörtgen: Bir dikdörtgen görüntüleyin.
Bu tür widget, pencereyi süslemek için kullanılabilir.

YutmakYürütme
Bu tür pencere öğesi, FvwmScript'in bir işlem oluşturmasına ve ilk işlemi yakalamasına neden olur.
adı veya kaynağı Başlık'a eşit olan ve komut dosyasında görüntüleyen pencere
pencere.

Başlık: komut dosyasında yakalanacak ve görüntülenecek pencere adını belirtin
pencere.

YutmakYürütme: işlemi başlatmak için yürütülecek komut satırını belirtin. Modüller
ayrıca yutulmalı.

Özellik: sınırın görünüşünü belirtin. Olası değer: -1, 0, 1.

Boyut en az 30x30 olacak şekilde yapılmıştır

Metin alanı: Bir metin giriş alanı görüntüleyin.
Metin giriş alanı, tek satırlık bir dizeyi düzenlemek için kullanılabilir.

Başlık: metin alanının içeriği.

Özellik: ekleme noktasının konumu.

MinDeğer: seçimin sonunun konumu.

Maksimum değer: başlığın ilk görünen karakteri

Yükseklik özelliği yok sayılır, genişlik en az 40 piksel daha geniş yapılır
ilk içerikten daha

VDip çubuğu: Dikey bir seviye çubuğu görüntüleyin.

Özellik: seviye çubuğunun mevcut değerini belirtin.

MinDeğer: seviye çubuğunun minimum değerini belirtin.

Maksimum değer: seviye çubuğunun maksimum değerini belirtin.

En az 11x30 ebatlarında yapılmıştır.

VScrollBar: Dikey kaydırma çubuğu görüntüler.

Özellik: başparmağın konumu.

Maksimum değer: Değerin üst sınırı.

MinDeğer: Değerin alt sınırı.

Genişlik özelliği yoksayılır ve minimum yükseklik uygulanır. Yükseklik
tüm değerler seçilebilir olacaksa, en az aralık artı 37 olmalıdır, örneğin minimum 0
ve maksimum 10'un aralığı 11'dir ve bu nedenle minimum yüksekliği 48 olmalıdır.

Nasıl Başvurulur?


İşte tüm talimatların açıklaması.

HideWidget'ı Gizle id : numaralı widget'ı gizle id.

ShowWidget'ı id: numaralı widget'ı göster id.

Değeri değiştir id1 id2
Numaralandırılmış widget'ın değerini ayarlayın id1 için id2.

Maksimum Değeri Değiştir id1 id2
Numaralandırılmış widget'ın maksimum değerini ayarlayın id1 için id2.

MinDeğeri Değiştir id1 id2
Numaralandırılmış widget'ın minimum değerini ayarlayın id1 için id2.

Başlığı değiştir id1 id2
Numaralandırılmış widget'ın başlığını ayarlayın id1 için id2.

Pencere Başlığını Değiştir dizi
Pencerenin başlığını şu şekilde ayarlayın: dizi.

Pencere Başlığını DeğiştirFromArg sayı
Pencerenin başlığını şu değere ayarlayın: sayı-th komut dosyası argümanı.

Yerel Başlığı Değiştir id1 id2
ChangeTitle olarak ama UseGettext ile tanımlanan yerel katalog(lar)ı kullanın.

Simgeyi Değiştir id1 id2
Numaralandırılmış widget'ın simgesini ayarlayın id1 için id2.

ÖnRengi Değiştir id1 {renk}
Numaralandırılmış widget'ın ön plan rengini ayarlayın id1 {renk}.

DeğiştirGeriRenk id1 {renk}
Numaralandırılmış widget'ın arka plan rengini ayarlayın id1 {renk}.

Renk Kümesini Değiştir id1 id2
Numaralandırılmış widget'ın renk setini ayarlayın id1 için id2. Widget 0'ın belirtilmesi,
ana pencere renk seti.

Pozisyonu Değiştir id1 x y
Numaralandırılmış widget'ı taşı id1 yerleştirmek (x,y).

Boyutu değiştir id1 genişlik yükseklik
Numaralandırılmış widget'ın boyutunu ayarlayın id1 To (genişlik,yükseklik).

Yazı Tipini Değiştir id1 yeni yazı tipi
Numaralandırılmış widget'ın yazı tipini ayarlayın id1 için yeni yazı tipi.

Çarpıtmaİşaretçisi id
Fare işaretçisini numaralı widget'a çevirin id.

Dosyaya Yaz Dosya {str1} {str2} vb
dosyaya yaz Dosya tüm argümanların birleşimi olan dize
str1, str2, vb.

Yapmak {komuta args}
Do bloğunun içindeki fvwm komutunu yürütün. bölümünde açıklandığı gibi herhangi bir fvwm komutu
fvwm2 kılavuz sayfası kullanılabilir. Komutlar bu modülden fvwm main'e gönderilir.
işleme programı. Komutun ve argümanların uzunluğu 988'i aşamaz
karakterler.

$ ayarlavar={str1} {str2} vb
Tüm argümanları bir dizgede birleştirin ve $ değişkenini ayarlayınvar bu dizeye.

Çık: programdan çıkın.

GönderSinyal id1 id2
numaralı bir mesaj gönder id2 widget'a id1.

SendToScript id_script {str11} {str2} vb
id_script tarafından tanımlanan komut dosyasına bir mesaj gönderin. mesaj şu
str1, str2'nin birleştirilmesi...

anahtar anahtar adı Niteleyici id sig str1 str2 vb
Talimata bir klavye tuşu bağlar

GönderSinyal id sig

ve "son dizeyi" str1, str2...'nin bitişine ayarlar (bkz.
LastString işlevi). bu anahtar adı ve Düzenleyiciler alanlar fvwm'deki gibi tanımlanır
Anahtar komutu.

ARGÜMANLAR


Komutların çoğu argüman kullanır. İki tür argüman vardır: sayılar ve dizeler. A
sayısal argüman -32000 ile +32000 arasında bir değerdir. Bir dize her zaman
parantezlerle çevrilidir. Değişkenler her zaman "$" karakteriyle başlar ve her ikisini de içerebilir.
sayılar ve dizeler.

FONKSİYONLAR


Tüm işlevler bağımsız değişkenler kullanır. İşlevler hem bir dize hem de bir sayı döndürebilir. sözdizimi
olduğu:
(işlev argümanı1 argüman2 vb.)
İşte argümanların tam listesi:

(Başlık Al id)
Numaralandırılmış widget'ın başlığını döndür id.

(Değer elde etmek id)
Numaralandırılmış widget'ın geçerli değerini döndür id.

(MinDeğer Al id)
Numaralandırılmış parçacığın geçerli Min değerini döndür id.

(GetMaxValue id)
Numaralandırılmış parçacığın geçerli Maks değerini döndür id.

(GetFore id)
Numaralandırılmış parçacığın geçerli RGB ön plan değerini döndür id altıgen biçiminde
RRGBBB.

(Geri gel id)
Numaralandırılmış parçacığın geçerli RGB arka plan değerini döndür id altıgen biçiminde
RRGBBB.

(GetHilight id)
Numaralandırılmış parçacığın geçerli RGB tepe değeri değerini döndür id altıgen biçiminde
RRGBBB.

(Gölgeyi Al id)
Numaralandırılmış parçacığın geçerli RGB gölge değerini döndür id altıgen biçiminde
RRGBBB.

(Çıktıyı Al {str} int1 int2)
Komutu yürütür str, standart çıktıyı alır ve içindeki kelimeyi döndürür
çizgi int1 ve pozisyonda int2. Eğer int2 -1'e eşittir, GetOutput döndürür
tam çizgi.

(NumToHex int)
onaltılık değerini döndür int.

(HexToNum {str})
ondalık değerini döndür str, str onaltılık bir değer olmalıdır.

(Ekle int1 int2)
(int1+int2).

(Çoklu int1 int2)
(int1*int2).

(Böl int1 int2)
(int1/int2).

(Kopyala {str} int1 int2)
int1 ve int2 konumu arasında olan dizeyi döndür. Örneğin, (StrCopy
{Merhaba} 1 2) {He} döndürür

(Başlat Komut Dosyası {str})
Bu işlev, str adlı komut dosyasını başlatır ve bir kimlik numarası döndürür.
Bu numara SendToScript ve ReceiveFromScript işlevlerini kullanmak için gereklidir.
str dizesi, komut dosyası adını ve bazı bağımsız değişkenleri içerir.

(GetScriptArgümanı {int})
Bu işlev, LaunchScript işlevinde kullanılan bağımsız değişken komut dosyasını döndürür. Eğer
int sıfıra eşittir, GetScriptArgument betiğin adını döndürür.

(GetScriptBabası)
Bu işlev, komut dosyası babasının kimlik numarasını döndürür.

(ReceivFromScript {int})
Bu işlev, int numaralı betik tarafından gönderilen mesajı döndürür.

(KalanOfBöl {int1 int2}): T
Bu işlev, bölümün geri kalanını döndürür (int1/int2).

(GetZamanı)
Bu fonksiyon zamanı saniye cinsinden döndürür.

(Pid'i Al)
Bu işlev, betiğin işlem kimliğini döndürür.

(metin al {str})
Bu işlev, çevirisini döndürür str tanımlanan yerel katalog(lar)ı kullanarak
UseGettext ile.

(MsgGönderVeGet {comID} {cmd} bool)
Komutu gönderir cmd tanımlayıcı ile comID hazır harici bir programa
FvwmScript'e özgü bir protokol kullanarak komut dosyasıyla iletişim kurun. Eğer bool 0 olduğu
FvwmScript, harici programdan yanıt beklemez. bu durumda
döndürülen değer, mesaj harici programa gönderilebiliyorsa 1, eğer mesaj harici programa gönderilebiliyorsa 0'dır.
olay bu değil. Eğer bool 1 ise, FvwmScript aşağıdakilerden bir yanıt bekler:
harici program ve dönüş değeri bu cevaptır (32000'den fazla olmayan bir satır
karakterler). İletişim başarısız olursa döndürülen değer 0'dır.
A İLETİŞİM PROTOKOL kullanılan iletişim protokolünün açıklaması için.

(Ayrıştırma {str} int)
nerede str formun bir dizesi olmalıdır:
X1S1X2S2X3S3...SnXn
burada Xn, dört ondalık basamak içeren sayılardır ve burada Sn,
uzunluk tam olarak Xn. Döndürülen değer S dizesidirint. Eğer int menzil dışında
(örn. >n) döndürülen değer boş dizedir. Eğer str belirtilenlerden değil
form, dönüş değeri tahmin edilemez (ancak ortalama olarak boş). bu fonksiyon
SendMsgAndGet işlevi tarafından döndürülen dizeleri işlemek için kullanışlıdır.

(SonDize)
Bu işlev, Anahtar komutu için "geçerli çalışan dizeyi" döndürür ve
SendString komutu (bkz. KOMUTLAR Bölüm). Başlangıçta bu dize boştur, ancak
bir Anahtar bağlama algılandığında (sırasıyla, bir SendString komutu alındığında),
daha sonra bu dize, talimatla ilişkili dizeye ayarlanır (sırasıyla,
komuta).

KOŞULLU DÖNGÜLER


Üç tür koşullu döngü vardır. "If-Then-Else" talimatında
aşağıdaki sözdizimi:
$ToDo=={Xcalc Aç} ise
{Exec xcalc &} yapın # Talimat listesi
başka
Başlamak
{Exec killall xcalc &} yapın # Talimat listesi
{Exec echo xcalc öldürüldü > /dev/console} yapın
Son
İkinci kısım "Else-Begin-End" isteğe bağlıdır. Döngü yalnızca bir komut içeriyorsa,
Başlangıç ​​ve Bitiş atlanabilir. "While-Do" talimatı aşağıdaki sözdizimine sahiptir:
$i<5 Yaparken
Başlamak
Set $i=(Add i 1) # Talimat listesi
Son
İki dize "==" ile ve iki sayı "<", "<=" ile karşılaştırılabilir,
"==", ">=", ">". "Başlangıç-Bitiş İçin" döngüsü aşağıdaki sözdizimine sahiptir:
$i=1 için 20 Yap
Başlamak
{Exec xcalc &} yapın # Talimat listesi
Son

KOMUTLAR


Aşağıdaki fvwm komutu herhangi bir zamanda yürütülebilir

Modüle Gönder Komut DosyasıAdı Dize Gönder id sig str

eşleşen ad veya adla herhangi bir modüle gönderir Komut DosyasıAdı dize

Dize Gönder id sig str

Bir FvwmScript böyle bir mesaj aldığında Widget'a gönderir. id numaralı sinyal
sig ve dize str LastString işleviyle elde edilebilir. bir verelim
örnek. Widget içeren bir MyScript komut dosyanız olduğunu söyleyin:
Widget 50
Varlığınızı
Tip Buton
Başlık {Çıkış}
...
Ana
vaka mesajı

TekKlik:
Başlamak
Çıkmak
Son

1:
Başlamak
$str = (LastString) ayarla
Eğer $str == {Çık} O zaman
Çıkmak
başka
Başlığı Değiştir 33 $str
Son

Son
Daha sonra komut
SendToModule MyScript SendString 50 1 str
str "Çıkış"a eşitse MyScript'i çıkmaya zorlar ve değilse başlığını değiştirir
Widget 33 - str.

Bu komut, pencere başlığını değiştirmek için kullanılabilir.

Modüle Gönder Komut DosyasıAdı Pencere Başlığını Değiştir yeniBaşlık [eskiBaşlık]

eşleşen ad veya ad içeren herhangi bir modülün Komut DosyasıAdı değiştirir
ilişkili pencere başlığı yeniBaşlık. isteğe bağlı argüman eskiTitle oradayken mantıklı
aynı betiğin birkaç örneğidir. Birinin adını değiştirmekten kaçınmasına izin verir.
tüm bu örnekler, hedef komut dosyasıyla ilişkili pencerenin adını belirterek
(aşağıdaki örneğe bakın).

+ I Modülü FvwmScript FvwmStorageSend "/dev/hda6"
+ Bekliyorum FvwmStorageGönder
+ SendToModule FvwmStorageSend ChangeWindowTitle HDA6
+ I Modülü FvwmScript FvwmStorageSend "/dev/hda1"
+ Bekliyorum FvwmStorageGönder
+ I SendToModule FvwmStorageSend ChangeWindowTitle HDA1 FvwmStorageSend

Son durumda FvwmStorageSend argümanı olmasaydı, SendToModule komutu
FvwmStorageSend'in her iki örneğinin adı HDA1 olarak değiştirildi.

ÖRNEKLER


fvwm yapılandırma dizininde komut dosyası örnekleri bulacaksınız.

FvwmScript-BellSetup, FvwmScript-KeyboardSetup, FvwmScript-PointerSetup ve FvwmScript-
ScreenSetup, X ayarlarını değiştiren bir dizi komut dosyasıdır. Bu komut dosyaları tercihleri ​​kaydeder
adlı bir dosyaya ~/.xinit-fvwmrc (Başka bir dosya adı kullanmak istiyorsanız, bunu
betiğin ilk argümanı). Bu tercihleri ​​her açılışta yüklemek istiyorsanız,
önce .xinitrc (veya .xsession) dosyanıza ".xinit-fvwmrc" satırını eklemeniz gerekir.
fvwm başlatılıyor.

FvwmScript-BaseConfig, fvwm odağını ve sayfalama fare politikasını, pencere yerleşimini,
opaklık ve taşıma ve yeniden boyutlandırma komutlarının diğer özellikleri, yakalama ve gölgeleme
animasyon. Bu komut dosyası, tercihleri ​​kullanıcının bilgisayarında .FvwmBaseConfig adlı bir dosyaya kaydeder.
veri dizini (yani, $HOME/.fvwm veya ayarlanmışsa $FVWM_USERDIR). Bunları yüklemek isterseniz
tercihler her başlangıçta fvwm'nize "Read .FvwmBaseConfig" satırını eklemelisiniz
yapılandırma dosyası. Başka bir dosya adı kullanmak istiyorsanız, bunu ilk argüman olarak verin.
komut dosyası. Tamam'a tıkladığınızda veya adlandırılmış olarak tanımlayabileceğiniz bir fvwm işlevi uygula
BaseConfigOkFunc veya BaseConfigApplyFunc çağrılır. Bu, belirli bir yeniden yüklemeye izin verir
betiğin yok ettiği uygulama stilleri (örneğin, AddToFunc BaseConfigOkFunc I Read
UygulamamStyle).

FvwmScript-Buttons, FvwmButtons'un yerini alabilecek bir düğme panelidir (bu komut dosyası şunları destekler:
açılır menüler ve xload, xclock, FvwmPager, TkDesk) gerektirir. FvwmScript-Colorset izin verir
renk kümenizi düzenlemeniz gerekir (bkz. FvwmTheme). FvwmScript-Date, tarihi ayarlamanıza ve
zaman. FvwmScript-FileBrowser, diğer komut dosyaları tarafından kullanılan bir dosya tarayıcısıdır. FvwmScript-
Bul, bulunması gereken temel bir ön uçtur. FvwmScript-Quit, birinin fvwm'den çıkmasına, yeniden başlatılmasına izin verir
fvwm veya başka bir pencere yöneticisi veya bilgisayarı kapatıp yeniden başlatın. FvwmScript-
ScreenDump bir ekran damperidir. FvwmScript-WidgetDemo saf bir örnek komut dosyasıdır. Bkz.
FvwmScript-ComExample için sonraki bölüm.

A İLETİŞİM PROTOKOL


FvwmScript zayıf (ama basit) bir programlama dilidir. çok şeyle uğraşmanız gerekiyorsa
veri ve/veya karmaşık algoritmalar kullanmanız gerekiyorsa, harici bir program kullanmalısınız (Perl'de
örneğin) ve istenen bilgiyi FvwmScript betiğinize "gönderin". İlk
yaklaşım GetOutput işlevini kullanmaktır. Bu basit ama
harici programdan her bilgiye ihtiyaç duyduğunuzda (ve bu, performanslara neden olabilir)
sorunlar). İkinci yaklaşım, genişleyen SendMsgAndGet işlevini kullanmaktır.
FvwmScript, adlandırılmış kanallarla (fifos) ilgilenebilen herhangi bir programlama dilini kullanarak. Biz
bu çözümü bu bölümde açıklayın. (Üçüncü bir yaklaşım, fvwm-themes-com'u şu adresten kullanmaktır:
fvwm-themes paketi, ancak aslında SendMsgAndGet yöntemi,
fvwm-themes-com'u FvwmScript içinde kullanır ve bu daha iyi performans sağlar).

Temel olarak, FvwmScript'inizden bir "harici" program (kısaca program) başlatırsınız.
komut dosyası (kısaca komut dosyası). Bu program arka planda çalışır ve siz
Komut dosyanızda soru sormak veya komut dosyasına talimat vermek için SendMsgAndGet işlevi
programı. Program kesinlikle belirli bir iletişim protokolüne uymalıdır. İlki
hepsinin bir tanımlayıcısı var comID iletişim için işlem kimliğini içermelidir
protokolün iyi bir şekilde uygulanması için komut dosyasının (GetPid işlevini kullanın ve
the comID programa bir seçenek aracılığıyla). Protokol, fvwm kullanıcısında iki fifo kullanır
adlı dizin: .tmp-com-in-comID ve .tmp-com-out-comID. Program oluşturmalı ve
.tmp-com-in- adresinden dinleyincomID fifo. Ardından, FvwmScript bir işlevi yürüttüğünde
form:

$Cevabı ayarla = (SendMsgAndGet {comID} {cmd} bool)

FvwmScript şunu yazar: cmd bu fifo üzerinde. Bu şekilde program okuyabilir cmd ve can
uygun eylemi yürütün (birden fazla işlemi desteklemek için in fifo'yu kaldırmalıdır).
iletişim). Eğer bool 0 ise, FvwmScript programdan yanıt beklemez ve
önceki eylemler başarılı olursa 1, başarısız olursa 0 döndürür (o zaman program "gitmelidir"
geri" in fifo'ya). bool 1 ise, FvwmScript gelen yanıt için (20 saniye) bekler
program ve sırayla komut dosyasının cevabını döndürür (buna dikkat edin bool geçmedi
program, hangi komutların bir cevaba ihtiyacı olduğunu bilmesi gerektiği için). Cevaplamak için, program oluşturur
.tmp-com-out-comID fifo ve cevabı üzerine yazar. Program şu zamana kadar beklemeli:
FvwmScript cevabı okur ve ardından çıkış fifosunu kaldırmalı ve girişe geri dönmelidir.
fifo. Cevap, 32000 karakterden fazla olmayan bir satırdan oluşmalıdır (bir göz atın
Birden çok satırı bir satır olarak işlemek için Ayrıştırma işlevinde).

Bu protokolü anlamanın ve onu kullanan komut dosyaları ve programlar yazmanın basit bir yolu,
(işe yaramaz) örneğine bir göz atmak için FvwmScript-ComExample ve fvwm-script-
ComExample.pl (fvwm veri dizininde bulunabilir). Üstelik bu uygulama
protokol soruları şu şekilde çözer: Komut dosyası kötü bir nedenle çıkarsa ne yapmalı?
Program kötü bir nedenle çıkarsa ne yapmalı? ...vb.

onworks.net hizmetlerini kullanarak FvwmScript'i çevrimiçi kullanın


Ücretsiz Sunucular ve İş İstasyonları

Windows ve Linux uygulamalarını indirin

  • 1
    Yonca EFI önyükleyici
    Yonca EFI önyükleyici
    Proje şuraya taşındı:
    https://github.com/CloverHackyColor/CloverBootloader..
    Özellikler: Önyükleme macOS, Windows ve Linux
    ile Mac veya PC'de UEFI veya eski modda
    AB...
    Clover EFI önyükleyicisini indirin
  • 2
    birleşik dev/dak
    birleşik dev/dak
    Gitter'de bize katılın!
    https://gitter.im/unitedrpms-people/Lobby
    URPMS deposunu etkinleştirin.
    sistem -
    https://github.com/UnitedRPMs/unitedrpms.github.io/bl...
    unitedrpms'i indirin
  • 3
    C ++ Kitaplıklarını Artırın
    C ++ Kitaplıklarını Artırın
    Boost, ücretsiz taşınabilirlik sağlar
    hakemli C++ kitaplıkları. bu
    taşınabilir kütüphanelere ağırlık verilmektedir.
    C++ Standart Kitaplığı ile iyi çalışır.
    Bakınız http://www.bo...
    Boost C++ Kitaplıklarını İndirin
  • 4
    SanalGL
    SanalGL
    VirtualGL, 3B komutları bir
    Unix/Linux OpenGL uygulaması bir
    sunucu tarafı GPU ve
    3D görüntüleri bir video akışına dönüştürdü
    hangisiyle ...
    VirtualGL'yi indirin
  • 5
    Libusb
    Libusb
    Kullanıcı alanını etkinleştirmek için kitaplık
    iletişim kurmak için uygulama programları
    USB cihazları. Kitle: Geliştiriciler, Son
    Kullanıcılar/Masaüstü. Programlama Dili: C.
    Kategoriler ...
    libusb'u indir
  • 6
    yudum
    yudum
    SWIG bir yazılım geliştirme aracıdır
    C ile yazılmış programları birbirine bağlayan ve
    Çeşitli yüksek seviyeli C++
    Programlama dilleri. SWIG ile birlikte kullanılır
    farklı...
    SWIG'i indirin
  • Daha fazla »

Linux komutları

Ad