Releases: Jelmerro/Vieb
Vieb 6.1.0
Vieb
- Added mouse feature "screenshotframe" which allows you to drag the screenshot frame to a specific position
- Added visual feedback for follow feature of the mouse using new highlight on hover
- Make special mouse button dragging resize the screenshot frame by changing the width and height instead of position arguments
- Examples with custom commands are now in a separate example file that isn't used by default, due to it's explicit and non-native nature
- Fixed crash on uploading files due to Electron bug in beta 4
- Fixed characters with different naming in Electron compared to JavaScript and Vim not being recognized as such in mappings
Other
- Electron 15.0.0-beta.7 (was 15.0.0-beta.4)
- Chromium 94.0.4606.31 (unchanged)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 6.0.0
Vieb
- Added setting "suspendbackgroundtab" to toggle if tabs opened in the background should be suspended (on by default)
- Added setting "tabopenmuted" to control if new tabs should be muted (default off, can also be set for background tabs only)
- Added setting "tabreopenmuted" to control if reopened tabs should keep their muted state (default is "remember")
- Added startup option to control the autoplay policy of media in webpages (default changed to require document interaction)
- Added make "!" behind close commands (close, lclose, rclose) also close pinned tabs regardless of the "closablepinnedtabs" setting
- Added DOM attribute "focus" that gets set on body, this can be used in themes to change styling when (un)focused
- Added action "toggleAlwaysOnTop" to toggle the always on top state of a window, will try to use the native method for it
- Added suspend toggle option to the contextmenu when right-clicking on a tab
- Added command "nohlsearch" to hide the search but not clear the query (as done with emptySearch)
- Added support for zooming the page with the mouse by scrolling while holding Control (similar to regular browsers) if mouse is enabled
- Added double clicking on a tab (or the tabbar) now opens a new tab, at the end or next to it, depending on tabnexttocurrent
- Added action "p.moveToMouse" to start pointer mode at the current mouse position
- Added setting "permissioncertificateerror" to ask or even allow custom/invalid certificates (default remains to block them)
- Added actions "menuTop", "menuBottom", "menuSectionUp" and "menuSectionDown" to give more flexibility of movement inside the menu
- Added setting "searchpointeralignment" to control where the pointer should align to when moving between searches in pointer mode
- Added actions "nextSuggestionSection" and "prevSuggestionSection" to jump between section in the explore mode suggestions
- Added setting "menusuggest" to control if suggestions for explore and command mode should have a dropdown menu
- Added feature "copyselect" to the "mouse" setting for automatically copying selected text to the clipboard (disabled by default)
- Added actions "scrollLeftMax" and "scrollRightMax" to scroll the page to the absolute maximum left or right
- Added command "screenshot" to save screenshots of the page to the downloads folder or a custom location, optionally of a specific page region
- Added command "screencopy" to copy screenshots of the page to the clipboard, optionally of a specific page region
- Added actions "moveTabStart" and "moveTabEnd" to move a tab all the way to the start or the end of the tabbar
- Added many default mappings common in other browsers to the default mappings (if they don't conflict), including numpad mappings
- Link color is now also taken from the current colorscheme for unstyled pages, making links more readable by default
- Setting "startuppages" now accepts optional container name, pinned status and muted status options using "~"
- Unsupported startup arguments are now passed to Chromium, which makes running Vieb on wayland possible
- Logo is now an SVG image with a slightly bolder font for the letters
- Strip packaged builds of unused assets by only including files using opt-in filters
- Search actions are now applied to all visible splits
- Use workarea instead of entire screen for detecting snapped windows
- Improve reliability of the mousefocus and top of page hover actions
- Make "nextSearchMatch" and "previousSearchMatch" move the pointer to the search match when called from pointer mode
- Newtab related actions in pointer mode are now prefixed with "t" instead of "n" to make room for searching with "n" and "N"
- Firefox release versions in firefoxmode to more realistic numbers because of recent Firefox release date delays
- Same domain check was improved to strip subdomains if needed (for both firefoxmode=google and the new certificateerror caching)
- Improved scroll position detection when searching which supports auto scrolling before finding the match and after (Electron doesn't do this in a fixed order)
- Improved algorithm for finding a matching tab based on text now matches the suggestions more accurately for buffer-like commands
- Setting "commandhist" and "explorehist" now optionally and by default store commands/navigations persistently
- Changed native clipboard actions to custom JavaScript actions which also translate spaces to "%20" for cutting and copying urls
- Mouse setting now accepts a list of features to enable instead of being a boolean toggle for all features
- Action "menuOpen" now opens the menu of the current tab when called from normal mode instead of the page menu
- Action "menuOpen" now opens the suggestions menu when a suggestion is selected instead of the url menu
- List-like settings can now be emptied using the "no" prefix, such as ":set noredirects"
- Selecting text inside an input field will now also switch to insert mode, if "toinsert" is enabled by the mouse setting
- Action "p.insertAtPosition" now also checks parent nodes to work better with SVG images
- List-like settings will no longer accept duplicate identical values in the list
- Buffer commands can now wrap from the end of the tabbar by providing a negative index
- Spellcheck suggestions should now also work for elements that are not input fields (but still not on Windows due to Electron bugs)
- Numbers with actions bound to them that are pressed when there is already a count will no longer execute the action but append the count
- Changed setting "search" to a list of search urls instead of a single url, which will be selected at random each time
- Fixed numpad keys not typing out numbers in navbar related modes
- Fixed special page navigations sometimes prompting to open externally when stored in the history
- Fixed settings that affect special pages not applying in realtime when there are suspended tabs
- Fixed media playing indicator not being cleared when the page is suspended
- Fixed suggestions for suspend command showing already suspended tabs
- Fixed pointer mode help commands not always working
- Fixed visual mode activating when only moving the scrollbar if "mousevisualmode" is set to "activate"
- Fixed numpad keys not being recognized as such when entered inside the page using insert mode
- Fixed write command path bugs due to previous code rework in 5.x.x releases
Other
- Electron 15.0.0-beta.4 (was 13.1.4)
- Chromium 94.0.4606.31 (was 91.0.4472.106)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 5.3.0
Vieb
- Added actions "increaseFirstNumber" and "decreaseFirstNumber" for modifying the first number of the url
- Added actions "increaseLastNumber" and "decreaseLastNumber" for modifying the last number of the url
- Added actions "increasePortNumber" and "decreasePortNumber" for modifying the port number of the url
- Added actions "nextPage" and "previousPage" for going to the next or previous page based on website pagination
- Added actions "nextPageNewTab" and "previousPageNewTab" for going to the next or previous page in a new tab
- Added actions "toParentUrl" and "toRootUrl" for removing levels/directories at the end of the url (separated by "/")
- Added actions "toParentSubdomain" and "toRootSubdomain" for removing subdomains from the url (separated by ".")
- Added support for certain numpad keys in recursive insert mode mappings
- Added funding link to my personal Github sponsors page: Jelmerro
- Mappings
*
andtx
etc. in visual mode now return to normal mode, similar to Vim - Non-recursive insert mode mappings can now refer to a key with native functionality (if supported by Electron)
- Follow mode can now click on JavaScript links without reloading the page
- Actions "increasePageNumber" and "decreasePageNumber" now only read the page query parameters, use the new actions for old functionality
- Fixed text copy and download actions not doing the right thing when called from the context menu
- Fixed splits being swapped in the grid if splitting directly to an already open page
- Fixed menu actions being cancelled if parent mode has a multi-key mapping
- Fixed folders with many items not being scrollable in the file explorer
Other
- Electron 13.1.4 (was 13.1.2)
- Chromium 91.0.4472.106 (was 91.0.4472.77)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 5.2.0
Vieb
- Add action "repeatLastAction" to repeat the last called action or mapstring
- Add action "p.restoreSelection" to restore the previously selected text in visual mode
- Add mapping to execute the last executed command again (requires commandhist to be on "useronly" or "all")
- Add cheatsheet for default mappings and general usage of Vieb to the help page, website and readme
- Add example config for Vivaldi, Surfingkeys, Pentadactyl, Saka Key and Vim Vixen
- Add support for numpad/keypad keys in mappings, such as k3, kEnd or kPlus
- Add actions for visual mode to search, open, open in new tab, open externally or download selected text
- Add setting "mousevisualmode" to control what happens when you select text with the mouse in relation to visual mode
- More consistent opening of splits when many tabs are open
- Further improvements to the encoding and decoding of urls
- Keycodes for popups are now acquired the same way as regular keys, so that they work on different keyboard layouts
- Action "editWithVim" can now also be used to edit text in search, explore and command mode (besides just input fields in insert)
- Action "nop" is now a regular action, old name "Nop" will continue to work due to recent case-insensitive action names rework
- Window state is now also saved after a series of actions, instead of only before it and on quit
- Fix missing help docs for media related actions, such as pausing, muting and looping
- Fix all actions being reported as countable even though some of them aren't
- Fix call command and custom mappings not always executing first part of the mapping from normal mode
- Fix uncountable actions being executed multiple times when not recursively called
- Fix broken symlink for Linux installers in /usr/bin
Other
- Electron 13.1.2 (was 13.1.1)
- Chromium 91.0.4472.77 (unchanged)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 5.1.0
Vieb
- Add open command to navigate to a website or search term directly with a command
- Add permission for motion sensors, previously grouped as unknown, default remains blocked
- Add permission for preventing screen dimming, previously grouped as unknown, default remains blocked
- Add "mapsuggest" and "mapsuggestposition" to show and control the suggestions for multi-key mappings
- Add "modifiers" setting to control which keys should not be registered on their own, but only when used as a modifier
- Add "smartcase" setting to make searches with capital letters case sensitive while remaining case insensitive by default (setting on by default)
- Add ":scriptnames" to print the list of config files loaded at startup (and optionally those sourced by them using "!")
- Add ":source" to load other config files either relative to the current one or by an absolute path at runtime
- Add small indicator for links on special pages to show which ones will open an external web page
- Add actions and context menu options for controlling audio and video playback, such as toggling controls/loop/mute
- Vertical tabs theme now displays multiple pinned tabs horizontally with wrapping
- Redirects are now saved to correctly set the favicon and page title in those cases
- Call command now accepts any valid mapstring instead of only simple actions
- Help command now accepts different types of punctuation and casing to find the right section (which is now escaped as well)
- Action names are now case-insensitive and optionally without the "action." prefix, or with the shorter "a." or "p."
- All action names get sanitized to the shortest name possible with the new system, old names are still completely supported just not shown
- Blobs are now recognized as valid urls, just like other common URI schemes
- Default styling of notifications and the new mapsuggest across all themes
- Mappings with multiple keys that get aborted by starting another mapping will now both get executed similar to Vim
- Notification popup text can now be selected and will show all lines completely (last one was sometimes hidden)
- More broad selectors for finding pagination on the page to make page number actions work for more sites
- Help command now accepts any mapped sequence of keys and will open the first action or command those keys are mapped to
- Fix split commands not switching to the tab directly, which meant that mappings with splits didn't work properly
- Fix recursive mappings with multiple keys for a single action not being interpreted correctly in all cases
- Fix context menu actions for navigation history and refresh always being listed even if not available
- Fix empty new tabs always having a single history entry for the same empty page
- Fix pointer modes being exited when opening the context menu
- Fix screensharing throwing a Promise error in 5.0.0
- Fix media keys being off by default in 5.0.0 (they should be on by default, just as documented)
- Fix twitter not loading due to media keys overwriting Chromium arguments to fix COOP issue in 5.0.0
- Fix suggestions for write command not working recently
- Fix mouse clicks and context menu sometimes throwing errors due to missing DOM api for detecting matching selector on some elements
- Fix background image urls not always being correctly detected if there are also other types of backgrounds present such as gradients
- Fix commands with dashes breaking the check for valid keys and therefor not being recognized
- Fix help command showing suggestions for custom commands (which don't have help)
- Fix custom commands not having suggestions for existing commands (command and delcommand)
- Fix encoding issues when navigating to urls with asian characters in them
Other
- Electron 13.1.1 (was 13.0.1)
- Chromium 91.0.4472.77 (was 91.0.4472.69)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 5.0.0
Vieb
- Add setting "suggestorder" that merges all explore mode related settings into one, with additional functionality
- Add suggestions for searchwords using the new "suggestorder" setting by default
- Add default mapping for quitting Vieb with
<A-F4>
which doubles as the mapping that gets executed for other close requests - Add pointer action "swapPosition" to switch the current pointer location with the start location of the visual selection
- Add command syntax to cycle fixed-set strings using the "!" suffix, similar to boolean type settings
- Add startup arguments "--config-order" and "--config-file" to better control which config files get loaded
- Add command mapping list to the header of commands on the help page
- Add setting "menupage" to control when the context menu of the webpage should appear, possibly over the website's menu
- Add setting "menuvieb" to control when the context menu should appear for the Vieb elements like the navbar and the tabbar
- Add setting "commandhist" to control which commands should be stored in the history
- Add setting "explorehist" to control which navigations should be stored in the history
- Add prefix "!" to command mode that will run system commands directly
- Add pointer mode actions for most context menu options and rework context menu to be in line with pointer mode actions
- Unsupported startup arguments are now ignored with a warning instead of preventing startup (they could be chromium args)
- Word separator keybindings in the navbar wll now detect separators for non-latin scriptures using a whitelist of separators
- Calling action "menuOpen" from navbar input modes now opens the context menu of the navbar
- Don't load regular tabs on startup, but suspend them (they are not loaded until you switch to them)
- Common URI schemes and IPv6 addresses are now recognized as links by explore mode and when navigating
- Remove side effects of lock keys by mapping them to Nop by default
- Startup argument urls are now resolved as files if possible, both absolute and relative paths are supported (relative to CWD)
- Long urls in popups are now not only wrapped at 50 characters, but also maxed at a 1000, after that the rest is hidden
- Preload scripts for Erwic can still be loaded by tabs even if the file doesn't exist on startup
- Allow more supported characters to be used in container and searchword names
- Fix tempfile for the vimcommand not working on mac due to spaces in filename
- Fix spellcheck languages not working correctly when using multiple containers
- Fix navbar input position not following the caret when text is longer than the input box
- Fix mouse side-effects on Windows
- Fix quotes in settings messing with the :mkv command output
- Fix left-click in pointer mode not clicking on the right location when the page is zoomed
- Fix container color not always being updated if a color rule is removed from the list
- Fix search mode not clearing the url correctly if opened from the mouse dropdown selector
- A long list of miscellaneous fixes
Breaking
- Removed setting "suggestfiles" in favor of the new "suggestorder" setting
- Removed setting "suggestfilesfirst" in favor of the new "suggestorder" setting
- Removed setting "suggestexplore" in favor of the new "suggestorder" setting
- Removed setting "respectsitecontextmenu" in favor of the new "menupage" setting
- Removed action "closeTab" in favor of the ":close" command
- Removed broken FreeBSD build target, it's not supported by Electron or Electron Builder
- Changed setting "storenewvisits" to a list of types that should be stored, instead of a toggle for all forms of history
- Changed setting "nativenotification" to a "Fixed-set string" to allow using native notifications for small messages and show popups for long ones
- Renamed "rotateSplitWindow" to "rotateSplitWindowForward" to be more consistent with the recently introduced "Backward" variant
- Default config parse order is now "user-first", use "--config-order=datafolder-first" to revert to the old behavior
- Default value of "permissionmediadevices" and "permissionnotifications" from "ask" to "block" to reduce the amount of popups
- Startup arguments now accept values separated by
=
instead of spaces or no value at all - Container names in Erwic configs will no longer replace special characters, but will report and exit
Other
- Electron 13.0.1 (was 12.0.5)
- Chromium 91.0.4472.69 (was 89.0.4389.128)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 4.5.1
Vieb
- Fix rimraf errors sometimes being shown on Windows when quitting
- Mostly identical to 4.5.0 release, see previous release or the changelog for details
Other
- Electron 12.0.5 (unchanged)
- Chromium 89.0.4389.128 (unchanged)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 4.5.0
Vieb
- Add setting "quitonlasttabclose" to quit Vieb when closing the last tab instead of opening an empty tab
- Add Vimium-inspired and Tridactyl-inspired example viebrc configs to the help page
- Add support for video and audio context menu actions
- Add suggestions for typos in the context menu under the new group "Suggestions"
- Add action "menuOpen" to open the menu for the currently active insert mode element (or simply at the pointer location)
- Context menu is now grouped by category to make different types of actions more clear
- Renderer process now uses modules for faster and more reliable code
- Adblocker now updates by making regular web requests from the main partition instead of using the Node request module
- Improve reliability of "clickOnSearch" when zooming or scrolling
- Suggestions will now also appear when commands or urls are typed out using mappings
- Insert mode with multiple keys are now correctly blocked from their native function, and are repeated properly if the mapping isn't finished
- Native navbar actions (such as "End") are now implemented by Vieb itself so they can be referenced by recursive mappings
- Fix for the adblocker updating twice at the startup when it's set to "update"
- Fix windows focus issues on Windows when closing popups or starting Vieb
- Fix missing title and icon for suspended special pages
- Fix mappings containing numbers not being able to override the repeat counter
- Fix file suggestions not working for partial matches for the last two releases
- Fix extension remove command suggesting the full path instead of the id on Windows
- Fix file explorer not working on Windows
- Fix clearonquit-type settings not always working in released builds
Other
- Electron 12.0.5 (was 12.0.4)
- Chromium 89.0.4389.128 (was 89.0.4389.114)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 4.4.0
Vieb
- Add command "only" to hide all splits and only show the current tab fullsize
- Add action "toFirstSplitWindow" to switch focus to the first (top-left) window split
- Add action "toLastSplitWindow" to switch focus to the last (bottom-right) window split
- Add action "toNextSplitWindow" to switch focus to the next window split by appearance order (top to bottom, left to right)
- Add action "toPreviousSplitWindow" to switch focus to the previous window split by appearance order (top to bottom, left to right)
- Add action "exchangeSplitWindow" to exchange the current window split with the one next to it in the current position
- Add action "rotateSplitWindowBackward" to rotate window splits counter-clockwise (as opposed to clockwise with the existing rotate action)
- Add action "toLastUsedTab" to switch between the two last used tabs or window splits (uses timeoutlen for determining used tabs)
- Add default mappings for all the new actions and also the quit command:
ZZ
- Rework help docs introduction chapter
- Fix missing favicon bug for sites that quickly switch between them
- Fix incorrect url sometimes being stored for an element at the same position in follow mode
- Fix settings "splitbelow" and "splitright" being swapped in functionality
- Fix installing extensions not working in last release due to rework and electron-builder bugs
- Fix action "editWithVim" not working in last release due rework and missing filename argument
- Small styling improvements and bugfixes
Other
- Electron 12.0.4 (was 12.0.2)
- Chromium 89.0.4389.114 (was 89.0.4389.90)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.
Vieb 4.3.0
Vieb
- Added "rclose" and "lclose" to easily close tabs to the right or the left of the current one
- Rework internal structure of Vieb to better re-use code (should be faster)
- Fix for follow mode not being able to click on elements that previously worked
- Fix for broken fullscreen alignment when using splits
- Leave media fullscreen when switching between tabs
- Minor improvements due to code rework
Other
- Electron 12.0.2 (unchanged)
- Chromium 89.0.4389.90 (unchanged)
For more details see the CHANGELOG.
For startup help see the frequently asked questions.