Provided by: wofi_1.2.4-1_amd64 bug

NAME

       wofi - Built in modes and other features

DESCRIPTION

       Wofi  contains  several  built  in  modes  as  well  as a lot of other features including combi which are
       documented here.

       The config options documented here are stripped of mode names. Mode specific config options are placed in
       the config file in the format mode-example_opt=val. For example dmenu has an option  called  parse_action
       which would be placed in the config as dmenu-parse_action=true.

MODES

       Currently wofi has 3 built in modes

       1.  run - searches $PATH for executables and allows them to be run by selecting them.

       2.  drun  -  searches  $XDG_DATA_HOME/applications  and $XDG_DATA_DIRS/applications for desktop files and
           allows them to be run by selecting them.

       3.  dmenu - reads from stdin and displays options which when selected will be output to stdout.

       In the event $XDG_DATA_HOME is not specified it defaults to  ~/.local/share.  If  $XDG_DATA_DIRS  is  not
       specified it defaults to /usr/local/share:/usr/share.

       Combi   is  not  a  mode  however  it  does  exist  as  a  feature.  You  can  use  it  by  doing  --show
       mode1,mode2,mode3,etc. You can mix and match any number of modes however each mode  can  only  be  loaded
       once so doing something like --show run,drun,run is not supported although I'm not sure why you'd do that
       in the first place.

DMENU CONFIG OPTIONS

       parse_action=BOOL
              If  true the result returned by dmenu will be stripped of image escape sequences and pango markup,
              default is false.

       separator=CHAR
              The character used to separate dmenu entries, default is \n.

       print_line_num=BOOL
              When an entry is selected the number of the line the entry was on is printed instead of the  entry
              itself. This disables caching as it's fundamentally incompatible with it.

RUN

       In  run  mode  holding  ctrl  while  running  an  entry  will  cause  arguments  to  be  parsed  even  if
       always_parse_args=false. Holding shift will cause the entry to be run in a terminal.

RUN CONFIG OPTIONS

       always_parse_args=BOOL
              If true spaces will not be treated as part of the  executable  name  but  rather  as  an  argument
              separator equivalent to holding control while pressing enter, default is false.

       show_all=BOOL
              If  true shows all the entries in path, this will show entries that have the same executable name,
              for example /bin/bash and /usr/bin/bash will be shown separately as bash  instead  of  having  one
              bash entry for the first one encountered, default is true.

DRUN CONFIG OPTIONS

       print_command=BOOL
              If  true the command used to launch the desktop file will be printed to stdout instead of invoking
              it, default is false.

       display_generic=BOOL
              If true then generic names will be displayed in () next to the application name, default is false.

DRUN

       When images are enabled drun mode will pull icon themes however being a GTK app it's possible you'll need
       to run gtk-update-icon-cache to get them to apply.

LOCATIONS

       There are 9 possible locations which can be specified either by name or by number, the number  scheme  is
       the  same  as  in  rofi  and  the  corresponding number is listed next to the names below, the default is
       center.

       1.  center 0

       2.  top_left 1

       3.  top 2

       4.  top_right 3

       5.  right 4

       6.  bottom_right 5

       7.  bottom 6

       8.  bottom_left 7

       9.  left 8

       The x and y offsets are applied based on layer-shell anchors which means an x offset can only be  applied
       if wofi is anchored on the x axis, i.e. you can only use an x offset with the top_left, top_right, right,
       bottom_right,  bottom_left,  and  left locations. center, top, and bottom can't have x offsets as they're
       not anchored on the x axis. Likewise  y  offsets  can  only  be  applied  to  top_left,  top,  top_right,
       bottom_right,  bottom,  and  bottom_left  locations. center, left, and right can't have y offsets because
       they're not anchored to the y axis. Since center can't have offsets on either as it's not anchored to any
       axis any x or y offset applied while using center will override the location to  top_left  for  backwards
       compatibility reasons seeing as not doing so would simply ignore the offsets anyway.

ORDER

       There are 2 order options currently, default and alphabetical. Default means the entries are displayed in
       the  order  they  are  added  by the mode, for all built in modes this is cached items first, followed by
       other entries in no specific order. Alphabetical means entries  are  alphabetical  sorted  period.  These
       orders  only  affect the order when no search has been entered. Once a search is entered the order is re-
       arranged based on the current matching preference and this order is ignored.

CACHING

       Caching cannot be disabled however the cache file can be set to /dev/null to effectively disable it.

WINDOW SWITCHER

       Wofi does not have the ability to do window switching on its own as there is  no  way  to  do  this  with
       wayland/wlroots  protocols however if you're using sway you can use swaymsg with dmenu mode to accomplish
       it.  The following script can be used to do window switching:

       swaymsg -t get_tree |
         jq -r '.nodes[].nodes[] | if .nodes then [recurse(.nodes[])] else [] end  +  .floating_nodes  |  .[]  |
       select(.nodes==[]) | ((.id | tostring) + "" + .name)' |
         wofi --show dmenu | {
           read -r id name
           swaymsg "[con_id=$id]" focus
       }

WIDGET LAYOUT

       This  section is for advanced CSS which needs more control than the built in wofi CSS names/classes allow
       for. This widget layout is subject to change at any time and without warning so your CSS might very  well
       break if you rely on this. Widgets have their corresponding names next to them if they have one.

       window - #window
           box - #outer-box
               entry - #input

               scrolledwindow - #scroll
                   viewport
                       box
                           flowbox - #inner-box
                               flowboxchild - #entry

                                   .entry - #unselected or #selected
                                   This  only  exists  if there's ONLY 1 action. This is a WofiPropertyBox which
                                   has no CSS node and should probably not be used, the  name  is  dependent  on
                                   whether  or  not  the  entry  is  selected.  See  wofi(5)  on  #selected  and
                                   #unselected for info.

                                       image
                                       This is only present if an image is present in the entry and might  occur
                                       multiple times if multiple images are present.

                                       label
                                       This  is  only  present  if  text is present in the entry and might occur
                                       multiple times if there are multiple text objects in a single entry.

                                   expander
                                   This and its children only exist if there are multiple actions on the entry

                                       .entry - #unselected or #selected
                                       The main action. This is a WofiPropertyBox which  has  no  CSS  node  and
                                       should  probably not be used, the name is dependent on whether or not the
                                       entry is selected. See wofi(5) on #selected and #unselected for info.

                                           image
                                           This is only present if an image is present in the  entry  and  might
                                           occur multiple times if multiple images are present.

                                           label
                                           This  is only present if text is present in the entry and might occur
                                           multiple times if there are multiple text objects in a single entry.

                                       list
                                       This contains all the secondary actions
                                           row - #entry
                                               .entry - #unselected or #selected
                                               This is a WofiPropertyBox  which  has  no  CSS  node  and  should
                                               probably not be used, the name is dependent on whether or not the
                                               entry  is  selected. See wofi(5) on #selected and #unselected for
                                               info.

                                                   image
                                                   This is only present if an image is present in the entry  and
                                                   might occur multiple times if multiple images are present.

                                                   label
                                                   This  is  only  present  if  text is present in the entry and
                                                   might occur multiple times if there are multiple text objects
                                                   in a single entry.
                   scrollbar

                                                                                                         wofi(7)