new dmenu_run
[dmenu.git] / dmenu.1
diff --git a/dmenu.1 b/dmenu.1
index 3387c7a..44c953b 100644 (file)
--- a/dmenu.1
+++ b/dmenu.1
@@ -1,65 +1,98 @@
-.TH DMENU 1 dmenu-VERSION
+.TH DMENU 1 dmenu\-VERSION
 .SH NAME
 dmenu \- dynamic menu
 .SH SYNOPSIS
 .B dmenu
+.RB [ \-b ]
+.RB [ \-f ]
+.RB [ \-i ]
+.RB [ \-l
+.IR lines ]
+.RB [ \-p
+.IR prompt ]
+.RB [ \-fn
+.IR font ]
+.RB [ \-nb
+.IR color ]
+.RB [ \-nf
+.IR color ]
+.RB [ \-sb
+.IR color ]
+.RB [ \-sf
+.IR color ]
 .RB [ \-v ]
+.P
+.BR dmenu_run " ..."
 .SH DESCRIPTION
-.SS Overview
 .B dmenu
-is a generic, highly customizable, and efficient menu for the X Window System,
-originally designed for
-.BR dwm (1).
-It supports arbitrary, user defined menu contents.
-.SS Options
+is a dynamic menu for X, originally designed for
+.IR dwm (1).
+It manages huge numbers of user\-defined menu items efficiently.
+.P
+dmenu reads a list of newline\-separated items from stdin and creates a menu.
+When the user selects an item or enters any text and presses Return, their
+choice is printed to stdout and dmenu terminates.
+.P
+.B dmenu_run
+is a dmenu script used by dwm which lists programs in the user's $PATH and
+executes the selected item.
+.SH OPTIONS
+.TP
+.B \-b
+dmenu appears at the bottom of the screen.
+.TP
+.B \-f
+dmenu grabs the keyboard before reading stdin.  This is faster, but may lock up
+X if stdin is from a terminal.
+.TP
+.B \-i
+dmenu matches menu items case insensitively.
+.TP
+.BI \-l " lines"
+dmenu lists items vertically, with the given number of lines.
+.TP
+.BI \-p " prompt"
+defines the prompt to be displayed to the left of the input field.
+.TP
+.BI \-fn " font"
+defines the font or font set used.
+.TP
+.BI \-nb " color"
+defines the normal background color.
+.IR #RGB ,
+.IR #RRGGBB ,
+and X color names are supported.
+.TP
+.BI \-nf " color"
+defines the normal foreground color.
+.TP
+.BI \-sb " color"
+defines the selected background color.
+.TP
+.BI \-sf " color"
+defines the selected foreground color.
 .TP
 .B \-v
 prints version information to stdout, then exits.
-.SS Usage
-.B dmenu
-reads a list of newline-separated items from stdin and creates a menu.
-When the user selects an item or enters any text and presses Enter, his choice
-is printed to stdout and
-.B dmenu
-terminates.
-.SS Keyboard Control 
-.B dmenu
-is completely controlled by the keyboard.  The following keys are recognized:
-.TP 2
-Any printable character
-appends the character to the text in the input field. This works as a filter:
-only items containing this text will be displayed.
-.TP 2
-Left/Right (Control-p/Control-n)
-select the previous/next item.
-.TP 2
-Tab (Control-i)
-copy the selected item to the input field.
-.TP 2
-Enter (Control-j)
-confirm selection and quit (print the selected item to stdout).
-.TP 2
-Shift-Enter (Shift-Control-j)
-confirm selection and quit (print the text in the input field to stdout).
-.TP 2
-Escape (Control-[)
-quit without selecting an item.
-.TP 2
-Backspace (Control-h)
-remove enough characters from the input field to change its filtering effect.
-.TP 2
-Control-u
-remove all characters from the input field.
-.SS Exit codes
-.B dmenu
-returns
-.B 0
-if Enter is pressed on termination,
-.B 1
-if Escape is pressed.
-.SH CUSTOMIZATION
-.B dmenu
-is customized by creating a custom config.h and (re)compiling the source
-code. This keeps it fast, secure and simple.
+.SH USAGE
+dmenu is completely controlled by the keyboard.  Besides standard Unix line
+editing and item selection (arrow keys, page up/down, home and end), the
+following keys are recognized:
+.TP
+.B Tab (Ctrl\-i)
+Copy the selected item to the input field.
+.TP
+.B Return (Ctrl\-j)
+Confirm selection.  Prints the selected item to stdout and exits, returning
+success.
+.TP
+.B Shift\-Return (Ctrl\-Shift\-j)
+Confirm input.  Prints the input text to stdout and exits, returning success.
+.TP
+.B Escape (Ctrl\-c)
+Exit without selecting an item, returning failure.
+.TP
+.B Ctrl\-y
+Paste the current X selection into the input field.
 .SH SEE ALSO
-.BR dwm (1)
+.IR dwm (1)