論文紹介:MeMViT: Memory-Augmented Multiscale Vision Transformer for Efficient Lon...Toru Tamaki
38. pecoで使う関数を作る Ctrl+x Ctrl+rで実行する例 何かのキーバインドで関数を呼び出す ときはこう書く function peco-execute-history() { # この中に処理を書く } zle -N peco-execute-history bindkey '^x^r' peco-execute-history 39. pecoで使う関数を作る Ctrl+x Ctrl+rで実行する例 function peco-execute-history() { local item item=$(builtin history -n -r 1 | peco) if [[ -z "$item" ]]; then return 1 fi BUFFER="$item" zle accept-line } zle -N peco-execute-history bindk
これは何? zshの操作で、pecoとかpercolとか、Anything風インターフェースで選択するやつがよく使われてる。これを使うと、例えばコマンドライン履歴からインクリメンタルに検索して、それを実行、とかできるようになる。 でも、pecoとかpercolはシェルとは関係なくて、単に「インクリメンタルに絞り込む」ってところだけしかやってくれない。それだけでは役に立たなくて、「選んだ結果を実行する」とかのシェルの処理が必要になる。 それで、そういうシェルの処理を自分で書きたくない人向けにanyframeというのを作った。 https://github.com/mollifier/anyframe これはzsh用のプラグインで、これを使うと自分でシェルの関数を書かなくても、キーバインドとかaliasを設定するだけでpeco/percolの便利なやつをすぐ使えるようになる。 特徴 普通の人が
.gitignore.io というサービスがあって主要な言語やフレームワークの .gitignore のテンプレートが集められている。APIも提供されているので cURL で叩くとテンプレートを取得出来る。 以前から git-ignore って関数を作ってべんりに使っていたのだけれど、このたび peco に対応したらべんりだったのでご報告。 テザリングのネットワークだったので動作が遅いけれど実際はもっと速い。 git-ignore ruby,rails みたいにやると複数のテンプレートをまとめてくれるのだけれど、peco の方はこれに対応していない。複数欲しいときは自分で入力すると良さそう。 追記 @tomohi_ro 複数版 local LANGS=$(git-ignore list | tr ',' '\n'| peco --query "$1" | tr '\n' ',') [ -z
peco と alias -g で git に便利革命がおきるので、ぜひご活用ください。 記事の一番下に設定のまとめがあります。 目録 便利革命1: git commit → g c 便利革命2: git checkout feature/something-great → g o B 便利革命3: git push -u origin feature/something-great → g puu R B 便利革命4: git remote add origin git@github.com/user/repo → g r add origin H 便利革命5: git checkout -b feature/something-great remotes/origin/feature/something-great → g b LR めんどいコマンド1: git commit Befo
なんかpercol最近いきなり流行ってるなーと思ってたら、percolのgo版pecoがいつの間にか出てて流行ってた。ターミナル版anything的なpercolをzawの代わりに試してみた - $shibayu36->blog;みたいな感じで、昔からpercol使っててまあいいかと思ってたけど 設定ファイルが分かりやすい brewで簡単に入れることが出来る そこそこ開発されてる というメリットもありそうなので乗り換えようとしてみている。 https://github.com/peco/peco pecoのファイル運用 前と大体同じ感じでやる。基本的にこういうツールは自分でいろいろ作りたくなってきて、設定が増えてきて破滅するので、ファイルを置くディレクトリを決めておいてそこに置いておくことにする。 .zshrc : 決めたディレクトリのファイルの全ロードと、キーバインドの設定 ~/.zsh
{ "Keymap": { "C-x,C-c": "peco.Cancel", "M-n": "peco.SelectNext", "M-p": "peco.SelectPrevious", "M-C-v": "peco.ToggleSelection" } } 例えばこういう設定を config.json に登録しておくと Emacs 風に <C-x> <C-c> で終了出来る様になります。 能書き キーシーケンスには一般的に2通りあり タイプ中の物が生きているけど、全てマッチしたらあるアクションを起こす(例: http://www.php.net で「I hate PHP」とタイプしてエンター) マッチしている最中のキーシーケンスは無効となり全てマッチしたらアクションを起こす(例: vim の keymap) このどちらかになります。前者はトリックを入れる場合に使われる事が多いです。p
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
ちょっと前にpercolからpecoに乗り換えた。 実際に速度測ったわけではないけど、percolと比べて早くなった気がする。 https://github.com/peco/peco そんで、percolの時からだけど、peco-hogehogeみたいなfunction作ってkey-bind設定してたけど、多くなってくると記憶の容量が少ない僕は全てを覚えてられないので、pecoに関するfunctionを一覧で表示して、pecoで選択出来るようにすれば便利なんじゃねと思って、peco-function-listというの作ってみた。 # .zsh/peco-function-list.zsh function peco-function-list () { local selected=$(functions | grep "^.*\ ()\ {" | sed -e "s| () {||"
oh-my-zsh の環境で、peco-select-history が動かない - Qiita 追記 2014年 7月 7日 シェルスクリプトと書いてしまい漠然すぎましたが, ここで述べている ことが問題になるのは, .bashrc, .zshrcに関数, alias設定等がコピー される場合や, sourceコマンドでファイルを読み込む場合です. non-interactiveに実行されるシェルスクリプトについては特に 問題ないです. 問題点 そうしないと, 公開されたコマンドを自分の環境に導入した場合, aliasにより正しく動かなく場合があるためです. aliasをつけがちな コマンド(ls, grep等)がシェルスクリプトに含まれていると 特に問題が起こる可能性が高くなります. 例 pecoを使って カレントディレクトリのファイルをページャで開く 例を考えてみましょう. 単純に考
それぞれのツールは以下を見ればどんなのかわかると思う。 peco(Simplistic interactive filtering tool)を作った話 : D-7 ghq: リモートリポジトリのローカルクローンをシンプルに管理する - 詩と創作・思索のひろば (Poetry, Writing and Contemplation) GitHubのレポジトリURLを開くgh-openコマンド - unknownplace.org pecoとghqを組み合わせる例はpecoのREADMEにあるようにかなり強力で、ghqで管理しているリポジトリのディレクトリにcdしたりするのに便利。 こんな感じ。 $ cd $(ghq list -p | peco) また、typester先生作のgh-openは指定したディレクトリのリポジトリをGitHubで開けるので、同じように使えばpecoでGitHubの
2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。本件に関する詳細は、プレスリリースをご確認ください。 2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。 本件に関する詳細は、プレスリリースをご確認ください。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く