zsh その4
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
05/02/02 20:03:26過去スレ
zsh入門
http://pc.2ch.net/test/read.cgi/unix/990283346/
zsh入門 パート2
http://pc3.2ch.net/test/read.cgi/unix/1036324177/
zsh その3
http://pc5.2ch.net/test/read.cgi/unix/1080002786/
>>2-3リンク
0535名無しさん@お腹いっぱい。
2006/11/23(木) 14:45:25man 1 script
man 1 tee
0536名無しさん@お腹いっぱい。
2006/11/23(木) 14:46:52script?
0537名無しさん@お腹いっぱい。
2006/11/23(木) 14:59:13どんなコマンドうったときも自動的にteeしてくれるようなものが
あるといいと思ったのですが、viとかを考えるとけっこう難しいですね。
scriptは常用するにはちょっとうざいです。
0538名無しさん@お腹いっぱい。
2006/11/23(木) 15:05:35kterm -sl 10000 とか???
スクロール保存行を多くとっておけばいいじゃん。
どーでもいいけど、質問は zshとどう関係あるんだよ??
0539名無しさん@お腹いっぱい。
2006/11/23(木) 15:26:25ことじゃないの?
0540名無しさん@お腹いっぱい。
2006/11/23(木) 15:30:19scriptだと大げさ。知らずに使ってると巨大なファイルができるかも。
よって、今のところ kterm -sl 10000 が最適解か?
0541名無しさん@お腹いっぱい。
2006/11/23(木) 15:38:38# xscript (だっけ?) 思い出した。
0542名無しさん@お腹いっぱい。
2006/11/24(金) 04:26:30まだ分からないことだらけですが、これからお世話になります。
こんな環境です。
FreeBSD 5.4-RELEASE-p6, X Window System Version 6.9.0, kterm: version 6.2.0.ext02
早速質問です。
mplayer についての記述が以下にありました。
/usr/local/share/zsh/4.3.2/functions/Completion/X/_mplayer
ここにmfilesの候補として*.flvがないため、入れたいのですが、
どこ(どのファイル)にどう記述するのが正しい方法ですか。
latex だと *.tex が補完の候補にあがりますが platex については記述がないみたいです。
そこで locate zsh |grep -i latex してみたところ、結果が空でした。
latex と同じものを補完してくれればいいのですが、どうすべきですか。
似た問題がいくつかあります。初歩的な質問ですがどうぞよろしく。
0543名無しさん@お腹いっぱい。
2006/11/24(金) 04:48:30/usr/local/share/zsh/4.3.2/functions/Completion/X/_mplayer
- "*.(#i)(avi|mp3|mpg|mpe|mpeg|m1v|m2p|m2v|mov|asf|vob|mjpg|wma|wmv|asx|qt|rm|mkv|mka|ogm|ogg|wav)(-.)" && ret=0
+ "*.(#i)(avi|mp3|mpg|mpe|mpeg|m1v|m2p|m2v|mov|asf|vob|mjpg|wma|wmv|asx|qt|rm|mkv|mka|ogm|ogg|wav|flv)(-.)" && ret=0
試してないけどこんな感じ?
/usr/local/share/zsh/4.3.2/functions/Completion/Unix/_tex
に
#compdef tex latex slitex pdflatex jadetex pdfjadetex platex
とか書いてない?
0544名無しさん@お腹いっぱい。
2006/11/24(金) 05:44:47早速有難うございました!
二つともうまくゆきました。
ホームディレクトリに何か作ることを想像しましたが、
/usr/local/share/zsh/4.3.2/ 以下のファイルをを直接直してもいいのですね。
デスクトップ使用なので個人的には問題ありません。
ただ zsh のバージョンアップの際に注意しないといけないですね。
バージョンアップに左右されない書き方や、管理者でない場合のことも知りたいです。
ディレクトリ名を打つと cd するのがデジャビュ的になつかしいです。
MS-DOS 用のソフトで見たのか、記憶はさだかでありませんが、なつかしいです。
0545名無しさん@お腹いっぱい。
2006/11/24(金) 07:23:270546名無しさん@お腹いっぱい。
2006/11/24(金) 13:06:39platexに関しては
% compdef _tex platex
で_texの補完ルールをplatexに適用できる
0547名無しさん@お腹いっぱい。
2006/11/24(金) 15:42:55>596 名前: 名無しさん@お腹いっぱい。 投稿日: 02/07/21 06:49
> 1. ~/.zfunc というディレクトリをつくる
> 2.$fpath に ~/.zfunc を加える(.zshrc 等には PATH と同じように書けばOK)
> 3.以下のファイルを _mplayer という名前で ~/.zfunc 以下にセーブする
> 4.あとは ~/.zcompdump をいったん消してから zsh を立ち上げなおしてくだちい
>
> == _mplayer ここから===============================================
> #compdef mplayer
>
> _arguments -R \
> '-h[オプションの一覧]' \
> '-V[冗長モード]' \
> '*:Movie File:_files -g \*.\(\#i\)\(mp3\|mpeg\|mpg\|avi\|wmv\)'
> ==ここまで=========================================================
> オプションはたいぎいので書いてません。
私もこういう設定は~/以下に置きたいので、上のを試してみたんですけど、tabを押すと
_main_complete:1: _main_complete: function definition file not found
というエラーが出て補完が効かないです。
0548名無しさん@お腹いっぱい。
2006/11/24(金) 19:57:20以下御報告。
>>546
おお、これはいろんな場面で役に立ちますね!
% compdef _dvi dvipdfmx
あと、うしろにargumentたくさん取れるみたいですね。
% compdef _tex platex jbibtex
>>547
大きなヒントになりました。ほとんどそのままですが以下の方法でできました。
% mkdir ~/.zfunc
% cd ~/.zfunc
% cp /usr/local/share/zsh/4.3.2/functions/Completion/X/_mplayer ./
ファイルを編集して .zshrc に次の行を追加。
fpath=(~/.zfunc $fpath)
引用に「PATH と同じように書けばOK」とありますが、以下ではNGでお書きのエラーが出ました。
fpath="$fpath:~/.zfunc"
fpath="$fpath;~/.zfunc"
0549547
2006/11/24(金) 22:00:53fpath="~/.zfunc "$fpath
はだめで(自分はこうやってて、だめだった)
fpath=(~/.zfunc $fpath)
だとうまくいくんですね。
なんでだろう?
0550名無しさん@お腹いっぱい。
2006/11/24(金) 23:14:58FPATH="~/.zshfunc:$FPATH"
でもよい。
0552名無しさん@お腹いっぱい。
2006/12/15(金) 13:37:160553名無しさん@お腹いっぱい。
2006/12/15(金) 18:47:060554名無しさん@お腹いっぱい。
2006/12/15(金) 19:37:26csh/tcshからの移行組に対するリハビリモードだから。
社会復帰できたらちゃんと PS1='$ ' に設定するのが望ましい。
0555名無しさん@お腹いっぱい。
2006/12/16(土) 05:32:14http://hiki.ex-machina.jp/zsh/index.cgi
>重要 勝手ながら、都合により本サービスを停止することに致しました。停止予定日は2007年1月10日を予定しております。
>予定日までに http://wiki.fdiary.net/ など他のHikiFarm?への移動をお願いいたします。(2006.12.7)
0556名無しさん@お腹いっぱい。
2006/12/17(日) 21:56:04解説サイトを見てますと起動時に ~/ 以下の
.zshrc .zshenv .zshprofile .zlogin が読み込まれることが前提のようなのですが
自分の環境ですと .zshrc しか読み込みません
他の3つの設定を読み込むにはどこに設定すればいいのでしょうか?
0557名無しさん@お腹いっぱい。
2006/12/17(日) 23:19:24~/.zshenv 常に
/etc/zprofile -l(loginシェル)の時
~/.zprofile -l(loginシェル)の時
/etc/zshrc 対話モードの時
~/.zshrc 対話モードの時
/etc/zlogin -l(loginシェル)の時
~/.zlogin -l(loginシェル)の時
0558名無しさん@お腹いっぱい。
2006/12/18(月) 11:33:40展開されちゃうのはどう回避したらいい?
$ sudo ls -l /root/*
zsh: no matches found: /root/*
0559名無しさん@お腹いっぱい。
2006/12/18(月) 12:36:560560名無しさん@お腹いっぱい。
2006/12/18(月) 15:15:53ありがとうございます。
おかげで全部のファイルの読み込みが出来ました。
zshenvが読み込まれてないと思ったのは
ファイルの最初に書いてる echo をコメントアウトしてしまっていました。
0561名無しさん@お腹いっぱい。
2006/12/20(水) 01:29:26消えるんだ。。。もったいない。
ここいったいどんな管理になっているのだろう
連絡先とか管理者とか何も書いてない。
勝手に、コピーして違うページに公開するわけにはいけないし。。。
>http://wiki.fdiary.net/ など他のHikiFarm?への移動をお願いいたします。
って、ことは、勝手に移してよい?
それとも、サーバ管理者が、wiki管理者に移動を依頼しているのかよくわからね。。。
0562名無しさん@お腹いっぱい。
2006/12/20(水) 01:32:58移していいんじゃない?
0563名無しさん@お腹いっぱい。
2006/12/20(水) 11:50:29頼む。
とりあえずやっておいて、もし重複したりしたら後で消せばいいんじゃないの?
0564名無しさん@お腹いっぱい。
2006/12/21(木) 17:15:13勝手にコピー公開していいのか?
0565名無しさん@お腹いっぱい。
2006/12/23(土) 15:18:05それが、問題だな。。。
0566名無しさん@お腹いっぱい。
2006/12/23(土) 20:50:50一部書いた人間としてはコピーしておくれって感じだが。
0567名無しさん@お腹いっぱい。
2006/12/24(日) 02:09:41次に自分が書いた箇所を移転先にコピー。
残りは破棄。
これで問題なかろう。
0568名無しさん@お腹いっぱい。
2006/12/24(日) 09:53:30いわば「便所の落書き」を
よそに移したって問題なかろう
0569名無しさん@お腹いっぱい。
2006/12/24(日) 11:11:280570名無しさん@お腹いっぱい。
2006/12/25(月) 03:01:44きっとコピーするには、編集した人全員に許可をもらう必要があると思うけど、、、
でも、そこまで厳密にする必要も無いと思うからWikiを創めた人(Wiki管理者)が、
許可したら移して良いと思う。
というわけで、誰かWiki管理者のふりをしてwiki書き換えといてくれ。。。と冗談を言ってみる。
0571名無しさん@お腹いっぱい。
2006/12/27(水) 22:02:07もったいないが、仕方がない。
てことでFA?
0572名無しさん@お腹いっぱい。
2006/12/27(水) 23:01:470573名無しさん@お腹いっぱい。
2006/12/27(水) 23:21:10ライセンスのことは注意書きとして書いておけばいい。
0574名無しさん@お腹いっぱい。
2006/12/28(木) 04:32:09・このスレのまとめを新たに作る
・Wiki移転
やってることの本質は変わらんだろ。
著作権法を軽んずる気はないが、意味のおかしい会話になっている。
0575名無しさん@お腹いっぱい。
2006/12/28(木) 07:35:590576名無しさん@お腹いっぱい。
2006/12/28(木) 11:40:56同じ元ネタを同じようにまとめたんだから当然だよな!
0577名無しさん@お腹いっぱい。
2006/12/28(木) 11:53:170578名無しさん@お腹いっぱい。
2006/12/28(木) 11:53:510579名無しさん@お腹いっぱい。
2006/12/28(木) 12:00:100580名無しさん@お腹いっぱい。
2006/12/29(金) 13:17:24コマンドラインスタックをESC-q から Ctrl-q に変えたくて探してます
0581名無しさん@お腹いっぱい。
2006/12/29(金) 14:20:180582名無しさん@お腹いっぱい。
2006/12/29(金) 16:43:18intr, quit, erase, kill, eof, eol, eol2, swtch, start, stop, susp, rprnt, werase, lnext, flush
backward-kill-lineなど他の項目はどう見つければいいんでしょうか
0583名無しさん@お腹いっぱい。
2006/12/29(金) 17:04:08zshの bindkeyの話なので、stty(低レベルの端末設定)とは関係ない。
0584名無しさん@お腹いっぱい。
2006/12/29(金) 17:09:19http://zsh.sourceforge.net/Doc/Release/zsh_29.html
これはちょっと古いけど、普通にインストールしてるなら
ローカルにも同じようなのがあるでそ。
0585名無しさん@お腹いっぱい。
2006/12/29(金) 19:08:30ありがとです
>>584
そうです。ありがとうございます
コマンドラインスタックは push-line なんですね
ずっと buffer stack で探してました…。
0586名無しさん@お腹いっぱい。
2006/12/30(土) 00:30:21Esc-q にbindされている関数の名前だけ分かればいいなら
bindkey |grep q
すりゃわかると思う。
一覧ではないから>>580の答えではないが。
>>581はC-qがsttyで割り当てられてるって話でそ。
C-s/C-qなんて今更使わんが。
0587名無しさん@お腹いっぱい。
2006/12/30(土) 01:41:47> C-s/C-qなんて今更使わんが。
「使わない」には同意だけど大抵設定はされてるでしょ
0588名無しさん@お腹いっぱい。
2006/12/30(土) 11:53:03普通 M-x describe-key-briefly でそ?
0589名無しさん@お腹いっぱい。
2007/01/05(金) 01:43:53zsh のマニュアルによると
HIST_SAVE_NO_DUPS
When writing out the history file, older commands that duplicate
newer ones are omitted.
HIST_IGNORE_ALL_DUPS
If a new command line being added to the history list duplicates
an older one, the older command is removed from the list (even
if it is not the previous event).
こういう違いがあるようなんですが、よくわかりません。
0590名無しさん@お腹いっぱい。
2007/01/05(金) 04:50:28よくわかりませんで思考停止するんじゃなくてもうちょっと考えてみなよ。
・どこまでわかっていて、よくわからないのはどの部分なのか、
・わからないところはどのような可能性が考えられるか、
・それらの可能性が本当かを確かめるにはどうすればいいか、
を自分で考えるようにすればもう少し読解力が高まると思われ。
0591名無しさん@お腹いっぱい。
2007/01/05(金) 07:16:54前者はシェルを抜けた段階でヒストリファイルの重複を削除するのに対して
後者は即時にメモリ内?のヒストリ重複を削除してるっぽいことがわかりました。
いずれもシェルを抜けた段階でファイルの重複は消されるようなので
設定は片方だけでよさそうですが、
share_history などの設定もいろいろ影響してそうなので
それ以上はつきつめて調べてません。
590 さん、助言どうもありがとうございました。
0592名無しさん@お腹いっぱい。
2007/01/05(金) 08:43:16setopt hist_ignore_dups # 前後のダブりのみ消す
setopt hist_ignore_all_dups # ヒストリに追加されるコマンド行が古いものと同じなら古いものを削除
と両方書いてあるな。
説明はmanualのまんまだ。
0593名無しさん@お腹いっぱい。
2007/01/05(金) 16:40:36ttp://wiki.fdiary.net/zsh/
XML-RPCでガーーーッと移動してちょこっといじっただけ。
変なとこあったら修正よろしく。
0594名無しさん@お腹いっぱい。
2007/01/06(土) 18:38:01おつかれ、サンクス
0595名無しさん@お腹いっぱい。
2007/01/18(木) 20:02:39いきなり質問で恐縮ですが、
コマンドラインで、第二引数だけをヒストリから補完とか可能でしょうか?
可能でしたら方法をお教えください。
具体的には、あるコマンドを(第二引数の)ファイルに実行した後で、
別のコマンドをそのファイルに実行したい時に、簡単な操作で
第二引数を呼び出したいのです。
0596名無しさん@お腹いっぱい。
2007/01/18(木) 21:10:440598名無しさん@お腹いっぱい。
2007/01/23(火) 06:52:27オンならオフ、オフならオンに変更するために predictの状態を知りたいんですが
どうやったら調べられるんでしょうか?
0599名無しさん@お腹いっぱい。
2007/01/24(水) 04:17:040600名無しさん@お腹いっぱい。
2007/01/24(水) 05:38:07ああ、そうかなるほど。
助かりましたありがとうございます
アホなりになんとかできました
0601名無しさん@お腹いっぱい。
2007/01/30(火) 04:58:45実は少人数で廻してるのか。
0602名無しさん@お腹いっぱい。
2007/02/06(火) 17:24:08do
いろんな仕事を param 毎に
done
ってやりますけど,各ループ実行に 2個づつ,3個づつみたいな
パラメータの渡し方って可能でしょうか?
python でいうところの
for i,j in ( (x1,y1), (x2,y2), ...)
とすると $i, $j でそれぞれ x1, y1 が参照できるみたいな
ことなんですが。
0603名無しさん@お腹いっぱい。
2007/02/06(火) 19:23:28while [ $# -gt 0 ]
do i=$1;shift;j=$1;shift
...
done
とかやればいいんじゃないの?
0604名無しさん@お腹いっぱい。
2007/02/06(火) 19:42:320605602
2007/02/07(水) 02:05:24なるほど〜 とおもったところで
>604 ってナンだろう? と目を擦って…
ガーン!!! そんなのアリだったのか〜
info zsh したら確かにそう書いてある!!
for NAME ... [ in WORD ... ] TERM do LIST done
.snip.
More than one parameter NAME can appear before the list of WORDs.
ありがとうございます
0606名無しさん@お腹いっぱい。
2007/02/09(金) 09:38:07ttp://journal.mycom.co.jp/column/zsh/001/
こんなん始まったね。
0607名無しさん@お腹いっぱい。
2007/02/09(金) 11:06:01お、これ面白いね。早速ブクマクした
てゆーか数年zsh使ってたが、"ls -"の後の補完でオプション出るの知らんかった・・・アホだな俺。。
0608名無しさん@お腹いっぱい。
2007/02/09(金) 12:40:10WEB上だけの連載なのかな。
UNIX USER の連載は書籍化もされず、WEB で公開されることもなく
埋もれていくのか。本誌は休刊しちゃったし。
0609名無しさん@お腹いっぱい。
2007/02/09(金) 12:59:280610名無しさん@お腹いっぱい。
2007/02/09(金) 13:00:390611名無しさん@お腹いっぱい。
2007/02/09(金) 13:54:16あれ、そんなの売ってたっけ?
0612名無しさん@お腹いっぱい。
2007/02/09(金) 15:08:15http://pc10.2ch.net/test/read.cgi/linux/1170503611/351
この後にこんな記事ができるってのは、2chみてんのかね。
0613名無しさん@お腹いっぱい。
2007/02/09(金) 15:34:330614名無しさん@お腹いっぱい。
2007/02/09(金) 15:36:41compinitは設定じゃねーよ。
常識だ。
というわけで、>>606には一応期待しておくが、まだ評価はできん。
0615名無しさん@お腹いっぱい。
2007/02/09(金) 16:02:120616名無しさん@お腹いっぱい。
2007/02/09(金) 20:21:310617名無しさん@お腹いっぱい。
2007/02/09(金) 21:22:33今回のは常識だけど、まぁまだ第1回だから今後に期待だな
0618名無しさん@お腹いっぱい。
2007/02/11(日) 15:24:290619名無しさん@お腹いっぱい。
2007/02/11(日) 17:14:190620名無しさん@お腹いっぱい。
2007/02/11(日) 18:10:440621名無しさん@お腹いっぱい。
2007/02/11(日) 19:22:49この % を出したくないんですけど、どうすればいいですか
0622621
2007/02/11(日) 19:38:350623名無しさん@お腹いっぱい。
2007/02/11(日) 19:40:34解決方法くらい書きたまえキミぃ。
0624621
2007/02/11(日) 19:43:17こんな機能があったとは
0625名無しさん@お腹いっぱい。
2007/02/16(金) 12:59:46今度はプロンプトのカスタマイズ。
0626名無しさん@お腹いっぱい。
2007/02/16(金) 13:22:22よりは
PROMPT=$'%B%{\e[31m%}%/#%{\e[m%}%b '
とか
autoload -U colors; colors
PROMPT="%B%{$fg[red]%}%/#%{$reset_color%}%b "
とかのほうがよさそうなもんだが
0627名無しさん@お腹いっぱい。
2007/02/16(金) 13:37:22> echoやprintfコマンドを使う場合もある。好きな方を選べばいい。
> ただ、コマンドだとプラットフォームごとに動いたり動かなかったりするので、
> ここでは直接書いて使っている
echo も print も printf も組み込みコマンドですがなにか
0628626
2007/02/16(金) 13:39:46正)エスケープ
orz
0629名無しさん@お腹いっぱい。
2007/02/16(金) 14:25:010630名無しさん@お腹いっぱい。
2007/02/16(金) 21:36:580631名無しさん@お腹いっぱい。
2007/02/17(土) 09:15:00それで記事が書けるなんて
0632名無しさん@お腹いっぱい。
2007/02/17(土) 10:59:40使いこなし記事(スレ住人も新たな発見がある内容)
は違うよなぁ……
0633名無しさん@お腹いっぱい。
2007/02/17(土) 12:02:360634名無しさん@お腹いっぱい。
2007/02/17(土) 12:09:58> ここ1年でzshへ移行しやすい状況が整ってきている。
> はじめるには悪くないタイミングだ。
これからzshを始める人向けだろう
■ このスレッドは過去ログ倉庫に格納されています