pockestrap

Web Programmer's memo

zsh

コマンドを打ち間違えるとコマンドが走るコマンド

Installation 1. banner コマンドをインストールする パッケージマネージャでインストール出来ると思います。 # Arch Linux の例 $ sudo pacman -S banner 2. flowterm という gem をインストールする。 github.com $ gem install flowterm 3. ~/.zshrc に以…

tmux sessions ❤ peco

peco を使って tmux の session にいい感じにアタッチ出来るようにした。 想定する tmux の使いかた セッションを沢山生やす 私は、だいたい1 git repository 毎に tmux の session を生やしている。 仕事だとメインで 4 git repositories + 色々 の為に tmu…

"git " って打つのめんどくさい…!

この記事は Git Advent Calendar 2015 の 9日目です。 qiita.com 昨日は kaneshin さんの Gitリポジトリをメンテナンスして軽量化する - Qiita でした。 レポジトリをダイエットしたい時に便利そうですね。 "git " って打つのめんどくさくない…? git って打…

zshでたいぽした時にヒストリに記録しない

zsh

たいぽしたコマンドがヒストリに残っていてもいい事無いですね。登録しないようにしましょう。 コード command_not_found_handler() { tail -1 $HISTFILE | grep -F "$*" > /dev/null 2>&1 && sed -i '$d' $HISTFILE return 127 } これを.zshrcの適当なとこ…

ghqで管理しているレポジトリを全てアップデートする

motemen/ghq · GitHub ghq便利です。 ghqで管理しているレポジトリを全部update(git pull)したかったのですが、標準でなさそうな気がしたのでちょろっと書いてみました。 $ ghq list | sed -E 's/^[^\/]+\/(.+)/\1/' | xargs -n 1 -P 10 ghq get -u xargsの-…

zshの名前付きディレクトリがとても便利

zsh

言いたいことの8割は、zshの本の276ページぐらいを読めば大体書いてあります。 名前付きディレクトリの使い方 名前付きディレクトリを使うには、setopt autonamedirsした上で、変数に/から始まる文字列を代入します。 $ setopt autonamedirs $ vim_dir=/usr/…

pecoからプロセスをkillするアレ書いた

pecoめっちゃいい。 peco/peco · GitHub ターミナル上で unite.vim っぽいことをする peco が大変便利 - 反省はしても後悔はしない function peco-kill-process() { local ps_cmd='ps aux' local get_pid_cmd='sed -E s/^\S+\s+([0-9]+).+$/\1/' local ps_li…

mv hoge hoge.bak したあと元に戻したい。

やりたい $ mv hoge hoge.bak # 何らかの作業 $ mv hoge.bak hoge とか、一時的にバックアップして元に戻すことって割とあると思います。 そんな時に、一々打ち直すのはめんどくさい。なので、てきとーにシェルの関数を書きました。 やった function swap_la…

gitって打ちたくない。たいぽする。

$ gist zsh: command not found: gist $ gti st zsh: command not found: gti $ gi tst zsh: command not found: gi あるあるですよね。 gitってよく打つのにめっちゃたいぽする。スペースを打つのが追いつかない。 ということで、gitなんて打たなくてよいよ…

tar xvf hoge.tar.gz してカレントディレクトリが汚されるとつらいよね!

つらいですよね、カレントディレクトリにファイルをぶちまけるタイプの圧縮ファイル。 そんなあなたの為に、カレントディレクトリを汚さないで圧縮ファイルを展開する関数を書きました。 zsh用です。頑張って書きなおせばshでも動くかも(?) 2013/12/07 結構…

zsh で .git/ 以外の全てのファイルにマッチ

$ grep 'nya' **/*(.) とか便利ですよね。カレントディレクトリ以下の通常ファイルを再帰的に見ていって、全部grepするの。 よく使います。 ですが、gitで管理しているディレクトリでこれをやると、コミットメッセージとか引っかかって邪魔です。ノイズだら…

パッケージをインストールした時、zshの補完が更新されない!

### zsh $ yaourt -S mikutter # install mikutter $ miku[TAB] No matches for .... mikutterをインストールして起動!しようと思ったら、Tab補完が効かない…みたいなこと、ありますよね。 bashとかだと自動で補完対象に追加されるみたいですけど、zshだとre…

bash, zshで挙動が違う、そして謎

a='ls -l' $a これ、実行するとどうなると思いますか? bashでは drwxr-xr-x 2 pocke users 4096 6月 14 20:13 Desktop drwxr-xr-x 8 pocke users 4096 10月 25 10:47 Document drwxr-xr-x 15 pocke users 4096 11月 18 21:13 Download ....みたいに出力され…