blog/content/post/2014/12/20/2014-12-20-improve-git-ls-f...

2.8 KiB
Raw Blame History

title author date url wordtwit_posted_tweets wordtwit_post_info tmac_last_id categories
peco + git ls-files を改良してみた kazu634 2014-12-20 /2014/12/20/improve-git-ls-files-with-peco/
a:1:{i:0;i:5569;}
O:8:"stdClass":13:{s:6:"manual";b:1;s:11:"tweet_times";i:1;s:5:"delay";s:1:"0";s:7:"enabled";s:1:"1";s:10:"separation";i:60;s:7:"version";s:3:"3.7";s:14:"tweet_template";s:98:"ブログに新しい記事を投稿したよ: peco + git ls-files を改良してみた - [link] ";s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:5569;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}}
565475588425912321
git
vim
zsh

Git pecoを使って生産性を上げるちょっとした工夫 Qiitaから少し改良させてみました。改良点は以下の点です:

  • pecoで何も指定しなかった場合は、vimを起動しないようにする
  • gitレポジトリではない場合は、そもそもなにもしないようにする

コードはこちら:

# check whether `peco` exists
if which peco > /dev/null; then
  function gim () {
    # check whether the current directory is under `git` repository.
    if git rev-parse 2> /dev/null; then
      local selected_file=$(git ls-files . | peco)

      if [ -n "${selected_file}" ]; then
        vi ${selected_file}
      fi
    fi
  }
fi

参考