SEKME ve <tab> arasındaki fark nedir?


15

Ben okuyordum belgelere Ben tetik tuşu tanımlanır bölüme geldiğinde, Yasnippet modu için:

Öyle görünüyor ki Yasnippet küçük modu aşağıdakileri kullanarak TABçalıştırılacak anahtarı tanımlar yas-expand:

(define-key yas-minor-mode-map (kbd "<tab>") 'yas-expand)
(define-key yas-minor-mode-map (kbd "TAB") 'yas-expand)

Arasındaki fark nedir <tab>ve TAB? (Bunu Google'da denedim ama net bir açıklama bulamadım)

Yanıtlar:


9

Emacs genellikle <tab>(tek anahtar) 'ı TAB( C-i) çevirse de, bağlayabilir <tab> ve TABfarklı şeylere yapabilirsiniz:

(global-set-key (kbd "<tab>") #'proced)
(global-set-key (kbd "TAB") #'indent-for-tab-command)

2
Anlıyorum, ama neden Yasnippet gerek tanımlamak yok hem <tab>ve TAB?
— Håkon Hægland

3
@ HåkonHægland, onları global haritada farklı komutlara bağlarsanız, emacs birini diğerine çevirmeyi durdurur (küçük mod haritalarında bile), böylece yasnippet her iki durumda da bağlanır.
— Malabarba

1
@Malabarba Yani hem tanımlarsanız <tab>ve TABilişkili komutu çalıştırmak için tek yol TAByazmaktır C-i?
— Håkon Hægland

2
Bağlandığınız <tab>komuttan farklı bir komuta bağlanırsanız TAB, "Sekme" tuşuna bastığınızda elde edeceğiniz şey Emacs'a hangi / ne gönderdiğine bağlıdır. Eğer C-i(aka TAB) gönderirse , TABbağlayıcıyı alırsınız . Eğer gönderirse <tab>, onun bağlayıcı olsun. (Ve evet, bağlayıcılığı C-ielde etmek için her zaman vurabilirsiniz TAB.)
— Drew

1
Farklı hakkında daha fazla tarihsel bilgi TABtuşları ile verilmektedir StreakyCobraiçinde bu spacemacs github konuda. Cevabınıza bu bilgilerin bir kısmını dahil etmek isteyebilirsiniz.
— Håkon Hægland
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.