全域快捷鍵
註冊全域快捷鍵。
支援平台
此插件需要至少 1.77.2 版本的 Rust
平台 | 層級 | 備註 |
---|---|---|
windows | ||
linux | ||
macos | ||
android | | |
ios | |
設定
安裝 global-shortcut 插件以開始使用。
使用專案的套件管理器新增依賴
npm run tauri add global-shortcut
yarn run tauri add global-shortcut
pnpm tauri add global-shortcut
deno task tauri add global-shortcut
bun tauri add global-shortcut
cargo tauri add global-shortcut
-
在
src-tauri
資料夾中執行以下命令,將插件新增至Cargo.toml
專案的依賴中cargo add tauri-plugin-global-shortcut --target 'cfg(any(target_os = "macos", windows, target_os = "linux"))' -
修改
lib.rs
以初始化插件src-tauri/src/lib.rs pub fn run() {tauri::Builder::default().setup(|app| {#[cfg(desktop)]app.handle().plugin(tauri_plugin_global_shortcut::Builder::new().build());Ok(())}).run(tauri::generate_context!()).expect("error while running tauri application");} -
使用您偏好的 JavaScript 套件管理器安裝 JavaScript Guest 綁定
npm install @tauri-apps/plugin-global-shortcutyarn add @tauri-apps/plugin-global-shortcutpnpm add @tauri-apps/plugin-global-shortcutdeno add npm:@tauri-apps/plugin-global-shortcutbun add @tauri-apps/plugin-global-shortcut
用法
global-shortcut 插件同時提供 JavaScript 和 Rust 版本。
import { register } from '@tauri-apps/plugin-global-shortcut';// when using `"withGlobalTauri": true`, you may use// const { register } = window.__TAURI__.globalShortcut;
await register('CommandOrControl+Shift+C', () => { console.log('Shortcut triggered');});
pub fn run() { tauri::Builder::default() .setup(|app| { #[cfg(desktop)] { use tauri_plugin_global_shortcut::{Code, GlobalShortcutExt, Modifiers, Shortcut, ShortcutState};
let ctrl_n_shortcut = Shortcut::new(Some(Modifiers::CONTROL), Code::KeyN); app.handle().plugin( tauri_plugin_global_shortcut::Builder::new().with_handler(move |_app, shortcut, event| { println!("{:?}", shortcut); if shortcut == &ctrl_n_shortcut { match event.state() { ShortcutState::Pressed => { println!("Ctrl-N Pressed!"); } ShortcutState::Released => { println!("Ctrl-N Released!"); } } } }) .build(), )?;
app.global_shortcut().register(ctrl_n_shortcut)?; } Ok(()) }) .run(tauri::generate_context!()) .expect("error while running tauri application");}
權限
預設情況下,所有潛在危險的插件指令和作用域都會被封鎖且無法存取。您必須修改 capabilities
設定中的權限才能啟用這些功能。
請參閱功能授權總覽以取得更多資訊,以及逐步指南以了解如何使用插件權限。
{ "$schema": "../gen/schemas/desktop-schema.json", "identifier": "main-capability", "description": "Capability for the main window", "windows": ["main"], "permissions": [ "global-shortcut:allow-is-registered", "global-shortcut:allow-register", "global-shortcut:allow-unregister" ]}
預設權限
預設情況下未啟用任何功能,因為我們認為快捷鍵可能本質上具有危險性,並且是否應註冊或取消註冊特定快捷鍵取決於應用程式本身。
權限表
識別符 | 描述 |
---|---|
|
啟用 is_registered 指令,無需任何預先設定的作用域。 |
|
拒絕 is_registered 指令,無需任何預先設定的作用域。 |
|
啟用 register 指令,無需任何預先設定的作用域。 |
|
拒絕 register 指令,無需任何預先設定的作用域。 |
|
啟用 register_all 指令,無需任何預先設定的作用域。 |
|
拒絕 register_all 指令,無需任何預先設定的作用域。 |
|
啟用 unregister 指令,無需任何預先設定的作用域。 |
|
拒絕 unregister 指令,無需任何預先設定的作用域。 |
|
啟用 unregister_all 指令,無需任何預先設定的作用域。 |
|
拒絕 unregister_all 指令,無需任何預先設定的作用域。 |
© 2025 Tauri 貢獻者。CC-BY / MIT