2023-08-08 18:52:41 -07:00
|
|
|
RMenu
|
|
|
|
------
|
2023-01-04 01:07:57 -07:00
|
|
|
|
2023-08-20 19:09:23 -07:00
|
|
|
<!--
|
|
|
|
TODO: improve documentation:
|
|
|
|
2. explain exchange format and rmenu-build tool
|
|
|
|
3. include more examples including fullscreen/transparent app-window
|
|
|
|
-->
|
|
|
|
|
2023-01-04 01:07:57 -07:00
|
|
|
Another customizable Application-Launcher written in Rust
|
2023-08-08 18:52:41 -07:00
|
|
|
|
|
|
|
### Features
|
|
|
|
|
|
|
|
* Blazingly Fast 🔥
|
|
|
|
* Simple and Easy to Use
|
|
|
|
* Customizable (Configuration and CSS-Styling)
|
|
|
|
* Plugin Support
|
|
|
|
* Dmenu-Like Stdin Menu Generation
|
|
|
|
|
|
|
|
### Installation
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ make install
|
|
|
|
```
|
|
|
|
|
|
|
|
### Usage
|
|
|
|
|
2023-08-20 19:45:20 -07:00
|
|
|
View all available options with the builtin help:
|
2023-08-08 18:52:41 -07:00
|
|
|
|
|
|
|
```bash
|
2023-08-20 19:45:20 -07:00
|
|
|
$ rmenu --help
|
2023-08-08 18:52:41 -07:00
|
|
|
```
|
|
|
|
|
2023-08-20 19:45:20 -07:00
|
|
|
RMenu Comes with a few default plugins.
|
|
|
|
|
|
|
|
| Name | Description |
|
|
|
|
| :-------: | ------------------------------------------------------- |
|
|
|
|
| run | Execute a program in $PATH |
|
|
|
|
| drun | Run a Configured Free-Desktop Application |
|
|
|
|
| audio | Select and Set-Default PulseAudio Sink using `pactl` |
|
|
|
|
| network | Wi-Fi Login/Connection Tool using Network-Manager |
|
|
|
|
| window | Simple Window Switcher (Currently Only Support Sway) |
|
|
|
|
| powermenu | Simple Power/Logout Tool (Currently Only Supports Sway) |
|
|
|
|
|
|
|
|
Run a plugin by passing the `-r` flag like one of the following:
|
2023-08-08 18:52:41 -07:00
|
|
|
|
|
|
|
```bash
|
2023-08-20 19:45:20 -07:00
|
|
|
$ rmenu -r run
|
2023-08-08 18:52:41 -07:00
|
|
|
$ rmenu -r drun
|
2023-08-20 19:45:20 -07:00
|
|
|
$ rmenu -r audio
|
|
|
|
```
|
|
|
|
|
|
|
|
Or even run plugins in combination if you'd like:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ rmenu -r run -r drun
|
2023-08-08 18:52:41 -07:00
|
|
|
```
|
|
|
|
|
|
|
|
Custom Menus can also be passed much like Dmenu by passing items via
|
|
|
|
an input. The schema follows a standard as defined in [rmenu-plugin](./rmenu-plugin)
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ generate-my-menu.sh > input.json
|
|
|
|
$ rmenu -i input.json
|
|
|
|
```
|
|
|
|
|
|
|
|
When neither a plugin nor an input are specified, rmenu defaults to
|
|
|
|
reading from stdin.
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ generate-my-menu.sh | rmenu
|
|
|
|
```
|
|
|
|
|
|
|
|
### Configuration
|
|
|
|
|
|
|
|
Customize RMenu Behavior and Appearal in a [single config](./rmenu/public/config.yaml)
|
|
|
|
|
|
|
|
Customize the entire app's appearance with CSS. A few [Example Themes](./themes/)
|
|
|
|
are available as reference. To try them out use: `rmenu --css <my-css-theme>`
|
|
|
|
or move the css file to `$HOME/.config/rmenu/style.css`
|
|
|
|
|
2023-08-20 19:45:20 -07:00
|
|
|
### Scripting
|
|
|
|
|
|
|
|
RMenu plugins and imports communicate using JSON messages defined in `rmenu-plugin`.
|
|
|
|
Writing JSON in shell is painful, so rmenu provides another cli-tool to help build
|
|
|
|
messages quickly and easily while still retaining the flexibility of JSON.
|
|
|
|
|
|
|
|
After Installing. Use the following command, and look at [other-plugins](./other-plugins)
|
|
|
|
for example uses.
|
|
|
|
|
|
|
|
```
|
|
|
|
$ rmenu-build --help
|
|
|
|
```
|
|
|
|
|
2023-08-20 19:09:23 -07:00
|
|
|
### Example Screenshots
|
|
|
|
|
|
|
|
#### Launchpad
|
|
|
|

|
|
|
|
|
|
|
|
#### Nord
|
|
|
|

|
|
|
|
|
|
|
|
#### Dark
|
|
|
|

|
2023-08-08 18:52:41 -07:00
|
|
|
|
2023-08-20 19:09:23 -07:00
|
|
|
#### Solarized
|
|
|
|

|
2023-08-20 19:13:12 -07:00
|
|
|
|
|
|
|
#### PowerMenu
|
|
|
|

|