Глобальные сочетания клавиш и доступ к буферу обмена
Расширьте интеграцию с нативной OS: зарегистрируйте системные сочетания клавиш и научитесь читать данные из системного буфера обмена и записывать их туда из Electron.
«Глобальные сочетания клавиш и доступ к буферу обмена» — бесплатный урок Electron Desktop App Development на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Electron Desktop App Development, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Electron Desktop App Development содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Reaching Beyond the Window
Native apps often respond even when not focused. Global shortcuts and clipboard access make your Electron app feel truly native.
The globalShortcut Module
Use globalShortcut in the main process to listen for key combos system-wide, even when your app is in the background.
const { globalShortcut } = require('electron');
app.whenReady().then(() => {
globalShortcut.register('CommandOrControl+Shift+K', () => {
console.log('shortcut fired');
});
});Accelerator Strings
Shortcuts are described with accelerator strings like CommandOrControl+Shift+I, which map correctly across macOS and Windows.
function normalize(accel) {
return accel.replace('CommandOrControl', process.platform === 'darwin' ? 'Cmd' : 'Ctrl');
}
console.log(normalize('CommandOrControl+S'));Checking Registration
Use isRegistered() to avoid conflicts and verify your shortcut actually bound.
if (globalShortcut.isRegistered('CommandOrControl+Shift+K')) {
console.log('active');
}Unregistering Shortcuts
Always clean up on quit with globalShortcut.unregisterAll() in the will-quit event.
app.on('will-quit', () => {
globalShortcut.unregisterAll();
});The clipboard Module
The clipboard module reads and writes text, HTML, and images to the system clipboard.
const { clipboard } = require('electron');
clipboard.writeText('Copied from Electron');
console.log(clipboard.readText());Reading Clipboard Text
clipboard.readText() grabs whatever text the user last copied, enabling paste-aware features.
function preview(text) {
return text.length > 20 ? text.slice(0, 20) + '...' : text;
}
console.log(preview('A very long clipboard string here'));Clipboard Formats
Beyond text, you can read readHTML() and readImage(). Check availableFormats() first.
Combining Both Features
A common pattern: a global shortcut captures the current clipboard text and processes it instantly, like a quick-translate tool.
globalShortcut.register('CommandOrControl+Alt+T', () => {
const text = clipboard.readText();
process(text);
});Respecting the User
Global shortcuts are powerful but intrusive. Make them configurable and avoid hijacking common OS combos.
Security Note
The clipboard may hold sensitive data like passwords. Read it only when the user explicitly triggers an action.
Quick Check
Test your knowledge of global shortcuts.
Recap
You learned to register system-wide shortcuts with globalShortcut, read and write the system clipboard, combine them for native workflows, and handle cleanup and security responsibly.
Часто задаваемые вопросы
Урок «Глобальные сочетания клавиш и доступ к буферу обмена» бесплатный?
Да — полный текст урока «Глобальные сочетания клавиш и доступ к буферу обмена» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Electron Desktop App Development, подпишись на CoddyKit PRO. Курс Electron Desktop App Development содержит 4 уроков всего.
Чему я научусь в уроке «Глобальные сочетания клавиш и доступ к буферу обмена»?
Расширьте интеграцию с нативной OS: зарегистрируйте системные сочетания клавиш и научитесь читать данные из системного буфера обмена и записывать их туда из Electron. Ты практикуешь Electron Desktop App Development с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Electron Desktop App Development?
Предыдущий опыт не требуется. Electron Desktop App Development на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Глобальные сочетания клавиш и доступ к буферу обмена»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Electron Desktop App Development?
Да. Каждый урок Electron Desktop App Development включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Нативные и контекстные меню
- Диалоговые окна и уведомления
- Интеграция с оболочкой
- Глобальные сочетания клавиш и доступ к буферу обмена