Skip to content

v2.1.0-beta1

Pre-release
Pre-release
Compare
Choose a tag to compare
@danielcompton danielcompton released this 21 Aug 19:59

This release contains some features that have been long requested. It includes the work of three new contributors @nbelzer, @nieldm, and @isundaylee.

User Configuration

Screenshot 2020-07-25 at 12 48 24

Based on the work of @nieldm we have introduced configuration back into Vimari. The current implementation is basic and allows customization through a JSON file. This file can be found by opening Vimari.App and pressing the Open Configuration File button.

For more information about the feature check out #163 & #175.

Default configuration file
{
  "excludedUrls": "",
  "linkHintCharacters": "asdfjklqwerzxc",
  "detectByCursorStyle": false,
  "scrollSize": 50,
  "openTabUrl": "https://duckduckgo.com/",
  "modifier": "",
  "bindings": {
      "hintToggle": "f",
      "newTabHintToggle": "shift+f",
      "scrollUp": "k",
      "scrollDown": "j",
      "scrollLeft": "h",
      "scrollRight": "l",
      "scrollUpHalfPage": "u",
      "scrollDownHalfPage": "d",
      "goToPageTop": "g g",
      "goToPageBottom": "shift+g",
      "goToFirstInput": "g i",
      "goBack": "shift+h",
      "goForward": "shift+l",
      "reload": "r",
      "tabForward": "w",
      "tabBack": "q",
      "closeTab": "x",
      "openTab": "t"
  }
}

Normal and Insert mode

Users of Vi or Vimium are probably aware of the distinction between normal and insert mode. Each mode allows you to interact with the underlying content differently: normal mode isolates you from the website you are visiting, only allowing Vimari keybindings while insert mode does the opposite and allows you to interact with the websites own keybindings, ignoring the ones from Vimari. This mechanism was already used by Vimari for input fields, preventing link hints from showing up when you type an f or the page scrolling down when you type a j in an input field. Extending upon this mechanism we have introduced a proper distinction between normal and insert mode.

By default, you will enter a page in normal mode. Therefore you are isolated from any keybindings defined by the website you visit. As an example f on YouTube will no longer trigger the website functionality (maximizing the video player) and instead only trigger the action defined by Vimari (showing link hints). In normal mode you can interact with the page through Vimari by using any of the Vimari defined keybindings. You can scroll the page, open and switch between tabs, open links, etc. However there are times you may wish to use the underlying functionality of the website you are visiting, therefore you can enter insert mode by pressing i.

When you are in insert mode almost all of the Vimari shortcuts will be disabled. Instead, you are free to use the keybindings defined by the website. For example, on YouTube you could use f to toggle full-screen video, whereas previously this would trigger the link hints from Vimari. This is exactly what insert mode is meant for, Vimari takes a step back and lets you interact with the underlying content. Once you are done you can return to normal mode by pressing ESC.

For more information see #176.

Minor changes

  • Remove closeTabReverse action (#175).
  • Add goToFirstInput action on g i by default (by @isundaylee, #133).