Site icon Goston's Blog

[UserScript] Feedly Key Remapper

在 Google 宣佈要關閉「Google Reader」時,我就開始改用「Feedly」來管理我所訂閱的網站。我常用的「Reeder for Mac」這套 Feed Reader 目前還沒有支援與「Feedly」同步的功能(未來會支援),因此目前在電腦上我主要都是透過「Feedly」的網站來閱讀所訂閱網站的文章。

「Feedly」的網站好用歸好用,但它有一點很麻煩,就是它的操作熱鍵只支援小寫,若是在大寫鎖定或中文輸入法下就會失去作用(Mac 下的情況是這樣,Windows 不知);這點對我在使用上造成了極大的困擾,用了幾個星期後發現實在太不方便,才想到要用 UserScript 來解決問題。

我懶得上「Userscripts.org」找解決這問題的 UserScript,反正程式碼很簡單,就自己動手寫了。由於寫得並不好,所以就不丟到「Userscripts.org」去丟人獻眼了。

下面是程式碼,有需要的人請自取。至於要怎麼使用,就自行 Google 啦!說明一下,我只對我常用的上一篇及下一篇文章(熱鍵:j、k)做處理,需要其它熱鍵的,自己找一下對應的 keyCode 加上去就行!另外我只在 Firefox 上測試過。

Feedly_Key_Remapper.user.js

// ==UserScript==
// @name        Feedly Key Remapper
// @namespace   https://www.goston.net/
// @description Map J and K to j and k
// @match       http://*.feedly.com/*
// @copyright   2013, Goston
// @version     1.0
// @require     http://code.jquery.com/jquery-1.9.1.min.js
// @grant       none
// ==/UserScript==

$(document).ready(function() {

    $(document).keypress(function(e) {
        var key = (e.keyCode ? e.keyCode : e.which);
        var target = e.target;
        var keyCode = null;

        if (key == 74) {
            keyCode = 106;
        } else if (key == 75) {
            keyCode = 107;
        }
        
        if (keyCode != null) {
            var keyEvt = document.createEvent("KeyboardEvent");
            keyEvt.initKeyEvent("keypress", true, true, null, false, false, false, false, 0, keyCode);
            target.dispatchEvent(keyEvt);
            keyEvt.stopPropagation;
            return false;
        }
        
        return true;
    });

});

 
以上。

Exit mobile version