Kbd
Kısayollar için, her platformda doğru simgeleri gösteren, düzgün sesli okunan ve gerçek tuşlar gibi basılan tuş başlıkları.
Press Command K to search, or hold Shift and watch the keys.
pnpm dlx shadcn@latest add https://hextaui.com/r/kbd.jsonBileşeni, HextaUI tema token'larını ve bileşenin bağımlı olduğu tüm HextaUI bileşenlerini ekler.
Henüz eklemediyseniz tema token'larını global CSS'inize ekleyin.
Bağımlılıkları yükleyin.
pnpm add @base-ui/react class-variance-authority cnAşağıdaki kodu kopyalayıp projenize yapıştırın.
components/ui/kbd.tsx lib/hotkey.ts İçe aktarma yollarını proje yapılandırmanıza uyacak şekilde güncelleyin.
Kısayolları keys ile bir kez yazın; Mac'te ⌘K, Windows ve Linux'ta Ctrl K olarak görünür. Ya da tam denetim için alt öğe olarak herhangi bir içerik verin.
Varyantlar
keycap ince bir kenara ve 1px'lik bir çıkıntıya sahiptir, böylece fiziksel bir tuş gibi görünür. flat, menüler gibi yoğun yerler için sakin bir dolgudur.
Boyutlar
sm küçük metinde, default gövde metninin yanında, lg ise başlıklarda veya tek başına durur.
Kısayollar
<KbdGroup /> bir kombinasyonu tuş başına bir tuş başlığına böler. Boşluk bir diziyi başlatır ve separator ile birleştirilir. keys ile kullanılan <Kbd /> tüm kombinasyonu tek bir başlıkta tutar.
Canlı tuşlar
listen ile gerçek tuşa basılı tutulurken tuş başlığı basılır. Yalnızca izler; yazdıklarınızı asla engellemez, geciktirmez veya değiştirmez. Harfler fiziksel tuşa göre eşleşir, bu yüzden Option ve Shift karışmaz.
Düğme içinde
Düğmenin içinde tuş başlığı renklerini düğmenin metninden alır, böylece her varyanta uyar.
Simgeler ve eylemler
Tuş adı olmayan eylemler için tuş başlığına simge koyun ve görsel olarak gizli bir etiket verin.
Sağdan sola
Kısayollar, klavyede basıldığı gibi, sağdan sola metin içinde de soldan sağa sırada kalır.
- ⌘ ve ⇧ gibi semboller ekran okuyuculardan gizlenir ve adlarıyla değiştirilir; böylece
keys="mod+shift+p""Command Shift P" olarak okunur. - Tuş başlıkları
<kbd>olarak işlenir, grup ise bunları başka bir<kbd>içine yerleştirir; HTML'de tuş kombinasyonu bu şekilde işaretlenir. - Bir kısayolu göstermek onu bağlamaz. Tuş işleyicisini kendiniz kaydedin.
- Basma efekti yalnızca dekorasyondur; azaltılmış hareket açıkken hareket yerine renk değişimi kullanılır. Hydration öncesinde her platform Apple sembollerini görür.
Her iki parça da bir <kbd> işler ve render ile onun niteliklerini kabul eder.
| Prop | Tür | Varsayılan |
|---|---|---|
keys"mod+shift+p" gibi + ile birleştirilen tuşlar. mod, Apple cihazlarında ⌘, diğerlerinde Ctrl'dür. alt, enter, escape, up ve space gibi adlar simgelere veya kısa sözcüklere dönüşür ve ekran okuyucular için okunabilir bir ad alır. | string | – |
variantAyarlanmadığında KbdGroup'tan devralınır. | "keycap" | "flat" | "keycap" |
sizeAyarlanmadığında KbdGroup'tan devralınır. | "sm" | "default" | "lg" | "default" |
listenGerçek tuşu basılı tutulurken tuş başlığını bastırır. keys ile veya alt öğe olarak düz bir tuş adıyla çalışır. | boolean | false |
render | ReactElement | (props, state) => ReactElement | <kbd> |
| Öznitelik | Açıklama |
|---|---|
data-slot="kbd" | CSS'te tuş başlıklarını hedefler. |
data-variant | Geçerli varyant. |
data-size | Geçerli boyut. |
data-pressed | Gerçek tuşa basılı tutulurken bulunur. |
| Prop | Tür | Varsayılan |
|---|---|---|
keys"mod+shift+p" gibi + ile birleştirilen tuşlar. mod, Apple cihazlarında ⌘, diğerlerinde Ctrl'dür. alt, enter, escape, up ve space gibi adlar simgelere veya kısa sözcüklere dönüşür ve ekran okuyucular için okunabilir bir ad alır. Boşluklar bir dizinin adımlarını ayırır. | string | – |
separatorBir dizinin adımları arasında gösterilir. | ReactNode | "then" |
variantİçerideki her tuş başlığına iletilir. | "keycap" | "flat" | – |
sizeİçerideki her tuş başlığına iletilir. | "sm" | "default" | "lg" | – |
listenİçerideki her tuş başlığına iletilir. | boolean | – |
render | ReactElement | (props, state) => ReactElement | <kbd> |
| Öznitelik | Açıklama |
|---|---|
data-slot="kbd-group" | CSS'te grupları hedefleyin. |
data-slot="kbd-separator" | Dizi adımları arasındaki metin. |
- HotkeyKlavye kısayollarını ayrıştırır, etiketler, duyurur ve eşleştirir; Apple platformlarında ⌘, diğer her yerde Ctrl kullanır.
- useHeldKeysŞu anda basılı tutulan tuşlar; tek bir pencere dinleyicisi kümesi üzerinden tüm abonelerle paylaşılır.
- AvatarBaş harf yedekli kullanıcı fotoğrafları, durum rozetleri ve sayıya daralan yığılmış gruplar.
- BadgeRenkli noktalı durum etiketleri, kayarak kapanan kaldırılabilir etiketler ve yeni değerine dönen sayaçlar.
- Cardİçeriği gruplamak için bir yüzey; üç varyant, kenardan kenara medya, eşmerkezli yarıçaplar ve tüm kartı kaplayan bağlantılar içerir.
- ChartTema renkli Recharts grafikleri; etiketleri tek bir yapılandırmadan okuyan bir tooltip ve gösterge, ayrıca görünür odak halkalı klavye gezintisi.
Kullanıldığı bloklar
Kbd üzerine kurulan bloklar.
- Prompt InputTek sakin bir satır olarak başlayan, yazdıkça karta dönüşen ve konuşma başladığında aşağı inen bir sohbet yazma alanı. Enter gönderir; Japonca ve Çince girişle de güvenle çalışır. Dosyaları yapıştırın, bırakın ya da seçin; önizleme, ilerleme ve yeniden deneme desteği vardır. @ dosya ekler, / ise imleçte açılan bir menüden komut çalıştırır. Sayı tuşlarıyla çalışan bir model seçici, Max'ta canlanan bir efor kaydırıcısı, bir bağlam halkası, canlı dalga biçimli dikte, araç çipleri, yanıt akarken yazılan mesajlar için bir kuyruk ve yeniden yüklemeden sağ çıkan taslaklar.
- Agent TodosBir ajanın planını çalışırken gösterin. Her adım backlog'dan yapılacak, devam eden ve tamamlanana ilerler; canlı süreler, başarısızlıklar ve arkasındaki araç çağrıları ile birlikte. Yazma alanının üstü için bir durum hapı, görebildiğiniz plan değişiklikleri ve çalışmadan önce planı düzenlemek için bir gözden geçirme adımı.
- ArtifactModelin ürettiğini gösteren, yapay zeka sohbetinin yanındaki panel. Web sayfaları, SVG'ler, belgeler ve kod canlı olarak akar, ardından korumalı bir önizlemeye geçer; karşılaştırıp geri yükleyebileceğiniz sürümler, yeniden boyutlandırılabilir bir bölme ve telefonlarda alt sayfa sunar.
- Chat SidebarBir sohbet uygulaması için kenar çubuğu. Üstte logo, arama ve Yeni sohbet, altında kendi bağlantılarınız, sabitlenmiş sohbetler, sohbetlerini göstermek için genişleyen projeler, güne göre gruplanmış son sohbetler ve hover ile sağ tık menüleri, satır içi yeniden adlandırma, geri alınabilir silme ve canlı yanıt durumları olan satırlar.