Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
wofi(7)		       Miscellaneous Information Manual		       wofi(7)

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_ac-
       tion 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/ap-
	   plications 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	~/.lo-
       cal/share. If $XDG_DATA_DIRS is not specified it	defaults  to  /usr/lo-
       cal/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 correspond-
       ing 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 lo-
       cation  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 al-
       phabetical sorted period. These orders only affect the  order  when  no
       search  has  been entered. Once a search	is entered the order is	re-ar-
       ranged based on the current matching preference and this	order  is  ig-
       nored.

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  sub-
       ject  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 en-
				   try	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 ob-
				       jects 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 WofiProper-
				       tyBox which has no CSS node and	should
				       probably	 not  be used, the name	is de-
				       pendent 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 oc-
					   cur multiple	times if multiple  im-
					   ages	are present.

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

				       list
				       This contains all the secondary actions
					   row - #entry
					       .entry  -  #unselected  or #se-
					       lected
					       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	#unse-
					       lected for info.

						   image
						   This	is only	present	if  an
						   image is present in the en-
						   try and might occur	multi-
						   ple	times  if multiple im-
						   ages	are present.

						   label
						   This	 is  only  present  if
						   text	 is present in the en-
						   try and might occur	multi-
						   ple times if	there are mul-
						   tiple  text	objects	 in  a
						   single entry.
		   scrollbar

								       wofi(7)

NAME | DESCRIPTION | MODES | DMENU CONFIG OPTIONS | RUN | RUN CONFIG OPTIONS | DRUN CONFIG OPTIONS | DRUN | LOCATIONS | ORDER | CACHING | WINDOW SWITCHER | WIDGET LAYOUT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=wofi&sektion=7&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help