AutoHotkey'de Tuşları Yeniden Atama: Hızlı ve Güvenilir Yöntemler

Kerem Aydın·7 Temmuz 2026·⏱3 dk

AutoHotkey'de tuşları yeniden atamak için bir .ahk dosyası oluşturmanız, çalıştırmanız ve CapsLock::Ctrl (AHK v2/v1) gibi bir kural eklemeniz yeterlidir. Karmaşık senaryolar için hotkey bloklarını, sc/vk kodlarını ve uygulamalara göre #HotIf kullanımını tercih edin.

Hızlı Başlangıç: Betik İskeleti ve Temel Yeniden Atama

Önerilen seçenek AutoHotkey v2'dir (daha katı sözdizimi, daha az "sihir"). Minimum başlık bölümü:

#Requires AutoHotkey v2.0
#SingleInstance Force
SendMode "Input"

En basit yeniden atama (remap) — "tuş → tuş":

CapsLock::Ctrl
RAlt::AppsKey
XButton1::Backspace

Bir tuşu "boş eylem" ile devre dışı bırakabilirsiniz:

RWin::Return

Gereksiz yere Ctrl/Alt/Win tuşlarını devre dışı bırakmayın; kendinizi alışkın olduğunuz kombinasyonlardan mahrum bırakabilirsiniz. Acil durum çıkışı ekleyin (aşağıya bakın).

AHK'de Değiştirici Tuş Gösterimleri

GösterimAnlamı
^Ctrl
!Alt
+Shift
#Win

Kombinasyonların yeniden atanmasına örnekler:

^x::^c      ; Ctrl+X → Ctrl+C
#+s::#s     ; Win+Shift+S → Win+S

AHK v1 için not: Mantık aynıdır, ancak bloklar genellikle farklı yazılır; betik "başlamazsa" sürümü ve #Requires yönergesini kontrol edin.

Yeniden Atama Değil de Mantık Gerektiğinde: Send, Basılı Tutma ve sc/vk

Tuş dizileri göndermeniz gerekiyorsa hotkey bloğu ve Send kullanın:

F6:: {
    Send "^v"
    Sleep 150
    Send "{Enter}"
}

Popüler bir seçenek olan "Tek dokunuşta Esc, basılı tutulduğunda Ctrl olarak CapsLock":

CapsLock:: {
    KeyWait "CapsLock", "T0.18"
    if (ErrorLevel) {
        Send "{Ctrl down}"
        KeyWait "CapsLock"
        Send "{Ctrl up}"
    } else {
        Send "{Esc}"
    }
}

Kural, klavye düzeni veya standart dışı bir klavye nedeniyle "bozuluyorsa", neredeyse her zaman tuş adı yerine sc (tarama kodu) ile bağlamak işe yarar.

Tarama Kodu (sc) ve Sanal Tuş (vk): Hangisini Seçmeli?

  • scXXX — fiziksel tuşa (konuma) bağlama.
  • vkXX — Windows koduna bağlama.

Tarama koduna göre yeniden atama örneği:

sc029::Esc

VK/SC değerlerini öğrenmek için AutoHotkey menüsünde Key history (Tuş Geçmişi) öğesini açın ve ilgili tuşa basın.

Belirli Bir Programda Sadece Yeniden Atama: #HotIf

#HotIf WinActive("ahk_exe notepad.exe")
CapsLock::Esc
#HotIf

Böylece çakışmalardan kaçınırsınız: editörde bir davranış, oyunda/iş yazılımında başka bir davranış.

Tanılama ve Güvenli Kullanım

Betikleri anında kapatmak için bir "panik düğmesi" ekleyin:

F12::ExitApp

Yeniden atama çalışmıyorsa şunları kontrol edin:

  • betiğin çalıştığından (sistem tepsisindeki simge);
  • AHK sürümünün sözdizimine uygun olduğundan (#Requires AutoHotkey v2.0);
  • aynı tuş için yinelenen kuralların olmadığından;
  • hedef uygulamanın yönetici olarak çalıştığından (bu durumda betiğin de genellikle aynı haklarla çalışması gerekir);
  • oyunlarda/anti-hile yazılımlarında giriş yakalamanın engellenebileceğinden — sc deneyin ve/veya kuralları sadece oyun dışında uygulayın.

Sık Yapılan Hatalar

  • v1/v2 karıştırılması ve "sessiz" betik veya hatalar alınması.
  • ExitApp acil durum tuşu olmadan Win/Ctrl/Alt tuşlarının devre dışı bırakılması.
  • Yeniden atama gereken yerde Send yazılması (sonuç olarak değiştirici tuşlar taşınmaz ve "basılı tutma sırasında tekrar" çalışmaz).
  • Farklı klavye düzenlerinde (özellikle dizüstü bilgisayarlarda) tuş adına bağlanılması, oysa sc/vk gerekmesi.
  • #HotIf koşulunun #HotIf satırıyla kapatılmaması ve kuralların diğer uygulamalara "sızması".

SSS

İki tuşun yerini "değiştirebilir" miyim?
Evet, iki satır ile:

a::b
b::a

Neden CapsLock::Return CapsLock'u devre dışı bırakır?
Parametresiz Return, "hiçbir şey yapma" anlamına gelir, yani orijinal eylem engellenir.

Hangisi daha güvenilir — vk mı yoksa sc mi?
Farklı klavye düzenlerinde aynı fiziksel konum için genellikle sc daha güvenilirdir. Windows mantığı/özel tuşlar için bazen vk daha kullanışlıdır.