surfingkeys-conf/README.tmpl.md

5.1 KiB

Maddy's SurfingKeys Configuration

Commitizen friendly

This is my personal configuration for the wonderful SurfingKeys browser extension.

Its primary features include keybindings for performing common actions on many popular sites, as well OmniBar support for auto-completing searches within sites (and growing)!

Table of Contents

  1. Bundled Search Engine Completions
  2. Installation Instructions
  3. Site-Specific Key Mappings
  4. Screenshots
  5. License

Features

Site-Specific Key Mappings

Key mappings have been included which can help you perform some common actions on many popular sites.

Some examples of these mappings are:

  • Star the current GitHub/GitLab repository: <site-leader>s
  • Follow a user on Twitter: <site-leader>f
  • Upvote a post/comment on Reddit/HackerNews <site-leader>s
  • Analyze the current Amazon Product using Fakespot <site-leader>fs

The mappings are activated by typing the <site-leader> (<space> by default), followed by the key sequence.

See conf.js for all of the mappings.

Bundled Search Engine Completions

There are currently Search Engine auto-completions.

You can access a Search Engine auto-completion by pressing the search leader key, which is a by default, followed by the search engine alias.

For example, to open the Wikipedia completion, you would type awp while in normal mode.

Alias Name Domain Screenshots

Installation

Dependencies
  • git
  • node
  • gulp
1. Clone
$ git clone http://github.com/b0o/surfingkeys-conf
$ cd surfingkeys-conf
2. NPM Install
$ npm install
3. (Optional) Private API Key Configuration

Some Search Engine Auto-Completions require private API keys for access. These keys are defined in conf.priv.js, which is not itself included in this repository. An example configuration containing instructions on how to generate each API key can be found in conf.priv.example.js.

Copy the example private configuration:

$ cp ./conf.priv.example.js ./conf.priv.js

Open ./conf.priv.js in your favorite editor and follow the instructions inside:

$ vim ./conf.priv.js
4. Gulp Build/Install
$ gulp install # OR "gulp build" to build to ./build/.surfingkeys without installing

This will build the final configuration file and place it at ~/.surfingkeys. If you already have a file in that location, make sure you back it up first!

5. Load your configuration in the SurfingKeys Extension
  • I. Visit chrome://extensions/ and enable Allow access to file URLs for the Surfingkeys extension

  • II. Open the SurfingKeys configuration page

  • III. Set the Load settings from option to point to the configuration file.

    Note: you must specify the full, absolute path; environment variables like $HOME or the tilde ~ won't work:

    • Linux: file:///home/{USERNAME}/.surfingkeys (replace {USERNAME} with your username)
    • macOS: file:///Users/{USERNAME}/.surfingkeys (replace {USERNAME} with your username)
    • Windows: file://%Homedrive%%Homepath%/.surfingkeys (This is a guess, please correct me if I'm wrong)
  • IV. Hack Away! If you ever make a change to any of your configuration files in the future, simply run gulp install again and your new configuration will automatically be loaded by SurfingKeys.

Option B: Manually copy/paste into the SurfingKeys configuration form
  • I. Copy the contents of ./build/.surfingkeys (or $HOME/.surfingkeys if you ran gulp install)
  • II. Open the SurfingKeys configuration page
  • III. Paste into the text box, then press save
  • IV. Repeat steps 4 & 5 after any changes you make to any of your configuration files.

Screenshots

Todo

  • Add CHANGELOG.md using conventional-changelog
  • Improve code organization
  • Ensure screenshots have a plain white background
  • Add additional screenshots
  • Simplify installation process
  • Feed the kittens

License

©2017-2018 Maddison Hellstrom - MIT License