Mencegah laman web terikat ke pintasan keyboard tertentu?

0

Saya ingin menghentikan pintasan laman web dari to (Opsi) saja.

Misalnya ini dapat terikat pada:

  • +V
  • + +K
  • + +E
  • + + +X
  • dll.

Tapi ini saya ingin mencegah terikat (sehingga default mereka mulai berlaku, saya telah mengaturnya sebagai kunci mati / tombol karakter khusus pada keyboard saya untuk mengetik simbol yang saya temukan penting):

  • +/
  • + +E
  • dll.
theonlygusti
sumber
Halaman web apa yang Anda tuju yang mengubah pengaturan sistem seperti binding kunci?
Allan
@ Allan idk apa yang Anda maksud dengan pengaturan "System", tetapi satu situs yang membuat saya frustasi adalah Google docs karena ia mengikat ke ⌥ /
theonlygusti
Yang pertama Anda - Cmd-V - adalah paste yang merupakan pengaturan sistem. Bagaimana itu diikat?
Allan
@ Allan Saya tidak tahu, saya mengarang contoh
theonlygusti

Jawaban:

1

Saya dengan ringan mengedit beberapa kode dari jawaban ini pada Pengguna Super untuk membuatnya mencegah pengambilan pintasan tertentu yang menggunakan kunci Opsi dan tidak menggunakan kunci Perintah. Anda ingin menambahkan kode kunci untuk setiap pintasan yang ingin Anda hindari mengikat ke daftar kode kunci. Saya memulainya dengan kode untuk dua contoh dalam pertanyaan Anda, /dan E(tidak peduli apakah pengubah lain ditekan atau tidak).

Anda dapat menginstal ini ke browser Anda menggunakan ekstensi seperti Tampermonkey.

// ==UserScript==
// @name           Disable option shortcuts
// @description    Stop websites from highjacking keyboard shortcuts
//
// @run-at         document-start
// @include        *
// @grant          none
// ==/UserScript==

// These are the keycodes for E and /. Find others to add by uncommenting the first alert line below and pressing that key.
keycodes = [69, 191];

(window.opera ? document.body : document).addEventListener('keydown', function(e) {
    // alert(e.keyCode ); //uncomment to find more keyCodes
    if (keycodes.indexOf(e.keyCode) != -1 && e.altKey && !(e.metaKey)) {
        e.cancelBubble = true;
        e.stopImmediatePropagation();
    // alert("Gotcha!"); //uncomment to check if it's seeing the combo
    }
    return false;
}, !window.opera);
Timothy Mueller-Harder
sumber
Saya ingin ⌘-⌥- / bisa diikat. Jika pengubah lain ditekan, itu akan melakukan apa yang dikatakan halaman.
theonlygusti
@theonlygusti Ini! Jika tombol perintah ditekan, skrip ini tidak akan melakukan apa pun. Ini hanya mencegah pengikatan kombinasi yang (1) menekan Option dan (2) tidak menekan Command. Jika Anda juga ingin menambahkan kontrol ke daftar itu, Anda dapat menambahkan && !(e.ctrlKey)ke ifpernyataan.
Timothy Mueller-Harder
@theonlygusti Sudahkah Anda mencoba ini? Apakah kekurangan dalam hal apa pun?
Timothy Mueller-Harder
Saya tidak benar-benar ingin harus menginstal manajer naskah pengguna jika itu bisa dihindari jadi saya hanya menunggu lebih lama. Saya pikir meskipun jika tidak ada yang terjadi dalam seminggu lagi saya akan membuat plugin Safari saya sendiri dengan kemampuan untuk mencegah pintasan yang ditentukan pengguna.
theonlygusti
0

Tidak ada cara umum untuk melakukan ini di macOS.

Anda mungkin dapat menulis sebuah plugin untuk browser tertentu yang Anda inginkan untuk fungsi ini - tetapi tidak ada plugin khusus seperti itu saat ini.

jksoegaard
sumber