[//]: # "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
[//]: # "!!!!!! !!!!!!"
[//]: # "!!!!!! >>>>> WARNING <<<<< !!!!!!"
[//]: # "!!!!!! !!!!!!"
[//]: # "!!!!!! This file is autogenerated. !!!!!!"
[//]: # "!!!!!! !!!!!!"
[//]: # "!!!!!! >>>>> WARNING <<<<< !!!!!!"
[//]: # "!!!!!! !!!!!!"
[//]: # "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
# bookit
[](https://crates.io/crates/bookit)
[](https://crates.io/crates/bookit)
[](https://github.com/Nate-Wilkins/bookit/issues)
[](https://github.com/Nate-Wilkins/bookit/blob/main/LICENSE)
> Fast and simple bookmark manager for your operating system.
## Install
```
cargo install bookit
```
## Configuration
### Bookmarks
To setup `bookit` you need to run:
```
bookit config create
```
This will create a configuration file for where your bookmarks will be stored.
### Usage
```bash
nix run github:nate-wilkins/bookit -- --help
```
<p align="center">
<img src="./examples/demo.gif" />
</p>
### Shell Completions
You can put this in your `.zshrc` file (just make sure `$HOME/.zsh_functions/` is in your
`fpath`):
```
if [[ ! -f "$HOME/.zsh_functions/_bookit" ]]; then
bookit completions --type zsh > "$HOME/.zsh_functions/_bookit"
fi
```
Or you can generate yours with:
```
bookit completions --type $SHELL # Where $SHELL is zsh,bash,fish,elvish,powershell
```
### Environment Variables
To configure bookit you can update the following variables.
- `$BOOKIT_LOG_LEVEL` (unset): Sets the log level for the program.
- `$BOOKIT_CONFIG_PATH` (`~/.bookit`):
Configuration file path where bookit stores bookmarks.
- `$BOOKIT_EDIT_COMMAND` (`$EDITOR "$BOOKIT_CONFIG_PATH" "+/$VIM_BOOKIT_BOOKMARK_NAME"`):
Process command to run to edit a bookmark. Available variables are:
- `$BOOKIT_CONFIG_PATH`: Path to the configuration.
- `$BOOKIT_BOOKMARK_NAME`: Name of the bookmark to edit.
- `$VIM_BOOKIT_BOOKMARK_NAME`: `$BOOKIT_BOOKMARK_NAME` with proper escaping for searching in vim.
## Development
Written in rust. Workflows are defined in `.envrc.sh`.
## Roadmap
- Support `bookit view | grep` piping?
- Create `rofi-bookit`.
- Support windows?
- Create Windows like spotlight.
## Contributions
| [](https://github.com/nate-wilkins) | <p align="right">11.72 Hours</p> |