Provided by: vimb_3.7.0+git20240706-1_amd64 bug

NAME

       Vimb  -  Vim  Browser  -  A  modal web browser based on WebKit, inspired by Vim: the great
       editor.

SYNOPSIS

       vimb [OPTIONS] [URI|file|-]

DESCRIPTION

       Vimb is a WebKit based web browser that behaves like the Vimperator plugin for Firefox and
       has usage paradigms from the great editor, Vim.  The goal of Vimb is to build a completely
       keyboard-driven, efficient and pleasurable browsing-experience.

OPTIONS

       If no URI or file is given, Vimb will open the configured home-page.  If URI is '-',  Vimb
       reads the HTML to display from stdin.

       Mandatory arguments to long options are mandatory for short options too.

       -C, --cmd CMD
              Run  CMD  as ex command line right before the first page is loaded.  If the flag is
              used more than one time, the commands are called in  order  they  are  given.   You
              could also pass several ex commands in one CMD, if they are separated by "|".

              vimb --cmd "set dark-mode=on|set header=Referer,DNT=1"

       -c, --config FILE
              Use  custom  configuration given as FILE.  This will also be applied on new spawned
              instances.

       -e, --embed WINID
              WINID of an XEmbed-aware application, that Vimb will use as its parent.

       -i, --incognito
              Start an instance with user data read-only (see FILES section).

       -h, --help
              Show help options.

       -p, --profile PROFILE-NAME
              Create or open specified configuration profile.  Configuration data for the profile
              is   stored   in  a  directory  named  PROFILE-NAME  under  default  directory  for
              configuration data.

       -v, --version
              Print build and version information and then quit.

       --no-maximize
              Do no attempt to maximize window.

       --bug-info
              Prints information about used libraries for bug reports and then quit.

MODES

       Vimb is modal and has the following main modes:

       Normal Mode
              The default mode.  Pressing Escape always enter normal mode.

       Input Mode
              Used for editing text elements in a webpage.

       Command Mode
              Execute `ex` commands from the builtin inputbox (commandline).

       Pass-Through Mode
              In Pass-Through mode only the `<Esc>` and `<C-[>` keybindings  are  interpreted  by
              Vimb,  all  other  keystrokes are given to the webview to handle them.  This allows
              the use of a website's configured keybindings, that might otherwise be swallowed by
              Vimb.

NORMAL MODE COMMANDS

       Some  of  the Normal Model Commands can have a numeric count to multiply the effect of the
       command.  If a command supports the count this is shown as [N].

   General
       :      Start Command Mode and print `:' to the input box.

       gi     Set cursor to the first editable element in the page and switch to Input Mode.

       i      Set cursor to the last focused element in the page and switch to Input Mode.  If no
              element was focused before the first element is focused like with `gi'.

       CTRL-Z Switch Vimb into Pass-Through Mode.

       gf     Open the configured editor (`editor-command') with the current page's content.

       gF     Open the Web Inspector for the current page.

       CTRL-V Pass the next key press directly to GTK.

       CTRL-Q Quit the browser if there are no running downloads.

   Navigation
       o      Start Command Mode and print `:open ' to the input box.

       O      Start Command Mode and print `:open URI' to the input box.

       t      Start Command Mode and print `:tabopen ' to the input box.

       T      Start Command Mode and print `:tabopen URI' to the input box.

       gh     Open the configured home-page.

       gH     Open the configured home-page in a new window.

       u      Open the last closed page.

       U      Open the last closed page in a new window.

       CTRL-P Open the oldest entry from the read it later queue in the current browser window.

       ["x]p  Open the URI out of the register x or, if not given, from the clipboard.

       ["x]P  Open  the  URI  out of the register x or, if not given, from the clipboard in a new
              window.

       [N]CTRL-O
              Go back N steps in the browser history.

       [N]CTRL-I
              Go forward N steps in the browser history.

       [N]gu  Go to the Nth descendent directory of the current opened URI.

       gU     Go to the domain of the current opened page.

       r      Reload the website.

       R      Reload the website without using caches.

       CTRL-C Stop loading the current page.

       CTRL-LeftMouse, MiddleMouse
              Opens the clicked link in a new window.

       Shift-LeftMouse
              Push the link url under the cursor to the end of the Read It Later queue  like  the
              `:qpush' command.

   Motion
       [N]CTRL-F
              Scroll N pages down.

       [N]CTRL-B
              Scroll N pages up.

       [N]CTRL-D
              Scroll N half pages down.

       [N]CTRL-U
              Scroll N half pages up.

       [N]gg  Scroll to the top of the current page.  Or if N is given to N% of the page.

       [N]G   Scroll to the bottom of the current page.  Or if N is given to N% of the page.

       0, ^   Scroll  to  the absolute left of the document.  Unlike in Vim, 0 and ^ work exactly
              the same way.

       $      Scroll to the absolute right of the document.

       [N]h   Scroll N steps to the left of page.

       [N]l   Scroll N steps to the right of page.

       [N]j   Scroll page N steps down.

       [N]k   Scroll page N steps up.

       m{a-z} Set a page mark {a-z} at the current position on the page.  Such set marks are only
              available on the current page; if the page is left, all marks will be removed.

       m{A-Z} Set  a  page  mark  {A-Z}  at  the  current  position on the page.  These marks are
              permanent across any page.

       '{a-z} Jump to the mark {a-z} on the current page.

       '{A-Z} Jump to the global mark {A-Z} on a (possibly) different page.

       ''     Jumps to the position before the latest jump, or where the last  "m'"  command  was
              given.

   Hinting
       Hinting in Vimb is how you accomplish the tasks that you would do with the mouse in common
       mouse-driven browsers: open a URI, yank a URI, save a page and  so  on.  When  hinting  is
       started,  the  relevant  elements  on  the  page  will  be marked by labels generated from
       configured `hint-keys'.  Hints can be selected by using <Tab>, <C-I> or <C-Tab>, <C-O>, by
       typing  the chars of the label, or filtering the elements by some text that is part of the
       hinted element (like URI, link text, button label) or any combination  of  these  methods.
       If  <enter>  is pressed, the current active hint will be fired.  If only one possible hint
       remains, this will be fired automatically.

       Syntax: ;{mode}{hint}

       Start Hints mode.  Different elements depending on mode are  highlighted  and  `numbered'.
       Elements  can  be  selected  either by typing their label, or by typing part of their text
       (hint) to narrow down the result.  When an element has been selected, it is  automatically
       clicked or used (depending on mode) and hint mode ends.

       The  filtering  of  hints  by  text  splits  the  query at ' ' and use the single parts as
       separate queries to filter the hints.  This is  useful  for  hints  that  have  a  lot  of
       filterable  chars in common and many chars are required to make a distinct selection.  For
       example ';over tw' will easily select the second hint out of {'very long link  text  one',
       'very long link text two'}.

       The following keys have special meanings in Hints modes:
       <CR>   Selects the first highlighted element, or the current focused.
       <Tab>  Moves the focus to the next hint element.
       <S-Tab>
              Moves the focus to the previous hint element.
       <Esc>, CTRL-C, CTRL-[
              Exits Hints mode without selecting an element.

       Hint modes:
              f      Is an alias for the ;o hint mode.
              F      Is an alias for the ;t hint mode.
              ;o     Open hint's location in the current window.
              ;t     Open hint's location in a new window.
              ;s     Saves the hint's destination under the configured `download-path'.
              ;O     Generate an `:open' prompt with hint's URI.
              ;T     Generate an `:tabopen' prompt with hint's URI.
              ;e     Open the configured editor (`editor-command') with the hinted form element's
                     content.  If the file in editor is saved and the editor is closed, the  file
                     content will be put back in the form field.
              ;i     Open hinted image in the current window.
              ;I     Open hinted image in a new window.
              ;k     Kill (remove) hinted element from the page.
              ;p     Push  the hint's URI to the end of the Read It Later queue like the `:qpush'
                     command.  This is only  available  if  Vimb  was  compiled  with  the  QUEUE
                     feature.
              ;P     Push  the  hint's  URI  to the beginning of the Read It Later queue like the
                     `:qunshift' command.  This is only available if Vimb was compiled  with  the
                     QUEUE feature.
              ;x     Hints  like  ;o, but instead of opening the hinted URI, the `x-hint-command'
                     is run in Vimb.
              ["x];y Yank hint's destination location into primary and  secondary  clipboard  and
                     into the register x.
              ["x];Y Yank  hint's  text  description  or  form  text  into  primary and secondary
                     clipboard and into the register x.

       Syntax: g;{mode}{hint}
              Start an extended hints mode and stay there until <Esc> is  pressed.   Like  normal
              hinting, except that after a hint is selected, hints remain visible so that another
              one can be selected with the same action as the first.  Note that the extended hint
              mode can only be combined with the following hint modes I o p P s t y Y.

       Motion
              Motions  commands  are  like  those  for  normal  mode  except that CTRL is used as
              modifier.  But they can not be used together with a count.

              CTRL-F Scroll one page down.
              CTRL-B Scroll one page up.
              CTRL-D Scroll half page down.
              CTRL-U Scroll half page up.
              CTRL-J Scroll one step down.
              CTRL-K Scroll one step up.

   Searching
       /QUERY, ?QUERY
              Start searching for QUERY in the current  page.   /  start  search  forward,  ?  in
              backward direction.

       *, #   Start  searching  for  the current selected text, or if no text is selected for the
              content of the primary or secondary clipboard.   *  start  the  search  in  forward
              direction and # in backward direction.

              Note  that  these  commands will yank the text selection into the clipboard and may
              remove other content from there!

       [N]n   Search for Nnth next search result depending on current search direction.

       [N]N   Search for Nnth previous search result depending on current search

       <CR>   Perform a click on  element  containing  the  current  highlighted  search  result.
              direction.

   Zooming
       [N]zi  Zoom-In the text of the page by N steps.

       [N]zo  Zoom-Out the text of the page by N steps.

       [N]zI  Full-Content Zoom-In the page by N steps.

       [N]zO  Full-Content Zoom-Out the page by N steps.

       zz     Reset Zoom.

   Yank
       ["x]y  Yank the URI or current page into register x and clipboard.

       ["x]Y  Yank the current selection into register x and clipboard.

COMMAND MODE

       Commands  that  are  listed  below  are  ex-commands  like in Vim, that are typed into the
       inputbox (the command line of vimb).  The commands may vary in  their  syntax  or  in  the
       parts they allow, but in general they follow a simple syntax.

       Syntax: :[:| ][N]cmd[name][!][ lhs][ rhs]

       Where  lhs  (left  hand side) must not contain any unescaped space.  The syntax of the rhs
       (right hand side) if this is available depends on the command.  At the  moment  the  count
       parts [N] of commands is parsed, but currently there is no command that uses the count.

       Commands  that  are  typed  interactivly  are  normally  recorded into command history and
       register.  To avoid this, the commands can be prefixed by one or more  additional  `:'  or
       whitespace.

       Multiple  commands,  separated  by a `|' can be given in a single command line and will be
       executed consecutively.  The pipe can be included as an argument to a command by  escaping
       it with a backslash.
       Following  commands process the entire command-line string literally.  These commands will
       include any `|' as part of their argument string and so can not  be  followed  by  another
       command.

       - autocmd
       - cmap, cnoremap, imap, inoremap, nmap, nnoremap
       - eval
       - normal
       - open, tabopen
       - shellcmd

   Command Line Editing
       <Esc>, CTRL-[, CTRL-C
              Ignore all typed content and switch back to normal mode.

       <CR>   Submit the entered `ex` command or search query to run it.

       CTRL-H Deletes the char before the cursor.

       CTRL-W Deletes the last word before the cursor.

       CTRL-U Remove everything between cursor and prompt.

       CTRL-B Moves the cursor directly behind the prompt `:'.

       CTRL-E Moves the cursor after the prompt in inputbox.

       CTRL-V Pass the next key press directly to GTK.

       CTRL-R {a-z"%:/;}
              Insert  the  content  of given register at cursor position.  See also section about
              `:reg[ister]' command.

   Command Line History
       <Tab>  Start completion of the content in the inputbox in forward direction.

       <S-Tab>
              Start completion of the content in the inputbox in backward direction.

       <Up>   Step backward in the command history.

       <Down> Step forward in the command history.  Yank the current selection  into  register  x
              and clipboard.

   Open
       :o[pen] [URI]
              Open  the  give  URI in the current window.  If URI is empty, the configured 'home-
              page' is opened.

       :t[abopen] [URI]
              Open the give URI in a new window.  If URI is empty, the configured 'home-page'  is
              opened.

   Key Mapping
       Key  mappings  allow  users  to  alter  the  actions  of key presses.  Each key mapping is
       associated with a mode and only has  effect  when  the  mode  is  active.   The  following
       commands allow the user to substitute one sequence of key presses by another.

       Syntax: :{m}map {lhs} {rhs}

       Note  that  the lhs ends with the first found space.  If you want to use space also in the
       {lhs} you have to escape this with a single '\', as shown in the examples.

       The rhs starts with the first non-space char. If you want a rhs that starts with a  space,
       you have to use "<Space>".

       Standard key mapping commands are provided for these modes m:
       n      Normal mode: when browsing normally.
       i      Insert mode: when interacting with text fields on a website.
       c      Command Line mode: when typing into Vimb's command line.

       Most  keys  in  key  sequences are represented simply by the character that you see on the
       screen when you type them.   However,  as  a  number  of  these  characters  have  special
       meanings,  and  a  number  of  keys  have  no visual representation, a special notation is
       required.

       As special key names have the format <...>.  The  following  special  keys  can  be  used:
       <Left>,  <Up>,  <Right>,  <Down>  for  the cursor keys, <Tab>, <Esc>, <CR>, <Space>, <BS>,
       <F1>-<F12> and <C-A>-<C-Z>.  If you want an actual sequence of keys like  "<",  "C",  "R",
       ">"  then  escape  with a backslash: "<CR>". If you want a backslash followed by a special
       key then use <Bslash>.

       :nm[ap] {lhs} {rhs}
       :im[ap] {lhs} {rhs}
       :cm[ap] {lhs} {rhs}
              Map the key sequence lhs to rhs for the modes where the map command  applies.   The
              result,  including  rhs,  is  then  further  scanned for mappings.  This allows for
              nested and recursive use of mappings.

              :cmap <C-G>h /home/user/downloads/
                     Adds a keybind to insert a file path into the  input  box.   This  could  be
                     useful for the `:save' command that could be used as ":save ^Gh".
              :nmap <F1> :set scripts=on<CR>:open !glib<Tab><CR>
                     This  will  enable  scripts and lookup the first bookmarked URI with the tag
                     `glib' and open it immediately if F1 key is pressed.
              :nmap \ \  50G
                     Example which maps two spaces to go to 50% of the page.
       :nn[oremap] {lhs} {rhs}
       :ino[remap] {lhs} {rhs}
       :cno[remap] {lhs} {rhs}
              Map the key sequence lhs to rhs  for  the  mode  where  the  map  command  applies.
              Disallow  mapping  of  rhs,  to avoid nested and recursive mappings.  Often used to
              redefine a command.
       :nu[nmap] {lhs}
       :iu[nmap] {lhs}
       :cu[nmap] {lhs}
              Remove the mapping of lhs for the applicable mode.

   Bookmarks
       :bma [tags]
              Save the current opened URI with tags to the bookmark file.

       :bmr [URI]
              Removes all bookmarks for given URI or, if not given, the current opened page.

   Handlers
       Handlers allow specifying external scripts to handle alternative URI methods.

       :handler-add handler=cmd
              Adds a handler to direct handler links to the external cmd.  The  cmd  can  contain
              one  placeholder `%s` that will be filled by the full URI given when the command is
              called.

              :handler-add mailto=urxvt -e mutt %s
                     to start email client for mailto links.
              :handler-add magnet=xdg-open %s
                     to open magnet links with xdg-open.
              :handler-add ftp=urxvt -e wget %s -P ~/ftp-downloads
                     to handle ftp downloads via wget.

       :handler-remove handler
              Remove the handler for the given URI handler.

   Shortcuts
       Shortcuts allow the opening of an URI built up  from  a  named  template  with  additional
       parameters.   If  a  shortcut named 'dd' is defined, you can use it with `:open dd list of
       parameters' to open the generated URI.

       Shortcuts are convenient to use with search engines where the URI is  standardised  and  a
       single parameter is user defined.

       :shortcut-add shortcut=URI
              Adds  a  shortcut with the shortcut and URI template.  The URI can contain multiple
              placeholders $0-$9 that will be filled by the parameters given when the shortcut is
              called.   The  parameters  given  when the shortcut is called will be split into as
              many parameters like the highest used placeholder.

              To use spaces within the parameters, the parameters can be grouped  by  surrounding
              them with single-or double quotes-as shown in example shortcut `map'.

              :shortcut-add dl=https://duckduckgo.com/lite/?q=$0
                     to setup a search engine.  Can be called by `:open dl my search phrase'.
              :shortcut-add gh=https://github.com/$0/$1
                     to  build  URIs  from  given parameters.  Can be called `:open gh fanglingsu
                     vimb'.
              :shortcut-add map=https://maps.google.com/maps?saddr=$0&daddr=$1
                     to search for a route, all but the last parameter must  be  quoted  if  they
                     contain spaces like `:open map "city hall, London" railway station, London'

       :shortcut-remove shortcut
              Remove the search engine to the given shortcut.

       :shortcut-default shortcut
              Set the shortcut for given shortcut as the default, that is the shortcut to be used
              if no shortcut is given and the string to open is not an URI. It doesn't matter  if
              the shortcut is already in use or not to be able to set it.

   Settings
       :se[t] var=value
              Set  configuration  values  named  by  var.  To set boolean variable you should use
              'on', 'off' or 'true' and 'false'.  Colors are  given  as  hexadecimal  value  like
              '#f57700'.  Spaces  or  more  equals  signs  in value just work without quotes: for
              example, ":set sans-serif-font=Some Sans Font".

       :se[t] var+=value
              Add the value to a number option, or append the value to a string option.  When the
              option is a comma separated list, a comma is added, unless the value was empty.

       :se[t] var^=value
              Multiply  the  value  to  a number option, or prepend the value to a string option.
              When the option is a comma separated list, a comma is added, unless the  value  was
              empty.

       :se[t] var-=value
              Subtract  the value from a number option, or remove the value from a string option,
              if it is there.  When the option is a comma separated list,  a  comma  is  deleted,
              unless the option becomes empty.

       :se[t] var?
              Show the current set value of variable.  VAR.

       :se[t] var!
              Toggle the value of boolean variable var and display the new set value.

   Queue
       The  queue  allows the marking of URIs for later reading.  This list is shared between the
       single instances of Vimb.

       :qpu[sh] [URI]
              Push URI or, if not given, the current URI to the end of the queue.

       :qun[shift] [URI]
              Push URI or, if not given, the current URI to the beginning of the queue.

       :qp[op]
              Open the oldest queue entry in the current browser window and remove  it  from  the
              queue.

       :qc[lear]
              Removes all entries from queue.

   Automatic commands
       An autocommand is a command that is executed automatically in response to some event, such
       as a URI being opened.  Autocommands are very powerful.  Use them with care and they  will
       help you avoid typing many commands.

       Autocommands are built with following properties.

       group  When the [group] argument is not given, Vimb uses the current group as defined with
              ':augroup', otherwise, Vimb uses the group defined with [group].  Groups are useful
              to remove multiple grouped autocommands.

       event  You  can specify a comma separated list of event names.  No white space can be used
              in this list.

              Events:
              LoadStarting
                     Fired before a new page is going to be opened.  No data  has  been  sent  or
                     received yet, the load may still fail for transport issues.
              LoadStarted
                     Fired  if  a new page is going to be opened.  No data has been received yet,
                     the load may still fail for transport issues.
              LoadCommitted
                     Fired if first data chunk has arrived, meaning that the necessary  transport
                     requirements  are established, and the load is being performed.  This is the
                     right event to toggle content related setting like 'scripts', 'plugins'  and
                     such things.
              LoadFinished
                     Fires  when  everything  that  was  required to display on the page has been
                     loaded.
              DownloadStarted
                     Fired right after a download is started.
              DownloadFinished
                     Fired if a Vimb managed download is finished.
              DownloadFailed
                     Fired if a Vimb managed download failed.

       pat    Comma separated list of patterns, matches  in  order  to  check  if  a  autocommand
              applies  to  the URI associated to an event.  To use ',' within the single patterns
              this must be escaped as '\,'.

              Patterns:
              *      Matches any sequence of characters.  This includes also '/' in  contrast  to
                     shell patterns.
              ?      Matches any single character except of '/'.
              {one,two}
                     Matches  'one'  or  'two'.  Any '{', ',' and '}' within this pattern must be
                     escaped by a '\'.  '*' and '?' have no  special  meaning  within  the  curly
                     braces.
              \      Use  backslash  to  escape  the special meaning of '?*{},' in the pattern or
                     pattern list.

       cmd    Any `ex` command vimb understands.  The leading  ':'  is  not  required.   Multiple
              commands can be separated by '|'.

       :au[tocmd] [group] {event} {pat} {cmd}
              Add cmd to the list of commands that Vimb will execute automatically on event for a
              URI matching pat  autocmd-patterns.   Vimb  always  adds  the  cmd  after  existing
              autocommands, so that the autocommands are executed in the order in which they were
              given.

       :au[tocmd]! [group] {event} {pat} {cmd}
              Remove all autocommands associated with event and which pattern match pat, and  add
              the  command  cmd.   Note  that  the  pattern  is  not  matched  literally  to find
              autocommands to remove, like Vim does.  Vimb matches the autocommand  pattern  with
              pat.   If  [group]  is  not  given, deletes autocommands in current group, as noted
              above.

       :au[tocmd]! [group] {event} {pat}
              Remove all autocommands associated with event and  which  pattern  matches  pat  in
              given group (current group by default).

       :au[tocmd]! [group] * {pat}
              Remove  all  autocommands  with patterns matching pat for all events in given group
              (current group by default).

       :au[tocmd]! [group] {event}
              Remove all autocommands for event in given group (current group by default).

       :au[tocmd]! [group]
              Remove all autocommands in given group (current group by default).

       :aug[roup] {name}
              Define the autocmd group name for the  following  ":autocmd"  commands.   The  name
              "end" selects the default group.

       :aug[roup]! {name}
              Delete the autocmd group name.

       Example:
       :aug github
       :  au LoadCommitted * set scripts=off|set cookie-accept=never
       :  au LoadCommitted http{s,}://github.com/* set scripts=on
       :aug end

   Misc
       :cl[eardata] [dataTypes] [timespan]
              Asynchronously  clears  the website data of the given list of dataTypes modified in
              the past timespan.  Note that the dataTypes must not contain spaces.   If  timespan
              is not given, all website data will be removed.  Note that this effects all running
              instances of vimb.

              The dataTypes is a comma separated list of following types.
              memory-cache
                     Memory cache.
              disk-cache
                     HTTP disk cache.
              offline-cache
                     Offline web application cache.
              session-storage
                     Session storage data.
              local-storage
                     Local storage data.
              indexeddb-databases
                     IndexedDB databases.
              plugin-data
                     Plugin data.
              cookies
                     Cookies. Note that the cookies are not cleared in case a timespan is given.
              hsts-cache
                     HTTP Strict Transport Security cache.
              -      Can be used to clear all known data types in case a timespan is used.

              The timespan is given as  sequence  of  '[multiplier]unit'  tupels  with  following
              units.
              y      year (365 days)
              w      week (7 days)
              d      day
              h      hour
              m      minute
              s      second

              Example:
              :cleardata
                     to clear all known website data types without any timespan restriction.
              :cleardata - 5m
                     to clear all known website data types modified in the last 5 minutes.
              :cleardata local-storage,session-storage,cookies
                     to  completely  clear  the  cookies, local- and session-storage without time
                     restrictions.
              :cleardata disk-cache 2d4h
                     to clear the disk cache that was modified in the  past  two  days  and  four
                     hours.

       :sh[ellcmd]! cmd
              Like :sh[ellcmd] but asynchronous.

              Example:
              :sh! /bin/sh -c 'echo "`date` $VIMB_URI" >> myhistory.txt'

       :sh[ellcmd] cmd
              Runs the given shell cmd syncron and print the output into inputbox.  The following
              patterns in cmd are expanded: '~username', '~/', '$VAR' and '${VAR}'.  A '\' before
              these patterns disables the expansion.

              The following environment variables are set for called shell commands.
              VIMB_URI
                     This  variable  is set by Vimb every time a new page is opened to the URI of
                     the page.
              VIMB_SELECTION
                     This variable is set to the current selected text on the page.
              VIMB_TITLE
                     Contains the title of the current opened page.
              VIMB_PID
                     Contains the pid of the running Vimb instance.
              VIMB_WIN_ID
                     Holds the X-Window id of the Vimb window.
              VIMB_XID
                     Holds the X-Window id of the Vimb window or of the embedding window if  Vimb
                     is compiled with XEMBED and started with the -e option.
       :sh[ellcmd]! cmd
              Like :sh[ellcmd] but asynchronous.

              Example:
              :sh! /bin/sh -c 'echo "`date` $VIMB_URI" >> myhistory.txt'
       :s[ave] [path]
              Download current opened page into configured download directory.  If path is given,
              download under this file name or path.  path is expanded and can therefore  contain
              '~/', '${ENV}' and '~user' pattern.
       :so[urce] [file]
              Read ex commands from file.
       :q[uit]
              Close the browser.  This will be refused if there are running downloads.
       :q[uit]!
              Close the browser independent from an running download.
       :reg[ister]
              Display the contents of all registers.
              Registers:
              "a"z
                     26  named  registers "a to "z.  Vimb fills these registers only when you say
                     so.
              ":     Last executed `ex` command.
              ""     Last yanked content.
              "%     Curent opened URI.
              "/     Last search phrase.
              ";     Contains the last hinted URL.

       :e[val] javascript
              Runs the given javascript in the current page and display the evaluated value.

              Example: :eval document.cookie

       :e[val]! javascript
              Like :eval, but there is nothing print to the input box.

       :no[rmal] [cmds]
              Execute normal mode commands cmds.  This makes it possible to execute  normal  mode
              commands typed on the input box.

              cmds  cannot  start  with  a  space.  Put a count of 1 (one) before it, "1 " is one
              space.

              Example: :set scripts!|no! R

       :no[rmal]! [cmds]
              Like :normal, but no mapping is applied to cmds.

       :ha[rdcopy]
              Print current document.  Open a GUI dialog where you can select the printer, number
              of copies, orientation, etc.

INPUT MODE

       <Esc>, CTRL-[
              Switch back to normal mode.

       CTRL-O Executes the next command as normal mode command and return to input mode.

       CTRL-T Open configured editor with content of current form field.

       CTRL-V Pass the next key press directly to WebKit.

       CTRL-Z Enter the pass-through mode.

COMPLETIONS

       The  completions are triggered by pressing `<Tab>` or `<S-Tab>` in the activated inputbox.
       Depending of  the  current  inserted  content  different  completions  are  started.   The
       completion takes additional typed chars to filter the completion list that is shown.

       commands
              The completion for commands are started when at least `:` is shown in the inputbox.
              If initial chars are passed, the completion will lookup those commands  that  begin
              with the given chars.

       settings
              The setting name completion is started if at least `:set ` is shown in inputbox and
              does also match settings that begins with already typed setting prefix.

       history
              The history of URIs is shown for the `:open  `  and  `:tabopen  `  commands.   This
              completion  looks  up  every  given word in the history URI and titles.  Only those
              history items are shown, where the title or URI contains all tags.

              :open foo bar<Tab>
                     will complete only URIs that contain the words foo and bar.

       bookmarks
              The bookmark completion is similar to the history completion, but does  match  only
              the  tags  of  the  bookmarks.   The  bookmark  completion is started by `:open !`,
              `:tabopen !` or `:bmr ` and does a  prefix  search  for  all  given  words  in  the
              bookmark tags.

              :open !foo ba
                     will  match  all  bookmarks that have tags starting with "foo" and "ba".  If
                     the bookmark does not have any tags set, the URL is split  on  `.'  and  `/'
                     into tags.

              :bmr tag
                     will match all bookmarks that have tags starting with "tag".

       bookmark tags
              The  bookmark tag completion allows the insertion of already used bookmarks for the
              `:bma ` commands.

       search The search completion allows a  filtered  list  of  already  done  searches.   This
              completion  starts  by  `/` or `?` in inputbox and performs a prefix comparison for
              further typed chars.

SETTINGS

       All settings listed below can be set with the `:set' command.  See Settings under  COMMAND
       MODE for syntax.

       accelerated-2d-canvas(bool)
              Enable  or  disable  accelerated 2D canvas.  When accelerated 2D canvas is enabled,
              WebKit may render  some  2D  canvas  content  using  hardware  accelerated  drawing
              operations.

       allow-file-access-from-file-urls(bool)
              Indicates  whether  file  access  is  allowed  from  file  URLs.   By default, when
              something is loaded using a file URI, cross origin requests to other file resources
              are not allowed.

       allow-universal-access-from-file-urls(bool)
              Indicates  whether  or  not  JavaScript running in the context of a file scheme URL
              should be allowed to access content from any origin.  By default, when something is
              loaded  in a using a file scheme URL, access to the local file system and arbitrary
              local storage is not allowed.

       caret(bool)
              Whether to enable accessibility enhanced keyboard navigation.

       cookie-accept (string)
              Cookie accept policy  {`always',  `never',  `origin'  (accept  all  non-third-party
              cookies)}.

       closed-max-items (int)
              Maximum number of stored last closed URLs.  If closed-max-items is set to 0, closed
              URLs will not be stored.

       completion-css (string)
              CSS style applied to the inputbox completion list items.

       completion-hover-css (string)
              CSS style applied to the inputbox completion list item that is currently hovered by
              the mouse.

       completion-selected-css (string)
              CSS style applied to the inputbox completion list item that is currently selected.

       cursiv-font (string)
              The font family used as the default for content using cursive font.

       dark-mode (bool)
              Whether  to  enable  dark  mode.  Websites can use the `prefers-color-scheme' media
              query to adjust styles according to this option.

       default-charset (string)
              The default text  charset  used  when  interpreting  content  with  an  unspecified
              charset.

       default-font (string)
              The font family to use as the default for content that does not specify a font.

       default-zoom (int)
              Default Full-Content zoom level in percent. Default is 100.

       dns-prefetching (bool)
              Indicates if Vimb prefetches domain names.

       download-command (string)
              A  command  with  placeholder  '%s'  that will be invoked to download a URI in case
              'download-use-external' is enabled.

              The following additional environment variable are available:
              $VIMB_URI
                     The URI of the current opened page, normally the page where the download was
                     started from, also known as referer.
              $VIMB_DOWNLOAD_PATH
                     Setting value of 'download-path' which would be used normally for downloads.

              :set  download-command=/bin/sh  -c  "cd  '$VIMB_DOWNLOAD_PATH'  && curl -sLJOC - -e
              '$VIMB_URI' %s"

       download-path (string)
              Path to the default download directory.  If no download directory is set,  download
              will  be written into current directory.  The following pattern will be expanded if
              the download is started '~/', '~user', '$VAR' and '${VAR}'.

       download-use-external (bool)
              Indicates if the external download tool set as 'download-command' should be used to
              handle downloads.  If this is disabled Vimb will handle the download.

       editor-command (string)
              Command  with placeholder '%s' called if form field is opened with $EDITOR to spawn
              the editor-like `x-terminal-emulator -e vim %s'.  To use Gvim as the  editor,  it's
              necessary to call it with `-f' to run it in the foreground.

       font-size (int)
              The default font size used to display text.

       frame-flattening (bool)
              Whether  to  enable  the  Frame  Flattening.   With  this  setting each subframe is
              expanded to its  contents,  which  will  flatten  all  the  frames  to  become  one
              scrollable page.

       fullscreen (bool)
              Show the current window full-screen.

       hardware-acceleration-policy (string)
              This setting decides how to enable and disable hardware acceleration.
              ondemand
                     enables  the  hardware  acceleration  when  the  web  contents  request  it,
                     disabling it again when no longer needed.
              always enforce hardware acceleration to be enabled.
              never  disables it completely.  Note that  disabling  hardware  acceleration  might
                     cause some websites to not render correctly or consume more CPU.

       header (list)
              Comma  separated list of headers that replaces default header sent by WebKit or new
              headers.  The format for the header list elements is `name[=[value]]'.

              Note that these headers will replace already existing headers.  If there is no  '='
              after  the  header name, then the complete header will be removed from the request,
              if the '=' is present means that the header value is set to empty value.

              Note that webkit reused already set headers in case of a reload of a page.   So  if
              there  are  headers  removed that where previously use to access a certain page and
              the page is reloaded or opened via back/forward history the header  will  still  be
              sent.   To  apply  the new header setting properly it's required to request another
              page or to open current page new by `O<Cr>`.

              To use '=' within a header value the value must be quoted like shown in Example for
              the Cookie header.

              :set header=DNT=1,User-Agent,Cookie='name=value'
                     Send  the  'Do Not Track' header with each request and remove the User-Agent
                     Header completely from request.

       hint-follow-last (bool)
              If on, vimb automatically follows the last remaining hint  on  the  page.   If  off
              hints are fired only if enter is pressed.

       hint-keys-same-length (bool)
              If on, all hint labels will have the same length, so no hints will be ambiguous.

       hint-timeout (int)
              Timeout  before  automatically  following  a non-unique numerical hint.  To disable
              auto fire of hints, set this value to 0.

       hint-keys (string)
              The keys used to label and select hints.  With its default value, each hint  has  a
              unique  label  which can be typed to select it, while all other characters are used
              to filter hints based on their text.  With a value such as asdfg;lkjh, each hint is
              `labeled' based on the characters of the home row.

              If  the  hint-keys  string  starts with a '0' the keys are considered to follow the
              rules of numeric labeling. So that the ifrst char of the  label  will  never  start
              with the '0'.

              Note that the hint matching by label built of hint-keys is case sensitive.  In this
              vimb differs from some other browsers that show hint  labels  in  upper  case,  but
              match them lowercase.

              To  have  upper  case  hint  labels,  it's  possible  to  add  following css to the
              `style.css' file in vimb's configuration directory.

              "span[vimbhint="label"] {text-transform: uppercase !important;}"

       hint-match-element (bool)
              If this is set to 'true' typed chars that are not part of the set  'hint-keys'  are
              used  to filter hinted DOM elements by their text value.  If 'hint-keys' are set to
              chars instead of numbers it might be useful to disable matching of the elements  by
              'hint-match-element=false'.

       history-max-items (int)
              Maximum  number  of  unique  items  stored  in search-, command or URI history.  If
              history-max-items is set to 0, the history file will not be changed.  This  setting
              has no effect if option --incognito is set.

       home-page (string)
              Homepage that vimb opens if started without a URI.

       html5-database (bool)
              Whether to enable HTML5 client-side SQL database support.  Client-side SQL database
              allows web pages to store structured data and be able to use SQL to manipulate that
              data asynchronously.

       html5-local-storage (bool)
              Whether  to  enable  HTML5  localStorage  support.   localStorage  provides  simple
              synchronous storage access.

       hyperlink-auditing (bool)
              Enable or disable support for <a ping>.

       images (bool)
              Determines whether images should be automatically loaded or not.

       incsearch (bool)
              While typing a search command, show where the pattern typed so far matches.

       input-autohide (bool)
              If enabled the inputbox will be hidden whenever it contains no text.

       input-css (string)
              CSS style applied to the inputbox in normal state.

       input-error-css (string)
              CSS style applied to the inputbox in case of displayed error.

       intelligent-tracking-prevention (bool)
              Whether WebKit's Intelligent Tracking Prevention (ITP) is enabled.

       javascript-can-access-clipboard (bool)
              Whether JavaScript can access the clipboard.

       javascript-can-open-windows-automatically (bool)
              Whether JavaScript can open popup windows automatically without user interaction.

       javascript-enable-markup (bool)
              Whether JavaScript markup is enabled.  Disabling can help with some  older  systems
              (ppc,  ppc64,  etc.)  that  don't  have complete JavaScript support to run webpages
              without crashing.

       geolocation (string)
              Controls website access to the geolocation API {`always', `never', `ask' (display a
              prompt each time)}

       media-playback-allows-inline (bool)
              Whether  media playback is full-screen only or inline playback is allowed.  Setting
              it to false allows specifying that media playback should be always fullscreen.

       media-playback-requires-user-gesture (bool)
              Whether a user gesture (such as clicking the play  button)  would  be  required  to
              start  media  playback or load media.  Setting it on requires a gesture by the user
              to start playback, or to load the media.

       media-stream (bool)
              Enable or disable support for MediaSource on pages.  MediaSource is an experimental
              proposal  which  extends  HTMLMediaElement  to  allow  JavaScript to generate media
              streams for playback.

       mediasource (bool)
              Enable or disable support for MediaSource on pages.  MediaSource is an experimental
              proposal  which  extends  HTMLMediaElement  to  allow  JavaScript to generate media
              streams for playback.

       minimum-font-size (int)
              The minimum font size used to display text.

       monospace-font (string)
              The font family used as the default for content using monospace font.

       monospace-font-size (int)
              Default font size for the monospace font.

       notification (string)
              Controls website access to the notification API, that sends notifications via dbus.
              {`always', `never', `ask' (display a prompt each time)}

       offline-cache (bool)
              Whether  to  enable  HTML5  offline  web  application  cache  support.  Offline web
              application cache allows web  applications  to  run  even  when  the  user  is  not
              connected to the network.

       print-backgrounds (bool)
              Whether background images should be drawn during printing.

       plugins (bool)
              Determines whether or not plugins on the page are enabled.

       prevent-newwindow (bool)
              Whether  to  open  links,  that would normally open in a new window, in the current
              window.  This option does not affect links fired by hinting.

       sans-serif-font (string)
              The font family used as the default for content using sans-serif font.

       scripts (bool)
              Determines whether or not JavaScript executes within a page.

       scroll-step (int)
              Number of pixel vimb scrolls if 'j' or 'k' is used.

       scroll-multiplier (int)
              Multiplier to increase the scroll distance if window is scrolled by mouse wheel.

       serif-font (string)
              The font family used as the default for content using serif font.

       show-titlebar (bool)
              Determines  whether  the  titlebar  is  shown  (on  systems  that  provide   window
              decoration).  Defaults to true.

       site-specific-quirks (bool)
              Enables the site-specific compatibility workarounds.

       smooth-scrolling (bool)
              Enable or disable support for smooth scrolling.

       spatial-navigation (bool)
              Whether  to enable the Spatial Navigation.  This feature consists in the ability to
              navigate between focusable elements in a Web page,  such  as  hyperlinks  and  form
              controls,  by  using  Left,  Right, Up and Down arrow keys.  For example, if a user
              presses the Right key, heuristics determine whether there is an element they  might
              be  trying  to  reach  towards the right, and if there are multiple elements, which
              element they probably want.

       spell-checking (bool)
              Enable or disable the spell checking feature.

       spell-checking-languages (string)
              Set comma separated list of spell checking languages to be used for spell checking.
              The locale string typically is in the form lang_COUNTRY, where lang is  an  ISO-639
              language  code,  and  COUNTRY  is an ISO-3166 country code. For instance, sv_FI for
              Swedish as written in Finland or pt_BR for Portuguese as written in Brazil.

       status-bar (bool)
              Indicates if the status bar should be shown.

       status-bar-show-settings (bool)
              Whether to show settings on the status bar.  This shows on the right  hand  of  the
              status bar some runtime settings that where specified on compile time.

       status-css (string)
              CSS style applied to the status bar on none https pages.

       status-ssl-css (string)
              CSS style applied to the status bar on https pages with trusted certificate.

       status-ssl-invalid-css (string)
              CSS style applied to the status bar on https pages with untrusted certificate.

       strict-ssl (bool)
              If 'on', vimb will not load a untrusted https site.

       stylesheet (bool)
              If 'on' the user defined styles-sheet is used.

       tabs-to-links (bool)
              Whether the Tab key cycles through elements on the page.

              If  true,  pressing  the  Tab  key  will  focus  the  next element in the web view.
              Otherwise, the web view will interpret Tab key presses as normal key  presses.   If
              the  selected  element  is  editable, the Tab key will cause the insertion of a Tab
              character.

       timeoutlen (int)
              The time in milliseconds that is waited for a key code or mapped  key  sequence  to
              complete.

       user-agent (string)
              The user-agent string used by WebKit.

       user-scripts (bool)
              If 'on' the user scripts are injected into every page.

       webaudio (bool)
              Enable  or  disable  support  for  WebAudio  on pages.  WebAudio is an experimental
              proposal for allowing web pages to generate Audio WAVE data from JavaScript.

       webgl (bool)
              Enable or disable support for WebGL on pages.

       webinspector (bool)
              Determines whether or not developer tools, such as the Web Inspector, are enabled.

       x-hint-command (string)
              Command used if hint mode ;x is fired.  The command can be any vimb command string.
              Note  that  the  command  is  run through the mapping mechanism of vimb so it might
              change the behaviour by adding or changing mappings.

              :set x-hint-command=:sh! curl -e <C-R>% <C-R>;
                     This fills the inputbox with the prefilled  download  command  and  replaces
                     `<C-R>%'  with  the  current  URI  and  `<C-R>;'  with the URI of the hinted
                     element.
              :nnoremap ;f :set x-hint-command=:sh! firefox '<C-R>;<CR><CR>;x
                     This makes the key sequence ";f" start hinting and then open the hinted  URI
                     in firefox.

       xss-auditor (bool)
              Whether  to  enable the XSS auditor.  This feature filters some kinds of reflective
              XSS attacks on vulnerable web sites.

FILES

       $XDG_CONFIG_HOME/vimb[/PROFILE]
              Directory  for  configuration  data.   If  executed  with  -p  PROFILE   parameter,
              configuration is read from this subdirectory.
              config Ex commands from this file are executed on startup.
              scripts.js
                     This file can be used to run user scripts, that are injected into every page
                     that is opened.
              style.css
                     File for userdefined CSS styles.  These file is used if the config  variable
                     `stylesheet' is enabled.

       $XDG_DATA_HOME/vimb[/PROFILE]
              Directory  for runtime data.  If executed with -p PROFILE parameter, data files are
              written from this subdirectory.
              cookies.db Sqlite cookie  storage.   This  file  will  not  be  touched  if  option
              --incognito is set.
              closed Holds  the  URIs  of  last  closed  browser  windows.  This file will not be
                     touched if option --incognito is set.
              history
                     This file holds the history of unique opened URIs.  This file  will  not  be
                     touched if option --incognito is set.
              bookmark
                     This file holds the list of bookmarked URIs with tags.
              command
                     This  file  holds  the  history of commands and search queries performed via
                     input box.  This file will not be touched if option --incognito is set.
              queue  Holds the read it later queue filled by `qpush'.
              search This file holds the history of  search  queries.   This  file  will  not  be
                     touched if option --incognito is set.

ENVIRONMENT

       http_proxy, HTTP_PROXY
              If  either  environment variable is non-empty, the specified host and optional port
              is used to tunnel requests. For example: HTTP_PROXY=localhost:8118.

REPORTING BUGS

       Report bugs to the main project page on https://github.com/fanglingsu/vimb/issues
       or on the mailing list https://lists.sourceforge.net/lists/listinfo/vimb-users.

AUTHOR

       Daniel Carl