タグ

zshに関するcho45のブックマーク (17)

  • 2007-11-04

    http://zshwiki.org/home/examples/zleiab ZshWikiを漁っていたら、おもしろい設定を見付けた。 vimではiabで略語展開ができる(らしい)が、同様のことをzshでもやろうという設定だ。 ソースはこんなの。 setopt extended_glob typeset -A abbreviations abbreviations=( "Im" "| more" "Ia" "| awk" "Ig" "| grep" "Ieg" "| egrep" "Iag" "| agrep" "Igr" "| groff -s -p -t -e -Tlatin1 -mandoc" "Ip" "| $PAGER" "Ih" "| head" "Ik" "| keep" "It" "| tail" "Is" "| sort" "Iv" "| ${VISUAL:-${EDI

    2007-11-04
    cho45
    cho45 2007/11/10
  • ’(rubikitch wanna be (a . lisper)) - zsh 補完

    昨日あたりからYahoo!天気予報のデザインが微妙に変わっていた。 俺は昔からYahoo!天気予報のHTMLを正規表現で切り取って読み易い形に加工するRubyスクリプトを書いて使っている。Yahoo!天気予報も例に漏れず、この手の情報サイトはデザインに凝りすぎて一覧性が悪いのが多い。俺的にはこの程度の情報は一画面で見られないと気がすまない。出力結果は以下のようになる。 天気 2日 18時 曇り 21度 74% 0mm/h 北東1m/s 2日 21時 曇り 19度 82% 0mm/h 北東1m/s 3日 00時 曇り 18度 84% 0mm/h 東北東1m/s 3日 03時 晴れ 18度 84% 0mm/h 北2m/s 3日 06時 晴れ 17度 86% 0mm/h 北北東2m/s 3日 09時 晴れ 19度 80% 0mm/h 北東2m/s 3日 12時 晴れ 21度 68% 0mm/h

    ’(rubikitch wanna be (a . lisper)) - zsh 補完
    cho45
    cho45 2007/10/03
  • 2007-09-25

    http://read-eval-print.blogspot.com/2007/09/blog-post_25.html 俺もアーロンチェア使っている。TDDの教科書にも「安い机と高い椅子を使え」という教えがあるように長時間座りつづける以上椅子大事。 extended_globは **/* とか以外にほとんど使わないので、いざ欲しいときに忘れてしまう。プロセス置換もしかり。ここでワンキーでチートシートの表示ができたら嬉しい。普段Rubyばかりでシェルスクリプトを書かないので、苦労すると思うけど、シェル関数で書いてみようかな。 やってみるとあっさりできた。以下を.zshrcに追加してC-M-hを押すと ~/zsh/cheat-sheet.conf が表示されるようになる。当然補完候補の表示同様編集中のコマンドラインは消えない! cheat-sheet () { zle -M "`cat ~

    2007-09-25
    cho45
    cho45 2007/09/27
  • Re: vim-a-like vi mode status bar

    X-seq: zsh-users 4680 From: Thomas Köhler <jean-luc@xxxxxxxxxxxxxxxxx> To: zsh-users@xxxxxxxxxx Subject: Re: vim-a-like vi mode status bar Date: Sat, 16 Feb 2002 18:48:05 +0100 In-reply-to: <20020216172000.GA892@xxxxxxxxxxxxxxxxxxxxx> Mail-followup-to: zsh-users@xxxxxxxxxx Mailing-list: contact zsh-users-help@xxxxxxxxxx; run by ezmlm References: <20020216172000.GA892@xxxxxxxxxxxxxxxxxxxxx> Hi, Ian

    cho45
    cho45 2007/09/23
  • 直前に入力したコマンドの最後の引数を補完 - 技術メモ帳

    Esc + ドット(.) と入力すると、 直前に入力したコマンドの最後の引数を補完してくれる。 複数回入力する事によって、 過去にどんどんさかのぼっていく。 追記: ブックマークコメントにも書かれてますが、 Esc は、正確には Meta キーです。 さらに追記: 他にも、色々あるようで、 id:hiboma さんの以下のページに非常に詳しく書かれています。 http://d.hatena.ne.jp/hiboma/20061005/1160015116

  • zshのzargsコマンドの使い方 - 技術メモ帳

    zsh には、zargsコマンド(組み込み関数) というのが用意されている。 これは、拡張グロブ用の xargs コマンドと言っても良いだろう。 マニュアルを見ると、xargs コマンドとオプションは、完全に互換しているらしい。 autoload zargs とする事で利用可能だ。 使い方だが、xargs というと、標準入力から読み込んだ要素、行に対して 特定のコマンドを実行するというものだが zargs の場合は、引数に指定した 拡張グロブ に対してこれらの処理を行う。 % zargs OPTIONS -- 拡張グロブ -- 実行したいコマンド たとえば、xargs で一番利用されると思われる ファイル数が ARG_MAX を越えてしまっているディレクトリ内のファイルを まとめて削除したい場合などは、次のようなコマンドを入力すれば良い。 % zargs -- ./* -- rm これだけ

    cho45
    cho45 2007/01/16
  • 技術メモ帳 - zsh/filesで引数の最大バイト数を回避する

    zshmodules の zsh/files を利用すると、 chgrp, chown, ln, mkdir, mv, rm, rmdir, sync といったコマンドが、 zsh組み込みの関数に置換えられる。 メリットとしては、 移植性が高くなる、 引数文字列の最大バイト数の制限を受けなくなる ということが挙げられるだろう。 このうち、特に僕が便利だなと思っているのが、 引数文字列の最大バイト数の制限を受けなくなるということだ。 簡単に説明すると、 通常、コマンドを実行するときに 引数文字列のバイト数が一定の値を越えると 以下のようにエラーを出して処理をしてくれない。 % mv ./* ../dir zsh: argument list too long: mv そして最悪な事にコレは、 グロブなどを展開した後の文字列のバイト数であるため、 zsh の extended_glob とは非

    cho45
    cho45 2007/01/16
  • zshのurl-quote-magicでURL文字列を自動エスケープ - 技術メモ帳

    URL文字列を自動的にエスケープしてくれる url-quote-magic が非常に "良さげ" である。 たぶん、http:// という文字列で始まる文字列を入力しようとしたときに適用される。 autoload -U url-quote-magic zle -N self-insert url-quote-magic ちょっと試しにやってみよう。 たとえば、以下のURLをコピーしておく。 http://www.google.co.jp/search?hl=ja&q=%E3%81%82%E3%81%84%E3%81%86%E3%81%88%E3%81%8A 通常の状態でペーストしてみると、 案の定おかしな事になる。誰もが期待する結果だ。 john ~[12979]% echo http://www.google.co.jp/search?hl=ja&q=%E3%81%82%E3%81%84

    cho45
    cho45 2006/12/31
    「少年のようなzsh。」
  • 入力履歴からの予測による自動補完機能 - 技術メモ帳

    zshには、過去の入力履歴から予測し、 リアルタイムに自動補完してくれるという機能というのがあるようだ。 predict-on というのが該当する。 例えば以下の画像は、 この機能を有効にした状態で 'h' とだけ入力した状態だ。 Enter キーを押すだけでただちに実行できる。 なんだか、結構便利だったので 以下のような設定で使用する事にした。 % autoload predict-on % zle -N predict-on % zle -N predict-off % bindkey '^X^Z' predict-on % bindkey '^Z' predict-off % zstyle ':predict' verbose true zsh の man で載っているキーバインドに設定してみた。 Ctrl+X Ctrl+Z で predictモードが ON になり、 Ctrl+Z

    入力履歴からの予測による自動補完機能 - 技術メモ帳
    cho45
    cho45 2006/12/05
    これはやばい
  • UNIX今日の技 - UNIX今日の技/zsh

    wiki にしていると業者がウザいので生 HTML で行くことにしました。 だからといって更新するようになるわけでもないとは思いますが。 (岸田) 『UNIX今日の技』は、「UNIX 初心者が中級者にレベルアップするための足掛かり」となる事を目的としています。 ですので、「ls って何?」というようなレベルの人はまずなどで(基的なコマンド程度で良いので)勉強してからにした方が良いと思います。 あと、当研究室特有の事情や研究でよくなされる作業(VASP を使うなど)をそのまま例に挙げることがよくあります。 (今まさに表示されている)このページに書かれているのは最新の記事であり、書いてから暫く時間の経った物は適当なタイミングで archives に放り込んでいます。 vim: 連続上書きモード たとえば、以下のファイルがあるとします。 (ちなみにこれは VASP の POSCARの一部分で

    cho45
    cho45 2006/10/21
    拡張グロブとかも
  • zsh

    TOC intro complete abbreviation prompt keybind TODO intro zsh とは、bash や tcsh や ksh の良いとこ取りをしたシェルです。よくシェルの紹介文 では bash や tcsh を普通に紹介してから、ハッカー向けとして zsh を紹介し てる場面を見かけます。自尊心をくすぐられるでしょ? 最強のシェルだから z て付いてるのに、web での情報量は泣きたくなるほど少ないです。 実際に使ってみようとすると、その理由がわかりました。zsh 自身が既に充分複雑である ことともうひとつ、マニュアルのせいです。目下のところ、肝となる部分の日語訳は存 在しません( 2001.02.28 現在、と思ったらなにやら翻訳中らしい )。 ええとこういうことをやるには何処をどうすればいいのかなとマニュアルを眺めるわけで すが、このマ

    cho45
    cho45 2006/10/11
    補完とか
  • カーソル位置までをエスケープする - 技術メモ帳

    すごい便利なのを見つけてしまった。 これはいい。 ESC + " と入力する事で、 カーソル位置までをエスケープする事が出来るみたいだ。 たとえば、以下のように文字列を入力した状態で、 $ hello world hello の o の次の位置で ESC + " と入力すると $ 'hello' world とシングルクォートで囲ってくれる。 複数回入力する事で、 $ ''\''hello'\''' world どんどんエスケープしていく。 ESC + $ でこの逆を行う。 $ 'test test' $ test test

    cho45
    cho45 2006/10/05
    M-" M-$ でクオート
  • 2006/10/05 - memo - unknownplace.org

    技術メモ帳 - 直前に入力したコマンドの最後の引数を補完 Esc + ドット(.) と入力すると、 直前に入力したコマンドの最後の引数を補完してくれる。 複数回入力する事によって、 過去にどんどんさかのぼっていく。 naoyaさんのブックマーク経由。知らなかったわぁ。 んで、それ試しててなんとなくとなりの、M-, 押してみたらなんか補完された! おお、これヒストリからの補完キーだ。ヤバスヤバス。これも便利だ。emacsとキーをあわせようかな。

    cho45
    cho45 2006/10/05
    M-. M-, やばい
  • はてなブログ | 無料ブログを作成しよう

    恋人と別れて30年が過ぎ、その元恋人の娘と出逢う夜 古い友人であるShellyからメッセージが届いた。「私の娘のAdrienneが日に行くのだけれど、時間取って彼女と会ってくれるかしら?」 Shellyはアメリカ在住の白人女性だ。Shellyと俺との関わり合いは、過去に書いた。こちらを参照のこと。25歳に戻れた夜~ブライアン・…

    はてなブログ | 無料ブログを作成しよう
    cho45
    cho45 2006/09/16
  • zsh + screen で端末に表示されてる文字列を補完する - 川o・-・)<2nd life:

    以前に入力したコマンドの履歴を覚えていて補完してくれるshellはあるが、 端末に表示されている文字列を補完してくれるshellは無いだろうか。 表示されている文字列を補完してくれるshellが欲しい とvimrc diaryに書かれてたのでzsh + screenで端末に表示されてる文字列を補完する方法を。.zshrcなどに # dabbrev HARDCOPYFILE=$HOME/tmp/screen-hardcopy touch $HARDCOPYFILE dabbrev-complete () { local reply lines=80 # 80行分 screen -X eval "hardcopy -h $HARDCOPYFILE" reply=($(sed '/^$/d' $HARDCOPYFILE | sed '$ d' | tail -$lines)) compadd -

    zsh + screen で端末に表示されてる文字列を補完する - 川o・-・)<2nd life:
  • man zshoptions

    man zshoptions zshoptions のマニュアル(訳) 名前 zshoptions - zsh のオプション オプションの指定方法 オプションはまず、名前によって参照される。この名前では大文字小文字の区別はなく、アンダースコア(_)は無視される。たとえば、 `allexport' は `A__lleXP_port' と等価。 オプションの名前の意味は、先頭に `no' をつけると逆転する。つまり、 `setopt No_Beep' は `unsetopt beep' と同じ。この反転は一段しか行われないので、 `nonobeep' は `beep' と同じではない。同様に、 `tify' は `nonotify' と同じではない(これは `notify' の逆転)。 オプションは1つ以上の単一文字名を持つことがある。単一文字オプションには2つの種類がある。ひとつはデフォルト

    cho45
    cho45 2006/03/29
  • zsh補完関数の書き方(訳)

    by John Beppu translated into japanese by Jun Mukai このコラムを読んで数ヶ月もしないうちに、あなたは zsh の途方もないタブ補完システムについて学んでいるだろう。自分の $HOME/.zshrc ファイルに次の2行を足すだけで、タブキーでファイル名を拾うだけでなくて、コマンドラインオプションも持ってくることができる。 autoload -U compinit compinit ある Linux コマンドに対するコマンドラインオプションのリストを提供するために、 zsh はそのコマンドに対応した補完関数を実行する(つまり、 ls とタイプしてタブキーを押したら、 zsh は ls の補完関数を実行するのだ)。個々の補完関数はコマンドのオプションをリストアップし、どのオプションが引数を要求するか提示してくれる。補完関数はコンテキスト依存に

    cho45
    cho45 2006/03/03
  • 1