Git Product home page Git Product logo

vimari's Introduction

Vimari

Keyboard Shortcuts extension for Safari

Download on the Mac App Store

GitHub release (latest by date) GitHub release (latest by date including pre-releases)

Vimari is a Safari extension that provides vim style keyboard based navigation. This lets you control Safari from your keyboard instead of having to use your mouse to open links, scroll, etc. The code is heavily based on vimium, a Chrome extension that provides much more extensive features.

Vimari attempts to provide a lightweight port of vimium to Safari, taking the best components of vimium and adapting them to Safari.

Releases

Safari 12 and above

Download on the Mac App Store

Safari 11 and below (DEPRECATED)

Installation

Safari 12 and above (macOS Mojave or above)

Mac App Store

  1. Download Vimari for free from the Mac App Store
  2. Launch Vimari.app
  3. Click "Open in Safari Extensions Preferences", Safari's Extension Preferences should open
  4. Make sure that the checkbox for the Vimari extension is ticked
  5. Go back to Vimari.app and press the reload button to check the status of the app. If it says "Enabled" then it is ready.
  6. You may need to relaunch Safari for the extension to work

Prebuilt binaries

  1. Download the latest version of Vimari
  2. Unzip it
  3. Move it to your /Applications folder
  4. Launch Vimari.app
  5. Click "Open in Safari Extensions Preferences...", Safari's Extension Preferences should open
  6. Make sure that the checkbox for the Vimari extension is ticked
  7. Go back to Vimari.app and press the reload button to check the status of the app. If it says "Enabled" then it is ready.
  8. You may need to relaunch Safari for the extension to work

Safari 11 (legacy Safari Extension method)

Download the Vimari 1.13 and double-click the file.

Usage

Settings

Modifier - Modifier key to hold down with your action key. If you leave it blank you don't need to hold down anything (default setting).

Excluded URLs - Comma separated list of website URLs you don't want to use vimari with. To exclude GitHub for example, provide the value github.com or http://github.com. It's smart and should handle all possible domain cases.

Link Hint Characters - Allowed characters to be used when generating link shortcuts.

Extra detection by cursor style - Detect clickable links by looking for HTML elements having cursor style set to "pointer".

Scroll Size - How much each scroll will move on the page.

Vimari v2.1+

Smooth Scroll - Scroll smoothly through the page.

Normal vs Insert mode - Isolate website keybindings from the Vimari keybindings. In normal mode you can use the Vimari keybindings while in insert mode you can use the websites own keybindings.

Transparent Bindings - Full keybinding isolation might not be your style, instead the transparent bindings setting (when enabled) allows you to use all non-Vimari-bound keys to interact with the web page as if you were in insert mode.

Multiple Bindings - You can bind multiple keybindings to a Vimari action. This is done by specifying an array of bindings in the configuration file, like so: "goToPageTop": ["g g", "shift+k"].

Keyboard Bindings

These bindings are the ones set by default, however you are able to change them in the settings.

In-page navigation

f       Toggle links
F       Toggle links (open link in new tab)
k       Scroll up
j       Scroll down
h       Scroll left
l       Scroll right
u       Scroll up half page
d       Scroll down half page
g g     Go to top of page
G       Go to bottom of page
g i     Go to first input

Page/Tab navigation

H       History back
L       History forward
r       Reload
w       Next tab
q       Previous tab
x       Close current tab
t       Open new tab

Vimari v2.1+

Vimari Modes

i       Enter insert mode
ESC     Enter normal mode
CTRL+[  Enter normal mode

Tips & Tricks

Vimari is built as a Safari Extension, this poses some limits on what is possible through the extension. However default Safari shortcuts can help you keep your hands at the keyboard. Some helpful ones are listed here:

  • Focus URL Bar l - This is a feature not available in Vimari, it is also helpful where extensions are not loaded (for example on topsites://). By focusing the URL Bar you can go to a website where the extension is loaded.

  • Reader mode R - Currently Vimari does not support entering Reader mode (due to API limitations), also navigation inside reader mode (for example using j or k) is not supported.

  • Re-open last closed tab T - Allows you to reopen a recently closed tab.

License

Copyright (C) 2011 Guy Halford-Thompson. See LICENSE for details.

vimari's People

Contributors

simeg avatar danielcompton avatar nbelzer avatar guyht avatar elmart avatar chrisltd avatar woahdae avatar clintxs avatar isundaylee avatar brandonhorst avatar clizzin avatar dlh avatar johnnycurran avatar marcosdsanchez avatar olivierlefloch avatar tonyduan avatar dependabot[bot] avatar nieldm avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.