From ArchWiki
Jump to: navigation, search

Gmrun is an application launcher similar to gnome-run, xfrun4 etc.


  • GUI apps can just be typed in and run by pressing enter, terminal apps can be run by using ctrl-enter. Entering ctrl-enter with a blank input box will open up a blank terminal.
  • Gmrun features tab completion, entering tab will bring up a scrollable list of possible matches.
  • Web addresses entered into Gmrun will launch a web browser automatically.
  • The same goes for email addresses, using the 'mailto:' prefix e.g., will launch your email client.
  • More shortcuts can be added to ~/.gmrunrc (covered below) or you can modify the system-wide file at /usr/share/gmrun/gmrunc.
  • You can enter search mode by entering '!' as the first letter, the title should change from 'Run program' to 'Search', letters you input will then automatically come up with suggestions from your command history.
  • Ctrl-r will allow you to search backwards through that history.
  • Ctrl-s will search forward through the history.
  • Ctrl-g will cancel a search
  • If an extension has been defined in the configuration file, files can be launched by the correct program just by typing the file name.
  • Press escape to exit, without running anything.


The configuration file is located at /usr/share/gmrun/gmrunrc but you can create a per-user configuration in ~/.gmrunrc.

Please note that '%u' is expanded to the full command entered, '%s' is the last part after the shortcut, e.g. if you enter the URL:

%u would expand to

and %s would expand to


Here is an example configuration file.

# gmrun configuration file
# gmrun is (C) Mihai Bazon, <>
# GPL v2.0 applies

# Set terminal
Terminal = urxvt
TermExec = ${Terminal} -e
AlwaysInTerm = ssh telnet ftp lynx mc vi vim pine centericq perldoc man

# Set window geometry (except height)
Width = 400
Top = 300
Left = 450

# History size
History = 256

# Shows last history line selected when invoked
ShowLast = 1

# Show files starting with '.'
# Default is 0 (off), set it to 1 if you want "hidden" files to show up
# in the completion window
ShowDotFiles = 0

# Timeout (in milliseconds) after which gmrun will simulate a TAB press
# Set this to NULL if do not like this feature.
TabTimeout = 0

# URL handlers
# If the entered text is "" then:
#   - %u gets replaced with the whole URL ("")
#   - %s gets replaced with "//".  This is useful for URL-s
#     like "man:printf" --> %s will get replaced with "printf"
URL_http = firefox %u
URL_mailto = firefox -remote "mailto(%s)"
URL_man = ${TermExec} 'man %s'
URL_info = ${TermExec} 'info %s'
URL_pd = ${TermExec} 'perldoc %s'
URL_file = pcmanfm %s
URL_readme = ${TermExec} 'less /usr/doc/%s/README'
URL_info = ${TermExec} 'info %s'
URL_sh = sh -c '%s'

# extension handlers
EXT:doc,rtf = AbiWord %s
EXT:txt,cc,cpp,h,java,html,htm,epl,tex,latex,js,css,xml,xsl,am,php,css,js,py = gedit %s
EXT:mpeg,mpg,avi,mkv,flv = vlc %s
EXT:ps = gv %s
EXT:pdf = epdfview %s

Some of the above modifiers are explained below.

  • 'ShowDotFiles' Whether to show dotfiles eg .gmrun in the autocomplete menu, 1 = true, 0 = false.
  • 'TabTimeout' Whether to show the tab complete menu automatically when something is inputted, 1 = true, 0 = false.
  • 'Terminal' The command to run when Ctrl-enter is entered without other input.
  • 'TermExec' The command to run when running a specific command in the terminal eg 'ls ~ (Ctrl-enter)'.
  • 'URL_http' The command to run when a web address is entered.
  • 'URL_mailto' The command to run when an email address is entered.
  • 'EXT:html' command to open html files with, based on the file extension, another might be 'EXT:txt = gedit %s'
  • 'Top' & 'Left' The placement of the window, in pixels from the respective edge.
  • 'Width' The width in pixels of the window.
  • 'History' Length of command history that is stored.

Adding Custom Shortcuts

Shortcuts can easily be added. See the examples below.

Search Google

URL_g = firefox ''

Which is used like this:


Would search Google for 'Arch'.


You can use your Desktop Environment's or Windows Manager's keybinding settings to set one for gmrun.