zsh入門 パート2

このエントリーをはてなブックマークに追加
1名無しさん@お腹いっぱい。
パート2ですよ,にーさん
4名無しさん@お腹いっぱい。:02/11/03 20:52
2?
おまいらおもしろいです。
グダグダやな。まあいいけど。
>>2 から >>5 同じ時刻…
やっぱ998任せは無茶だろ。
>>9
先に立てといて 998 になってから返事すりゃよかったのに・・・
11名無しさん@お腹いっぱい。:02/11/03 21:24
さすがに>>1 に何も張ってないのはいかがなものかと。
12前スレ951:02/11/03 21:27
zsh の情報を集める wiki を立てました。ぜひ自由に使ってください。
その他情報もまとめていこうと思います。
http://zshintro.s22.xrea.com/
>>12
otu-
http://zshintro.s22.xrea.com/cgi-bin/tiki/tiki.cgi
logo がうまく表示されていないみたいだけど?
14前スレ951:02/11/03 21:36
すいません、直しました。
15名無しさん@お腹いっぱい。:02/11/03 22:04
>>11
携帯から見るときはありがたい
16名無しさん@お腹いっぱい。:02/11/03 22:06
大人の玩具激安販売!!
ピンクローター190円!!
その他商品どこよりも安いですよ!
http://www.king-one.com/
前のスレッドにeshellのこと書いてた人がいたけど、
emacs でzsh使いたいなら、 explicit-shell-file-name に
zshのパスを文字列で設定すればよろし。
スレタイに「入門」っていらないような。
後知恵
*/はディレクトリに展開されますが、アクセス権の無いディレクトリは除外されます。
なぜ?
中身が読めないからでしょ
bindkey -aの
"j" down-line-or-history
ってやつの-or-historyが激しくいらないんだが、
donw-lineってコマンドはないらしい。激しくむかつく。
以前質問したものです。
あるテキストを更新時間順にmoreで閲覧したいのですが、うまくいきません。
どのように対処したらいいでしょうか?
具体的には、以下のエラーがでます。

% ls -t
josho.txt 1.txt 2.txt 3.txt 4.txt 5.txt chu.txt bunken.txt index.txt

% foreach i (`ls -t`); echo $i;end|xargs more
josho.txt: そのようなファイルやディレクトリはありません
1.txt: そのようなファイルやディレクトリはありません
  ・
5.txt: そのようなファイルやディレクトリはありません
  ・  
index.txt: そのようなファイルやディレクトリはありません
: そのようなファイルやディレクトリはありません


>>23
ls -t|xargs more
でいいんでない?
微妙にスレ違い。
foreach i (`ls -t`); echo $i;end|xargs more
これでできましたが。
>>25
なんでわざわざ xargs つかう

for i in `ls -t` ;do more $i ;done では不満?
っていうか more `ls -t` でダメな理由を教えてほしい
>>27
前スレで似たようなことを指摘したんですけどね。意図が伝わら
なかったか。

あと zsh 的には more *(.om) かな
ちょっと、話がずれますが質問です。

$ touch "a b"
$ rm `ls`
rm: cannot remove `a': No such file or directory
rm: cannot remove `b': No such file or directory
$ rm `ls -Q`
rm: cannot remove `"a': No such file or directory
rm: cannot remove `b"': No such file or directory

こういう時はどういう風にすれば、rm できる?
もちろん、rm * で消せますよ。そうではなくてバッククオートを使ってやる場合です。
rm "`ls`"
>>12をみて
precmd() {
TITLE=`print -P [email protected]%m on tty%l: %~`
echo -n "\e]2;$TITLE\a"
}
とやってみたのですが、screenを使っているとできないみたいです。
どうしてですか?スレ違い?TERMはvt100です。
32前スレ931:02/11/06 03:32
あるディレクトリにcdしたら、そのディレクトリでの作業の留意点
を表示するという使い方を思いついた。
motdのような感じ。
これだけでは心もとないのでcronでかけるチェックも書いたけど。
zshで日本語ファイル名を補完させたときに、

\M-^B\M-\n\M-O\M-^[email protected]\M-^B\M-L\M-\t\M-o.txta

のように文字化けします。


これを直すパッチとかってありますか?


34 :02/11/06 14:28
>33

一行の設定で直る。アホ。
>>34あんた不親切だなぁ。1行ぐらい書いてあげてもいいじゃないか。
setopt PRINT_CHEESE_BIT
cygwin の zsh-4.0.4 を rxvt の上で使っているのですが、
コンソールから日本語を入力すると化けてしまいます。
一応、quote すれば日本語ディレクトリに移ることは出来ます。(化けますが)
あと、PROMPT の %~ などが日本語ディレクトリだと化けてしまうのですが、
どうやったら化けなく出来るのでしょうか。

print_eight_bit は設定してあります。
>>36

下のように、叱られますたYO。

setopt:133: no such option: PRINT_CHEESE_BIT
zstyle ':completion:*' menu select=10
これでファイルなどの補完をC-f,C-bなどで移動できるんですが、
リターンを一回おしただけではコマンドは実行されず、2回おさなければならないので、
けっこうめんどくさいです。リターン一回で実行できるようにはできませんか?
すれ違いかもしレンガ、zshラーに聞きたい!!


みなさんんは、zshのおかげで、
findとgrepは使わなくなったとおもふ。

では、最近あえて、find使うのはどんな時でしょうか?



>>40 に聞きたい!!
**/* で find を使わなくなるのは分かるが、
grep はどうしてお使いにならなくなってしまったのですか?
その秘技を教えて下さい。
たぶん、>>40が言いたいのは "| grep" ではないかな?
憶測だけど
findつかわねえから文法しらねえや。zshで何日前という指定じゃなくて
何月何日のファイルと言う風にできたらさらに便利だと思うな
>>40
ファイルが多すぎる時.

zshで|grepの代わりって何?
>>40
色々条件つけたい時(日付とか)
zshに依存しないスクリプト書く時
46名無しさん@お腹いっぱい。:02/11/09 09:34
time の結果をファイルに書き込むにはどうすればいいですか?
man zshmisc すると、standard error に出力するって書いてあるけど、
   time command 2>logfile
としても、command のエラーが記録されるだけで、
測定結果は画面に表示されてしまいます。
今月のUnix Userの記事はおもしろかったです。
>>46
漏れは/usr/bin/time使ったらできたよ。
>>47
% /usr/bin/time -o logfile command
でいけました。

どういうわけか、シェルのbuiltin コマンドじゃなきゃイカン
と思い込んでいた。
49名無しさん@お腹いっぱい。:02/11/09 21:48
>>46 time command 2>&1 >logfile でどうよ?
5146 = 48:02/11/10 12:16
>>49
うまいやりかたがみつからない。
descriptor の指定は全部command の一部として解釈されちゃう。

確かに、HDD の読み出し速度を計ろうと思って、

% time cat <largefile >/dev/null

なんてやる時はその方が都合がいいんだろうけどね。
>>50
ありがとう。できました。
>>46
% 2>logfile time command
>>51
2>logfile time command
でいかかでしょうか
げっ、何時間も前に書き込みがあったとは。逝ってきます…
5646:02/11/10 16:55
>>53
なるほど、そういうやり方も許されるのね。
ありがと。

ついでに、
command がエラーを吐く場合に、それをlogfile に書き出したくない場合は、
こんな感じでできるみたい。

% 2>logfile time command 2>/dev/null
今日更新したファイルだけ
ls
で表示できますか?
>>57
すれ違い氏ね
>>57

% ls *(m0)
で、カレントディレクトリにあるmtimeが0日前のファイルが表示される。

詳しくは、man zshexpn して、"modification time" で検索したあたりを
よく読んでください。


>>58
あんた恥ずかしいよ
>>59
そういう書き方もあったのか。
*(m-n)はn日まえ以降に更新したファイルで
*(mn)はn日前に更新したファイル
ってことですね。
しかし、 57 の言う「『今日』更新したファイル」というのは、簡単には
書けない
ls -lしてgrepかなぁ。
ls -l|grep "`date|cut -d" " -f2,3`"
cutのデフォルトの区切りってスペースじゃないのかよ!
GNU date依存かもしれないけど。

echo *(ms-$(($(date +%s) - $(date -d $(date +%D) +%s))))

出来るだけzshの機能に置き換えてみると…、

echo *(ms-$(($(print -Pn %D{%s}) - $(date -d $(print -Pn %D) +%s))))

結局現在時刻以外の時刻をstrftimeに渡すのがzshだけで出来なかったよ。
>>64
力技で持っていくと
echo *(ms-$[$(print -P '%D{%H}' \* 3600 + '%D{%M}' \* 60 + '%D{%S}')])
かな。

まだ簡単にできるかな? しかし、時刻指定がもうちょっと楽にできればなあ
もしcronで動かすだけなら
実行時刻を考えればいいだけのような気もしてきた
>>64
すげー。それがあれば何月何日から何月何日の間に更新されたファイルとかさがせるね。
もっと簡単につかえるようにするにはどうすればいいだろう。
68名無しさん@お腹いっぱい。:02/11/15 03:55
Emacs21のshell-modeでzshを使ってます
前スレでeshellというshell scriptを書いてそれをESHELLにsetすれば良い
という指摘がありましたが、あれではzshの補完を完全には活かせてません
よね?
どうにかしてこの問題を解決出来ませんでしょうか?

因にterm-modeではファイル名の補完すらできませんでした
ansi-term で普通に補完できてますが
>>69
Me too!
7168:02/11/16 02:42
>>69
ansi-term良いですね
よろしければ便利な設定とか教えて頂けませんか?
日本語のページが極端に少ないもので…

#やっぱり辞書を片手に英語から?
>>67
>>65のを使ってこんなのを作ってみた。
# *($(afterNdaysago))または*($(afterNdaysago 0))で今日変更されたファイル
# *($(afterNdaysago 1))で今日か昨日変更されたファイル
afterNdaysago () {
echo ms-$[$(print -P '%D{%H}' \* 3600 + '%D{%M}' \* 60 + '%D{%S}' + "${1:-0}" \* 86400)]
}

何月何日とかの指定が出来るようにするために再度dateを使って
書き直してみたらこんな感じ。

# *($(daterange)) で今日変更されたファイル
# *($(daterange '2 weeks ago')) で最近2週間で変更されたファイル
# *($(daterange 2002-11-01 2002-11-10)) で11月1日から11月10日に変更されたファイル
daterange () {
echo -n ms-$[$(print -Pn %D{%s}) - $(date -d "${1:-$(print -Pn %D)} 0:0:0" +%s)]
[ -n "$2" ] && echo -n ms+$[$(print -Pn %D{%s}) - $(date -d "$2 0:0:0" +%s)]
}
7367:02/11/16 14:11
>>72
いやー、すごいですねー。

ちょっと気になったことを
${1:-$(print -Pn %D)}の部分なんですが、
http://dengaku.org/naoki/comp/zsh/intro/intro-ParameterSubstitution.html
をみると${1-$(print -Pn %D)}のように:が無くてもいいようですが、違いはなんでしょう?
もう一つ
print -Pn %D{%s}

02-11-16 02-11-16s
となってうまくできなかったのでその部分をdate +%sに置き換えました。
7465:02/11/16 19:09
>>73
> 02-11-16 02-11-16s
> となってうまくできなかったのでその部分をdate +%sに置き換えました。

zsh のオプション設定によっては、ブレースが更に特別な意味を持つためです。
>>65 で '%D{%H}' などのように quote してあるのはそのためです。
>>72 でも、オプションに左右されないようにそうした方がいいでしょうね。

> ${1-$(print -Pn %D)}のように:が無くてもいいようですが、違いはなんでしょう?

たしか : がなければ null かどうかは問わなかったはずです。
${1-$(print -Pn %D)} で $1 が null だとそのまま null が評価値になります。
$(( )) -> $[ ] は気がついたから変更してたんだけど、
''は気づいてなかった。

ブレースの解釈に影響があるオプションって何?
と思って探してみたら BRACE_CCL で動作が変わった。

: の有無はzshに限らずshell scriptのFAQという気がする。
7673:02/11/17 22:16
>>74
ありがとうございます。
>>75
FAQでしたか。すいません。
さがってるからあげるね。

setopt printexitvalueってやつさ、シェル関数の返り値はおしえてくれないんだね。
例えば
hoge(){
false
}
ってのを実行して$statusは1なんだけど、printexitvalueは教えてくれない。不便だ。
78名無しさん@お腹いっぱい。:02/12/01 00:08
compctl -g '*.l' + flex lex
と定義してもflexは*.lexファイルしか補完してくれない。
autoload -U compinit
compinit -u
これを実行しなければ問題ないんだが、そう言うわけにはいかないので
だれか教えてください。
>>78
_flex を ~/.zfunc/ にコピーして input files の部分を書きかえる。
その後 $FPATH=~/.zfunc:$FPATH を .zshenv 等に加える。
そしてzshを起動しなおす。
>>79
できた。ありがとう。
今までオプションの補完ができるなんてスゲーとか思ってたけど、
_flexとかのファイルに書いてあるだけなのか。
むしろ_flexとかのファイルに書いてあるから
自由自在にカスタマイズ(のはず)
age
%cat dummy
001 aho
002 boke
003 hage

というファイルを
001
002
003

aho
boke
hage
に分けるとき、
cut -f1 dummy>f1
cut -f2 dummy>f2
というのを一気にやりたいですが、どうすればいいでしょう。
<() <()

>f1 >f2
などを使ってできないでしょうか?


cut -f1 dummy > f1; cut -f2 dummy > f2

いやー、セミコロンって便利♥
8583:02/12/12 11:11
ぼくは真面目に質問してるのです!!
>>85
>>84 は真面目に答えてると思うが。
8784:02/12/12 12:28
>>86
フォローして貰っといてなんだが、別にマジメって程のモンではありませぬ(w
というか、awk使うべきだろ
この場合
↑キボン
>>89
スレ違い

awk '{print $1 > "f1"; print $2 > "f2";}' dummy
84 の方が短い罠
9284=90:02/12/13 02:43
そして 84=90 という罠
オークの中でリダイレクトできるのか。
zshでの関数定義内において
標準入力をファイルに書き出すには
どのような書き方がありますか?

使い方:
last | x2w

コード:
x2w(){
while read line do
echo >>dummy-memo.txt
done
<略>
}

read line do;〜;done しか思い当たりません。
短く書くのならcatでいいのでは?

x2w () {
cat >> dummy-memo.txt
}
9683:02/12/17 14:03
どうもです。

cut -f1 dummy>f1
cut -f2 dummy>f2


cut -f5 dummy>f5

を連続して実行したいのですが、
^1^2
のグローバル置換ありませんか?
^1^2だと
cut -f1 dummy>f2
になります。

date -3
で今日の日付をhighlight表示させる方法ありませんか?
9865:02/12/17 16:57
>>96
r 1=2 とか。それよりも for loop を廻した方が早いと思うが
>>97
くだ質へ行きたまえ
>>96
!:gs/1/2/
はどう?
100100:02/12/19 02:07
zsh (・∀・)イイ!!
シェル変数を補完しないようにするにはどうすればよいのでしょう?
awk --help |grep hoge
grep --help | grep hoge
のようにhelpの出力をgrepしたい時は
| を使うのでしょうか?





>102
そうですが何か?
sourceコマンドの補完で質問。
原因不明で、以下のものが動かなくなった。
他のサンプル持ってないので、皆さんの
_source見せてください。
おながいします。


% cat _source
#compdef . source
compadd ~/.zsh.d/.zsh(rc|env) || _files
あー、グローバルエイリアスってすごいね。
これだけでzshに存在意義を見出させてしまいます。

zsh以外で実現しているシェルってあるの?
>>102
もしできなかったら
awk --help 2>&1 |grep hoge

>>105
なに設定してる?
漏れは
alias -g I=/dev/stdin
alias -g O=/dev/stdout
alias -g E=/dev/stderr
alias -g N=/dev/null
alias -g L='|less'
alias -g G='|grep'
foreach i (ココの部分)
      ^^^^^^^^
グローバルエイリアスがいちいち展開されてウザイっす。
例えば、bindkeyでキーバインディングの空き情況を調べる時、
foreach i (w \W i \I);bindkey "^x$i";end
のように展開を避ける必要があって、面倒です。

グローバルエイリアス展開の有無を情況ごとに調整する
オプションありませんか?
bindkeyを引数なしで実行すればいいのでは?
>>107
> グローバルエイリアス展開の有無を情況ごとに調整する
> オプションありませんか?
これは自分も以前思ったことがあった。しかし、グローバルエイリアス
の有効・無効を「簡単に」切り替えられる方法は見つけられなかったが、
一応の方法は見つけた。

無効にしたいとき、
disable -a $galiases[(I)*]
有効に戻したいとき
enable -a $dis_galiases[(I)*]
漏れはグローバルエイリアスって使ったことないんだけども、
それって使い方を間違えているんじゃない?
もっと、衝突しづらい文字列のエイリアスをあてがうのが正しい使い方かと。
そうでもない
%echo '
>hoge
>hoge
>ho
ここまで入力して上の行に戻れる?
113104:02/12/21 02:48




いろいろ調べていますが、結局のところ

% cat _source
#compdef . source
compadd ~/.zsh.d/.zsh(rc|env) || _files

でsourceの補完が聞かなくなった理由が
わかりませんでした。

だれか理由か関連情報ご存知ありませんか?



114名無しさん@お腹いっぱい。:02/12/22 01:52
zshで、makeなどの出力結果をコンソールに出しながら
標準出力と標準エラー出力をそれぞれ別ファイルに吐き出すことは出来ますか?
make >LOG.stdout 2>LOG.stderr >& /dev/tty
とか
make >LOG.stdout 2>LOG.stderr |& tee
の方がいいか
どうもありがとうございます。
shじゃできないけど、zshだと出来るのですね。
history内部コマンドの表示行数はデフォルトでは10行ですが
変更方法はありませんか?
118名無しさん@お腹いっぱい。:02/12/22 23:19
おまいら便利なbindkey教えてください。
unix userに載ってたのを書いてみる
accept-and-hold(M-A) コマンドを実行して再び表示する。
transpose-word(M-T) 単語を入れ代える
quote-line(M-') 'でくくる
insert-last-word(M-.) 直前のコマンドの最後の引数を挿入

autoload run-helpをやってもM-h(run-help)でwhereなどの内部コマンドのヘルプが
でてこないのは漏れだけ?
119名無しさん@お腹いっぱい。:02/12/22 23:21
>>117
たぶんHISTSIZE=10000(byte)
>>117
勘違いスマソ
alias history='history -20'
121117:02/12/23 00:09
alias使うと、
% history -m 'hoge*'
などのマッチングが出来ません。

そうすると、
% function history{history 〜}使うしかないのかな?


>>121
> % history -m 'hoge*'
> などのマッチングが出来ません。

ということにしたいのですね。
そもそもhistoryコマンドって何に使う?
>>121
grep使えば?
>>118
> autoload run-helpをやってもM-h(run-help)でwhereなどの内部コマンドのヘルプが
> でてこないのは漏れだけ?
手許では unalias run-help; autoload run-help で内部コマンドのマニュアルが動いている。
もっとも zshbuiltins(1) が先頭から表示されるだけで、それほど便利ではない(w

>>119
単位は byte でないよ。履歴の数そのもの

>>117
history は fc -l の別名だから適当に使い分ければ?
>>124
run-helpがaliasされてたのですか。おもしろい使い方ですね。
>単位は byte でないよ。履歴の数そのもの
スマソ
[email protected], $*の扱いがzshとshで違うのは仕様ですか?
>>126
どう違う。
#test.sh
arg.sh [email protected]
arg.sh $*
arg.sh "[email protected]"
arg.sh "$*"

引数の数を表示
#!/bin/sh
#arg.sh
echo $#

sh test.sh 'a b' 'c d'
4
4
2
1
zsh test.sh 'a b' 'c d'
2
2
2
1
勘違いしてたらスマソ>>127
bashは4421になった。
から揚げ
うまうま
131名無しさん@お腹いっぱい。:03/01/03 18:08
zsh を 3.0.8 から 4.0.4 に上げたら job control が変になりました。
具体的には
% less nannoa.txt

として見てるときに kill -STOP `pidof less` して止めたとき、
fg で less をフォアグラウンドにだすと jk では上下せず、
j + return, k + return というように改行キー入れないと動かなくなります。

これ、どのへんの設定を直せばいいんでしょうか。
132777:03/01/03 19:06
>>826
すんばらしい。
ありがとうございました。
>>826 に期待がかかるわけだが。
134826:03/01/03 22:49
>>777
いえいえ、どーいたしまして
>>131
4.06にしたら?
>>128
see SH_WORD_SPLIT

% zsh -y test.sh 'a b' 'c d'
4
4
2
1
137128:03/01/07 19:35
>>136
ありがとうございます。

zshってzshのオプションは補完してくれないのか。
-o
139名無しさん@お腹いっぱい。:03/01/11 12:07
日経Linuxでちょろっと取り上げられてたage
140名無しさん@お腹いっぱい。:03/01/12 12:54
zshrcの置き場所って
~/.zsh/zshrc
で正しいですか?
設定を読み込んでくれないのですが
>>140
/etc/zshrc
>>140
~/.zshrc
>>140
$HOME/.zshrcでいいんじゃない?
>>140
ドキュメントを読まない方はお断りします。
145名無しさん@お腹いっぱい。:03/01/12 16:59
>>12 のwikiが無くなってるんだけど、どっかに移転しましたか?
146140:03/01/13 03:33
140ですが
$HOME/.zshrc
を読み込んでくれません
aliasも有効にならないし
環境変数も有効にならないし
書式がおかしいというエラーも出ません
なんででしょうか
chpassでログインシェルを変更しました
またログインシェルを変更せずとも
ただたんにフォアグラウンドで走らせようとも
関係なく読み込んでくれません
関係ないか
なんででしょうか?
147140:03/01/13 03:40
ちなみにパーミッションは
-rw-rw-rw-: こんな感じですね
とくに意味は無いですが
そのうち変えます
自分に読み込み権限はあります
>>147
source $HOME/.zshrc って打ったらどうなる?
>>147
> -rw-rw-rw-: こんな感じですね

(゚Д゚)ハァ?
>>140

# $HOME/.zshenv
ZDOTDIR=$HOME
export ZDOTDIR

man zsh に目を通しておきませう
151150:03/01/13 13:59
あ、 >>150 は zsh 4.0.6 (i686-pc-cygwin) での話なんで、
他の環境では違うのかも...
152山崎渉:03/01/15 12:53
(^^)
GUIでアイコンをクリックすると適切なアプリが起動するように、
プロンプトでファイル名をうったら適切なアプリが起動したら便利だと思う。
zshのpreexecとかでできないかな?

preexec(){
if [ -f "$1" ]; then
vi $1
fi
}
と定義して
%.zshrc
とやるとviは起動するんだけど、 そのあとに
zsh: command not found: .zshrc
となる。ちょっとうざい。
>>153
スクリプトで拡張子見て起動するようにしてみれば?
>>154
まず magic を見て、次に拡張子の方がいいだろうな。
file の出力を拾うのがいいかな?
>>154-155
スクリプトだとたとえ1文字にしても
%a hoge.txt
としなければいけない。
%hoge.txt
ってのはやっぱり無理かな。
bindkeyで適当な関数を割り当てればいいんじゃないかな。
内容はあんまりいい例じゃないかもしれないけどこんな感じで。

function my-accept-line {
emulate -L zsh
local -a cmd; cmd=(${(z)BUFFER})
case "$cmd[0]" in
*.log)
BUFFER="$PAGER $BUFFER"
;;
*)
if [ -z "`whence $cmd[0]`" ]; then
BUFFER="echo $BUFFER"
fi
;;
esac
zle accept-line
}
zle -N my-accept-line
bindkey '^J' my-accept-line

参考にしたのは
http://dengaku.org/~naoki/zsh/FAQ-J/zshfaq02-j.html
のrun-fg-editorと
http://www.zshwiki.org/cgi-bin/wiki.pl?ZshHardStatus
のpreexec。
>>157
カッケー!サンキュウ!
159158:03/01/22 01:58
よく考えたら補完が使えなくなるのか。うーん。
160155:03/01/22 09:43
おれはpreexecの中で一時的にaliasを定義したらいいかな?
と思ってやってみたんだが、aliasの展開はpreexecより前
みたいなんだよなー。
ソースをちょっと直せば対応できそうな気がするけど。
faq っぽいですがよろしくです。

shell> aaa bbbbbbbbbbb ccccc

とかあって、bbbb の中頃にカーソルがあるとします。そこで、
次の単語までジャンプする方法ってありますか?
# つまり ccccc の頭まで。
矢印キー押しっぱなしというのは美しくないので・・
>>161
ESC f とか ESC b とか
さんくすです! esc か・・。
ctrl に適当に割り当てられれば便利そうですね。
^F も ^B も日頃使わないからそれに振ってみます ;-)
>>163
Meta-b(Alt-b) でイくない??
macos 上のターミナルなので alt は無いです。option キーだと
変な文字が入力されるだけだし・・。ううむ。
>>161ではありませんが、C-, とか C-. に割り当てることは出来ませんよね?
ってこれは、terminalの問題か...。
167名無しさん@お腹いっぱい。:03/02/06 23:32
実行しているコマンド名をウィンドウのタイトルに設定したいんですが、そんなこと
可能でしょうか?
Enterでコマンドが投入された直後にそのコマンドラインをウィンドウのタイトルに
設定できればいいと思ったんですが、うまい方法を見つけられませんでした。
実行が終了して元に戻すのはPROMPTでいいんでしょうが。
>>167
preexec を設定してはどうでしょうか。
cf. ttp://www.zsh.org/mla/workers/2000/msg03993.html
169167:03/02/07 00:45
>>168
そういうフックがあったのですね。ありがとうございました。試してみます。
170fushianasan:03/02/07 17:49
zshって、tcshとくらべると、
動作速度、メモリの使用量はどうなの?
>>170
起動はおそい
172fushianasan:03/02/08 01:06
一回起動しちゃうと、サクサク?

screenとかmlterm多様してると、
シェルのプロセス立ちまくるから、
あんまり重い||遅いとこまる。

tcshマンセーな俺はzshを愛せるだろうか
こんな感じ
% ps aux |grep '[tcz]sh'
xxx 2172 0.0 0.8 2436 2016 p3 Ss 4:17AM 0:00.14 -zsh (zsh)
xxx 2178 0.0 0.4 1384 996 p3 S 4:17AM 0:00.03 tcsh

うーむ、実質二倍って感じ?
>>172
一回起動するとサクサク!
screenはdetatchしてatatchすれば起動の遅さは気にならないはず
486 なマシンだと zsh の方が completion とか明らかに遅かった。ヲレには
耐えられないレベルだったので使用を諦めた記憶がある。
176fushianasan:03/02/09 00:03
>>173-175
御丁寧にどうも。
とりあえず、つかってみようかと思います。
多機能なぶん、おもいのはしかたないのかなぁ。
>>175
Pentium/120MHzでもcompletionとか明らかに遅いよ。
でもなんとかつかえる範囲なので使ってるけど。
普段余り触ることのないルータ機だからってものあるけど。
178fushianasan:03/02/10 22:12
P2/233Mhzでも、微妙に遅いかも…。

使用感ですが、かなりカスタマイズできるようになっていて、
tcshよりも、かなり自由度がたかそうです。

うちのtcshはいじりすぎて、実メモリを1.8Mくらいメモリくっちゃうんで、
zshへの移行もありかなとおもってますが、
.*rcの移行が非常に面倒くさい…。

地道にzshの勉強しながら移行します。
>>178
2.xでも使ってみれば?
それでも現行のtcshより便利じゃないかな。
ってtcshの事はよく知らないんだけど。
ソンナワケ(ry
>>179
|>!|2.xでも使ってみれば?
|>!|それでも現行のtcshより便利じゃないかな。

ということにしたいのですね?
>>180,181
いや、おれの.zshrcは2.6の頃から大して変わって
ないからさ(細かい所はいじってるけど)。
最近追加された機能なんて使わなくても十分
便利なんじゃないかな、と思っただけ。
183名無しさん@お腹いっぱい。:03/02/12 01:49
~/.zshrcって何書いています? キーバインドくらいでしょうか?

私は以前、~/.zshenvには環境変数、~/.zshrcにはシェル変数やエイリアス、
キーバインドの設定を書いていましたが、
rshしたときには ~/.zshrcが読み込まれないみたいなので、
今は全部 ~/.zshenvに書いています。
ssh だと読み込まれるけど
rsh host command
では読み込まれない。

rsh host
では読み込まれる。

sshでも一緒。
186名無しさん@お腹いっぱい。:03/02/12 06:39
Mac OS X 10.2.3 付属の zsh 4.0.4 を使っています。
端末エミュレータ (Terminal.app) で表示言語を UTF-8 にしているのですが、
日本語を入力すると文字化けします(EUC だと文字化けしません)。
zsh で utf-8 を通す方法があったら教えて下さい。
>>186
「utf-8移行スレ」なんてスレ立てて情報集めてみるのはどう?
各プログラムの utf-8 対応度が知りたい。
.zshrcってないの?
ある
sjisなファイル名はちゃんと補完できないのか?
なんだか404から406にした時かなり遅くなったように感じますた。
192名無しさん@お腹いっぱい。:03/02/13 21:31
zsh上でとあるソフトを make install として/usr/bin なんかに入っても
zshを再起動させないとコマンドの補完に含まれないんだけど、なんか設定あるのですか?
逆にPATHの中のコマンドを削除した場合、ずっとそのコマンドが補完対象に含まれるし。
>>192
rehash
194_:03/02/14 22:11
zshのオプションに文字列を渡せてそれを実行させてプロンプトに欝って欲しいのですけど
どうしたらできますか?
195_:03/02/14 22:42
-e -cだと実行した後zsh死んでしまうし。
>>194
なんでそんなことしたいの?
hoge.c
int main(){
fprintf(stderr, "err\n");
fprintf(stdout, "out\n");
}
./hogeのエラー出力をerr.txtに標準出力をout.txtに出力して
画面には両方を出力するにはどうすればいい?
./hoge 1>&2 2>&1 2>error.txt 1>out.txt
これで一応できたけど、意味不明。shでもできる方法ない?
>>197
わかりやすいのがいいのなら、
./hoge > out.txt 2> error.txt |& cat
とか。
197もそうだけど、setopt multios されてないとダメ。
hでは
((./hoge |tee out.txt >&3) 2>&1 |tee error.txt) 3>&1
くらいかな。もっと簡単な方法あるかな?
199198:03/02/17 23:19
s/hでは/shでは/
>>198
> ./hoge > out.txt 2> error.txt |& cat
これだと、out.txt に stderr も含まれない?

./hoge > out.txt 2> error.txt >& /dev/tty
なら大丈夫だが、あまり好みではない
201198:03/02/18 10:51
>>200
あれ、ほんとだ。確認したはずなんだが、頭が寝ていたらしい。
ありがと。
しかし、 |& と >& はふるまいが違うのか。
んなの man 眺めたくらいじゃ気付かんよ・・・

ちなみに/dev/tty使うの嫌いなのは一緒だったりする。
202197:03/02/18 11:47
>>198-201ありがとうございます。
((./hoge |tee out.txt >&3) 2>&1 |tee error.txt) 3>&1
これすごいですね。もうなにがなんだかってかんじ。

./hoge > out.txt 2> error.txt |& cat
俺もこれためしたんだけど、なんでout.txtに全部入るのかわからなかった。
203198:03/02/18 14:08
>>202
zshmisc(1) に

`|&' は `2>&1 |' の省略形
`>& word' は `> word 2>&1' の省略形ではない

と書いてある。そこから想像しろという事らしいな。
204200:03/02/18 16:44
>>201
>あれ、ほんとだ。確認したはずなんだが、頭が寝ていたらしい。
まあ、そういうこともあるね。 実は >>115 を書いたのも自分だったりする(w
このとき、自分もちゃんと確認したつもりだったけどね。同じような質問が
きたので、もう一度動作を確かめて気付いた次第。114 の人に悪いことをした。

>>203
どうも直感的に扱えないのが、嫌なところだね。

/dev/tty を使うのが気に喰わないので、zsh 的に他の解決法はないものかと
思案したところ、こんなのでいけそうだ。

./hege >& >(cat) >out.txt 2>error.txt

でも、綺麗とは言い難い…
205197:03/02/18 17:42
うわ、既出でしたか。毎日見てるはずなのにな・・・
tcshの
bindkey -k up history-search-backward
bindkey -k down history-search-forward
みたいな事は、zshで出来るのかな?

これがないと移行する気になれないんだが、
出来る人情報キボン
>>206
history-search-(back|for)wardならあるけど?
それとも、カーソルキーに割り当てたいの?
up => "^[[A", down => "^[[B" みたい。
208名無しさん@お腹いっぱい。:03/02/20 00:52
M-xしたときのキーバインドってどう変えるんでしょう?
Emacs風に、"C-a"とか"C-b"使いたいし、
M-[pn]で、M-xでコールした関数の履歴を活用したい...。
>>206
autoload -U history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
bindkey "^P" history-beginning-search-backward-end
bindkey "^N" history-beginning-search-forward-end
>>207,209
サンクス!
これで移行する事ができました。
zsh、おもったより軽くて快適。

イイ!!
zshがディレクトリのシンボリックを
勝手にリンク先の名前に戻してしまうのですが、
どういう風に設定したらよろしいでしょうか?
意図的に名前をかえてリンクしてあるディレクトリの意味がなくなってしまいました。
お知恵をお貸しください。
すまそ、
ディレクトリのシンボリックリンクを

でした。
213211:03/02/20 13:51
自己解決しました。

スレ汚しすまそ。
>>213
なんだったの?
>>214

chase_linksがついてたせいで、
[email protected] hoge/
pwd ~/hoge-xxx/
にしたかったのが、
pwd ~/hoge/
になってたの。

chase_linksを消したらなおった。
compctl -x 's[-]' -s '`kill -l`' - 'p[*]' -c -- killall
tcshから引き継いだやつなんですが、
compinitしないと動かなんです。
compinitせずに動かす方法はありますか?
その設定は別に要らんような。killall のデフォルトの補完とそんなに違う?
必要なんです。
「compinit」しませんから。
非常に重くなるので、compctlで済ませたいです。
>>218
compinitしとけ。重くなるって、起動だけじゃなくて?
>>218
[prefix]/share/zsh/[version]/functions/ から要らない補完関数消したら?
レスどうも。
根本的な解決にならないようですので、
自分でどうにかします。

ありがとうございました。
補完リストをカラー表示する方法ってありますか?
無い。
>>222テメー犬厨だな、
晒しage
あるだろ。

zstyle ':completion:*' list-colors ''

とか。

まあ、聞く前に man zshall しろってこった。
zmodload -i zsh/complist
export ZLS_COLORS='di=01;36'
>>226
出来ました。ありがとうございます。
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
229名無しさん@お腹いっぱい。:03/03/04 02:05
>>12は消滅?
230名無しさん@お腹いっぱい。:03/03/04 04:44
   ______________
 /:\.____\
 |: ̄\(∩´∀`) \  <先生!こんなのがありました!
 |:在  |: ̄ ̄ U ̄:|
http://saitama.gasuki.com/kaorin/
cygwinのzshで日本語入力が文字化けするのは仕様ですか?
   % echo あほ
と書くと、echo  の後が文字化けします。
(結果は正しく「あほ」と出ます)

zshはeucなら標準で入力できるようなのでUN*X環境では
大丈夫だと思いますが…
232名無しさん@Emacs:03/03/07 16:11
zshって\nの扱いが妙じゃないですか?
たとえばrubyなんかで
print ("hello\n")
は表示できるのに
print ("hello")
だと何も表示されません。

これバグじゃないかと思うのですが。
バグではなくて仕様。echo -n hoghoge でも同様の結果になる。
デフォルトでは、プロンプト前にCRを出力するようになっているから。
zsh には、右プロンプトやマルチライン編集機能があるので、その方が
都合がいいため。

setopt NO_PROMPT_CR すれば、一応お望み通りになるが…
234名無しさん@Emacs:03/03/07 16:47
>>233
それやると今度は画面が崩れます。

RPROMPT='[%~]'

こんなの設定してるからなんでしょうね。
少し不便
>>233にあるように都合が悪いわけです。RPROMPT に改行いれるように
すればましになりますが
RPROMPT じゃなくて PROMPT だった
>>231
bashだと、それ以下ですね
cygwinの端末問題じゃないですか?


今月号のUNIX USERは結構(・∀・)イイ!!かも
238名無しさん@お腹いっぱい。:03/03/09 02:08
cygwinのzshの起動時に
Ignore insecure directories and files and continue [ny]?
と聞かれてしまうのですが、どうすれば聞かれないように出来ますか?
240名無しさん@お腹いっぱい。:03/03/09 17:14
.zshrc に setopt nohup を追加して読み込ませました。
あるシェルスクリプトを
./a.sh&
したあと、exit しようとしたのですが
zsh: you have running jobs.
となって抜けられませんでした。
どうすればいいのでしょうか? こういう時に nohup を使うのでは
ないのでしょうか?
disown
あるいは
./a.sh&!
>>240
setopt nocheckjobs
244240:03/03/09 18:12
>>241-243
ありがとうございました
この場合、もう一度 exit すれば抜けられるけどね
>>239
ありがとうございました。ログに載ってたんですね。
今月のUnix Userより。
mkdir ~/zsh_help
cd ~/zsh_help
man zshall | colcrt - | \
perl ~/zsh-4.0.6/Util/helpfiles
で、~/zsh_helpにヘルプファイルがたくさんできる。
unalias run-help
autoload run-help
HELPDIR=$HOME/zsh_help
これでM-hでいろんなmanが見れる。

autoload promptinit
promptinit
prompt -l
で変更可能なテーマを表示
prompt <theme>
プロンプトを変更。

autoload predict-on
predict-on
入力を予想して表示。けっこううざい

autoload zmv
zmv '(*).c' '$1.h'
alias mmv='noglob zmv -W'
mmv *.c *.h
>>247
今月号の記事はなかなか面白そうだな。立ち読みしてみるか。
ところで、最近のマニュアルだと zshall じゃなくて zshbuiltins にしないと
駄目じゃないの?
249名無しさん@お腹いっぱい。:03/03/13 23:30
質問さていただきます。
zshの補完リストの色の事なんですが、X端末側で指定してある色に従わせる方法を教えていただけますでしょうか?
250249:03/03/13 23:32
連続カキコすいません。
色を表示させる設定は

zmodload -i zsh/complist
export ZLS_COLORS='di=01;36'

としています。
どなたか御教示おねがいします。
251249:03/03/13 23:47
自己解決しました。
スレ汚しスマソ。
二つの履歴ファイルを時系列順にマージするような方法は zsh に
用意されていますか? 適当なスクリプトでも書いて対処するしかない
のかな
用意されてます
されてないだろ
setopt share_history
>>253-255
煽らないと正解レスが得られないという、UNIX 板の典型的なコンボパターンだな。
258252:03/03/15 00:44
申し訳ありませんが、それらのことは知っていますし、実際普段から使っています。
>>252は、例えば異なるホストでの履歴をマージしたいときなどのことをいっています。

fc を使えば確かに履歴そのものはマージされますが、完全には時系列順にならない
のです。マージしたあと、history -Ei 1 | less とでもして、しばらく眺めれば判ると思います。

履歴の呼び出しはできるので特に困るということでもないのですが、なまじっか記憶が
残っていると、呼び出し順が思いどおりにならないとイライラするものですから。

やはり適当なスクリプトを書いた方がよさそうです
単純なソートでいいかと思ったら複数行あるとまずかったのか。
適当なスクリプトってこんなもんでどう?

#!/usr/bin/ruby
lines = []
line = nil
while line = gets
while /\\\Z/ === line
line << gets
end
lines << line
end
print lines.sort
# This code is PDS.
260This code is PDS:03/03/15 03:27
ついでにperl版。
誰かzsh版希望。

#!/usr/bin/perl -w
use strict;
my @lines;
while (<>) {
while (/\\\Z/) {
$_ .= <>;
}
push @lines, $_;
}
print sort(@lines);
# This code is PDS.
261252:03/03/15 03:47
>>259-260
どうも有難うございます。目的が果たせました。ruby ってすっきり書けるんですね。

自分は setopt INC_APPEND_HISTORY しているので、整列されたものを fc で
単純に読みん込んで exit しても元の木阿弥になってしまいます。
HISTSIZE=0 にしてから $HISTFILE の置き換え & exit することで対処しました。
>>259
短くしてみた(w
#!/usr/bin/ruby
print STDIN.find_all{|line| /\\\Z/ !~ line}.sort
# This code is PDS
そんでつまるところ
 ま と め る と ど う な る の?

…既にfcを使ってマージするところからやり方が
分からない罠
マニュアルの fc の項を見ればわかると思うが…
265名無しさん@お腹いっぱい。:03/03/18 19:58
マトメトマ
>>262
それだと継続行をまとめてソートじゃなくて
2行目以降が消えて変にならない?
267252:03/03/20 07:20
変になります。言うの忘れてた(w
zsh 4.0.6 で、

export PROMPT='%~'
mkdir ~/bin
cd ~/bin

したら、表示が

~i

になるのは、漏れだけか?
どこかで変数 i を ~/bin にしてるんじゃないのか
openssl コマンドの補完が欲しいな。
外出ですか?
google() {
^       local google_opt=""
^       if [ $# != 0 ]; then
^       ^       google_opt="search?hl=ja&ie=euc-jp&oe=euc-jp&lr=lang_ja&q=`echo $* | mimencode -q |sed -e 's/=/%/g;s/ /+/g'`"
^       fi
^       w3m "http://www.google.com/$google_opt"
}
ガイスツ
ソトダシ
tabがあったっぽいところに^がついてるのはなぜ?
>274 
271です。それは、screenでコピペしたためエディタの見た目そのままになってました。
失礼しました。そのままじゃ動かない;;
2点ほど質問です。

1)
% less hoge.txt

% vi hoge.txt
としたいのですが、どうするのが最短手となりますでしょうか?

2)
% cv supdate

% cvs update
としたいのですが、簡単な手はありますでしょうか?
1)
^A^D^D^D^Dvi
2)
^A^F^Fs^F^D
>>277
阿保
vi !$
C-r SPC C-t
>276
1)
% less hoge.txt[RET]
v
>>277
M-d じゃなくて、C-d を使っている時点で素人決定
>>277
1)
^cwvi

2)
Fvas
UnixUser キタ━━━━━━(゚∀゚)━━━━━━ !!
そういえば、最近 UnixUser を読んでないんだけど、今月の連載記事
はどんな内容でしたか?
買ったが読んでない。
compsys とかいうやつのはず。
今回が最終回のはず。
皆さんの小技を披露してください
しかしまぁなんですねぇ。
ほんまにほんまやなあ
それは円ひろし
289山崎渉:03/04/17 12:15
(^^)
290名無しさん@お腹いっぱい。:03/04/17 16:49
ニヤニヤ(・∀・)
みなさんの小枝が知りたいです。
いらっしゃ〜い。
293山崎渉:03/04/20 05:51
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
それは桂三枝
295名無しさん@お腹いっぱい。:03/04/21 06:07
今月と先月のUnix Userは読んでおいたほうがいいぞ >283
あそこまでの解説は保存版になる
そろそろ O'Reilly あたりから本が出るといいのだが。
>>296
YOU shall write it.
Unix User の解説が書籍にならないかなぁ。
299名無しさん@お腹いっぱい。:03/04/21 18:55
RedHat8.0を使ってます。
標準のシェルをbashからzshにするために、/etc/passwdファイルを編集したのですが、
そうするとmanやlessの日本語が表示されなくなってしまいます。
どなたかこれを解決する方法を教えてください。
大方 .bashrc の $PAGER の設定を .zshrc に移してないってとこだろうな。
>>298
編集部にメール出しなはれ
>>299-300

LANGとかのlocaleの設定の問題のような気もする。

どうでもいいけどシェルを変えるだけなら
/etc/passwdを直接いじるよりもchshを
使った方がいいのでは。
303名無しさん@お腹いっぱい。:03/04/29 23:09
cygwinで使うと最近のPen4でも重いのは何とかならないかなあ?
そんなに重いかなぁ?使い方と感じ方次第だろーけど。
305名無しさん@お腹いっぱい。:03/04/30 01:22
設定にもよるのかもしれないけど、時々カレントディレクトリ上の
ファイル名でも1秒くらいかかる場合がある。
sedとかgrepとか呼ぶせいかなあ?
Cygwin だから
307名無しさん@お腹いっぱい。:03/04/30 10:21
zsh で履歴に重複がある場合,
それを履歴に加えないような
.zshrc の設定方法ありますか?
308動画直リン:03/04/30 10:25
>>307
あります。
duplicate
310名無しさん@お腹いっぱい。:03/04/30 15:44
>>309

すいません,
検索してみたんですが,
duplicate の使い方が書いて
あるものを見つけることができませんでした.

どう使えばいいんでしょうか?
man zshoptions
setopt hist_ignore_all_dups
313名無しさん@お腹いっぱい。:03/04/30 17:41
>>312
ローソン! …じゃなくて サンクス!
ギャー!!
315名無しさん@お腹いっぱい。:03/04/30 17:53
すいません

hist_ignore_all_dups
なんていうオプションはねーぞ

というメッセージが出るんですが…

hist_save_no_dups も同様です…
もうだめぽ
>>315
4.0.6使え
318名無しさん@お腹いっぱい。:03/04/30 18:03
>>315 setopt histenablenullpo
ぬるぽ!?
321名無しさん@お腹いっぱい。:03/04/30 20:09
>>319-320
ガッガッ
322bloom:03/04/30 20:25
323名無しさん@お腹いっぱい。:03/05/01 19:33
zsh シェルが動いているコマンドラインで,
その zsh のヴァージョンを調べるには?
zsh --version で出なかった?
man zsh でも最下部に出るかも
>>323
$ echo $ZSH_VERSION



krxvt の中で zsh を使っているときに
echo 夏
は、ちゃんと実行されるんですが、
echo 春
と書こうとすると、画面上で
echo |
と化けてしまって、pipe> というプロンプトが出てしまいます。
sh で同じことをすると、ちゃんと echo 春 になるので、krxvt の設定の
問題ではないと思います。

log を見ましたが、日本語そのものが出ないという例はありましたが、
一部だけ化ける、という例は発見出来ませんでした。

どういう可能性が考えられるでしょうか。
327名無しさん@お腹いっぱい。:03/05/04 07:43
Terminal.app では問題無く出来たよ。zsh 4.0.4 なり。
328名無しさん@お腹いっぱい。:03/05/07 00:49
色表示させてみようと

setopt prompt_subst
PROMPT='%{^[[$[32+$RANDOM % 5]m%}%U%B$HOST'"{`whoami`}%b%%%{^[[m%}%u "

とかすると、

^[[34mhostname{gikoneko}%^[[m

のように表示されてしまいます。どこら辺の設定がおかしいのでしょうか。

バージョンはzsh 4.0.4 です。
^[ は escape そのものをじゃないと駄目だが、それは大丈夫? `whoami` も %n
でいいような
$HOST も %m でいいような。
%% のところは %# の方がお勧め。
>>329
^[ をそのまま書いてました・・・
thxです。
option='-l -F'
ls $option
ls: オプションが違います --
詳しくは `ls --help' を実行して下さい.
zsh: 17896 exit 1 ls $option
となってしまうんだが、どういうことよ。bashだとできるんだが。
quote されてないときの挙動が違うから。bash などと同じにしたければ
setopt SH_WORD_SPLIT とすればよい。

一時的に変えたければ ls ${=option} とかね
334332:03/05/07 23:39
>>333
よくわからんけど${=option}で解決したよ。ありがとう。
335332:03/05/07 23:44
なるほど
ls '-l -F'
こうなってるのか。
というか>>128も俺だ・・・
336名無しさん@お腹いっぱい。:03/05/08 02:02
set|grep LANG
などとすると
Binary file (standard input) matches
といわれてしまいます。bashだときちんと出来るんですが。
cat hoge.txt|grep hoge
など通常のファイルをgrepする文にも正常に出来ます。

どこらへんがダメなんでしょうか?
337__:03/05/08 02:07
set の出力を見れば判るけど、IFS の中身に NULL があるからでしょう。
env | grep LANG とでもしておけばいいんでは
>>338
あ、本当だ。
どうもです。

env|grep LANGで望み通りの動作しました。
最近MacOS10.2.6を使い出し、
ファイル名がUTF-8で戸惑っているのですが、
zshではUTF-8を通すことは出来ないのでしょうか。
検索したら186の質問が引っ掛かったのですが
そこでは解決していなかったので質問させていただきます。
341名無しさん@お腹いっぱい。:03/05/14 09:22
chown ro として C-i すると、
chown root: になりますか?
chown root. になりますか?
この辺の挙動に関して教えてください。
342481:03/05/14 09:43
>>341
root.となった。
echo ${_comps[chown]}
_chown
share/zsh/4.0.6/functions/_chownみるよろし。
>>342
$OSTYPE ってどこで定義されているんでしょうか?
いままで、: 立った気がするんですけどいつのまにか . になってたので……。
>>343
どこで定義されてるかはしらんけど、solarisでやったら:になったし、
linuxでやったら.になったぞ。
>>344
すいません。
~/.zshrc に OSTYPE=$(uname) というのを入れていた生でした。
346名無しさん@お腹いっぱい。:03/05/15 03:29
sudo chown root: ここで C-i したときに、自分の所属していないグループを
補完するにはどうすればいいのでしょうか?
347_:03/05/15 03:36
348名無しさん@お腹いっぱい。:03/05/17 02:46
コマンド打ってる途中でその行の頭に戻りたい場合、tcshならhomeキーで
戻れるけどzshじゃどうすれば戻れるか分かりません。
sudo後から付ける時とかカーソルキーで戻るのめんどくさくて・・・。
>>348
Emacs モードなら Ctrl-A とか。
ていうか、home キーで戻すってすごいな。
350山崎渉:03/05/22 01:53
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
351名無しさん@お腹いっぱい。:03/05/22 17:19
emacsモードがあるということは、viモードもあるの?
>>351
あるよ。
man zshzle
うほっ!
つかいづれ…。
354348:03/05/23 00:38
>>349
ほんとだ。戻れました。ありがとう。
emacs使えくせにemacsモードで使ってました・・・。
355348:03/05/23 00:39
>emacs使えくせにemacsモードで使ってました・・・。
使えないでした。失礼しますた。
356名無しさん@お腹いっぱい。:03/05/23 10:01
vi使いはviモードで使ってるんかね
イチイチ^[せなあかんって…使いづらくね?
使いやすい。ただ、一度コマンドモードに入った後、再び入力モードにはいると
以前に入力した文字がバックスペースで消えないのがつらい。
それと4xで4文字消して、.で繰り返しても1文字しか消えない。
358名無しさん@お腹いっぱい。:03/05/23 11:48
参考までに http://csx.jp/~osakana
359::03/05/24 14:15

探し物はこちら
http://sagatoku.fc2web.com/
新商品・安売・キャンペーン・流行商品・ネット商品等10万点以上
ジャンル別・50音別で楽々探し物


>>357
bindkey "^H" backward-delete-char
361357:03/05/24 20:48
>>360
ありがとう。というかいつのまにかviモードになってたみたい。
どうやらEDITORがvimになってるせいらしい。
bindkey -e
bindkey '^[' vi-cmd-mode
にした。
zshを常用しようか
tcshのままでいようか
激しく悩み中
おれはzshに乗り換えた。オタだから
tcshはzshと比べると
・若干省メモリ&機敏。
・シンプルなので設定が楽。
の2点がいい。普通に使うにはtcshで十分だな。
>>363
そうなんだけど、tcshの持つ妙なクセに最近イラついてきてる
俺もヲタだから乗りかえたいのは山々なんだけど
以前のzshrcを紛失した痛みと、メモリの都合で思案中
設定すんのが何より面倒くさい…。
事ある毎に少しずつ設定していってるからそちらはあまり問題では
なくなってきてるけど、機敏でないのが辛いので常用はtcshになってる。
>>365
一応設定おわらせた。
言うまでもないと思うけど、最適化はしてあるよね?
MMX pentium程度あれば、速度的な面は大丈夫だと思うけど。
あ、compinitとか使うとかなりのスペックを要するか。
俺は、未だにcompctlで補完させちょるよ。
(pd)ksh程度のメモリの使用量で
zshくらい働けるshellキボンヌ
zsh だと % wget http://hoge.com/ero{001..999}.jpg
と簡単に猥褻図画をさくさく落せるんで, これは便利,
乗り換えようか, と. だが, zsh に乗り換える香具師は
皆そいうのが目的, というのが見透かされそうでもあり,
禿しく思案中でつ.
>>368
おいおい!みんながみんなそんなんじゃねえよ!もまいと一緒にすんなYO!
漏れはvimの連番になってるパチーを落すときに
かなり便利だった。
それ以外では、どこが他のshellに比べて優位なのかわからん。
いまいち、zshでなかればならないっていう理由もないな。
至高のナントカカントカっつーHPもむなしく感じる。
「tcsh なんてウンコ」

機能的にそれほどかわらんのに、無駄に重いところをみると
zshはタダのうんこではないな。
そういう意味では、タダのウンコのtcshよりは優れているのかもしれないが。
前の関連スレで紹介されているし、ちと古いけど。
ttp://www.gentei.org/~yuuji/rec/pc/intro-zsh.html
他の shell でもできるかもわからんけど、
漏れは scp でリモートの path を補完してくれるのにはたまげたな。
>>372
そんなん出来たのか
しらんかったよ、zshユーザーなのに。
w3m で ~/.w3m/history の中の URL を補完とか。
chown で user:group の補完とか。
configure のオプションの補完とか。
Makefile のターゲットの補完とか。
>>374-375
tcshでも設定しだいではいけそうだな。
zshでは、compinitすれば一発か?
起動が重いけど。
>>376
それも、zsh固有ではないなぁ。
っつーか、補完じゃtcshとたいしてかわらんべ。

ファイル名生成規則とか、コマンドラインスタックはtcshより優れてるな。
kill で pid の補完とか。
MH のコマンドで folder の補完とか。
>>379
MHコマンドつーのは何かわからんが
killのpid補完もいけるな。

補完ネタでは、格別優位ではないよ。
compinitで設定一発完了っつーのおいしいかもしれんがね。
リスクが無いわけではないけど。
まぁ、実際さ、bash と tcsh の違いが export か setenv くらいにしか
思ってないような奴が、zsh 使っても違いを感じないわけで。
以前 ksh や bash や tcsh をそこそこ使って、いまいち手になじまない
と感じた、違いのわかる漢がたどりつくシェルなのであって、一般人が
使うようなものではないと、そう思うわけですよ。ヲタクとしては。
そうですねぇ。わかる奴にはわかるんだけどねぇ、って感じですか。
あれですよ。普段 Windows とかで、たま〜に ssh でログインしてさわっ
ているような奴には、違いはわからんと思いますよ。実際、この板に来て
る奴にも多いんですよ。そういうエセ UNIX 使いが。
いや、別に煽ってるわけじゃないんですよ。ヲタなもんで、どうしても
こういう書き方になってしまうんです(w
>>372
ゲ、マジだ。ビビツタ
だけど、補完しようとしたらpass聞かれた(ワラ
とりあえず、どうしてもここでtcshネタをやりたいなら
最低限これくらいは前提とした上でやってほすぃ。不毛。

ttp://tcshrc.sourceforge.net/
"^[a" accept-and-hold
"^[q" push-line
"^O" accept-line-and-down-history
"^[." insert-last-word
"^['" quote-line
このへんの機能はほかのシェルにはないよね?
あと便利なキーは何がありますか?
>>381
> 以前 ksh や bash や tcsh をそこそこ使って、いまいち手になじまない
> と感じた、違いのわかる漢がたどりつくシェルなのであって、
であるからには、zshをそこそこ使って、いまいち手になじまない
と感じる人間も否定しちゃいけないね。

その一線を越える人がたまにいるみたいで嫌になる。
>>381
俺は君がいうとおりの
>以前 ksh や bash や tcsh をそこそこ使って、いまいち手になじまない
という口なんだが
zshが何物よりも優れているとは思わんなぁ。
ただし、zshはデカいが小回りは効くな、かゆい所に手が届くというか。


>>367
の言うやつがあるといいな。
zsh程度働いてくれて、ksh程度のメモリの使用量ってやつ。
まあ367の名前のとおり無茶なんだが。

pdkshも、ちょっとした不満さえ我慢できればかなり軽くて良いんだがね。
本家kshとの微妙な違いも、時として鼻につくこともあるが。
>>382
あ、そうそう、公開鍵なり ssh-agent なりで、
あらかじめ password 聞かれないようにしておく必要はありますです。
一線を越えた人はなに使うの? もしや scsh?
>>388
shだろうな
>>383の補完設定のやつ使っても
compctlで、ほんの少しだけ設定したzshと同じくらいのメモリの使用量だ。
tcshの方がメモリの面では、お得かな。

でも、C shellの癖がなぁ。
ファイル名生成規則がなぁ。

zshに移行してしまった後から、また悩む。
tcshのHISTSIZEはエントリの数だけど
zshはバイト数?

ヒストリのサイズはメモリに響くので
識者の方いらっしゃいましたら、回答キボンヌ
>>391
たしか過去スレにあったぞ。
zsh もエントリーの数だに
>>391
マニュアルは死んでも読まない主義?
395あぼーん:あぼーん
あぼーん
396名無しさん@お腹いっぱい。:03/05/28 18:14
イッテヨシ!
397名無しさん@お腹いっぱい。:03/05/31 00:23
zshで
# /bin/echo 'aaa\nbbb'

bbb'aaa\nbbb
#

bashだと
$ /bin/echo 'aaa\nbbb'
aaa\nbbb
$

となります。zshでもbashと同じになって欲しいのですが
どう設定すりゃあいいの?

zsh 4.0.6 (gentoo)です。
>>397
洩れのとこでは zsh で
% echo 'aaa\nbbb'
aaa
bbb
%
となるけど.
bash でも,そいうふうになるようにせい, いうのか,
zsh で aaa\nbbb と echo させたいのか?

# /bin/echo 'aaa\nbbb'
bbb'aaa\nbbb

俺はこうなったが。炒ってよし!
>>398
組み込みコマンドの echo と、/bin/echo は違うと思うよ。
zsh の組み込みだとそうなるけど、GNU の echo だと、

% /bin/echo 'aaa\nbbb'
aaa\nbbb

というようになるね。>>399 のようになるのは、知らん。
401397:03/05/31 10:57
ありゃりゃ、オレの環境がむちゃくちゃなのか。
と、いろいろ試してみたところ、
どうやらEtermが悪さをしていたようです。
おさわがせしました。

ヽ(´▽`)ノ zsh万歳

402直リン:03/05/31 11:14
403397:03/05/31 12:00
しまった。sage忘れたばっかりに…

タイトルバーを変えようと、こんなことをしていたのが悪かったです。
これをやめたらEtermでも改行くずれ(?)は無くなりました。

case $TERM in
rxvt|*term)
precmd() { print -Pn "\e]0;%[email protected]%m - %~\a" }
preexec () { print -Pn "\e]0;%[email protected]%m - $1\a" }
;;
esac

ヽ(´▽`)ノ Eterm万歳







なんだ、悪いのはオレかよ…
404398:03/05/31 20:05
すまそ, 組み込みコマンドでなくて,
/bin/echo の話だったのが分かってなかった
私をぶって. んでも, そんなら bash でも
zsh でも

$ /bin/echo 'aaa\nbbb'
aaa\nbbb

でっせ, うちでは.
>>12のwikiはどうなってますか?
最近こちらを見始めて、激しく気になるのですが。
たぶん2ちゃんねらの事だから
荒らして潰したんでしょうね。
>>3
とかのリンクにはへんなのが混じっているようだけど、こういうものなの?
>>3
仕様
12のことをぜんぜんしらずにzshのWiki作りはじめてました。
需要ありますか?
あります
411409:03/06/03 12:18
>>410

Pentium200MHzのノート鯖なんで、ちと負荷が辛そうです。
(というか、自分で使ってても、待たされてじりじりする)
近いうちに中身を別のいくらか速い奴に移すので、そしたらまた来ますわ。
>165
Terminal→ウィンドウの設定...→エミュレーション→「メタキーとしてoptionキーを使用する」をチェック→設定をデフォルトとして使用
printf hoge
で、hogeと表示される?
俺のはナニも表示されず(tcsh, bashではOK)原因特定に手間取った。
>>413
>>232-236 あたりを

これもいい加減 FAQ だから、次スレのテンプレに入れた方がいいな。
大部先の話だが(w
>411
マジか
期待して待ってます
416413:03/06/03 21:03
>>414
あら過去ログにあったのね
Cでstdoutに出力するプログラム組んだけど結果が全く表示されずにツボにはまってた。
改行コードを入れて対処したけど。

つーことで
unsetopt prompt_cr
を.zshrcに追加しますた
417名無しさん@お腹いっぱい。:03/06/03 22:06
C-rの検索時に、時々(2週間に1回くらい)
$HISTFILE には存在しているのにヒットしなくなることがあるのですが、
皆さんはいかがでしょうか?

% zsh --version
zsh 4.0.6 (i686-pc-linux-gnu)

% echo $HISTSIZE $SAVEHIST
1048576 1048576
7桁にしている人を初めてみた。というか、なんでそんな値
高林さんのを参考にしました。今 600Kくらい。
単位はエントリーの数なんだが
俺は10000を超えたら別ファイルに保存してる。
起動が遅くなるからね
おれも一年ほど前から history は富豪的に使うようにした。
C-r でインスコ時からの記録が全て検索できるので便利。
423422:03/06/04 17:44
とは書いたが、
>>417 はおれの設定と二けたも違ってるな。
百万もどうやったらたまるんだ。(笑)
setopt hist_ignore_dups
setopt hist_ignore_all_dups
こうしてるから、最近 history の増加率が減少してきたよ。
>>417 はものすごい速さでキーを叩くんだろう。
ホームディレクトリが NFS だったりしたら、zsh の起動や終了が重くて大変そうだ。

ところで、X 上の仮想端末で zsh 使ってる場合、
X を終了したときに history って保存されるの?
>>424
やってみたら?
昔のhistoryを見るのは結構おもしろい。
setopt HIST_IGNORE_DUPS として、現在履歴が 45000 程溜まっているけど、
それでも一番古いもので一年ちょっと前。100万溜めるのはかなり大変そうだな(w

>>422
X を使うなら setopt SHARE_HISTORY か setopt INC_APPEND_HISTORY として
おかないと、かなり不便のような
>>424
setopt share_historyして、10000人くらいで同時に同じアカウントで使ってるんじゃないの。
429422:03/06/04 19:54
>>425
history ファイル見てみたらタイムスタンプが前回 X を終了した時刻になってたから、
logout じゃなくて signal 受けて終了するときにもちゃんと保存するのかな。

>>427
HISTFILE=~/.zsh_history.$HOST.$tty
とかやってるからそれほど不便ではないです。
430417:03/06/04 21:12
$HISTSIZE の単位が byte で、 $SAVEHIST が数ですよね?
最初の設定の時にどっちがどっちだか分からなかったので、
両方とも同じにしてました。
あと setopt extended_history して、$HISTFILEに時間も記録しているから
サイズが大きめかもしれない。
でも setopt hist_ignore_all_dups, setopt hist_ignore_dups はしてますよ。

とりあえず、 $HISTSIZE => 512000, $SAVEHIST => 10000 にしておきました。
byteじゃないだろ。
The maximum number of events stored in the internal history list.
zsh のスレでは、何故か byte 単位とか言う奴が時々出てくるのが謎
もしかして他にそんな shell があるのか
433417:03/06/04 21:59
>>431
ああ、ほんとだ。メモリ上に保存されるヒストリの数なんですね。
ありがとうございます。
>>432
漏れもウェブサイトかどっかで何度かそんな記述を見た憶えがある。
この都市伝説の出所きぼんぬ。
ハゲワラ
437431:03/06/05 09:45
>>434
俺もどっかのサイトで見たことがある。
このスレで指摘されるまではサイズだと思ってた
あんたもだったのかよ(w
ファイル名補完などで、通り過ぎてしまった補完候補に戻ることってできますか?
自分は reverse-menu-complete を適当に割り当てている。
戻るだけだったら、undo (C-x C-u、C-x u) でも用は足せるけど
undo に C-_ を忘れていた。C-/ で C-_ を吐く端末も多いからこれが一番楽か
442439:03/06/05 18:55
>>440
そんな便利なコマンドがあったのですか!
man zshzleは一通り読んだつもりだけど気づきませんでした。
undoでもできるんですね。

最近知ったんですけどredoもあるんですね。
bindkey -a '^R' redo
bindkey -a u undo
でvimっぽくして使ってます。使う機会ないけど。
reverse-menu-complete のことを書いたんでついでに。

tcsh にも似たようなのに complete-word-back というのがあって、zsh に乗り換える
前は重宝していた。ただし、両者の挙動には違いがあって、自分は complete-word-back
の動作が好みなんだよね。

例えば、
% ls
00000.txt 00001.txt 00002.txt 00003.txt 10000.txt 10001.txt 10002.txt 10003.txt
という状況で 00003.txt を less で見たいとき、

% less 0

として、complete-word-back すれば 00003.txt が一発で補完できる。それに対して
reverse-menu-complete は一旦 00000.txt が補完候補に出てしまう。zsh を使って
いてストレスを感じる少ない例かな。zle を駆使すれば対処できるのかもしれないが。

誰かうまい方法を知っていたら教えてたもう
最初だけ reverse-menu-complete を2度実行すればいいかと思ったけど、
これだと ^I の expand-or-complete の直後も2度実行されてしまうから
[ self-insert = "$LASTWIDGET" ] の方がいいかも。

function complete-word-back {
if [ complete-word-back != "$LASTWIDGET" ]; then
zle reverse-menu-complete
fi
zle reverse-menu-complete
}
zle -N complete-word-back
#bindkey '^J' complete-word-back


>>435
相互リンクかよっ。
>>444
相互リンクにワロタ
>>444
[ self-insert = "$LASTWIDGET" ] の方が望みの動作をしてくれるので、
こちらにして快適になったよ!! 助言有難きかな

あと、自分も zshzle をちゃんと読むべきだったな(w
447411:03/06/07 06:31
>>411です。

Wikiマシン設定しました。
同じくノートですがクロック3倍なのでだいぶマシな速度になったようです。

DNS情報がまだ伝搬しきってないと思いますが、
ttp://hiki.ex-machina.jp/zsh/
でどうぞ。

古いマシンのほうにアクセスしてしまうようなら、
ttp://volans.ex-machina.jp/zsh/
ttp://218.219.152.75/zsh/
も試してみてください。
>>447
乙彼
>>447
お疲れ様。良い感じに出来てますね。

ただ、色が淡くて読みづらい&目が疲れる かもです・・・。
確かにちょっと目に厳しいかも
451447:03/06/08 03:16
色についてはちょっといじってみますね。

tDiaryのよさげなテーマがあったら or 作ったら教えてください。
HikiにはtDiaryのテーマを流用できることになっているので。
NetBSD-1.6.1 で

% kill
ここで TAB を2 かい押すと↓こうなって、
217 E0 SWs 0:00.00 -zsh
225 E0 SW+ 0:00.00 /bin/sh /usr/X11R6/bin/startx
237 E0 SW+ 0:00.00 xinit /home/hirobo/.xinitrc --
246 E0 S 0:01.75 wmaker
251 E0 S 0:00.26 kinput2 -ccdef ccdef.kinput2.egg -canna -cannaserver 127.0.
320 p2 Ss+ 0:00.78 zsh
338 p2 SN 1:26.35 emacs
544 p0 SNs+ 0:01.93 /usr/pkg/bin/ruby -S migemo -t emacs -i \a -d /usr/local/sh
558 p1 SNs+ 0:05.01 /usr/pkg/lib/mozilla/mozilla-bin http://bo.st72.arena.ne.jp
594 p3 Ss+ 0:00.20 zsh
601 p3 S+ 0:00.02 zsh
602 p3 R+ 0:00.00 ps
もういっかい押すと、

kill /bin/sh とかになって PID ではなく名前が補完されるのですが、どうす
れば、PID が出てくるようになるでしょうか。
>>446
> [ self-insert = "$LASTWIDGET" ] の方が望みの動作をしてくれるので、
しばらく使ってみて、編集時の後にも complete-word-back な動作をして
くれないと嬉しくないことに気付いた。

結局、補完系以外の後は 2 回 reverse-menu-complete すればいいだろ
うということで、 [[ "$LASTWIDGET" != *complete* ]] に変えてみた。
いまのところ問題なし。

>>452
うちの Linux では PID が補完されるよ
でた犬厨
うぜぇー

うちのLinuxでは だってさ(ゲラゲラ
自分が特別な存在だとでも思ってるのかね(ワラ
>>454
おまえはLinux板に行って「BSD厨ウゼー」とか言ってるやつだな(w
そぉです わたすが(ry
気違い、長生きしろよ
>>452
share/zsh/4.0.6/functions/_kill嫁
多分、それだけ読んでも判らんだろ(w
>>447
見やすくなったよ。thx!

あとはこのWikiがどう育つかだね。
項目が少ないページは一まとめにしちゃった方がイイ鴨。
>>460
ひとまとめにするっつーか、いろいろ放り込んでおいて、
あるトピックが成長をはじめたらブランチする(別のページを作る)
って感じの運用がいいかもね。
zstyle ':completion:*' use-cache true
したけど、~/.zcompcacheができません。なぜ?
どのコマンド?

キャッシュを使うように補完関数が書かれているやつじゃないとダメだと思うけど。

とりあえず、うちのzsh 4.0.6では、
$ perl -M[補完]
は、最初の補完候補生成後に .zcompcache覗いたらキャッシュできてたよ。
WikiのTestArrayMemberって${(M)x_terminals:#$TERM}を使って
もっとなんとかできそうな気がする。
>>464

is_member_of() {
local heystack=$1
local needle=$2
eval '[[ -n ${(M)'"$heystack"':#$'"$needle"'} ]]'
}

こんな感じかしらん。今環境ないんで未検証スマソ。
>>465

つまらぬことだが、干し草の山は hAystackな。
ヘタレな漏れに、
http://pc.2ch.net/test/read.cgi/unix/996949546/373-378n
の zsh 版ぷりーず。
468462:03/06/10 08:02
>>463
url補完とか、pid補完とか、host補完とか、ユーザー名補完とか
いろいろやりましたが、何もできないです。
469463:03/06/10 14:41
>>486いま zsh/4.0.6/functions/Completion で$ grep _store_cache **/*~*.zwc(.)してみたら、Debian/_aptDebian/_deb_packagesMandrake/_urpmiRedhat/_rpmUnix/_perl_modulesこれだけでした。ほとんどなかったのね ;_;
470468:03/06/10 18:57
>>469
そうなんですか。ありがとうございます。ほとんど意味ないですね。
>>467
プロンプトには仕込んでないが壊れた時に
一度 Ctrl-u したあと
echo Ctrl-v Esc-c で直ると思われる
出力される文字は気にせず打ち込んでくれ
472471:03/06/11 07:55
というのが、http://pc.2ch.net/test/read.cgi/unix/996949546/370
に書いてあったな...
端末画面に表示されている word から dabbrev 補完できないでしょうか
>>474
誰か compsys 用に書き直してくれ
zsh-4.0.7, 4,1,1 キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
>>476
どっち使えばいい?
つーか4.0系と4.1系でどう違うのよ?
>>478
ドキュメント嫁。

おおざっぱにいうと、4.0 は安定版、4.1 は開発版。
でも、4.1.1 はもうそこそこ安定してきてるっぽい。
ってことみたいだね。
ttp://hiki.ex-machina.jp/zsh/

parse error 出てますが...
>>480

申し訳ない。自作のプラグインをいじくりまわしていたので。
直ってるかな……
emacsの{ansi,}termで、
tab補完で補完候補が表示されると表示がおかしくなります。
治し方ありますか。
どうおかしくなる?
試したけど、実用上対して気にならなそうな感じなんだけど
%ls
hoge1 hoge11 hoge13 hoge15 hoge17 hoge19 hoge20 hoge4 hoge6 hoge8
hoge10 hoge12 hoge14 hoge16 hoge18 hoge2 hoge3 hoge5 hoge7 hoge9
%ls hoge<tab>
hoge1 hoge3 hoge5 hoge7 hoge9 hoge11 hoge13 hoge15 hoge17 hoge19
hoge2 hoge4 hoge6 hoge8 hoge10 hoge12 hoge14 hoge16 hoge18 hoge20
この状態で補完すると普通、ls hogeのところの表示が変化するんですが、
2行3列目のhoge6のところがhoge2→hoge3と変化していきます。

これとは関係ないんですが、右プロンプトが行からはみでて、2行目の左端に表示されます。
incremental-complete-word使える人いる?なんかうまく機能しないんだが。

autoload incremental-complete-word
zle -N incremental-complete-word
bindkey '^Xi' incremental-complete-word

>>474
4.x では、うまく動かなかったので書き直してみた。普段 menu complete は明示的にしか
使わないのだが、dabbrev ではそうじゃないと不便なので menu-complete を基にした。
zstyle による大文字小文字無視の設定が生きないの不満。あまり良く判ってないので添削希望

ABBREVFILE=/tmp/script-$USER
if [[ $SCRIPT = 1 ]]; then
if [[ ! $screen = 1 ]]; then
screen=1 screen; exit
fi
else
umask 0077; SCRIPT=1 script -f -a $ABBREVFILE-$WINDOWID;
rm $ABBREVFILE-$WINDOWID; exit
fi

alias cutesc="sed -e 's/\([^a-zA-Z]*\([a-zA-Z]\|$\)\)\+/ /g' | col -b"
comp_dabbrev_display () {
local i c reply
for i in $ABBREVFILE*; do
c=($(tail -100 $i | head -99 | cutesc))
reply=("$reply[@]" "$c[@]")
done
compadd - "$reply[@]"
}
zle -C dabbrev-complete menu-complete comp_dabbrev_display
bindkey '^[/' dabbrev-complete
書くのを忘れたけど、comp_dabbrev_display にしか興味がなかったのでそれだけ残した。
まあ他も同じ様なもんだけど
げっ、screen の部分はコメントアウトしていたので修正を加えるのを忘れた。
趣味の問題だから動作に支障はないが…
%zsh-4.1.1
%autoload -U tetris
%zle -N tetris
%bindkey '^Xt' tetris
| #### | Score: 0
| ####()() |
| ()()() | Game parameters: 11x20, 100.Hz
| () |
| ()()()() | Keys: left: a j
| () | rotate: s k
| ()() | right: d l
| ()() | drop: space
| ()() | quit: q
| () |
| () |
| ()() |
| () |
| () |
| ()()() |
| () |
| () |
| ()() |
| ()() |
| ()() |
+----------------------+
なんか functions に変なファイルがあるなぁとは思ってたが、なんつーシェルだ・・・
そういやついに tetris ができるようになったと書いてあったな。別にキーに割り当てなくても
^[x で呼び出せばいいと思うが、しょっちゅうやりたいのなら仕方がないな(w
ボスが来た機能は付いてますか?
シェル関数で動くものはサスペンドが効かないのが弱点やねぇ。
494名無しさん@お腹いっぱい。:03/06/30 08:34
bashだとCtrl+Rで、ヒストリの検索ができるけど、
zshに同じ機能はありますか?
>>494
あほ
496名無しさん@お腹いっぱい。:03/06/30 10:16
>>495
知らないなら黙ってろ、馬鹿。
4971 秒で試せるだろ:03/06/30 10:35
>>496
釣れた。
bash つかってれば?
499名無しさん@お腹いっぱい。:03/06/30 15:03
結局、ESC -> / でできたわけだが、
なんでそれが1秒で試せることなんだ?
>>499
普通は bindkey -e してあるから、でない?
501名無しさん@お腹いっぱい。:03/06/30 15:48
ところで compinit + bindkey -v な状態で ESC 押してちょっと
待ってから / を押すとヒストリの検索になるけど、ESC 押して
すぐ / を押すとヒストリがだらだらっと表示される。どういう
設定したらヒストリの検索にずばっと行けますか?
502名無しさん@お腹いっぱい。:03/06/30 16:04
>>500
なるほど。
自分が使ってたbashではset -o viでも
Ctrl+Rで履歴の検索だったから、
それがemacs由来なkeybindだってことも知らなかったよ。
>>501
それは俺もはまった。
screenつかってるだろ。
>>503
screen使ってます!
で、どうやって回避しました?
>>504
maptimeout 0
うーん maptimeout 0 にしたけど直らない・・・
screen なしでもダメだった。
もうちょっと調べてみよ
bindkey -r '^[/'
したら直りますた。
508505:03/07/01 13:44
>>506-507
あ、ちがったの。ごめんね
>>499
メール欄に答え書いてあるだろ?
510名無しさん@お腹いっぱい。:03/07/01 14:18
OS X
>>499
てか、答えになってない。
↑誤爆>>499>>509
From: [497] 1 秒で試せるだろ <bindkey -e する必要があるかもな。>
Date: 03/06/30 10:35

>>496
釣れた。
zsh メーリングリストの spam 嵐は酷いな
515名無しさん@お腹いっぱい。:03/07/07 05:06
厨な質問だが、zshのプロンプトのカスタマイズ方を教えて欲しい
set prompt="%〜 " と同じことをzshではどのようにしたらよいのだろうか
>>515
PS1="%〜"
>>516
thx
518名無しさん@お腹いっぱい。:03/07/10 02:44
zsh ってなんで、kill -TERM で死なないの?
Zombie shell とか。
>>519
座布団一枚!
%hoge 2>&1 1>/dev/null | cat
とやると、エラー出力だけが、出力されてほしいのですが、
標準出力も出力されてしまいます。
redhatの/bin/shでは、エラー出力だけ出力されました。
どうすればいいでしょうか
>>521
前スレの438
(hoge 2>&1 >/dev/null) | hogehoge でもいいけどね
524521:03/07/15 01:11
>>522-523
ありがとう
525山崎 渉:03/07/15 11:17

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
=(command)
<(command)
>(command)

の地害がマニュアル読んでもわかりません。
そうですか。
それは困りましたね。
< と = の違いは lseek がどうのとか書いてあるがどういうことなんだろう
誰か解説きぼん
パイプだとシークできねーよって話
530名無しさん@お腹いっぱい。:03/07/22 23:13
パイポでタバコをやめますた。
531_:03/07/22 23:14
>>467
巧くいくかどうかまだ試していないけど。
PROMPT='%{^O^[[0m^[(B^[)$B^[*I^[+$D%}'"$PROMPT"
「^O」「^[」はctrl+o,escを適当に入力してくださいな。
533名無しさん@お腹いっぱい。:03/07/29 18:15
>>485
incremental-complete使うくらいならpredict使った方がいい。
うまくカスタマイズすれば相当打鍵数を減らせそうなんだが。
telnet コマンドなどで、サービス (ポート番号) の指定を
/etc/services の内容か何かから取ってきて補完してくれますが、
/etc/services を書き換えて、新しいサービスを追加したあと、
そのサービスも補完してくれるようにしたいのですが、どうすればいいでしょうか?
もしかして rehash かと思ったけど違いました (あたりまえか・・・) 。
>>534
zsh起動しなおしたら?
exec zsh
537534:03/08/08 21:01
ん〜、なんだか、zsh を起動しなおさなくても、
しばらくすると、新しいサービスが補完対象になるようなんですが、
これってどういうからくりになってるんだろう・・・?
functions/_ports見ろ
539名無しさん@お腹いっぱい。:03/08/12 05:20
FreeBSD の ports で4.0.6 から 4.0.7 にしたら TAB で 補完するときに
%P って文字が出て補完できなくなっちゃいました。

cd /usr/[TAB]

cd /usr/$P

となってしまうってことです。
誰か対処方法知りませんか?
540名無しさん@お腹いっぱい。:03/08/12 22:16
X上でxterm,rxvt,kterm等で稼動してるzshから、バックグラウンドで起動したXクライアントが、
その親のzshを終了すると一緒に終了してしまうのだが。
zshからその子プロセスを終了させずにログアウトする方法ってあるのかな?

最初の'$ exit'で'zsh: you have running jobs.'って警告が返ってきて。
2回目の'$ exit'で子プロセスを巻き込んで終了するんよ…。
bashだと最初の'$ exit'で子プロセスに影響を与えずに終了してくれるんだが。(;´Д`)
>>540
disown してもだめ?
見当違いだったらスマソ
setopt NOHUP
>>541-542
ありがとう。
両方とも解決になったけど、簡単な方で~/.zshrcに`setopt NOHUP'を追記しました。
zshを筆頭にshellの扱いに精進するわ。
>>543

もいっこだけ。

& のかわりに &! でバックグラウンド実行する。
&| でも同じ。
546あぼーん:あぼーん
あぼーん
547あぼーん:あぼーん
あぼーん
548名無しさん@お腹いっぱい。:03/08/18 13:30
空のディレクトリで echo * とコマンドラインを入力すると
zsh: no matches found: *
とエラーメッセージが返ってくるのですが。
B shellのように、* を展開出来ない場合に * をそのまま返すようには出来ませんか?
Software Design に akr さんの記事発見。入門記事なのでたいしたことは書いてないけれど。
>>548
うちの環境ではそうなってますが,どの設定が効いているのかわかりません...

setoptは,autocd autonamedirs autopushd nobeep cdablevars noclobber
completeinword correctall extendedglob extendedhistory noflowcontrol
globcomplete globsubst histignorealldups histignorespace histreduceblanks
histverify interactive login longlistjobs mailwarning monitor nonomatch
printeightbit pushdignoredups sharehistory shinstdin zle

ZSH_VERSION は,4.1.1 です.
551548:03/08/18 15:51
>>550
setopt nonomatch
でした。
ありがとうございます。
552名無しさん@お腹いっぱい。:03/08/18 21:56
この板みても自分でどう設定したら良くわからんから
誰かが作った設定ファイル(.zsh*)をアップしてくれ(゚Д゚)
cvs -d :pserver:[email protected]:/cvs/zsh checkout dot-zsh
>>552
とりあえず、これやっとけば補完はOK
autoload -U compinit
後は適当にsetopt
setopt interactive_comments
setopt numeric_glob_sort
setopt auto_cd
setopt noclobber
setopt share_history
setopt hist_ignore_space
setopt hist_ignore_all_dups
setopt hist_reduce_blanks
setopt menucomplete
setopt list_packed
setopt prompt_subst
setopt autopushd
setopt pushdminus
setopt pushdsilent
setopt pushdtohome
setopt pushd_ignore_dups
setopt long_list_jobs
setopt complete_in_word
setopt extended_glob
setopt brace_ccl
setopt glob_dots
setopt printexitvalue
unsetopt rec_exact
unsetopt flow_control
autoload -U compinitだけじゃなくて
compinitも実行しておかないと意味が
ないような。
556554:03/08/21 00:54
>>555
ごめん、忘れた。
>> 539

.zshrcでこんな設定してない?
zstyle ':completion:*' file-patterns '%p:globbed-files *(-/):directories' '*:all-files'

4.0.6に戻して使ってたけど、調べたらこれが原因みたいだったので外したら4.0.7でも動いた。
558名無しさん@お腹いっぱい。:03/08/26 13:23
tcshだと
% whichoge
cの後にカーソルを合せてTABを押すと
% which hoge
とスペース付加して補完してくれるのですが
zshでやる方法はありますでしょうか?

他の例として
% cd /usr/bin
usrの後にカーソルを合せてTABを押すと
usr以下のディレクトリが表示され
lを押すと
% cd /usr/local/bin
と補完できるのですが
zshだと
% cd /usr//bin
としてからTabを押さないと補完できません。

誰か、簡単に補完する方法教えてください。
>>558
bindkey "^I" expand-or-complete-prefix
かな?
>>559
ほぼ望みどおりになりました。
サンクス!!

#コマンドの後に自動でスペース入れたり
#補完する語の後ろの語は解釈してくれないみたいで、ちょっと残念。
zshってどうやって発音している?
わたしは「ゼットシュ」って読んでいるんだけど。
ぜっとしぇる。
ぜっとえすえっち、、、
ぜっしゅ。
ずぃーしゅ
ずしゅ
じーしぇる
568名無しさん@お腹いっぱい。:03/09/02 04:58
ソフトウェアデザインでちょこっと取り上げられてたけど
内容かなりしょぼかった。。なんだそりゃって感じ。
569名無しさん@お腹いっぱい。:03/09/04 16:54
ひどい
zsh % echo a
a
zsh % echo -n
zsh % echo -n a
zsh % sh
$ echo -n a
a$

設定か何かで改行がないときも sh と同じ挙動にならないでしょうか?
>>570
setopt promptcr
572570:03/09/04 20:22
>>571
ありがと
しかしFAQもいいところだな
そもそもなんでこんな挙動がデフォルトなんだ?
それも FAQ の一部だな
>>575
ほんなら>>574の答きぼんぬ。
> プロンプトの前に改行(CR, キャリッジリターン)を表示するオプション PROMPT_CR は、デフォルトで設定されている。
> これは、行が左端の列から始まらない限り、右端のプロンプト($RPROMPT, $RPS1)が適切な位置に表示されず、
> 複数行編集の場合は行位置に混乱をきたす。 PROMPT_CR なしでも、プロンプトに改行を入れることで、強制的に
> 同様のことを起こすこともできる
右プロンプトって便利?
>>578
pwdを表示するには便利
580{%~}[%D{%H:%M}]:03/09/05 18:28
>>578
無いと生きていけないかっていうとそんなことはないが、無いと不便。
hoge=fuga
fuga=hage
のときに
$hogeの値を評価してhageを得る方法を教えてください。
不便って程のこともないだろ。
左プロンプトが長くなりすぎないように、右プロンプト表示させたり
そんな程度だろ。

まあプロンプトも改行できる事を知れば、わざわざ出たり消えたりする
ウザい右プロンプト使うのも馬鹿らしくなるさ。

そんな事言いつつも、コマンドの返り値を表示させてる俺。

PROMPT=$'%{\e[33m%}-=[%{\e[00m%}%[email protected]%m%{\e[33m%}]-[%{\e[00m%}%l%{\e[33m%}]--[%{\e[00m%}%c%{\e[33m%}]---[%{\e[00m%}%T %W%{\e[33m%}]=-%{\e[00m%} \n%{\e[33m%}-{%E% %{\e[00m%} '
RPROMPT=$'%{\e[33m%}}-{%{\e[00m%}%?%{\e[33m%}}-%{\e[00m%}'
なんか、右側だと右に目をやらなくちゃならいないのが鬱陶しくないですか?
慣れの問題なのかな
そんなに画面広いん?
あ、Xの仮想端末使わないでコンソールオンリー?
フレームバッファで、だだっ広く表示してたら確かに目疲れるわな。

わざわざ、右に表示するくらいなら
改行いれて二段で表示しる。
仮想端末をフルスクリーンに広げて使ってるけど
RPROMPT='[%~ %*]' にしてる。

プロンプトを2行にするのも試してみたけど自分にはいまいち合わなかった。
>>585
慣れないうちは、俺もウザいと思った>改行
>>582
setopt print_exit_valueで非0のコマンドの返り値を表示してくれる。

bashの$#はないのか? 現在のシェルでのコマンド数ってやつ。

autoload promptinit
autoload prompt
promptinit
prompt clint
3行のプロンプト
588583:03/09/05 19:36
>>584
いや、X 上のターミナルです。
結構幅を狭くしても気になっちゃうんだよね。
二段も試したけど、いちいち二行占有されるのがうっとうしくて。

俺には向いてないって事なのか、、

>>587
%!
>>589
それはヒストリの数で、bashの\#($#ではなかったです。)はシェルを新たに起
動すると1から始まる
591名無しさん@お腹いっぱい。:03/09/05 21:11
プロンプト2行とか言ってる香具師は、知的障害者か気違い
RPROMPT最強
zsh最高
592名無しさん@お腹いっぱい。:03/09/05 21:14
RPORMPTがないと困ります
というか必需品です。
ほんと最高の機能だと思います
使わない香具師は基地外

>>582,584は人として間違っていると思います
倫理 道義に反しています。
気違いは死ね
593名無しさん@お腹いっぱい。:03/09/05 21:16
>>582なんか調子こいて
プロンプト晒したものの、単なるオナーニプロンプト
自己満足がそんなに好きですか きもいですよ。

玄人は一行だけで 色つけもなし 必要な情報は右プロンプトに表示させるんですよ。
わかりますか?>>582は独り善がりな基地外なんですよ キモイ 死ね
(´-`).。oO(カッコつけて二行にするのはなんでだろう?)
595名無しさん@お腹いっぱい。:03/09/05 21:18
(´-`).。oO(2行ってかっこいいのか?ダセーよキモイし)
596名無しさん@お腹いっぱい。:03/09/05 21:19
(´-`).。oO(>>582はキモヲタ)
なんかウザいのが粘着してるな
zshユーザーってこんなのばっかりなのか?
本当に本が欲しいところ。ハァァ…
>>597
ウザくない奴は書き込まないから、こういうのばかり目立って
zshユーザはこんなのだ。と勘違いしているだけ。
>>597 厨房必死だな
おまえなんか死ね
zsh最強
601名無しさん@お腹いっぱい。:03/09/05 22:05
zshは正直ウザいね
ia64-hp-hpux11.23な環境でzsh4.1.1をなんとかmakeして
make test したんですがcompletionなどいくつかのテストで
ハングアップしてしまいます。

気にしなくても大丈夫ですか。
603名無しさん@お腹いっぱい。:03/09/05 23:34
zsh を Emacs の shell 上で使うには M-x term がベストかなと思っていますが、
term 上で cd してから、C-xC-f すると shell のディレクトリと
buffer のディレクトリが合わなくってしまうので、まだ使っていません。
この辺解決された方いますか?
>>603
子プロセス (term の中の shell) のカレントディレクトリを得るのが難しいから
無理そうな気もするね。
それこそ、 RPROMPT に埋め込んだカレントディレクトリを term が watch しとく、
みたいなんができると解決できるのかな?
605603:03/09/06 02:01
>>604
仰せの通り、カレントディレクトリはプロンプトから得れば良いですが、
term-send-raw() に advice する時にちょっと工夫しないとダメそうです。
この関数は何か入力されるとコールされる関数のようですので、
`Enter'が入力された時だけ default-directory を更新し、
`a'が入力された時などは子プロセスのカレントディレクトリを
検索しないようにしないと使い物にならないみたいです。
>>581
echo ${(P)hoge} ${(P)${hoge}}

zshexpnのParameter Expansion FlagsのPのところに
そのものずばりの例がある。

| P This forces the value of the parameter name to be interpreted as
| a further parameter name, whose value will be used where appro-
| priate. If used with a nested parameter or command substitution,
| the result of that will be taken as a parameter name in the same
| way. For example, if you have `foo=bar' and `bar=baz', the
| strings ${(P)foo}, ${(P)${foo}}, and ${(P)$(echo bar)} will be
| expanded to `baz'.
607581:03/09/06 09:05
>>606
ありがとう。
${(P)$(echo bar)}こんなこともできるんですね。
608名無しさん@お腹いっぱい。:03/09/06 14:15
右プロンプト邪魔臭いよね。俺は端末エミュレータのタイトルに色々
表示させてる。結構便利。
X上ではいいが、普通のコンソールではそれができないからなあ
%20<...<%~%<< とかやって適当に切り詰めてみては
http://www.dreaming.org/~giles/bashprompt/prompts/flex.html
bashのプロンプトだけど、画面の右上にプロンプトが出る。
たしかに、わざわざ右見るのが嫌で
%3~ とかしてるので、PWDを表示する用途ではRPOMPTは必要なしだな。
で、RPOMPTは何に使ってるの?
>>612
pwd
>>612
PWD
>>612
おれはpwdだ。
$と%って、なんか歴史的な意味合いがあるの?
>>612
時刻{ヒストリ# or Error#}ホスト名
時刻   いらね
ヒストリ# いらね
ホスト名  左
pwd    左
プロンプトなー。俺はこんな感じにしてる。
PS1=$'[%[email protected]%m] (%~)\n%# '
2行って初めは違和感あったけど、慣れると使いやすい。
RPS1は初めのころ使ってたけど、出たり消えたりするのが
ちょい欝陶しかった。
二行とかいうと
またウザいのが粘着しだすからやめて。
3行以上って香具師いる?
ホスト名とかはscreenのcaptionに表示させてるYO!
kterm 使ってたときは、プロンプトは % だけの
シンプルなものにして、ホスト名とディレクトリは
status line に表示させたりしてたな。
>>582
設定パクらせていただきますた。
zshで
cd /u/l/b [TAB]

cd /usr/local/bin
と補完する方法はありますか?
あったら教えてエロい人!!
>>625
できるけど、どの設定か忘れた。
オプションは>>554
>>626
compinitか…。
多少マンドクサくても、compinit使わずにやりたいんですけど
無理かなぁ…。

古いマニュアル(compinitがない時代の)を見ると
complate_in_wordを追加して
bindkey "^I" expand-or-complete-prefix
compctl -D -f + -U -Q -K multicomp
とすれば
cd /u/l/bを補完できる と書いてあるんですが
zsh 4.1.1じゃ上手くいかない…。
何かが足りないのか、バージョンによる違いなのか…。
>>627
>>626 は「オプションは」と言っとるだろが。 setopt complete_in_word じゃないの?
629628:03/09/13 00:36
あぁ、後半読んでなかった。確かに compinit 使わないとうまくいかない。逝ってきます。
zsh重すぎ
こんなの常用してる香具師の気がしれんな。

シェル一個起動するの1秒〜3秒かかる。
ログインした後のzsh初回起動は5秒。

tcsh
bash
ksh
なら、呼び出した途端に起動するというのに。
compinitが重い原因なのわかるが
こいつがなきゃロクに補完もできないじゃないか。

compctlは設定まんどくさすぎ。

zsh最低。
Zsh 、良くも悪くも富豪シェル
shellなんてそう頻繁に起動するもんじゃないし、いいじゃないか。
634名無しさん@お腹いっぱい。:03/09/15 20:45
>>633
screen使うようになると、shellバンバン起動します。

あ、それともzshユーザーはshellは一個で我慢してるの?
>>633
>>630 はシェルスクリプトに tcsh やら zsh を使ってるアホ
>>634
まっとうな screen 使いはめったに shell 終了させないのでめったに起動もしません。
>>636
cd や lsにしかshell使わないならそれもいいだろうけど
フォアグラウンドで時間のかかる処理させてると
もう一個シェル欲しくなるのは人情というものではなかろうか。

zsh使い = cd lsだけで満足してる痛い人

という認識でよろしいか?
>>636
確かに1つは上げっぱなしだけど、screen の window をちょくちょく増やした
りしない?
>>638
まっとうなscreen使いはwindow1つです。
アタッチもデタッチもしません。
screen一つです。
まあ、ある意味zsh + screen使いは強者だな。
悪く言えば馬鹿なんだろうけど。
>>635
スクリプトとしてzshを使う場合
重い印象ないんだけどね。
メモリもそんなに喰わないし。

むしろ強力なファイル名生成機能が素晴しく使い易いんだが。
システムの中心を担うスクリプトには使わないけど
ユーティリティとしてのスクリプトにはzsh使うと
簡潔に書ける。

でも、compinitしてるときはわからん。
うちはcompinitしない主義なので。
別にシェルの起動が5秒短くなったところで、仕事の効率は変わらないよ。
>>642
それ、負け惜しみとも泣き言とも取れるんですが。
そんなこと言わずに、改善していきましょうよ。


5秒も待たされるこのイライラ。
俺は嫌でたまりませんね。
廃れゆくcompctlで頑張ってますが
いつ、まともに動かなくなるか。
screen+zsh だったらバックグラウンドで起動すればいいんじゃない?
確かに時間かかるけど、せっかくマルチタスクなんだからじっと待つ
必要はないわけだし。
zshで唯一 絶対的に他のものより優れていえる部分は
ファイル名生成機能とコマンドラインスタックだと思う。
そのためだけに使ってるといってもいい。
(つまり、それほどの魅力がある)

補完なんか、tcshとそれほど変らないし
単語中の補完なんかはtcshの方が親切だったりする。
compinitで補完が完璧になるという手軽さも利点かもしれないが
当然重くなるというリスクもある。

最強 といえば最強なんだろうけど
相対的なバランスでいけば
bashあたりが無難でいいと思う。

ログインシェルはtcsh
スクリプトはbash
とかもいいと思う。
>>644
zsh単体でもバックグラウンドでもいいと思うが
処理内容を表示"させたい"場合はバックグラウンドに回すと
えらい邪魔くさい思いをすることになる。
(プロンプトが表示されたと思ったら処理内容が流れてきて邪魔する)
フォアグランドで動かして、screenで別にWindowにして
そっちで続きの作業する。もしくは別の仮想端末立てて
作業を同時進行する。これもマルチタスクらしい使い方だと思うけど。

ただ、zshユーザーは、大事な処理内容は捨てるか、ファイルに落して
リアルタイムに監視したい場合も、我慢して処理終了後に確認するわけね。

普通にもう一つシェルを起動させればいいじゃない。
待ち時間が我慢できない人は他のシェルを使えばいいだけだし。
648名無しさん@お腹いっぱい。:03/09/15 21:32
そうです!
zshは最強なんだから改善の余地などないのです!!
どんどん機能盛り込んで重くなることこそが目的なのです!!
性能低いビンボー人は死ぬまでkshでも使ってなさい!!
zsh = Unix界のWindows
650名無しさん@お腹いっぱい。:03/09/15 21:42
age
もう夏休み終わったんだけどなー
夏休みが終ったからzshユーザーはいなくなったんですね。
653名無しさん@お腹いっぱい。:03/09/15 21:53
zshは最強だよ
間違いない
最強のシェル
>>641

compinitはふつー.zshrcでやるものなので、
スクリプト(=対話モードで起動されていない)
では実行しないのでは?
>>654
だね。
だからスクリプトとして実行するときは重くないわけだ。
まあ、kshやらbashからしてみりゃデカいが
zshでスクリプトやるのも面白いよ。
熱くなってるとこ悪いんだけど、zsh でも複数起動はできるんだよ。
確かに起動は遅いけど、待ってれば起動するんだよ。
657名無しさん@お腹いっぱい。:03/09/15 22:10
そうです!!
zshユーザーはセッカチな厨房とは違うのです!!
とにかく待つのです!!メモリをいくら消費しようとも気にならない寛大さがあります!!
煽るといろんな意見や本音が聞けて楽しい。
659644:03/09/15 23:33
>>646
いや、screen で Create したまま放っておけばいいのでは、って後半に
書いてるね。誤解を招く表現でスマソ。
>>646
アファなの?
661名無しさん@お腹いっぱい。:03/09/15 23:41
zshユーザー必死
>>661
zsh スレで必死になるぶんにはええやん。
>>662
たしかに

イキロ zshユーザー
$ ps ax |grep zsh
1081 ttyp0 S 0:00 grep zsh
$ time zsh -c 'autoload compinit;compinit;exit'
real 0m0.239s
user 0m0.070s
sys 0m0.030s
$ time zsh -c 'autoload compinit;compinit;exit'
real 0m0.099s
user 0m0.080s
sys 0m0.020s
$ time zsh -c 'autoload compinit;compinit;exit'
real 0m0.100s
user 0m0.060s
sys 0m0.040s
$

試しに計測。0.3秒でした。
zsh + screen + nxt が最強
以前から起動に5秒とかいってるやつって、
100MHzぐらいのマシン使ってるの?
667名無しさん@お腹いっぱい。:03/09/16 11:38
対話的に実行される場合と
スクリプトとして実行される場合の区別もつかない香具師がいるようです
WinホストのVMware内のFreeBSD + screen + zshでwindow増やすと
HDDがスリープしてるときは、5秒ぐらいかかるね。
Cygwinのzshだけど、1秒以内で起動するよ
ちゃんとcompinitしてる?
いいなぁ。
>>667
もしかして、>>664 では compinit が実行されないと言うことですか。
ではどうすればいいのだろう。

time zsh -c '. ~/.zshrc;exit'
time kterm -e zsh -c exit

こんな感じ?

>>668
それは zsh の実行速度とは関係ないような...
screenで最初に3つぐらい起動しとけば、平均一週間くらいもつから起動時間
なんて気にしない。
echo $SECONDS
106345
漏れも screen 内に常時 5匹 zsh 飼ってて、
終了したり新たに立ち上げたりとかは滅多にしないので、
起動に時間掛かっても気にならないなぁ。
俺10匹.でもCtrl-Dでよく死ぬのでちょくちょく起動し直してる
でもあまり気にならない.zshが古いからかな
ファイル名生成機能(というか**/)だけのために zsh 使ってるんですが
他に使えるシェルないですか?
>>674
3.0.5あたりか?だとしたら古過ぎ。
677674:03/09/16 21:18
3.0.8みたいです.古すぎ?
>>677
軽すぎ。
>>677
バッファに^Dが残ってしまうという問題がその頃に修正されたのでは
なかったかな? ttp://www.zsh.org/mla/users/1998/msg00425.html

俺は最初からignoreeof派なのでzshが落ちるということはなかったが
680674:03/09/16 21:43
>>679
それはならないみたいです.
ただ単純に連打しすぎるだけです.

使い慣れてないので,あまりバージョンによる違いがわかりません...
軽いならいっかな.
www.namazu.org/~satoru/diaryを真似して時間を測ってみた。
zsh -c "repeat 1000 ash -c ''"  0.39s user 0.75s system 25% cpu 4.460 total
zsh -c "repeat 1000 bash -c ''"  0.88s user 1.79s system 24% cpu 10.816 total
zsh -c "repeat 1000 tcsh -fc ''"  2.35s user 3.97s system 25% cpu 24.902 total
zsh -c "repeat 1000 zsh -fc ''"  1.03s user 2.66s system 20% cpu 18.400 total
682676=679:03/09/16 22:01
>>680
> ただ単純に連打しすぎるだけです
ignoreeofは?

> 使い慣れてないので,あまりバージョンによる違いがわかりません...
俺も長い間3.0.x系に留まっていたので最近の補完機能はわからん。
かといって当時書いた補完の設定を移植するのも面倒なので最近は
ファイル名生成({01..52}とかw)だけのためにzshを使っている。
4.0.4使ってるが、compinit 利用してても
1GHzマシンで1秒もかからんぞ。
連打するような状況のときは Alt + D しる
685674:03/09/16 22:35
>>682
^Dで終了するのも好きなので,まあたまに間違ってもいいかなあと

>>684
Alt+Dでどうなるの?
やってみてもzsh終了するけど.やり方が違うのか?
3.1.6あたりで、compinitせずに使うのが理想的かも
軽い軽い
ちなみに、compinitが正式採用されたのは3.1.6。
multicomp使いたいので、3.1.5にしようかと思ったら
ラージファイルに対応してなかった。
vmware使ってるとデカいファイル扱うことがあるので
ラージファイル必須。
zshだめぽ
kshが最強です。
pdkshにzshにglobが移植できないものかと奮闘中
すげー難しいです。
ファイル名補完の順番を、カレントディレクトリのものを最優先
にするにはどうすればいいんでしょうか?
何もせずともカレントのものを優先してますが何か?
692690:03/09/20 05:07
そうならないことがあるんですが。
CDPATHを設定しているせいでしょうか?
>>581
eval echo \$$hoge
eval echo $`echo $hoge`
eval $hoge=aaaa
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH"

path=( /bin /usr/bin /usr/local/bin $path )
って結果が違うんだな
>>694 いっしょじゃねーかよ。
zshってutf8に対応してないの?
>>696
端末依存だぞ。
>>696
「対応」ってどのレベルの話を言ってる?
表示くらいしかないでしょ
>>696
ちがうだろ、
export PATH="/bin:/usr/bin" したあと
export PATH="/bin:/usr/bin:$PATH" を数回した$PATHと
path=( /bin /usr/bin $path ) を数回した$PATHを比べてみろ
701700:03/09/24 00:23
スマン s/696/695/
>>700
まったく同じでしたが。
>>700
重複が削除されるかのような書き方だが、
俺も結果は同じだった。
バージョンの違いかな。

$ zsh --version ~
zsh 4.0.7 (i686-pc-linux-gnu)
$ cmp =(zsh -c 'export PATH="/bin:/usr/bin:$PATH";echo $PATH') =(zsh -c 'path=( /bin /usr/bin $path );echo $PATH')
$
>>696
現時点ではbash以外はだめらしい。
705名無しさん@お腹いっぱい。:03/09/24 17:43
for i (hoge) { echo $i }
とかの{}の中で補完って効く?
706700:03/09/24 18:02
スマン、typeset -U path してたからだ。
>>705
なぜかセミコロンを入れたら補間できるようになった。
for i (hoge) { ;echo $i }
% grep '^ls$' .zsh-history| wc -l
8283
% wc -l .zsh-history
36710 .zsh-history
lsとかcdとかをヒストリに入れたくないときは
コマンドの前にスペースを入れたものをaliasしておくと良いよ。
alias cd=' cd'
alias ls=' ls -F --color=auto'
こんな感じ。
そうすればヒストリがcdとかlsまみれになることはない。
重複が嫌なら
typeset -U path PATH
typeset -U fpath
とか。

>>709
関連するsetoptは?
>>710
わすれてた
HIST_IGNORE_SPACE
これで行頭にスペースがあればヒストリに追加されない。

うちは、これくらいHIST関連のつけてる
setopt extended_history APPEND_HISTORY HIST_EXPIRE_DUPS_FIRST HIST_IGNORE_ALL_DUPS HIST_IGNORE_DUPS
setopt HIST_IGNORE_SPACE HIST_NO_STORE HIST_REDUCE_BLANKS HIST_SAVE_NO_DUPS

ヒストリが増えればその分メモリ食うようになるので
できるかぎり削ってくれるようにしてる。
一年ぶりくらいに見たらアホが常駐するスレになってますね。
>>709-711
おまえらの事だよ
>>712=713が一番アフォな書き込みに見えるんだが
715712:03/09/25 03:22
違いますよ。
>>600-700,712-714 あたりのことです。
>>708
sort ~/.zhistory|uniq -c |egrep -v '[ \t]*1'|wc -l
11
hist_ignore_all_dupsにしてあるから、重複が11行でした。なんで0じゃない
かっていうと、数行のコマンドの1行が重複するってのがあるから。

>>711
zshをたくさん立ち上げてるなら、share_historyにした方がいいよ。

オプションの説明はここを見ました。
ttp://www.ayu.ics.keio.ac.jp/members/mukai/tips/zshoption.html
cygwinスレでも聞いたんですが反応が無かったのでこちらでも
伺わせて下さい.
     
cygwin rxvtでzshを使ってるんだけど, exitとかせずに右上の×ボタンで
終了するとそのディレクトリにzsh.exe.stackdumpができるのは
私だけですか?
>>717
> cygwinスレでも聞いたんですが反応が無かったのでこちらでも
> 伺わせて下さい.

えらそう。
>>718
(´,_ゝ`)プッ
>>717
なんのスタックかわからないけど
次回のためにスタック保存してるんじゃないの?
憶測でもうしわけないけど。

#ディレクトリスタックかコマンドラインスタックくらいしかおもいつかない
>>720
Cygwin の *.stackdump ってのは core みたいなもんかと。

zsh のバージョンは何?
coreなのか。
ナルホド
zshのバージョンは4.0.6ですが, 前からこの症状は再現していたような気がします.
偉そうでスミマセン…
偉そうでごめんなさい って
「美しすぎてごめんなさい」
「天才すぎてごめんなさい」
みたいな
ひがみっぽくてごめんなさい
迷惑かけて、ありがとう
3べん回ってワンと鳴く
>>724
それなら「偉くて/偉すぎてごめんなさい」じゃねーか?
美しそうでスミマセン…
730名無しさん@お腹いっぱい。:03/10/11 16:14
おはようございます

2003/5月号
zshマスター 最終回
 「compsysを利用した補完機能の設定」

どうでした?
呼んだ人感想キボン
viモードの場合、コマンドラインスタックってどーやるの?
適当なキーに割り当てなされ
733名無しさん@お腹いっぱい。:03/10/13 05:32
terminfo ファイルをホームの中に入れている場合、~/.zshrc の中で、export
TERMINFO=$HOME/.terminfo みたいなことをやっても、zsh には反映されません
よね。こういう場合どのように対処するのが zsh 流なのでしょうか?
TERM=$TERM というのは無しとします。
質問の意味がよくわからん。なにが反映されないのか
>>734
試しに、TERM=noexist zsh で zsh を起動させると、カーソルの移動もままな
りませんよね。その後 TERM=xterm などとしてやることによって、カーソルの
移動が出来るようになります。

私の場合 root 権限を持たなにので、ホームディレクトリに terminfo をイン
ストールしているのです。で、.zshrc で、$TERMINFO を設定してやっても、既
に zsh が起動しちゃっているので、上と同じようなことになります。理解して
いただけたでしょうか。
ものすごく偉そうな教えて君ハケーン
zsh 使うならまず態度から、と考えているのだろう
これをえらそうだと感じるのは、よほど卑屈な思いをしているのか
>>736
そうかな?
>>737 == >>736 ?
というか普通に使えてるぞ
>>735
.zshenvに書いたらできたぞ。
export TERMCAP=$HOME/.termcap
export TERMINFO=$HOME/.terminfo
TERM=$TERM
>>740
日本語の修行がたりませんね。
>>741
>>733
> TERM=$TERM というのは無しとします。
ということで、
TERM=$TERM
とするのがzsh流です。
>>744
ださっ。
>>741
> .zshenvに書いたらできたぞ。

.zshenv に書かなくてもできます。というか、.zshrc に書くべきでは?
>>744
わろた
>>38

> setopt:133: no such option: PRINT_CHEESE_BIT
うちではPRINT_EIGHT_BITで成功した。ちなみに4.0.4。
今頃ネタにマジレスとは…
750名無しさん@お腹いっぱい。:03/10/18 14:32
zshを使おうとしてみたのですが、tabでカーソルが進まないようにするにはどうしたら良いでしょう?

bashではこんなふうにならないんですが。
ハァ?
752750:03/10/18 18:04
いや、マジで。
シェル上だってのに、テキストみたいにタブでカーソルが飛んでいく…

環境
・RedHat Linux 9
・RPMでインストール。入れたのは↓
http://rpmfind.rediris.es/rpm2html/pld-linux-ra-i386/zsh-4.0.6-3.i386.html
%wh[tab]
#whichを期待

%wh□
ありゃタブだめか

%whi □
ってなるってこと?
ネタか。
756750:03/10/18 19:29
>>754
うい。そんな感じ。
%wh[tab]

%wh□ich

となって、ここでEnter叩くとちゃんとwhichは実行されます。
補完もされますが、見にくくてしょうがない。
確認とれました
ネタですね
>>750
~/.zshrc か何かを弄れ。
(´-`).。oO(「何か」ってなんだろう?)















(((゚Д゚;)))ガクガクブルブル
760名無しさん@お腹いっぱい。:03/10/19 01:18
%[tab]

%□

ってことじゃないの?
これはうちでもなる
setopt zle
じゃだめ?
.zshrcにはzshの挙動に関する設定を記述し,
.zloginにaliasやpathなどの zshに直接関係ない設定を記述したのですが,
screenを使うと.zloginを読み込んでくれません
.zshrcには自分の使うマシンで共通にしたいと目論んでいたので
aliasとかpathの設定は.zloginに記述したくなかったわけですが,
.zloginではなく他の…例えば.zprofileに記述すべきですか?
763762:03/10/19 16:19
あ,もしや .zshrcに source 〜/.zlogin を明示的に記述する必要あり?
これならscreenを使っても問題ないわけですけど…
>>762
まずは man zsh して各ドットファイルの責務を確認しる。話しはそれからだ。
コマンドはまず /etc/zshenv を読みます; これは上書きすることはできませ
ん。次のふるまいは RCS と GLOBAL_RCS オプションによって変わります; 前
者は全てのスタートアップファイルに作用し, 後者は /etc ディレクトリの中
のものにだけ作用します。もしいずれかのオプションがどこかの地点ではずさ
れた場合,後に続くスタートアップファイルでそのオプションに対応するもの
は全て読まれません。$ZDOTDIR ディレクトリにあるファイルで GLOBAL_RCS
を再び可能にすることもできます。デフォルトでは RCS と GLOBAL_RCS はど
ちらもセットされています。

その後, $ZDOTDIR/.zshenv を読みます。次に, もしシェルがログインシェル
ならば, /etc/zprofile と $ZDOTDIR/.zprofile をこの順に読みます。さらに,
もしシェルが対話的ならば, /etc/zshrc と $ZDOTDIR/.zshrc をこの順に読み
ます。最後に, シェルがログインシェルならば, /etc/zlogin と
$ZDOTDIR/.zlogin をこの順に読みます。
766762:03/10/19 17:51
>>765 はman zshの一部を訳したものですよね
読み込む順序はUUで読んでいたので>>762のようなことをしようとしたわけです.
screenやXからターミナルを開くときもログインシェルとして扱ってくれるものと
思っていたのですが,どうやら挙動が若干異なるようですね
>>763 を記述しなかった場合でも,コンソールやリモートからログインしたときは
ちゃんと.zloginを読んでくれていたので安心していたのですが…

ログインシェルに関する挙動をもう少し調べてから出直してきます.
ありがとうございました
つい最近てめえでmakeしたscreen使うと
勝手にzlogin読みこんでムカついてた
一般ユーザのzloginにはstartxが書いてあるから。

Gentooのportageのscreenが4.0.1になってたので
そっち入れなおした。
そしたらzloginよまなくなった。
ウマー
>>762
screenが起動するzshはログインシェルではないのでzloginは読ま
れない。screenをzshから起動したなら、環境変数は既に設定され
ているはずなので、わざわざ設定する必要はない。aliasはzshrcに
書くべき。
>>766
> 読み込む順序はUUで読んでいたので>>762のようなことをしようとしたわけです.

UU ってなあに?
>>769
unix user?
>>770
意味がわからない…。
uuencode
>>771
雑誌だろ
>>773
雑誌買ったことないんでしらんかった。すまそ。
連載、単項盆になるのかしらん。
zshネタだけで本作っても、あまり売れそうにない悪寒
>>776
俺はほすぃぞ。
778名無しさん@お腹いっぱい。:03/10/22 15:17
とりあえず一冊は売れる予定です
一冊のために本作る会社あるなら
是非見てみたい。
779 ◆Ir5kue8F32 :03/10/22 15:27
私も買うかも。
2冊 これじゃあ作っても大赤字だYO!
おいおまえら、ビックサイトロンにて売ったら買ってくれますか?
たのみこむ?
783kjhjk:03/10/22 23:20
モロトミ ヤスミツ (ヨコチン大使)

体育館で自らヨコチンを曝け出し、「汚い」「触るな」と虐められ泣かされていた。

「先生。○○君がヨコチン大使って言うねん」と朝の会で皆の前で泣きじゃくっていた。
彼はまるで銀幕スターだった。銀シャリが食べたい。
~/.zshenv ってスクリプトとして zsh を使うときも呼ばれるんだっけ?
>>784
だな。 man zsh の STARTUP/SHUTDOWN を良く嫁。
>>785
んー、zsh script 書くときって、
#!/usr/local/bin/zsh -f
しといたほうがいいんでしょうか?
aho & disown とか
nohup aho & とかやらなくても、
zsh を終了して aho が終了しない方法って、どうするんでしたっけ?
何かの zsh parameter を設定してできた気がするんですが。
setopt no_hup no_check_jobs
これであーだこーだ言われずにjob残したまま
zsh終了できまつ
789786:03/10/26 19:02
おー、ありがとうご座意間酢丸
おそらく、zsh だと思うのですが、

% f=(/bin/*(:t))
% ${^f}

はどういう意味ですか?
791名無しさん@お腹いっぱい。:03/11/04 06:36
zshをログインシェルにして
X立ててない状態でviやEmacsでファイルを開くと画面がおかしくなります。
文字化けじゃなく画面全体がおかしくなるんです。
これを直すにはどうしたら良いでしょう。

FreeBSD 4.9-RELEASE
portsよりzsh-develをインストール
>>791
擦れ違い
793名無しさん@お腹いっぱい。:03/11/09 15:29
お前らもう萌え終わったのかYo!
そんな俺にssh*でホスト名を補完する際に
~/.ssh/known_hosts からホスト名を参照する方法を教えてください
>>793
つーかうちの zsh タンは特に何も設定せずに最初から補完してくれてるが?
795not 793:03/11/10 01:48
>>794
ウチのzshはどーやら /etc/hosts から補完してくれてるっぽいんだが、
何か特殊な設定した?
>>793 >>795
ああ、ごめん!何も設定してないことなかった。こんなん設定してた。
正規表現とか適当なので変なとこあったら適当にいじってちょ。

rehash_cache_hosts() {
_cache_hosts=(`awk '{ sub(/[^A-Za-z0-9.:-].*/, ""); print }' ~/.ssh/known_hosts* | sort | uniq`)
}
rehash_cache_hosts
>>794 はネタです
>>795
_cache_hosts=(`perl -ne 'if (/^([a-zA-Z0-9.-]+)/) { print "$1\n";}' ~/.ssh/known_hosts`)
あ、IPv6 リンクローカルアドレスが補完できなかったんで、正規表現のとこはさらにこうしてた。
_cache_hosts=(`awk '{ sub(/[^A-Za-z0-9.:%-].*/, ""); print }' ~/.ssh/known_hosts* | sort | uniq`)

>>797
すまんです。しかもかぶってるし・・・
_cache_hosts というのがホスト名補完に関わる変数になるのですね
これらのあらかじめ宣言されている変数を理解すれば,
なんとか自由に補完を楽しめるようになるかなぁ
/usr/share/zsh/*/functions/Completion/**/_hosts に定義されている
zshを理解するのも一苦労だな…
802名無しさん@お腹いっぱい。:03/11/11 20:47
だれか、man zsh* を日本語に訳してくれ
あれだけの英文を読みとおすのは、つらい
ユーザー会とかないの?
hoge1の中のファイルを入力したいとき
%cat hog<TAB>
Completing files
hoge0/ hoge1/ hoge2/
↑ここで2回補完すると↓こうなります。
%cat hoge1/
Completing files
hoge0/ hoge1/ hoge2/
ここでもう1回補完するとhoge2になってしまします。この状態で
hoge1の中のファイルを補完するにはどうすればいいですか? 今ま
では一文字入力してバックスペースで消してから、補完していたの
ですが、いい方法ありませんか?
>>804
別のキーに complete 系のコマンドを割り当てておいて、hoge1/ になった
ところでそっちのキーで補完するとか。

自分は、setopt NO_AUTOMENU とした上で C-o に menu-expand-or-complete を
割り当て、メニューコンプリートは明示的にするようにしているけどね。
zsh のデフォルトの動作は性に合わなかった。
>>804
/を押す。
いや、BSが要らなくなるだけだが。
おまえら、素人、通は C-/
808804:03/11/12 14:20
>>805>>806
ありがとう
>>807
ワラタ。戻りすぎだろ
>>806
804じゃありませんが
setopt autoremoveslash を使っているという前提の技ですよね?
811名無しさん@お腹いっぱい。:03/11/18 07:45
ZSHの本を執筆中らしい。

Yes, Jerry Peek, Oliver and I are collaborating on a book to be
published by Apress sometime, I imagine, in the first half of next
year. We may be asking for informal reviewers at some point, though the text probably needs drawing together a bit before then.

I think Apress are planning to announce its official forthcomingness in December.

アナウンスされるとしたらこのページか?
http://www.apress.com/book/forthcoming.html
kterm+zshで日本語が化けます。
% echo 死ね とか入れると、
「ね」が消えて「死」しか出てきません。
tcshだときちんと表示できます。オラのdotfileが間違ってるんでしょうか?
>>812
俺はならねーぞ。なんかおまえのやつのほうが
命令に忠実で羨ましいぞ。
814812:03/11/20 10:15
自己解決。

.zshrcのbindkey -m をコメントアウトしたら桶でした。

他人の腐った.zshrcを参考にしたのがいけなかったのか?
>>814
> .zshrcのbindkey -m をコメントアウトしたら桶でした。

(゚Д゚)ハァ?
screen のスレを読んでいて、以前 >>486 を書いたものの結局使わなかったなと思いつつ、
よく考えたら screen 内で動いている zsh を前提にすれば話が簡単だということに気付いた。
こんな感じでどうでしょう。

#
# $ZDOTDIR/.zsh/dabbrev
#
HARDCOPYFILE=$HOME/tmp/screen-hardcopy
touch $HARDCOPYFILE

dabbrev-complete () {
local reply lines=100

# screen -X eval "hardcopy -h $HARDCOPYFILE" # scrollback buffer の内容も含む場合
screen -X eval "hardcopy $HARDCOPYFILE"
reply=($(sed '/^$/d' $HARDCOPYFILE | sed '$ d' | tail -$lines))
compadd - "${reply[@]%[*/[email protected]|]}"
}

zle -C dabbrev-complete menu-complete dabbrev-complete
bindkey '^[/' dabbrev-complete
bindkey '^[^_' reverse-menu-complete

あとは .zshrc に例えばこんな風に書いておけばいいか。
if [[ -n $WINDOW ]]; then
source $ZDOTDIR/.zsh/dabbrev
fi

scrollback buffer の内容も利用する場合は、適当に行数を増やした方がいいでしょうね
817812:03/11/20 23:42
>>815
オラはtcshからの移行なんで、googleでたまたま見つけた、
ttp://www.is.akita-u.ac.jp/~sig/dots/dot-files.htmlから他人の.zshrcをパクった訳よ
そしたら、bindkey -mとか書いてる行があって、
そいつを消さなかったオラが馬鹿だっただけです。


まだわかってないみたいです
819名無しさん@お腹いっぱい。:03/11/21 00:10
設定ファイル群
http://aquahill.net/zsh.htm

私はこれらを自分用に修正して使ってる。
けっこう便利よ。

最近ネタもなくすたれぎみなのでage
820812:03/11/21 00:49
>>818
>>819
ちょっとだけ理解したぞ。
オラは0.1oぐらいでも前に進もうと思う。

-真面目な感想-
シェルを馬鹿にしてた。悔しいけど。

>>816
taiyaki.org の小松さんが、似たようなものを書いてた気がする。
>>821
>>486>>474 を受けて書いたもので、小松さんのが元になってます。
ただ script を使うので、ログが膨れ上がりやすいとか使い勝手がいまいち
なので常用することはなかったのです。

>>816 のままでは、余計な句読点や括弧類がつくことが多いので、手元のでは
もう少しいじってます。多分、使うことがあっても一日に一回あるかないかだと
思いますが、使いたいときに使えるのはいいものです。
823821:03/11/22 03:15
>>822
あー、ちゃんと追ってなかったです。ごめん。
*(@)でシンボリックリンクを生成できるけど、リンク先が存在しな
いシンボリックリンクだけを生成することはできますか?
出きます。
826824:03/11/23 16:27
>>825
ぜひやり方を教えてください。
>>826
500 円
828Matanuki:03/11/23 16:33
うそにきまってるだろ
リンクはったあとにリンク先消すんでない?
824の使っている日本語が、言いたいだろうことと全然違うので、
どんな答があっても不思議じゃないと思うが。
前提が偽ならどんな命題も真となるのは論理学の教えるところ。

「*(@)でシンボリックリンクを生成できる」って、字義通りに解釈したら
成り立ってないだろ。824はもうちょっと日本語作文を練習すれ。
慣れない言語で意図通りの文を作るのはそれなりに大変かも知れないが。
*(@^-./)
で出来るかと思ったらシンボリック先がsocketsとかの時にダメだったので
*(@^-./=p%)

短くできないかと思ってl[-|+]ctで*(-l0)も試したけど残念ながら無理でした。
832824:03/11/24 12:44
>>831
素晴しい。ありがとうございました。
833名無しさん@お腹いっぱい。:03/12/03 15:08
neta naipo? age
新世代のスーパーハカーの皆さんはやはり zsh 何でしょうか?
スーパーハカーはshell程度でピーピー騒ぎません
「やっぱりハカーはzshじゃなきゃね♪」とか言っちゃう香具師は
モドキですモドキ
最近のzshはsegvしなくなりましたか?
3.1.6使ってますが、segvしませんよ
4.1.1使ってますが、segvしませんよ
>>837
それは骨董品といいます。
>>839
ラージファイル対応だし
最近のより軽いので
4系はやめてこっちに以降しますた。
841名無しさん@お腹いっぱい。:03/12/10 13:58
screen や sudo といったコマンドの引数はalias展開(?)させる
といったことはできますか。

たとえば、
alias mutt='env LANG=ja mutt'

% screen mutt
とかやりたい。

もしくはなんかプレフィックスおくとalias展開してくれたりはしない?
% screen #mutt
みたいな感じで。
842ネタ?:03/12/10 14:20
>>841
できます。
sample の .zshrc くらいよんでくれ。
844841:03/12/10 20:38
>>842-843
global aliasってやつですか?
でもこれだとどこでも展開されちゃうじゃないですか。
それってちょっとこわくないですか?
sudo と screen の後だけやりたいです。
845名無しさん@お腹いっぱい。:03/12/11 00:52
ウザィ
以下のサイトでzsh入門ぽいものがまとめられています。
ttp://www.yo.rim.or.jp/%7emono93/mobile/enter.cgi?LinuxZaurus%a4%ce%a5%a2%a5%d7%a5%ea%a5%b1%a1%bc%a5%b7%a5%e7%a5%f3%2f%a5%c4%a1%bc%a5%eb%b4%d8%cf%a2%2fzsh
このスレのzsh猛者な皆さん、よければ加筆していただけるとありがたいです...
こっちで十分おなかいっぱいでつ。
ttp://hiki.ex-machina.jp/zsh/
>>844
global alias を使わなくてもできる

setopt auto_pushd pushd_ignore_dups

export DIRSTACKSIZE=15

ch(){ builtin cd $* }

chpwd(){ compctl -g "`dirs`" + -/ ch }

% ch [TAB]

ウマー(゚д゚)

aliasのgdに比べると履歴順じゃないのと
~/ が /home/???? になるのが致命的かなぁ。
補完がぐりぐり動くヤシ(例のこれ↓)

setopt auto_menu
autoload -U compinit; compinit
zstyle ':completion:*:default' menu select=1

と併せて使ってると中々イイ感じ。
どうせ compinit を使うのなら
cd -[TAB]
の使い勝手の方がいいような。履歴の使い廻しがあまり利かないのが難点だけど。
>>849
> aliasのgdに比べると履歴順じゃないのと

なに?
>850
ch -[TAB] _| ̄|○ …シランカッタ
サンクスコ

>851
zsh gd でググれ。
compinit あれば要らんけど。

compctlてとっくにobsoleteなのね…見てたWebが古過ぎますた。
履歴の先へ潜ったり少しだけ名前の違うディレクトリにいきたいときくらいか。

入門スレ1から出なおしてきまつ。(;´Д`)
>>852
> zsh gd でググれ。

ハァ?個人的な設定だから聞いとるんだろうが、このバカチンが。
少くとも、manual にはのっとらんだろうが、このばかちょんが。
zsh 使うやつは屑が多いな。
レスのやり取りでわかる。
すんません。
特定のキー動作にシェルスクリプトを割り当てたりとかできますか?
"C-c C-c"とかに割り当てるとかなんですが...
よくわからんがシェルスクリプトに限るのか? 例えば Esc-C-o で ls を実行したければ
bindkey -s '^[^o' 'ls\n'
などとすればいいけど
857855:03/12/20 20:22
>>856
いや、教えてくださった方法で問題ないです。
ありがとうございました。助かりました。
cdで補完対象をdirectoryだけにしようと思って、
compctl -g *(/) cd
したところ、.で始まるdirectoryが補完できなくなっちゃいました。
.から始まるものも含めてすべてのdirectoryをcdの補完対象にするには
どうすればいいでしょう?
>>858

compctl じゃなくて compsys 使ったらどうでしょ。
autoload -U compinit compinit だけで良いはず。

自分とこははこれで .から始まるディレクトリも
補完候補に出ます。
もちろん、ディレクトリ以外は候補に出ません。
メモリどか食いするので嫌
compctl -g '*(/) .*(/)' cd
今まで馬鹿馬鹿しくて誰も答えなかったのか(w
zsh は簡単なスペルチェックとかもしてくれるんですね。
860は資源の有効活用という言葉を知らないんだろうきっと。
貧乏性なのかな
>>864
zshの魅力は補完だけじゃないのよ
globのためだけに使ってる。
補完はtcsh程度にできればいいや → compsys巨大すぎ 必要ないのも混ってる
し無駄 → じゃあcompctlで → 設定まんどくせ

tcshは設定楽でバリバリ補完できるのに、zshはまんどくさい 楽しようとする
とバカみたいにメモリ食う 起動遅い screenを愛用してシェルを湯水のように
使う身としては、それはイタイ。
tcshはglobが貧弱。 そもそもc shellが気にいらない。

kshの補完みたく、ファイルの拡張子みないでテキトーに補完にしてくれるだ
けでも十分。
むしろ勝手に判断して、必要なものが補完されなかったり
不要な物が補完されたりするのがウザい。
そのくせメモリ食い。バカじゃないかと思う。
誰がそんなもん使うか。
>>864
資源の無駄使いが好きな香具師はWindowsでも使えばよろし
compctlの定義と自作関数の定義でzshrcが埋めつくされて
メモリもバカ食い 起動も激遅になったら
compsysのありがたみがわかる。

ただ、そうでもなければ
compsysみたいな重いものつかわなくても幸せになれる。
zsh は ウ ン コ !
モード行っていうの?コマンドを入力するところ。そこに
日本語を何文字か入力してからバックスペースで削除する
と1文字ずつちゃんと消せなかったり、プロンプトまで消
されちゃったりして困るんだけどこれって解決法あります
か?
パッチを書く
>>871
おお。さんきゅー。パッチあててみます。
>>872
うまくいきました。
wiki に書いておいたほうがいいかな?
874 ◆zshibaTAok :04/01/17 21:12
1000get
>>811
> I think Apress are planning to announce its official forthcomingness in December.
いまは1月ですが?
偉い人教えて。

対話式のシェルで動作させているとき、標準エラー出力だけを常に色つき(例えば赤)で
表示させることって、zsh のようなシェルで出来るの?

ぜひうちの zsh でやってみたいんだが。
>>876
フィルタ書いて常に使うとか。
>>876
エラーが発生したら色眼鏡をかけるとか。
モニタに赤セロハン貼っとけ。
>>877
その、「フィルタ書いて常に使う」っていうのが、
どのように設定すればいいのかイメージできないんですが。

>>879
それじゃ全部エラー出力に見えます。
簡単にやるとしたらこんな感じかな。ただ、端末周りを扱うプログラムで支障が
あるかもね。

% cat ./tored
tored () {
local line
while read line; do
print "\e[31;1m$line\e[0m"
done
}
% source ./tored
% perl -e 'printf STDERR "this is stderr.\n"'
this is stderr.
% perl -e 'printf STDERR "this is stderr.\n"' | tored
this is stderr.
% perl -e 'printf STDERR "this is stderr.\n"' 2>&1 | tored
this is stderr.
% exec 2> >(tored)
% perl -e 'printf STDERR "this is stderr.\n"'
this is stderr.

# 色は省略しています
876の宿題が…
876は納得したのか
>>883
いや、出来てないです。
すみません、遅くなって。

まだ自分自身の試行錯誤が足りないようです。
881に書いてあるやん
>>885
その >>881 を自分でやってみるという「試行錯誤が足りない」ということ。
887名無しさん@お腹いっぱい。:04/01/31 23:35
stdoutの最後に改行がついてないとき、最後の行が消えます。


% echo -n 'foo'
%

みたいな。

どうすればいいでしょうか?


zshの拡張ファイル名生成機能を使って
ある文字列を含まない名前を選びだすことって出来ますかね?

カレントディレクトリ以下にある物を列挙する場合
echo *
hoge huga foo bar

その中からhoge hugaだけを除きたい場合(zsh 3.1.xで使えてた方法)
echo *^(hoge|huga)

なぜか4.x.xではこの方法が使えなくなってしまって
こうしても、hoge hugaは除外されずに表示されてしまいます。
~
>>890では駄目なのだよ
かといってブラケットで囲むのもだめ
正規表現もだめ

なぜか文字列の扱いがダメになってるのでどうしても必要なら
perl使え
*~*hoge*~*fuga*
>>891
info zsh
>>892
サンクスコ

逐一入力するのがマンドクサそうなので
スクリプト化して使うことにしまつ
echo ^*(hoge|huga) じゃないのか
あるいは
echo *~(hoge|huga)
>>895
> echo ^*(hoge|huga) じゃないのか

また、新しい、shell を実装してしまった人が出てきたようですね。
option の設定によって挙動が違うんじゃないのか
拡張ファイル名生成機能
extended glob

と明記されてるから大丈夫
ksh互換モードにしてたらシラネ。
パターンに影響及ぼしそうなオプションは他にないからね。
> echo ^*(hoge|huga)
これは冗長だった。
echo ^(hoge|huga) でよかった
>>900は文字がよめない
もしくは3文字タイプしたら1つ前のレスの内容を忘れる
なんだ、この噛み合ってないやりとりは(w
$ setopt extended_glob
$ echo ^h*
bar foo
$ unsetopt extended_glob
$ echo ^h*
zsh: no matches found: ^h*
<0-5> みたいなグロブって、桁数は関係ないのね。
ちょっとはまった。
そういうこともあって、もっぱら{m..n}のファイル生成を使っている
ごめん、桁数は関係ないってどういう意味?
% touch 1 2 3 4 12 23 45 67 123 345 ~/s
% ls <0-5> ~/s
1 2 3 4
% ls <0-15> ~/s
1 12 2 3 4
% ls <0-100> ~/s
1 12 2 23 3 4 45 67
これで期待通りなんだけど。
あ、後ろの ~/s は RPROMPT なので無視してください。
% touch 001 2 003 4 05
% ls <001-005> # 001 と 003 だけ出てほしい
001 003 05 2 4

こんな感じ
>>908
ありが
その例では
% ls 00<0-5>
でいいけどね。

3桁の数字にマッチさせるのはこうかなー
% ls <0-9><0-9><0-9>
こうでもできた
% ls <-><-><->
> ls 00<0-5>
> ls <0-9><0-9><0-9>
> <-><-><->
どれも同じ話だが、既出のように 0004 なんかも含まれてしまうし、
一番下は何桁でもマッチしてしまう。

数字3桁の globbing は [0-9][0-9][0-9] とでもするしかないのでは。
> 一番下は
真中もだった
912909:04/02/05 05:30
全然理解してないことがばればれですた。

<0-9>は0から9までにマッチするが
前に0が1個以上ついていた場合それも含める
例えば 1 01 001 0001

<0-9><0-9><0-9>はそれが3個なので
3000040001とかにもマッチしてしまう

<-><-><->は3桁以上のすべての数字にマッチ

であってるよね?
globに、migemo使えたら便利な事もあるかも。

% echo path/to/%M|nihongo|.mp3
みたいな感じで。
# 表記法に関するツッコミは無しでたのむ。
それで何とechoされることを期待してるの?
path/to/日本語.mp3
じゃない?
916914:04/02/05 22:41
あ、globだから、そこにあるファイル名しだいか。
場合によっては
path/to/にほんご.mp3 path/to/ニホンゴ.mp3 path/to/日本語.mp3
ね。重そう。
>>916
そういう関数書いて
内部でperl使って上手い事ごまかせばいけるかも

migemoを使って素直にできるかどうかはわからんわ
> globに、migemo使えたら便利な事もあるかも。
jetさんのTODOにそれっぽいのはあるね。
ttp://www.gyve.org/~jet/kogiku/
919名無しさん@お腹いっぱい。:04/02/08 22:48
誰かGentoo Linuxのportage用の補完コマンド書いてくれませんか?
自分でやろうとしてもわからないんで。
希望としては
emerge net-www/mozilla
さらには
emerge net-www/mozilla/mozilla-1.4.1.ebuild
のように カテゴリ/名前(/バージョン) みたいに出来ると良いです。
>>918
Gentooスレに行け

/usr/share/zsh/site-functions/_portage
ついでにこれも読め
>>921
ガイスツ
http://zope.jp/misc/zopeweekend3/
> 近々レポート、写真などを公開する予定です
まだー?
誤爆すまん
>>924


        ○
        ノ|)  
   _| ̄|○ <し







        ○ <ダメ人間
        ノ|)  
   _| ̄|○ <し
UNIX USER
あんまり買う気はしない雑誌だけど、zshの連載があったから気になる。

なんで UNIX USER のDVDは「特集」しか収録してないんじゃ?
っと、こんなところで言うことでもないか。
ls -1 |egrep `echo $1 |migemo -t egrep /usr/share/migemo/migemo-dict`

こういうことすると $1 のローマ字に対応する file のリストを migemo で抽出できるんですが、
これをうまく使えば zsh で migemo 補完が可能になると思います。
が、zsh の補完のメカニズムがさっぱりわかりません。

_w3m などいくつか参考にしてみましたが、どうも全体像が理解できませんでした。
僕もこれからいろいろ調べるつもりですが、
どなたか詳しい方、ささっと枠組でも作って下さったりしないでしょうか。
死ね
929927:04/02/26 02:11
いやあ、面白いアイデアだと思ったんで、
自分で実装できなくても誰かやる人いないかなと思ったんで。
くれくれ君に見えたんならすみません。
てゆーか何に使いたいの?
% ls -1 |egrep `echo $1 |migemo -t egrep /usr/share/migemo/migemo-dict`
使用法: grep [オプション]‥‥ 文字列パターン [ファイル]‥‥
詳しくは`grep --help'を実行してください。
%
となるが
いや、ファイル名の補完に使いたいのだろう、それは
932927:04/02/26 15:35
>>930
$1 の所に何か文字を入れなきゃ駄目です。
例えば

% ls -1
あいうえお.sh
愛人.txt
aiko.dic
aho.max
baka.mix

というディレクトリでは、ai という文字で補完すると

% ls -1 |egrep `echo ai |migemo -t egrep /usr/share/migemo/migemo-dict`
あいうえお.sh
愛人.txt
aiko.dic

こういう結果が出ます。この出力を補完のリストに使えないかということです。

% cat ai(ここで C-i すると)

% cat ai
あいうえお.sh 愛人.txt aiko.dic

こんな風に補完の候補が出るような。

僕個人は日本語ファイル名はほとんど付けないんですが、
単にできたら面白いなと思っただけです。
あぁ、migemoつきemacsのdiredモードみたいに使いたいわけね
927製の
zmodload migemo
待ちsage
935927:04/02/28 01:00
できなくはなさそうですが、
C-i するたびに補完のリストを動的に作り直す必要があるので、
単純に compadd では駄目みたいです。
compadd 以外のやり方を知らないので、つまってます。

あと補完の候補が複数ある時、

% cat ai
あいうえお.sh 愛人.txt aiko.dic

こういう出力を期待してましたが、

% cat ai
\M-5\M-k\M-N\M-A\M-7\M-W\M-;.sh \M-5\M-k\M-N\M-A\M-7\M-W\M-;.txt aiko.dic

こんな風に出てしまう。これは zsh を直さないと無理っぽいです。

>>933
emacs の shell とか eshell とかでならもっと作りやすいかも知れません。
でも自分は shell-mode 使わないからなあ。
後者は setopt printeightbit という話じゃないの
937927:04/02/28 02:41
おー、すばらしい。
938927:04/02/28 02:42
おー、すばらしい。ありがとう。
うわさの zsh 本はどうなったの?
940名無しさん@お腹いっぱい。:04/03/02 03:35
~/hoge/foo.log
~/hoge/foo.error
~/hoge/foo.today
~/hoge/foo.yesterday

というファイルを元に動く bar というコマンドがあって、
$ bar log
$ bar error
$ bar today
$ bar yesterday

という風に foo を無くした引数を指定します。この引数を補完させたいのですが
何か良い手はありませんでしょうか?

zshの補完機能は便利だけどややこしいですね。
至極単純にやるとすれば、こんな感じ。

_bar () {
compadd ~/hoge/foo.*(:t:e)
}
compdef _bar bar
942940:04/03/04 04:47
なるほど。ありがとう。

精進します。
compaddってググっても殆ど情報ないんだが
マイナーなのか?
というかzsh自体、評判の割に日本語の情報が全然ないと思う。
自分が書ければ書くんだけど、compaddとか分からんからなぁ
UnixUser の連載の記事は、compsys を見通すには、なかなかまとまっていて
丁度良かった。
a
http://pc.2ch.net/test/read.cgi/unix/1075033822/548
> これ以上はzshスレで。

えーと、やりたいこと書きますね。=() は知っていますけど、この場合は使え
ませんよね。

#! /usr/local/bin/zsh -f

cd /service/smtpd/log/main
TODAY=`date -d yesterday +%Y-%m-%d`
WORK=(make-temp-file "/tmp/work")
grep -h SBL *.s current | tai64nlocal | grep $TODAY > $WORK
echo >> $WORK
grep -h SBL *.s current | tai64nlocal | grep $TODAY | gawk '{ print $4 }' | sort -nu | dnsfilter >> $WORK
for i in `grep -h SBL *.s current | tai64nlocal | grep $TODAY | gawk '{ print $4 }' | sort -nu`; do
echo >> $WORK
echo % whois $i >> $WORK
whois $i >> $WORK
done

mailsubj "[rblsmtpd] $TODAY" [email protected] < $WORK
rm -f $WORK
948名無しさん@お腹いっぱい。:04/03/19 22:50
ついでに、4.2.0 age
要は一時ファイルくらいを作ってほしいということなのか。
zsh は関係ないな
emacs の with-temp-buffer とか便利だよね。
まあ shell では自分でウニクなtmpfile 作る function 作ればいいんじゃないの。
>>947
> えーと、やりたいこと書きますね。=() は知っていますけど、この場合は使え
> ませんよね。

? 素直に使えるよ?

> WORK=(make-temp-file "/tmp/work")
ちゃんと理解しているならこうはしないと思うけど。

#!/usr/local/bin/zsh -f
WORK==(true)
echo WORK=$WORK
echo hoge >> $WORK
echo moge >> $WORK
echo ---
cat $WORK
echo ---
# rm -f $WORK
952951:04/03/20 07:35
あと、ふつうはこういうのはパイプでつなげるね。
(
grep ほにゃらら
grep はにゃらら
てんてんてん
) | mailsubj なんとやら

てな具合に。
あーん、今さっき、間違えて $HOME 以下をすべて消してしまったよう。
せっかく確認のプロンプトが出たのに、反射的に y 押しちゃった。

深刻な被害は無かったけど、こんな僕のためにも確か、
rm * コマンドを cp * /tmp/trash に変えてくれるようなscript か alias があったはず。

誰かスマートなサンプルを頼む。
出来れば、/tmp/trash/20040321_010023/* とかに cp されるほうが良い。
>>953
rmstar?
>>953
こんなかんじか?
function rm {
mkdir -p /tmp/trash`date +%m%d`
mv "$*" /tmp/trash`date +%m%d`
}
>>954
いえ、rmstar すら効かなかった馬鹿者なんです、私。

>>955
なるふぉど、いただきますです。
>>956
date の引数適当なので、好みに修正してね
cp しても意味ないのでは?
>>958
どうした 誤爆か?
>>959
あ? 知的障害者か? rm のかわりに、cp じゃ意味ないだろって意味なんだが??
誰もcpしてないじゃん

>>955が適切にmvで書いて
それを戴いたと>>956が言ってんだからそれで終りでいいじゃない。

今更ツッコミ入れる>>960は陰険
>>954 = >>955 = >>957 = >>958 = >>960 ですが何か?

>>961
> 誰もcpしてないじゃん
>>953
> rm * コマンドを cp * /tmp/trash に変えてくれるようなscript か alias があったはず。
> 出来れば、/tmp/trash/20040321_010023/* とかに cp されるほうが良い。
それを真に受けた馬鹿が居なかったんだからそれでいいじゃん
って言ってもわからんか。

いつまでも粘着したいのね。
たち悪いなぁ。
結果的に誰もcpしなかったんだから
わざわざツッコム必要なかったんでないのってことじゃねーノ
>>961==>>964==>>965必死だなw
最初に cp って書いた私が悪いんです。
すんませんでした。


では、次の話題へ。
>>966
見苦すぃ
陰険な粘着は以後放置の方向でよろしく
最近 bash から zsh に乗り換えたのですが
zsh の恩恵が実感できる処理方法を御教え頂けたらと
971名無しさん@お腹いっぱい。:04/03/21 03:21
>>969
やはり2chなどクズの巣窟だなw
俺の質問に答えられない歯がゆさから三流の煽りをしなくてもいいぞ
お前は世の中に必要とされていない人間だからな。
>>970
info zsh
そういや、もう春休みだね
だから>>971みたいのが夜中まで頑張ってんだなぁ
>>971-973
俺はこの3人は同レベルだと思った。
975974:04/03/21 04:21
× 同レベル
○ 役立たず

すまそ。

(= >>974 >>970)
=> t か?


>>976
それが洒落てるとでも思ってんのか?
>>977
だったら何? bash しか使えない低能がw
980見苦すぃ:04/03/21 05:08
>>968-
俺はこいつらは同レベルだと思った。
>>980
自分も含むのね ;-)
981 氏の職業ってなに?
>>982
講師
>>982
大学教授
ケアマネ
986名無しさん@お腹いっぱい。:04/03/22 02:20


           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
987名無しさん@お腹いっぱい。:04/03/22 02:21
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
988名無しさん@お腹いっぱい。:04/03/22 02:22
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
989名無しさん@お腹いっぱい。:04/03/22 02:23
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
990名無しさん@お腹いっぱい。:04/03/22 02:24
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
991名無しさん@お腹いっぱい。:04/03/22 02:25
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
992名無しさん@お腹いっぱい。:04/03/22 02:26
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
993名無しさん@お腹いっぱい。:04/03/22 02:29
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ
994名無しさん@お腹いっぱい。:04/03/22 02:31
           ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、            ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、            ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》            ,..-‐−- 、、
         ,ィ":::::::::::::::::::;;;;;:ii>;,、
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
  
          ヽ    ''  .:/
           > ‐- 、、ノ
       /:::::::::::::::;;;;;;;;iii彡" :ヤi、
       i::::::::::::;:"~ ̄     ::i||li
       |:::::::::j'_,.ィ^' ‐、 _,,. ::iii》
        |:::i´`  `‐-‐"^{" `リ"
        ヾ;Y     ,.,li`~~i
         `i、   ・=-_、, .:/
          ヽ    ''  .:/
           > ‐- 、、ノ

 difficult!!
   
995名無しさん@お腹いっぱい。:04/03/22 02:32
abc
   
996名無しさん@お腹いっぱい。:04/03/22 02:34
   /::::::::::,,:::::::::::::::::::::ヽ   
 /:::::::::::,,,::::::::::::::::::::::::::::::ヽ
/::::::::::::::,,,,:::::::::::::::::::::::::::::::::::ヽ、
|::::::/⌒ ^ ⌒ \:::::::::::::::::::::::::ヽ. 
|:::::|      /ヽ::::::::::::::::::::::|
|:::::|\   /  ヽ::::::::::::::::::::| 
ヽ:::|<(|  こ(>  \|ヽ:::::::::|   ..
 ヽ| h        J:::::::::|    .
  \ L        ヽ::::::/     .
    \ー―┘     |:::/  
  __\__/  /V_____
/;;;;;;;;;/ く    /  ∧;;;;;;;;;;;;;;;;;;
997名無しさん@お腹いっぱい。:04/03/22 02:35
   /::::::::::,,:::::::::::::::::::::ヽ   
 /:::::::::::,,,::::::::::::::::::::::::::::::ヽ
/::::::::::::::,,,,:::::::::::::::::::::::::::::::::::ヽ、
|::::::/⌒ ^ ⌒ \:::::::::::::::::::::::::ヽ. 
|:::::|      /ヽ::::::::::::::::::::::|
|:::::|\   /  ヽ::::::::::::::::::::| 
ヽ:::|<(|  こ(>  \|ヽ:::::::::|   ..   /::::::::::,,:::::::::::::::::::::ヽ   
 /:::::::::::,,,::::::::::::::::::::::::::::::ヽ
/::::::::::::::,,,,:::::::::::::::::::::::::::::::::::ヽ、
|::::::/⌒ ^ ⌒ \:::::::::::::::::::::::::ヽ. 
|:::::|      /ヽ::::::::::::::::::::::|
|:   /::::::::::,,:::::::::::::::::::::ヽ   
 /:::::::::::,,,::::::::::::::::::::::::::::::ヽ
/::::::::::::::,,,,:::::::::::::::::::::::::::::::::::ヽ、
|::::::/⌒ ^ ⌒ \:::::::::::::::::::::::::ヽ. 
|:::::|      /ヽ::::::::::::::::::::::|
|:::::|\   /  ヽ::::::::::::::::::::| 
ヽ:::|<(|  こ(>  \|ヽ:::::::::|   ..
 
 ヽ| h        J:::::::::|    .
  \ L        ヽ::::::/     .
    \ー―┘     |:::/  
  __\__/  /V_____
/;;;;;;;;;/ く    /  ∧;;;;;;;;;;;;;;;;;;
998名無しさん@お腹いっぱい。:04/03/22 02:36
   /::::::::::,,:::::::::::::::::::::ヽ   
 /:::::::::::,,,::::::::::::::::::::::::::::::ヽ
/::::::::::::::,,,,:::::::::::::::::::::::::::::::::::ヽ、
|::::::/⌒ ^ ⌒ \:::::::::::::::::::::::::ヽ. 
|:::::|      /ヽ::::::::::::::::::::::|
|:::::|\   /  ヽ::::::::::::::::::::| 
ヽ:::|<(|  こ(>  \|ヽ:::::::::|   ..
 ヽ| h        J:::::::::|    .
  |
 \ L        ヽ::::::/     .
    \ー―┘     |:::/  
  __\__/  /V_____
/;;;;;;;;;/ く    /  ∧;;;;;;;;;;;;;;;;;;
999名無しさん@お腹いっぱい。:04/03/22 02:37
test
1000名無しさん@お腹いっぱい。:04/03/22 02:37
\\___finish///
10011001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
やほ♪
10031001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。