Klavye kısayollarını menü öğelerine bağlama

Klavye kısayolunu özel menü komutuna bağlamak için paketin .vsct dosyasına bir girdi eklemeniz gerekir. Bu konuda, klavye kısayolunu özel bir düğme, menü öğesi veya araç çubuğu komutuyla eşleme ve klavye eşlemesinin varsayılan düzenleyicide nasıl uygulanacağı veya özel bir düzenleyiciyle nasıl sınırlanacağı açıklanmaktadır.

Mevcut Visual Studio menü öğelerine klavye kısayolları atamak için bkz . Klavye kısayollarını tanımlama ve özelleştirme.

Tuş bileşimi seçme

Visual Studio'da birçok klavye kısayolu zaten kullanılıyor. Yinelenen bağlamaları algılamak zor olduğundan ve öngörülemeyen sonuçlara da neden olabileceğinden, aynı kısayolu birden fazla komuta atamamalısınız. Bu nedenle, bir kısayolu atamadan önce kullanılabilirliğini doğrulamak iyi bir fikirdir.

Klavye kısayolunun kullanılabilirliğini doğrulamak için

  1. Araçlar>Seçenekleri>Ortamı penceresinde Klavye'yi seçin.

  2. Içinde yeni kısayol kullan seçeneğinin Genel olarak ayarlandığından emin olun.

  3. Kısayol tuşlarına basın kutusuna, kullanmak istediğiniz klavye kısayolunu yazın.

    Kısayol Visual Studio'da zaten kullanılıyorsa, Şu anda tarafından kullanılan Kısayol kutusu, kısayolunun şu anda çağırdığı komutu gösterir.

  4. Eşlenmeyen tuşlar bulana kadar farklı tuş bileşimlerini deneyin.

    Dekont

    Alt kullanan klavye kısayolları bir menü açabilir ve doğrudan komut yürütmeyebilir. Bu nedenle, Alt içeren bir kısayol yazdığınızda şu anda tarafından kullanılan Kısayol kutusu boş olabilir. Seçenekler iletişim kutusunu kapatıp tuşlara basarak kısayolunun menüyü açmadığını doğrulayabilirsiniz.

    Aşağıdaki yordamda, menü komutuyla var olan bir VSPackage'niz olduğu varsayılır. Bunu yaparken yardıma ihtiyacınız varsa, Menü komutuyla uzantı oluşturma bölümüne göz atın.

Komuta klavye kısayolu atamak için

  1. Paketiniz için .vsct dosyasını açın.

  2. henüz mevcut değilse'nin <Commands> ardından boş <KeyBindings> bir bölüm oluşturun.

    Uyarı

    Anahtar bağlamaları hakkında daha fazla bilgi için bkz . Keybinding.

    <KeyBindings> bölümünde bir <KeyBinding> girdi oluşturun.

    guid ve id özniteliklerini çağırmak istediğiniz komutun özniteliklerine ayarlayın.

    Özniteliği Controlmod1, Alt veya Shift olarak ayarlayın.

    KeyBindings bölümü şuna benzer olmalıdır:

    <KeyBindings>
        <KeyBinding guid="<name of command set>" id="<name of command id>"
            editor="guidVSStd97" key1="1" mod1="CONTROL"/>
    </KeyBindings>
    
    

    Klavye kısayolunuz ikiden fazla tuş gerektiriyorsa ve key2 özniteliklerini ayarlayınmod2.

    Çoğu durumda Shift ikinci değiştirici olmadan kullanılmamalıdır çünkü basılması alfasayısal tuşların çoğunun büyük harf veya simge yazmasına neden olur.

    Sanal anahtar kodları, işlev tuşları ve Geri Al tuşu gibi bunlarla ilişkilendirilmiş bir karaktere sahip olmayan özel anahtarlara erişmenize olanak tanır. Daha fazla bilgi için bkz . Sanal anahtar kodları.

    Komutu Visual Studio düzenleyicisinde kullanılabilir hale getirmek için özniteliğini editor olarak guidVSStd97ayarlayın.

    Komutu yalnızca özel bir düzenleyicide kullanılabilir hale getirmek için özniteliğini editor , özel düzenleyiciyi içeren VSPackage'ı oluştururken Visual Studio Paket Şablonu tarafından oluşturulan özel düzenleyicinin adıyla ayarlayın. Ad değerini bulmak için özniteliği "editorfactory" ile biten bir <GuidSymbol> düğümün name bölümüne bakın<Symbols>. Bu, özel düzenleyicinin adıdır.

Örnek 1

Bu örnek, Ctrl+Alt+C klavye kısayolunu adlı MyPackagepakette adlı cmdidMyCommand bir komuta bağlar.

<CommandTable>
. . .
<Commands>
. . .
</Commands>
<KeyBindings>
  <KeyBinding guid="guidMyPackageCmdSet" id="cmdidMyCommand"
      key1="C" mod1="CONTROL" mod2="ALT" editor="guidVSStd97" />
</KeyBindings>
. . .
</CommandTable>

Örnek 2

Bu örnek, Ctrl+B klavye kısayolunu adlı TestEditorprojede adlı cmdidBold bir komuta bağlar. Komut yalnızca özel düzenleyicide kullanılabilir, diğer düzenleyicilerde kullanılamaz.

<KeyBinding guid="guidVSStd97" id="cmdidBold" editor="guidTestEditorEditorFactory" key1="B" mod1="Control" />