Son zamanlarda bilgisayarımda fare ve klavye ayarlarını daha verimli kullanmak için bazı değişiklikler yapmak istedim. Bu süreçte, fare hızını ve klavye tekrarlama ayarlarını kolayca değiştirebileceğim bir bash betiği yazdım. Bu betik, kullanıcı dostu bir arayüz sunarak ayarları hızlı bir şekilde güncellememe yardımcı oldu.
Betiğin Özellikleri:
Fare Hızı Ayarı: Fare hızını 0 ile 10 arasında ayarlama imkanı.
Klavye Tekrarlama Hızı: Klavye tekrarlama hızını 10 ile 50 arasında ayarlama.
Klavye Gecikmesi: Klavye tekrarlama gecikmesini 200 ile 1000 ms arasında ayarlama.
Varsayılan Değerlere Dönme: Kullanıcı, ayarları varsayılan değerlere döndürebilir.
Ayarları Kaydetme: Yapılan ayarlar, bir yapılandırma dosyasına kaydedilir, böylece her seferinde ayarları yeniden yapmanıza gerek kalmaz.
Kullanım:
Betiği çalıştırmak için terminalde aşağıdaki adımları izleyebilirsiniz:
Betiği bir dosyaya kaydedin (örneğin,mouse_keyboard_settings.sh)
Dosyayı çalıştırılabilir hale getirin:
Kod: Tümünü seç
chmod +x mouse_keyboard_settings.sh
Betiği çalıştırın:
Kod: Tümünü seç
./mouse_keyboard_settings.sh
Herkese iyi çalışmalar!
KODLAMA İÇERİĞİ :
Kod: Tümünü seç
#!/bin/bash
# Varsayılan değerler
DEFAULT_MOUSE_SPEED=1
DEFAULT_KEYBOARD_REPEAT_RATE=25
DEFAULT_KEYBOARD_DELAY=500
# Hata mesajı gösteren fonksiyon
show_error() {
zenity --error --text="$1"
}
# Başarı mesajı gösteren fonksiyon
show_success() {
zenity --info --title="Başarı" --text="$1"
}
# Kullanıcı ayarlarını kaydetme fonksiyonu
save_settings() {
# Dosyada var olan değerleri güncelliyoruz
sed -i "s/^MOUSE_SPEED=.*/MOUSE_SPEED=$MOUSE_SPEED/" "$CONFIG_FILE"
sed -i "s/^KEYBOARD_REPEAT_RATE=.*/KEYBOARD_REPEAT_RATE=$KEYBOARD_REPEAT_RATE/" "$CONFIG_FILE"
sed -i "s/^KEYBOARD_DELAY=.*/KEYBOARD_DELAY=$KEYBOARD_DELAY/" "$CONFIG_FILE"
}
# Dosya yolu
CONFIG_FILE="$HOME/.mouse_keyboard_settings.conf"
# Dosya okuma işlemi
if [ -f "$CONFIG_FILE" ]; then
source "$CONFIG_FILE"
else
# Varsayılan değerleri kullan
MOUSE_SPEED=$DEFAULT_MOUSE_SPEED
KEYBOARD_REPEAT_RATE=$DEFAULT_KEYBOARD_REPEAT_RATE
KEYBOARD_DELAY=$DEFAULT_KEYBOARD_DELAY
fi
# Kullanıcıya Fare ve Klavye hızını değiştirme veya varsayılan değerlere dönme seçeneği sunma
if ! zenity --question --title="Ayarları Değiştir" --text="Fare ve Klavye hızını değiştirmek ister misiniz?" --ok-label="Evet" --cancel-label="Hayır"; then
exit 0
fi
# Fare hızını al
MOUSE_SPEED=$(zenity --scale --title="Fare Hızını Ayarlayın" --text="Fare Hızını Ayarlayın (0 - 10)" --min-value=0 --max-value=10 --value=$MOUSE_SPEED)
if [ $? -ne 0 ]; then
show_error "Fare hızı ayarlanamadı."
exit 1
fi
# Klavye tekrarlama hızını al
KEYBOARD_REPEAT_RATE=$(zenity --scale --title="Klavye Tekrarlama Hızını Ayarlayın" --text="Klavye Tekrarlama Hızını Ayarlayın (10 - 50)" --min-value=10 --max-value=50 --value=$KEYBOARD_REPEAT_RATE)
if [ $? -ne 0 ]; then
show_error "Klavye tekrarlama hızı ayarlanamadı."
exit 1
fi
# Klavye tekrarlama gecikmesini al
KEYBOARD_DELAY=$(zenity --scale --title="Klavye Tekrarlama Gecikmesi" --text="Klavye Tekrarlama Gecikmesini Ayarlayın (200 - 1000 ms)" --min-value=200 --max-value=1000 --value=$KEYBOARD_DELAY)
if [ $? -ne 0 ]; then
show_error "Klavye gecikmesi ayarlanamadı."
exit 1
fi
# Kullanıcıya Ayarları Kontrol Etme İmkanı Sunma
if ! zenity --question --title="Ayarları Kontrol Et" --text="Belirlediğiniz ayarları onaylıyor musunuz?\nFare Hızı: $MOUSE_SPEED\nKlavye Tekrarlama Hızı: $KEYBOARD_REPEAT_RATE\nKlavye Gecikmesi: $KEYBOARD_DELAY ms" --ok-label="Evet" --cancel-label="Hayır"; then
# Varsayılan ayarlara dönme seçeneği
if zenity --question --title="Varsayılan Ayarlara Dön" --text="Varsayılan ayarlara dönmek ister misiniz?" --ok-label="Evet" --cancel-label="Hayır"; then
MOUSE_SPEED=$DEFAULT_MOUSE_SPEED
KEYBOARD_REPEAT_RATE=$DEFAULT_KEYBOARD_REPEAT_RATE
KEYBOARD_DELAY=$DEFAULT_KEYBOARD_DELAY
show_success "Varsayılan ayarlara geri dönüldü."
fi
fi
# Fare hızını ayarla
xset m $MOUSE_SPEED
if [ $? -ne 0 ]; then
show_error "Fare hızı ayarlanırken bir hata oluştu. 'xset' komutunun doğru çalıştığından emin olun."
exit 1
fi
# Klavye hızını ayarla
xset r rate $KEYBOARD_DELAY $KEYBOARD_REPEAT_RATE
if [ $? -ne 0 ]; then
show_error "Klavye hızı ayarlanırken bir hata oluştu. 'xset' komutunun doğru çalıştığından emin olun."
exit 1
fi
# Ayarları kaydet
save_settings
# Kullanıcıya başarı mesajı göster
show_success "Fare ve Klavye hızınız başarıyla ayarlandı!\nFare Hızı: $MOUSE_SPEED\nKlavye Tekrarlama Hızı: $KEYBOARD_REPEAT_RATE\nKlavye Gecikmesi: $KEYBOARD_DELAY ms"







NOT:
Ayarların geçerli olup olmadığını anlamak için terminal komut satırına
Kod: Tümünü seç
xset q
Örnek Bir Komut Çıktısı :
Kod: Tümünü seç
Keyboard Control:
auto repeat: on key click percent: 0 LED mask: 00000000
XKB indicators:
00: Caps Lock: off 01: Num Lock: off 02: Scroll Lock: off
03: Compose: off 04: Kana: off 05: Sleep: off
06: Suspend: off 07: Mute: off 08: Misc: off
09: Mail: off 10: Charging: off 11: Shift Lock: off
12: Group 2: off 13: Mouse Keys: off
auto repeat delay: 599 repeat rate: 30
auto repeating keys: 00ffffffdffffbbf
fadfffefffedffff
9fffffffffffffff
fff7ffffffffffff
bell percent: 50 bell pitch: 400 bell duration: 100
Pointer Control:
acceleration: 5/1 threshold: 4
Screen Saver:
prefer blanking: yes allow exposures: yes
timeout: 0 cycle: 0
Colors:
default colormap: 0x20 BlackPixel: 0x0 WhitePixel: 0xffffff
Font Path:
/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,built-ins
DPMS (Energy Star):
Standby: 7200 Suspend: 7200 Off: 14400
DPMS is Disabled
Kod: Tümünü seç
auto repeat delay: 599 repeat rate: 30
satırı ile
Kod: Tümünü seç
acceleration: 5/1 threshold: 4
satır değerleri grafiksel işlemin sağlamasıdır.
NOT 2 :
Betiğe Uygun .desktop Dosyası
Kod: Tümünü seç
[Desktop Entry]
Version=1.0
Type=Application
Name=Klavye ve Fare Hızlandırıcısı
Comment=Fare ve klavye ayarlarınızı hızla değiştirin ve performansınızı artırın!
Exec=/path/to/your/mouse_keyboard_settings.sh
Icon=preferences-desktop-keyboard # İsteğe bağlı: uygun bir simge yolu
Terminal=false
Categories=Utility;Settings;