Pintasan keyboard

useKeymap, urutan tombol, overlay bantuan ?, petunjuk tombol, dan palet perintah.

Deklarasikan pintasan sekali dengan useKeymap. Text.js mengarahkannya, mencantumkannya dalam overlay ?, menampilkannya di footer, dan membuatnya bisa dicari dalam palet perintah.

Langsung80×18 · booting Turbolog…tsx
preview://keymap:1
useKeymap(  {    "j, down": { label: "Next", run: next, hint: true },    "k, up": { label: "Previous", run: previous },    "g g": { label: "Go to top", run: top },    "ctrl+s": { label: "Save", run: save, hint: true },  },  { group: "Navigation" },);return (  <>    <StatusBar right={<Text color="subtle">main</Text>}>      <KeyHints />    </StatusBar>    <CommandPalette commands={commands} />    <KeyHelp />  </>);

useKeymap

SintaksArti
ctrl+kPengubah: ctrl alt shift meta mod
mod+k⌘ atau Ctrl, mana pun yang ditekan
j, downAlternatif
g gUrutan (1 detik antarpenekanan tombol)
GHuruf kapital menyiratkan Shift
?Tombol karakter dicocokkan berdasarkan karakternya

Nilainya berupa handler, atau binding dengan label, group, hint, disabled, dan noRepeat. Binding tanpa label tetap berfungsi, tetapi tidak muncul dalam overlay bantuan.

useKeymapBindings() mengembalikan binding berlabel yang sedang aktif, untuk footer dan menu buatan Anda.

Keymap berjalan melalui useInput, jadi aturan biasa berlaku: input yang mendapat fokus diutamakan, tombol yang cocok menghentikan propagasi, dan <Modal> yang terbuka menonaktifkan binding di luarnya. Teruskan { priority, global, isActive } untuk mengubahnya.

<KeyHelp>

Tekan ? untuk melihat semua binding berlabel, dalam kelompok. Daftar ini menampilkan binding yang aktif di tempat overlay dibuka.

<KeyHelp keys="?" title="Keyboard shortcuts" />

<KeyHints> dan <StatusBar>

<KeyHints /> menampilkan binding bertanda hint: true, atau items yang ditentukan secara eksplisit. <StatusBar> adalah footer satu baris dengan slot right.

<StatusBar right={<Text color="subtle">▼ iad1</Text>}>  <KeyHints items={[{ keys: "ctrl+k", label: "commands" }]} /></StatusBar>

<Kbd>mod+k</Kbd> me-render satu tombol. formatKeys("ctrl+shift+p") menghasilkan ⌃⇧P di macOS dan ctrl+shift+P di platform lain.

<CommandPalette>

Ctrl+K (atau Ctrl+P) membuka peluncur dengan pencarian fuzzy untuk perintah Anda dan semua binding berlabel, dengan huruf yang cocok disorot.

<CommandPalette  commands={[{ id: "theme", label: "Toggle theme", group: "View", run: toggleTheme }]}/>
PropDeskripsi
commands{ id, label, group?, keys?, keywords?, run }[]
keysPintasan untuk membuka (bawaan ctrl+k, ctrl+p; null untuk menonaktifkan)
includeKeymapTampilkan binding keymap (bawaan true)
open / onOpenChangeTerkontrol

Palet menutup sebelum menjalankan perintah, sehingga perintah bisa membuka modalnya sendiri. fuzzyMatch dan fuzzyFilter diekspor untuk daftar buatan Anda.

Edit halaman ini di GitHub