タグ

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

  • zsh のあまり知られていなそうな機能 - Qiita

    自分が使っている便利な機能を紹介 $ rm */(-@) ファイル修飾子は使っている人も多いはず。 zsh で find を使わずに簡単にファイルを絞り込む *(@) でシンボリックリンク *(-@) でリンクが切れたシンボリックリンク rm **/*(-@) で下位階層含めたリンク切れのシンボリックリンクの削除 修飾子で他に便利なのは *(-ch-1) シンボリックリンクのリンク先が1時間以内に作られたファイル *(U) 自分のファイル *(u:hoge:) ユーザ hoge のファイル *(/^F) 空のディレクトリ $ tkdiff =(zcat xxx.gz | cut -f 1) =(zcat xxx.gz | cut -f 2) プロセス置換 <(zcat xxxx.gz | grep yyyy | cut -f 2 ) みたいな形でわざわざ一時ファイルにしなくても、ファイル指

    zsh のあまり知られていなそうな機能 - Qiita
  • git status から peco でファイルを絞り込んでカーソル位置にパスを挿入する zsh widget - Qiita

    を書きました。 ##動機 元ネタ : git addするファイルをpecoで選択できるようにした これを git add だけでなく git reset, git rm, etc でも使いたい しかしそのたびにキーバインドを考えるのは嫌だ 覚えるのも嫌だ ということはカーソル位置にファイルパスを含められれば解決だ .zshrc function peco_select_from_git_status(){ git status --porcelain | \ peco | \ awk -F ' ' '{print $NF}' | \ tr '\n' ' ' } function peco_insert_selected_git_files(){ LBUFFER+=$(peco_select_from_git_status) CURSOR=$#LBUFFER zle reset-prompt

    git status から peco でファイルを絞り込んでカーソル位置にパスを挿入する zsh widget - Qiita
    petitviolet
    petitviolet 2015/02/06
    便利
  • Zshで長い処理をしている間に読込中を表示する - Qiita

    内容 shellでのバックグラウンド処理 ジョブ制御フラグ メタ文字による標準出力の管理 Android - GradleをZshで補完する - Qiitaという記事を書いた時に なお、初回のみタスクの読み込みに時間がかかるが、2回目以降はファイルキャッシュを読み込むため比較的速くなる と書いたが、初回の読み込み時の長さが気になるので読み込み中であるindicatorを表示することにした 参考 Pythonでローディングのぐるぐるを表示する - CAMPHOR- Tech Blog 完成品 ./gradlewのあとでTABを押すとtasksを読み込む 読んでる間の時間が長いので、indicatorを出して読み込み中であることを示している コード gistも更新した #!/usr/bin/env zsh # refs: https://gist.github.com/nolanlawson/

    Zshで長い処理をしている間に読込中を表示する - Qiita
    petitviolet
    petitviolet 2014/12/21
    書いた
  • GradleをZshで補完する - Qiita

    快適なAndroid(Studio)ライフを送りたい 内容 ZshでもGradleコマンドを補完出来るようにした 参考 zsh補完関数を自作すると便利 - はこべブログ ♨ 動機 Android開発を爆速にする10のコマンドラインスクリプト - クックパッド開発者ブログ この記事でGradleにも補完があるのを知ったが、 紹介されていたGradle tab completion for Bash. Works on both Mac and Linux. を見るとBash用の補完関数だった...。 普段Zshを使っているので、Gradleを使う時だけBashを使うなんて嫌だしZsh用に移植したい コード ほとんどは上のBash版と同じ # refs: https://gist.github.com/nolanlawson/8694399 : bash-version _gradle() {

    GradleをZshで補完する - Qiita
    petitviolet
    petitviolet 2014/12/19
    書いた
  • 私のpeco活用事例 - k0kubun's blog

    pecoというインタラクティブに入力をフィルタして出力するコマンドがあって、使い始めてからシェルの操作方法が大幅にかわり、だいぶライフチェンジングだった。 最近このへんが流行ってるのでやたら記事あるけど、せっかくなので僕も使い道を紹介しようと思う。 pecoをzshで使う 1. peco ghq ghqを使ったローカルリポジトリの統一的・効率的な管理についてのこと。 僕も$GOPATHは$HOMEにしていて、今のところ別に困ることはない。 go getしたりghq getしたりして美しくディレクトリ切った上で、pecoに割り当てておいたC-sですぐ目的のディレクトリ開けるようにしてあるので、めちゃくちゃソース管理が楽になった。 function peco-src() { local selected_dir=$(ghq list | peco --query "$LBUFFER") if

    私のpeco活用事例 - k0kubun's blog
  • zshのメニュー補完で候補をインタラクティブに絞り込む - Qiita

    autoload -Uz compinit && compinit -u zstyle ':completion:*' menu select interactive setopt menu_complete zshrcなどに上記の設定を追加すると、補完開始と同時に絞り込み機能が有効になり、以下のようにFunctions/Zle/というパスをF/Zl/というキー入力で絞り込むことが出来るようになります。 ※setopt menu_completeを設定しない場合は補完開始直後に絞り込みが開始されず、再度補完開始のキーを叩いた時に絞り込みが開始になります。 メニュー補完のキーバインドを設定して使い易くする 絞り込み機能を有効にすると、設定次第ではメニュー補完での候補移動が出来なくなってしまう場合があります。 自分の場合は^f,^b,^n,^pで候補を移動してキー入力で絞り込みを行う事を両立さ

    zshのメニュー補完で候補をインタラクティブに絞り込む - Qiita
  • zshでの自作関数と、それに対する補完関数を実装する - Qiita

    としてあった これだとファイル一覧の候補や、-rなどの/bin/rmが持つオプションをうまく使えなくて困っていた 結果 こんな感じ -を入力した状態で<Tab>を押すとオプションが一覧表示され、何も入力していない状態かオプションが入力された状態で<Tab>だとファイル一覧の候補を表示する コード # rmfで削除 function rmf() { # -h, --helpしたら呼ぶ help() { echo 'rmf help!' echo 'Usage: rmf [option] filename' return } # 引数に対してループを回す for file in $* do # 引数一つ一つについてcase文で条件分岐 case $file in # -hか--helpだった時はhelp()を呼んで終わり -h|--help) help return ;; # -rfか-frだ

    zshでの自作関数と、それに対する補完関数を実装する - Qiita
  • 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 の補完関数の自作導入編
  • 1