add plugin:percol (#4582)
* add plugin:percol * fix format * check percol * fix empty history in gnome terminal
This commit is contained in:
parent
55ab532e50
commit
ac0d71467b
|
@ -0,0 +1,23 @@
|
|||
## percol
|
||||
|
||||
Provides some useful function to make [percol](https://github.com/mooz/percol) work with zsh history and [jump plugin](https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/jump/jump.plugin.zsh)
|
||||
|
||||
### Preview
|
||||
![Preview](http://t1.qpic.cn/mblogpic/eb1c8f9d2b9f62d19fa8/2000.jpg)
|
||||
|
||||
### Requirements
|
||||
|
||||
```shell
|
||||
pip install percol
|
||||
```
|
||||
|
||||
And [jump](https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/jump/jump.plugin.zsh) for `oh-my-zsh` is a optional requirement.
|
||||
|
||||
### Usage
|
||||
|
||||
For default
|
||||
|
||||
- `^-r` bind to `percol_select_history`.You can use it to grep your history with percol.
|
||||
|
||||
- `^-b` bind to `percol_select_marks`.You can use it to grep your bookmarks with percol.
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
if which percol &> /dev/null; then
|
||||
function percol_select_history() {
|
||||
local tac
|
||||
which gtac &> /dev/null && tac="gtac" || { which tac &> /dev/null && tac="tac" || { tac="tail -r" } }
|
||||
BUFFER=$(fc -l -n 1 | eval $tac | percol --query "$LBUFFER")
|
||||
CURSOR=$#BUFFER
|
||||
zle -R -c
|
||||
}
|
||||
|
||||
zle -N percol_select_history
|
||||
bindkey '^R' percol_select_history
|
||||
|
||||
if which marks &> /dev/null; then
|
||||
function percol_select_marks() {
|
||||
BUFFER=$(marks | percol --query "$LBUFFER" | awk '{print $3}')
|
||||
CURSOR=$#BUFFER # move cursor
|
||||
zle -R -c # refresh
|
||||
}
|
||||
zle -N percol_select_marks
|
||||
bindkey '^B' percol_select_marks
|
||||
fi
|
||||
fi
|
Loading…
Reference in New Issue