localkeymode.js 添削

他人の書いたコードにあれこれ言えるほど大した人間では無いけど、気になったので指摘しておきますよ。CodeReposとかにアップされていたら勝手に直せるのだけど...

オートコマンドのLocationChangeを利用して、各URL毎にマップを追加/削除できるプラグイン。定義を一気に登録出来るので有用だと思う。

ただ、ソース中のドキュメントが間違っている。

/*
liberator.globalVariables.localKeyMappings=
[
  ['^http://www\.nicovideo\.jp/watch/', [
    ['p', ':nicopause'],
    ...
  ]
]
*/

(注:簡略化して書いた)
の部分で、正規表現と思われる部分。後にnew RegExpにてRegExpオブジェクトに変換されるのだが、\.は"."そのものではなく任意の一文字でしかない。書くならば、'^http://www\\.nicovideo\\.jp/watch/'とすべきである。理由は...分かるよね?

それと、コード中の改行コードがCRLFとLFが混在している。たぶん、IDEの自動改行と手動改行の違いだと思う。

最後に、好みの問題だけど、Array#mapとかArray#forEachを使うともう少しコードがすっきりしそうな感じがする。