**pipedial**, _v0.2_, _2019_
_This file last updated on 21 September, 2019_
![Pipedial Gif](docs/pipedial.gif)
**Clone recursively, there are submodules:**
```bash
git clone --recursive https://code.reversed.top/user/xaizek/pipedial
```
### Brief Description ###
*pipedial* is one more tool for selecting something in console. It was created
out of despair because of absence of a selector like [sentaku][sentaku] with
Vim-like modes which isn't horribly slow (you can see *sentaku* drawing elements
top to bottom, it comes out of it being written in `bash`, which makes it easy
to use). Literally tenth of existing pickers have nothing going in favour of
their existence being rewrites of other tools for no good reason.
### Features ###
* Very basic Vim-like navigation.
* Filtering by substring.
### Example ###
Switch to a branch inside git repository (doesn't handle cancellation):
```
git checkout $(git branch | pipedial --title 'Pick destination branch:')
```
### Supported Environment ###
Expected to work in \*nix like environments.
### Prerequisites ###
* [GNU Make][make]
* C++11 compatible compiler (e.g. GCC 4.9.3)
* [curses library][curses] with support of wide characters
* [GNU Readline library][readline]
* (optional) [pandoc][pandoc] for regenerating man page
### License ###
Version 3 of the GNU General Public License.
[sentaku]: https://github.com/rcmdnk/sentaku
[make]: https://www.gnu.org/software/make/
[curses]: https://en.wikipedia.org/wiki/Curses_(programming_library)
[readline]: https://tiswww.case.edu/php/chet/readline/rltop.html
[pandoc]: https://pandoc.org/
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"
Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/pipedial
Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/pipedial
You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a
pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master