Caps Lock ve Num Lock tuşları Durum Bildirim Betiği

Merhaba,
Kullandığım dizüstü bilgisayarda “caps lock” ve “num lock” tuşlarının durumunu gösteren ışıklı göstergeler olmadığı için çeşitli kaynaklar yardımı ile aşağıdaki kabuk betiğini yazdım. Fakat bir kaç sorum olacak:
1- Betik açılışta çalışıyor fakat; bir sonsuz döngü içinde sürekli tuş değişikliklerini kontrol ettiği için; işlemci kullanımı %2 ve RAM tüketimi ortalama 2.9 MB. Burada Daha etkili bir yöntem kullanılabilir mi? Örneğin bu tuşlara basıldığını sistemden bir olay olarak alabilir miyim?
2- Aslında uygulamayı bir panel eklentisi olarak yapmaktı niyetim, fakat kaynak bulamadım bu konuda önerebileceğiniz bir kaynak olabilir mi?

durumCL=$(xset -q | grep Caps | awk '{print $4}')
durumCLEski=$durumCL
durumNL=$(xset -q | grep Caps | awk '{print $8}')
durumNLEski=$durumNL

while true
do

durumCL=$(xset -q | grep Caps | awk '{print $4}')
durumNL=$(xset -q | grep Caps | awk '{print $8}')
if [ "$durumCLEski" != "$durumCL" ]
then
if [ "$durumCL" = "on" ]
then
notify-send -i  "/opt/tuslar/buyuk.png"  "  Caps Lock AÇIK" -t 1500
else
notify-send -i  "/opt/tuslar/kucuk.png"  "   Caps Lock KAPALI" -t 1500
fi
fi

if [ "$durumNLEski" != "$durumNL" ]
then
if [ "$durumNL" = "on" ]
then
notify-send -i  "/opt/tuslar/sayilar.png"  " Num Lock AÇIK" -t 1500
else
notify-send -i  "/opt/tuslar/oklar.png"  "  Num Lock KAPALI" -t 1500
fi
fi

durumCLEski=$durumCL
durumNLEski=$durumNL
done
2 Beğeni
xinput list

Komutu ile klavyenin id sini öğrenin. Örnek bende 9;

xinput test 9

komutunu çalıştırıp herhangi bir yerde bir tuşa basın.

Aşağıdaki eklenti ile hem Caps Lock değiştirdiğimde bildirim olarak görebiliyorum hem de caps lock açık iken sistem çekmecesinde ikon gözükmekte: (sayfada opensuse yazmasına bakmayınız debian paketi ve Parduss ile uyumlu)

1 Beğeni

xinput ta işimi görmez sanırım ya da kodun içinde nasıl kullanacağımı çözemedim. xinput karakter basan tuşlar dışında bir tepki vermiyor gibi.
Esas sorun, biraz daha test edince; yazdığım betik çalıştırıldığında kendi %2 cpu kullanımı yapsa da cpu kullanımı genelde %50-56 arası oluyor. Bu sıkıntıyı da, döngü içine “sleep 1” komutu ekleyerek işlemci genel kullanımı %2-6 arasına indirecek şekilde çözdüm aslında.
Bir diğer konuda hazır bir eklenti yerine kendim birşeyler yapmak. Mesela kendim bir eklenti nasıl yaparım? Ben kaynak bulamadım.
Cevap için teşekkür ederim.

Aslında aradığım böyle bir uygulama, bulamadığım için böyle bir yola başvurdum. Eklenti kaynak kodunu bulursam inceleyebilirim.
Cevap için teşekkür ederim.

1 Beğeni

Selamün Aleyküm
Kaynak kodunu buradan indirebilirsiniz.
https://download.opensuse.org/repositories/home:/stevenpusser:/indicator-keylock/Debian_9.0/indicator-keylock_3.0.2.orig.tar.xz

Merhaba,
Siteden .deb uzantılı kurulum paketini indirdiğinizde eğer gerekli kütüphaneler yok ise hata verebiliyor ve kendiliğinden de kuramıyor.
kurulum sırasında eğer bağımlı olduğu kütüphaneleri indiremediğinden hata verirse, istediği lib dosyalarını ayrıca kurmak gerekebiliyor. (ben şahsen böyle çözdüm)
iyi çalışmalar.

https://launchpad.net/ubuntu/+source/indicator-keylock/3.1.0/+build/9286560

işinizi görür sanırım

1 Beğeni

Bu konu son cevaptan 30 gün sonra otomatik olarak kapatıldı. Yeni cevap girilmesine izin verilmiyor.