xaizek / hstr (License: Apachev2) (since 2018-12-07)
Bash and Zsh shell history suggest box - easily view, navigate, search and manage your command history.
Commit a237568a1000dff45a21809c6b86dd373153a3a9

Man
Author: Martin Dvorak
Author date (UTC): 2014-04-13 07:37
Committer name: Martin Dvorak
Committer date (UTC): 2014-04-13 07:37
Parent(s): 2446ad85091bd86e3f9820cc947c09c3b4452262
Signing key:
Tree: daf5d6a2fd9f960992a7bd6001c0d1e18698a86d
File Lines added Lines deleted
man/hh.1 18 7
src/hstr.c 4 0
File man/hh.1 changed (mode: 100644) (index af6c212..85a356b)
... ... uses shell history to provide suggest box like functionality
9 9 for commands used in the past. By default it parses .bash-history for commands used in the past. By default it parses .bash-history
10 10 file that is filtered as you type a command substring. Commands file that is filtered as you type a command substring. Commands
11 11 are not just filtered, but also ordered by a ranking algorithm are not just filtered, but also ordered by a ranking algorithm
12 that considers number of occurences, length and timestamp. In addition
13 hh allows removal of commands from history - for instance with a typo or with a sensitive content.
12 that considers number of occurences, length and timestamp.
13 Favorite and frequently used commands can be bookmarked. In addition
14 hh allows removal of commands from history - for instance with a typo
15 or with a sensitive content.
14 16 .SH OPTIONS .SH OPTIONS
15 17 .TP .TP
18 \fB--favorites\fR
19 Show favorites view immediately
20 .TP
16 21 \fB--show-configuration\fR \fB--show-configuration\fR
17 Show configuration that can be added to .bashrc
22 Show configuration that can be added to ~/.bashrc
18 23 .TP .TP
19 24 \fB--help\fR \fB--help\fR
20 25 Show help Show help
21 .SH COMMANDS
26 .SH KEYS
22 27 .TP .TP
23 28 \fBpattern\fR \fBpattern\fR
24 29 Type to filter shell history. Type to filter shell history.
 
... ... Type to filter shell history.
27 32 Toggle case sensitive search. Toggle case sensitive search.
28 33 .TP .TP
29 34 \fBCtrl\-/\fR \fBCtrl\-/\fR
30 Toggle history as provided by shell vs. ranked history ordered by the number of occurences, length and timestamp.
35 Rotate view of history as provided by BASH, ranked history ordered by the number of occurences/length/timestamp and favorites.
31 36 .TP .TP
32 37 \fBCtrl\-l\fR \fBCtrl\-l\fR
33 38 Make search pattern lowercase or uppercase. Make search pattern lowercase or uppercase.
 
... ... Configuration options:
65 70 Get more colors with this option (default is monochromatic). Get more colors with this option (default is monochromatic).
66 71
67 72 \fIcasesensitive\fR \fIcasesensitive\fR
68 Make the pattern-based filtering case sensitive by default.
73 Make the pattern-based filtering case sensitive (it's case insensitive by default).
69 74
70 75 \fIrawhistory\fR \fIrawhistory\fR
71 Show normal history by default (default is metric-based).
76 Show normal history as a default view (metric-based view is shown otherwise).
77
78 \fIfavorites\fR
79 Show favorites as a default view (metric-based view is shown otherwise).
72 80
73 81 \fIwarning\fR \fIwarning\fR
74 82 Show warning. Show warning.
 
... ... Configuration options:
79 87 Example: Example:
80 88 \fBexport HH_CONFIG=casesensitive,hicolor\fR \fBexport HH_CONFIG=casesensitive,hicolor\fR
81 89
90 .SH FILES
91 \fB~/.hh_favorites\fR bookmarked favorite commands
92
82 93 .SH CONFIGURATION .SH CONFIGURATION
83 94 Optionally add the following lines to ~/.bashrc: Optionally add the following lines to ~/.bashrc:
84 95 .nf .nf
File src/hstr.c changed (mode: 100644) (index a28bdbe..21f2706)
... ... static const char *HELP_STRING=
112 112 "Usage: hh [option] [arg1] [arg2]..." "Usage: hh [option] [arg1] [arg2]..."
113 113 "\nShell history suggest box (build: "__DATE__" " __TIME__")" "\nShell history suggest box (build: "__DATE__" " __TIME__")"
114 114 "\n" "\n"
115 "\n --favorites ... show command favorites"
115 116 "\n --show-configuration ... show configuration to be added to .bashrc" "\n --show-configuration ... show configuration to be added to .bashrc"
116 117 "\n --help ... display this help and exit" "\n --help ... display this help and exit"
117 118 "\n" "\n"
 
... ... int main(int argc, char *argv[])
713 714 { {
714 715 if(argc>0) { if(argc>0) {
715 716 if(argc==2) { if(argc==2) {
717 if(strstr(argv[1], "--favorites") || strstr(argv[1], "-f")) {
718 xxx
719 }
716 720 if(strstr(argv[1], "--show-configuration")) { if(strstr(argv[1], "--show-configuration")) {
717 721 printf("%s", INSTALL_STRING); printf("%s", INSTALL_STRING);
718 722 return EXIT_SUCCESS; return EXIT_SUCCESS;
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