タグ

zshに関するkirakkingのブックマーク (8)

  • zshのzstyleでの補完時の挙動について - voidy21の日記

    zshというシェルはデフォルトでも素晴らしいのですが、あまりに拡張性が高いので全ての機能を使いこなすのは逆に難しいと思います。 特にzstyleというコマンドの文脈に応じた補完候補への設定関数は、使用するとどうなるのかヘルプを見てもWeb上を見てもよく分かりません。 そんなわけでzstyleの挙動について調べてみました。 参考にしたサイト http://www.gentei.org/~yuuji/rec/pc/zsh/zshcompsys.txt http://wiki.fdiary.net/zsh/?ColoredCompletion http://grml.org/zsh/zsh-lovers.html http://www.dna.bio.keio.ac.jp/~yuji/zsh/zshrc.txt http://q-eng.imat.eng.osaka-cu.ac.jp/~ippe

    zshのzstyleでの補完時の挙動について - voidy21の日記
  • zsh の補完関数の自作導入編

    # 補完を有効にする autoload -U compinit compinit -u # 補完メッセージを読みやすくする zstyle ':completion:*' verbose yes zstyle ':completion:*' format '%B%d%b' zstyle ':completion:*:warnings' format 'No matches for: %d' zstyle ':completion:*' group-name '' 補完関数のルール $fpath の通ったディレクトリに補完関数を置く nyan コマンドの補完関数なら _nyan という名前で保存する 補完関数の先頭には #compdef nyan と補完対象のコマンド名を書く ファイル名と同じ名前の関数を作りその中に補完関数を書く ~/zsh/functions/_nyan

    zsh の補完関数の自作導入編
  • http://www.jmuk.org/diary/index.php/2007/02/23/2/

  • zsh補完関数を自作すると便利 - はこべにっき ♨

    会社でコードを書いていると、いろんなプロジェクトのディレクトリ間を頻繁に移動します。毎回cdするのはだるいので、それを解消する便利なzsh用の関数と補完関数を書いたので紹介します。はてなエンジニアのひとと、zsh補完関数を書いてみたい人にはそこそこ役立つといった趣のエントリです。 会社のプロジェクトのリポジトリは、~/work/hatena というところに全部まとめています。だいたい以下のような感じです。 > ls ~/work/hatena Hatena-Antenna/ Hatena-Diary/ Hatena-Ugomemo/ git-hooks/ Hatena-Bookmark/ Hatena-Group/ Ridge/ iphone/ Hatena-Coco/ Hatena-Star/ android/ sketch/ 各プロジェクトのリポジトリには頻繁に移動するので、簡単なz

    zsh補完関数を自作すると便利 - はこべにっき ♨
  • 第5回 zshの誇る花形機能“補完” | gihyo.jp

    今回はzshの誇る機能の花形とも言える補完機能について紹介しよう。zshの補完は強大で、例示した設定の意味を略さず書こうとするとそれだけでになってしまう(約150ページ分)ので、細かい意味は読者の推測にまかせて、少し変えて便利にカスタマイズする場合のヒントを交えながら解説を進めたい。 補完の有効化 初期化ファイル、あるいはコマンドラインで、以下を入力することでzshのすぐれた補完機能が有効化される。 autoload -U compinit && compinit 補完に関するキー割り当てはいくつもあるが、最低限うまく利用するために以下の2つのキーバインドをまず覚えておけばよいだろう。 Tab (C-i) - expand-or-complete 補完の実行。 ESC C-d (または行末のみ C-d) - list-choices (delete-char-or-list) マッチする

    第5回 zshの誇る花形機能“補完” | gihyo.jp
    kirakking
    kirakking 2013/12/02
    vi text'Tab'で、vi text.texとかtext.txtとかテキストファイルに自動で絞り込んでほしい。
  • bashのプロセス置換機能を活用して、シェル作業やスクリプト書きを効率化する - 双六工場日誌

    @hirose31 さんが「シェルスクリプトでハマった件→【募】ステキな回避方法」でお題を出されていて、それに回答してみました。 その内容はリンク先を見てもらうとして、回答の中で使ったbashのプロセス置換について書かれた記事をあまり見ないので、回答で使ったプロセス置換のことをエントリにしてみたいと思います。 最初に注意点ですが、プロセス置換の機能は、bashやzsh*1の機能でPOSIX互換の機能ではありません。そのため、使用時には、対応していないシェルでは使えませんし、bashで使う場合も /bin/sh ではなく /bin/bash を明示的に指定する必要があります。たとえば、プロセス置換を使ったスクリプト「script.sh」に対して"$ bash script.sh" というコマンドは成功しますが、"$ sh script.sh" というコマンドは失敗します。この辺りの違いは「/

    bashのプロセス置換機能を活用して、シェル作業やスクリプト書きを効率化する - 双六工場日誌
  • 漢のzsh(12) 一時ファイルはもういらない - プロセス置換

    コマンドで指定するファイルをファイルではなくコマンドとして直接指定することで、一時ファイルを作成する必要がなくなる。どれだけ使うシーンがあるかと問われると頭を捻ってしまうが、ログ解析や差分チェックなどを使っている人からは「けっこう便利に使っている」という話も聞く。 さあ、今回はこのマニアックな機能を堪能していこう。ちなみに今回の内容はその多くをzshマニュアルの「Process Substitution」の項を参考にしている。コマンド例もこれを参考にしたものだ。より詳しく知りたい読者の方は、そちらも合わせてご覧いただきたい。 例えばこういった場合 CSVファイルを編集する例を考えてみよう。表2.1のようなテーブルデータを用意したとしよう。テキスト状態ではプロンプト2.1のようになっている。 表2.1 CSVファイルの例 氏名 年齢 性別 備考

    漢のzsh(12) 一時ファイルはもういらない - プロセス置換
  • tips for zsh -- zshの覚書 (1)

    ようするに"*"アスタリスクとかそれ系ね。zshには、錫に多様なファイル生成方法がある。覚えるのは面倒だけど、ようは便利なもんだけ覚えりゃいいわけで。順に列挙していこう。 の前に、 EXTENDED_GLOB オプションを指定しよう。やらなくてもよいけれど(たぶん動作が軽快になる)、その方が圧倒的に多くのやりかたで指定できる。 *は「任意の0文字以上」、?は「任意の一文字」。[]で正規表現。この辺は基。以下が EXTENDED_GLOB の効果。 効果の以前に、あるディレクトリのファイル構成を見てみよう。こんな感じとなる。(ちなみに alias ls='ls -F'ね) % ls baa/ foo/ geho.cpp gehogeho.txt hoge.cpp hoge.h hogehoge.sh* このとき、^がパターンの否定。たとえば、 % ls ^*a geho.cpp g

    kirakking
    kirakking 2013/08/02
    今度やってみる
  • 1