タグ

ブックマーク / qiita.com/mollifier (5)

  • zshでpecoと連携するためのanyframeというプラグインを作った - Qiita

    これは何? zshの操作で、pecoとかpercolとか、Anything風インターフェースで選択するやつがよく使われてる。これを使うと、例えばコマンドライン履歴からインクリメンタルに検索して、それを実行、とかできるようになる。 でも、pecoとかpercolはシェルとは関係なくて、単に「インクリメンタルに絞り込む」ってところだけしかやってくれない。それだけでは役に立たなくて、「選んだ結果を実行する」とかのシェルの処理が必要になる。 それで、そういうシェルの処理を自分で書きたくない人向けにanyframeというのを作った。 https://github.com/mollifier/anyframe これはzsh用のプラグインで、これを使うと自分でシェルの関数を書かなくても、キーバインドとかaliasを設定するだけでpeco/percolの便利なやつをすぐ使えるようになる。 特徴 普通の人が

    zshでpecoと連携するためのanyframeというプラグインを作った - Qiita
  • zshの外部プラグインまとめ - Qiita

    zshは標準の機能を使うだけでも便利だけど、それでも足りないときはいろいろなプラグインを追加して拡張できる。でも、プラグイン一覧はどこかにまとまっているわけではない。特に、zsh体に標準で含まれているプラグインはman zshcontribを見ればわかるけど、それ以外のユーザが独自に作ったプラグインはGoogle検索とかで地道に探すしかない。 そこで、zshで使用できる標準で含まれていないプラグインをまとめて紹介する。これを参考にして、zshをもっと便利にしてください! ディレクトリ移動 名前 概要 参考記事

    zshの外部プラグインまとめ - Qiita
    raimon49
    raimon49 2014/12/25
    WEB+DB PRESS Vol.83とあわせて読みたい。
  • シェルスクリプトのオプション設計ガイドライン - Qiita

    僕はコマンドラインで使うシェルスクリプトを書くことがけっこうあるんだけど、インターフェイスというか呼び出し方はとても大事だと思ってるので、そこにわりと時間をかけて考えるようにしてる。実装はいつでも変更できるけど呼び出し方を変えた時は利用者にも変更を強いるので、できれば最初から良い設計で作りたいと思っている。 そこで、僕がシェルスクリプトのオプションとか引数とかの仕様を決める上で注意していることをまとめてみた。シェルスクリプトや、その他コマンドラインのツールを作るときに参考にしてほしい。 シェルの種類は bash や zsh を想定してるけど、実装によらない話なのでどんなシェルでも使えると思う。 エラーの時に Usage (使い方ヘルプメッセージ)を表示するのはやめる エラーになった時に Usage (使い方ヘルプメッセージ) を表示するスクリプトがあるけど、やめたほうがいいと思う。例えばこ

    シェルスクリプトのオプション設計ガイドライン - Qiita
    raimon49
    raimon49 2014/05/21
    aliasから呼ばれることも考慮する。例えば判定の意味を持つオプションが両方とも指定されているなら後に指定した方を優先する。なる。
  • zsh で Git リポジトリのトップレベル ディレクトリに cd するプラグイン - Qiita

    Git リポジトリの中にいるときに、トップレベルのディレクトリに移動したくなることがある。それを1回のコマンドで簡単にできるようなプラグインを作ったので紹介する。 このプラグインでできること cd-gitroot というプラグインを作った。これをインストールすれば cd-gitroot というコマンドが使えるようになる。 使っている様子はこんな感じ。 # こんな感じで Git リポジトリの中にディレクトリがあったとする # doc/ # src/ # |-scripts/ # `-web/ % cd /home/mollifier/git_repo % cd src/web % pwd /home/mollifier/git_repo/src/web # リポジトリの奥の方にいる時でも、すぐにトップに移動できる % cd-gitroot % pwd /home/mollifier/git_

    zsh で Git リポジトリのトップレベル ディレクトリに cd するプラグイン - Qiita
  • zsh で source して使うプラグインを作るのは止めにしよう - Qiita

    特に、cd や bindkey など、今動いているシェル上で副作用のある処理を行いたいときは source を使わないとうまくいかないだろう。 一方、source にはこんなデメリットがある。 .zshrc でいっぱい source するとzsh の起動が遅くなる 現在動いているシェルの alias 設定の影響を受ける 特に2つめが厄介だ。例えば grep とかしたときに、alias grep='grep -E' なんか設定してあったら正規表現の意味が変わってしまう。一応 command grep とすれば alias を設定していない元の grep を実行できるけど、いちいちそう書くのも手間だ。 そんなときは autoload を使う形に書き換えるとうまくいく。 autoload というのは「関数体の読み込みを実行する時まで遅らせる」という zsh の機能のこと。これで ~/.zshr

    zsh で source して使うプラグインを作るのは止めにしよう - Qiita
    raimon49
    raimon49 2013/12/20
    autoloadに指定する-U -zの意味とか。何も知らずいコピペしてたから勉強になる。-Uでalias設定の影響を受けなく出来る。
  • 1