how to disable github hotkeys/keyboard shortcuts

通过Tampermonkey脚本实现禁用GitHub网站上的键盘快捷键功能。该脚本可在指定网站上运行,阻止网站劫持常用快捷键,适用于希望完全控制键盘操作的用户。

Tampermonkey, The chrome app, is able to achieve this. The script is as following.

// ==UserScript==
// @name           Disable keyboard shortcuts at github
// @description    Stop websites from highjacking keyboard shortcuts
//
// @run-at         document-start
// @include        *github.com*
// @grant          none
// Disable keyboard shortcuts on GitHub? - Web Applications Stack Exchange
// https://webapps.stackexchange.com/questions/51256/disable-keyboard-shortcuts-on-github
// where to find keycodes
// JavaScript Event KeyCodes
// http://keycode.info/
// ==/UserScript==

keycodes = [83] // Keycode for 's', add more keycodes to disable other key captures

document.addEventListener('keydown', function(e) {
//    alert(e.keyCode); //uncomment to find out the keycode for any given key
    if (keycodes.indexOf(e.keyCode) != -1)
    {
        e.cancelBubble = true;
        e.stopImmediatePropagation();
    }
    return false;
});

step by step

create a new script

这里写图片描述

paste the script

The previous scrip just disable the key s.
这里写图片描述

save the script

After saving the script and refreshing the github page, the keyboard shortcut s in github is disabled.

ref

Disable keyboard shortcuts on GitHub? - Web Applications Stack Exchange
https://webapps.stackexchange.com/questions/51256/disable-keyboard-shortcuts-on-github

JavaScript Event KeyCodes
http://keycode.info/

设置Chrome的自定义键盘快捷键(浏览至chrome:// extensions / shortcuts)。 此扩展程序增加了为Chrome设置25种不同的自定义键盘快捷键的功能。 没有此扩展程序,Chrome将无法更改或覆盖任何默认键盘快捷键。 根据设计,此扩展程序完全不需要任何其他Chrome权限。 一切都在Chrome中本地执行,因此不需要访问任何网站或数据。 所有25个键盘快捷键设置都是可选的,可以随时更改。 Chrome扩展程序当前限制为默认的4个“ suggested_key”。 前四个快捷方式具有默认值(可以更改),但是您需要为所需的任何其他快捷方式设置值。 可以在chrome:// extensions / shortcuts上更改所有键盘快捷键。 您可以通过地址栏或单击“键盘快捷方式”扩展程序图标导航到那里。 可以设置的键盘快捷键列表:选择上一个选项卡选择下一个选项卡向左移动当前选项卡向右移动当前选项卡打开Chrome书签(chrome:// bookmarks)打开Chrome下载(chrome:// downloads)打开扩展(chrome://扩展程序)打开扩展程序快捷方式(chrome:// extensions / shortcuts)打开Chrome标志(chrome:// flags)打开Chrome帮助(chrome:// help)打开Chrome历史记录(chrome:// history)打开Chrome设置(chrome: //设置)关闭当前标签页新建标签页从内存中卸载标签页复制当前标签页回到上一页前进至下一页将当前标签页移至第一页将当前标签页移至最后一页静音/取消静音当前标签页固定/取消固定当前标签页重新加载标签页新窗口新隐身窗口图标设计:Freepik从www.flaticon.com制作的扩展图标 支持语言:English
在Ubuntu系统中,禁用挂起功能可以通过多种方式实现,具体取决于用户希望在何种场景下禁用该功能。以下是几种常见的方法: ### 1. 禁用通过电源管理的自动挂起 Ubuntu 使用 `systemd` 来管理系统的电源状态,包括挂起(suspend)和休眠(hibernate)。可以通过修改 `logind.conf` 文件来禁用自动挂起功能。 编辑 `/etc/systemd/logind.conf` 文件: ```bash sudo nano /etc/systemd/logind.conf ``` 找到以下行并进行修改: ```ini HandleSuspendKey=ignore HandleLidSwitch=ignore ``` 保存文件后重启 `systemd-logind` 服务以应用更改: ```bash sudo systemctl restart systemd-logind ``` ### 2. 禁用通过图形界面的挂起选项 如果使用的是 GNOME 桌面环境,可以通过 GNOME 的设置工具来禁用挂起功能。安装 `dconf-editor` 工具并运行: ```bash sudo apt install dconf-editor dconf-editor ``` 导航到路径 `/org/gnome/settings-daemon/plugins/power/`,然后将 `sleep-inactive-ac-timeout` 和 `sleep-inactive-battery-timeout` 设置为 `0` 以禁用自动挂起。 ### 3. 完全移除挂起功能 如果希望完全禁用挂起功能,可以通过创建一个自定义的 `systemd` 服务来覆盖默认行为。创建一个新的服务文件: ```bash sudo nano /etc/systemd/system/disable-suspend.service ``` 添加以下内容: ```ini [Unit] Description=Disable Suspend [Service] Type=oneshot ExecStart=/bin/systemctl mask sleep.target [Install] WantedBy=multi-user.target ``` 启用并启动该服务: ```bash sudo systemctl enable disable-suspend.service sudo systemctl start disable-suspend.service ``` 此操作会阻止系统进入挂起状态,并且无法通过任何命令或快捷键触发挂起。 ### 4. 禁用通过内核参数 如果需要在系统启动时就完全禁用挂起功能,可以在 GRUB 配置中添加内核参数。编辑 `/etc/default/grub` 文件: ```bash sudo nano /etc/default/grub ``` 修改 `GRUB_CMDLINE_LINUX` 行以添加 `mem_sleep_default=deep` 参数: ```ini GRUB_CMDLINE_LINUX="... mem_sleep_default=deep" ``` 更新 GRUB 配置: ```bash sudo update-grub ``` 这种方法会直接影响系统的内存睡眠模式,从而限制挂起功能的行为。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值