Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/phillbush/pmenu
A pie-menu in xlib and imlib2.
https://github.com/phillbush/pmenu
c imlib2 menu pie-menu unix x11 xlib xrender xshape
Last synced: 3 days ago
JSON representation
A pie-menu in xlib and imlib2.
- Host: GitHub
- URL: https://github.com/phillbush/pmenu
- Owner: phillbush
- License: mit
- Created: 2020-06-11T02:00:39.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-08-22T21:32:41.000Z (over 1 year ago)
- Last Synced: 2024-12-19T00:09:37.869Z (11 days ago)
- Topics: c, imlib2, menu, pie-menu, unix, x11, xlib, xrender, xshape
- Language: C
- Homepage:
- Size: 271 KB
- Stars: 212
- Watchers: 7
- Forks: 11
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG
- License: LICENSE
Awesome Lists containing this project
- awesome-github-repos - phillbush/pmenu - A pie-menu in xlib and imlib2. (C)
README
# πmenu
**WARNING:**
The options `-r`, `-m` and `-p` are deprecated and were replaced by `-x`
and `-X`. The option `-P` (used to provide path) is now replaced by the
environment variable `$ICONPATH`, an environment variable which supports
several paths delimited by colons. Read the manual for more information.
Update your scripts after updating πmenu.πmenu is a pie menu utility for X.
πmenu receives a menu specification in stdin, shows a menu for the user
to select one of the options, and outputs the option selected to stdout.πmenu comes with the following features:
* πmenu reads something in and prints something out, the UNIX way.
* Submenus (some pie-menu slices can spawn another menu).
* Icons (pie-menu slices can contain icon image).
* X resources support (you don't need to recompile πmenu for configuring it).## Files
The files are:
* `./README.md`: This file.
* `./Makefile`: The makefile.
* `./config.h`: The hardcoded default configuration for πmenu.
* `./pmenu.1`: The manual file (man page) for πmenu.
* `./pmenu.c`: The source code of πmenu.
* `./pmenu.sh`: A sample script illustrating how to use πmenu.
* `./ctrlfnt.*`: Routines for drawing text.## Installation
First, edit `./Makefile` or set the proper environment variables to
match your local setup.In order to build πmenu you need the Imlib2, Xlib and Xft header files
(and some X extensions: XShape and Xinerama).
The default configuration for πmenu is specified in the file `config.h`,
you can edit it, but most configuration can be changed at runtime via
X resources. Enter the following command to build πmenu. This command
creates the binary file ./pmenu.make
By default, πmenu is installed into the `/usr/local` prefix. Enter the
following command to install πmenu (if necessary as root). This command
installs the binary file `./pmenu` into the `${PREFIX}/bin/` directory,
and the manual file `./pmenu.1` into `${MANPREFIX}/man1/` directory.make install
## Running πmenu
πmenu receives as input a menu specification where each line is a menu
entry. Each line can be indented with tabs to represent nested menus.
Each line is made out of a label and a command separated by any number
of tabs.See the script ./pmenu.sh for an example of how to use πmenu to draw a
simple pie menu.Read the manual for more information on running πmenu.