Help us understand the problem. What is going on with this article?

centos,bash環境でpecoを導入してコマンド履歴を便利にするまで。

More than 5 years have passed since last update.

最近TLでpercolやpecoが盛り上がっているので試してみました。

追記

lestrratさん、syohexさんからご指摘いただいた通り、そもそもpecoを使いたいだけの場合はGoのインストールは必要ありませんでした。
(percolだとpythonとかの設定が色々と面倒だった、という背景を忘れていました...)

詳細は下記記事を参考にしてみてください。

例えば、pecoをビルドしない
http://qiita.com/lestrrat/items/de8565fe32864f76ac19

pecoの導入

## 例
$ cd
$ mkdir -p local/src
$ cd local/src
$ wget https://github.com/peco/peco/releases/download/v0.1.12/peco_linux_amd64.tar.gz
$ tar -C /home/*****/local -xzf peco_linux_amd64.tar.gz

あとはパスを設定すればOKです。

追記前(残しておきます)

goのインストール

そもそもgoが入ってなかった...ので、ローカルにgoをインストールします。

## おもむろにディレクトリ作成
$ cd
$ mkdir -p local/src
$ cd local/src
$ wget http://golang.org/dl/go1.3.linux-amd64.tar.gz
$ tar -C /home/*****/local -xzf go1.3.linux-amd64.tar.gz

golangの環境設定

パスを設定します。適当に.bashrcとか開いてコピペ。

export GOROOT="$HOME/local/go"
export GOPATH="$HOME/local/mygo"
export PATH="$PATH:$GOPATH/bin:$GOROOT/bin"
## 設定再読み込み
source .bashrc

# 確認
which go

pecoのインストール

goがインストールできたので次はpecoをインストールします。

$ go get github.com/peco/peco/cmd/peco

# 確認
which peco

pecoの設定

こちらの記事を参考に、.bashrcとかに書き込んでいきます。

bashでもpercolをイイ感じに使う方法
http://d.hatena.ne.jp/hirose31/20140612/1402559889

最初なので、コマンド履歴を便利にします。
下記ソースを.bashrcに適当にコピペ。

# settings for peco
_replace_by_history() {
    local l=$(HISTTIMEFORMAT= history | tac | sed -e 's/^\s*[0-9]*    \+\s\+//' | peco --query "$READLINE_LINE")
    READLINE_LINE="$l"
    READLINE_POINT=${#l}
}
bind -x '"\C-r": _replace_by_history'
bind    '"\C-xr": reverse-search-history'
# 再読み込み
$ source .bashrc

これであとはいつものようにC-rでインクリメンタルサーチすれば
あら不思議、pecoが使えます。

おまけ(vimっぽいキーバインド)

動的にフィルターをかけていって選択するときに、
vimっぽくjとかkでラインを移動できたら便利なので、そのようにキーバインドを変えます。

# おもむろにディレクトリを作る
$ cd
$ mkdir -p .config/peco/

# 移動してvimを開く
$ cd .config/peco
$ vim config.json

下記内容をコピペすればOK。

{
    "keymap": {
        "C-j": "peco.SelectDown",
        "C-k": "peco.SelectUp",
        "C-f": "peco.ScrollPageDown",
        "C-b": "peco.ScrollPageUp"
    }
}

参考サイト

流行りのpecoをcentosにインストールしました
http://blog.10rane.com/installed-the-peco-to-centos/
bashでもpercolをイイ感じに使う方法
http://d.hatena.ne.jp/hirose31/20140612/1402559889
例えば、pecoをビルドしない
http://qiita.com/lestrrat/items/de8565fe32864f76ac19

fortkle
connehito
「人の生活になくてはならないものをつくる」というミッションの元、ママリを開発・運営する会社です。
https://connehito.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした