Skip to content

Commit

Permalink
Add to README, update help command
Browse files Browse the repository at this point in the history
  • Loading branch information
nicohman committed Jul 24, 2018
1 parent 28545eb commit 545b18d
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 3 deletions.
23 changes: 20 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Raven
A theme manager for linux, currently focusing on i3. Supports multiple different configuration files, and can reload an entire theme on a dime. Fast, easy to use and portable.
A theme manager for linux, currently focusing on i3. Supports multiple different configuration files, and is fast and portable.

## Installation
All you technically require is [cargo](https://github.com/rust-lang/cargo) to be installed.
Expand All @@ -21,6 +21,12 @@ The following packages are required for their relevant options:

+ [i3](https://github.com/i3/i3): `wm`

+ [Ranger](https://github.com/ranger/ranger) : `ranger`

+ [Lemonbar](https://github.com/ranger/ranger) : `lemonbar`

+ [Ncmpcpp](https://github.com/arybczak/ncmpcpp) : `ncmpcpp`

You can also download a prebuilt binary from [here](https://github.com/nicohman/raven/releases)

## Usage
Expand All @@ -32,8 +38,11 @@ new [theme] : create a new theme
delete [theme] : delete a theme
refresh : load last loaded theme
edit [theme] : initialize editing [theme]
modify [option] : open the currently edited themes's [option] in $EDITOR
add [option] [file] : add option to current theme
cycle {{check|start|stop}} : manage theme cycling daemon
rm [option] : remove option from current theme
info : print info about the theme being currently edited
menu : show theme menu
```
## Configuration
Expand All @@ -43,17 +52,25 @@ window_manager: |[window manager in use. Currently only i3 is supported.]|
monitor : |number of monitors available, to tell how many polybars to dupe.|
```

To configure a theme, start off by creating it with `raven new [theme]`. You'll automatically start editing that theme. Run `raven add [option] [file]` to add a specific option. Available options are:
To configure a theme, start off by creating it with `raven new [theme]`. You'll automatically start editing that theme. Run `raven add [option] [file]` to add a specific option. This will copy the indicated file to raven's registry, and run/reload/copy it when the edited theme is loaded or refreshed. Run `raven rm [option]` to remove an option from a theme. Available options are:

+ poly(Polybar)
+ termite(Termite config)
+ wm(window manager config)
+ wall(Wallpaper)
+ xres(Xresources)
+ xres\_m(Xresources, to be merged)
+ ranger(rc.conf)
+ lemonbar(A shell script that should spawn your lemonbar)
+ ncmpcpp(ncmpcpp connfig file)

If you place an i3 config named base\_i3 in ~/.config/raven, the contents of wm for a theme will be appended to it instead of being run on their own. This allows you to have a central config for keyboard shortcuts, and have cosmetics only be stored in the theme.
This will copy the indicated file to raven's registry, and run/reload/copy it when the edited theme is loaded or refreshed. Run `raven rm [option]` to remove an option from a theme.

The lemonbar option should be a shell script that runs lemonbar(s). They will automatically be killed just like polybars when the theme is changed or reloaded.

### Polybar bar names
Up to two polybars will be started, depending on how many monitors you have configured. The bars should be named, in order: `main` and `other`

### Cycle themes

With the cycle command you can control a daemon that will automatically cycle through all of your configured themes. You need to edit `~/.config/raven/time` and place the number of seconds there should be inbetween each cycle into that file in order to use it.
1 change: 1 addition & 0 deletions src/bin/raven.rs
Original file line number Diff line number Diff line change
Expand Up @@ -532,6 +532,7 @@ fn print_help() {
println!("add [option] [file] : add option to current theme");
println!("rm [option] : remove option from current theme");
println!("cycle {{check|start|stop}} : manage theme cycling daemon");
println!("info : print info about the theme being currently edited");
println!("menu : show theme menu");
}
fn get_home() -> String {
Expand Down

0 comments on commit 545b18d

Please sign in to comment.