xaizek / hstr (License: Apachev2) (since 2018-12-07)
Bash and Zsh shell history suggest box - easily view, navigate, search and manage your command history.
File Mode Size
debian/ 040000
dist/ 040000
man/ 040000
src/ 040000
LICENSE 100644 11KiB
Makefile.am 100644 44B
README.md 100644 1,495B
configure.ac 100644 1,128B

/README.md

hstr

BASH History Suggest Box

DESCRIPTION

A command line utility that brings improved BASH command completion from the history. It aims to make completion easier and faster than Ctrl-R.

Shell History Suggest Box

DOWNLOAD

https://github.com/dvorka/hstr/releases

SOURCE CODE INSTALLATION

  • download distribution, expand it and install hh:

    ./configure && make && make install

  • Configure hh as described below.

UBUNTU 13.04 INSTALLATION

  • install hh on Ubuntu:

    sudo add-apt-repository ppa:ultradvorka/ppa

    sudo apt-get update

    sudo apt-get install hh

CONFIGURATION

  • add

    shopt -s histappend

    export PROMPT_COMMAND="history -a; history -n; ${PROMPT_COMMAND}"

    at the end of .bashrc in order to ensure that BASH history of commands will be kept in sync with filesystem.

  • bind hh to a BASH key by adding a line to .bashrc, e.g. Ctrl-R:

    bind '"\C-r": "\C-k\C-uhh\C-j"'

    or Ctrl-F12:

    bind '"\e[24;5~":"\C-k\C-uhh\C-j"'

    To determine the character sequence emitted by a pressed key in terminal, type CTRL-v and then press the key. To clear the line first, add \C-k \C-u in front of the actual command. Check your current bindings using:

    bind -S

BUGS

https://github.com/dvorka/hstr/issues

Hints

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/hstr

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/hstr

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