zsh入門 パート2at UNIX
zsh入門 パート2 - 暇つぶし2ch2:名無しさん@お腹いっぱい。
02/11/03 20:52
公式サイト URLリンク(www.zsh.org)
前スレ スレリンク(unix板)
URLリンク(zsh.sourceforge.net)
URLリンク(zsh.sunsite.dk)
URLリンク(www.zshwiki.org)
URLリンク(dengaku.org)
URLリンク(www.sol.cs.ritsumei.ac.jp)
URLリンク(tehanu.hpcl.titech.ac.jp)
URLリンク(www.swlab.csce.kyushu-u.ac.jp)
URLリンク(aquahill.net)
URLリンク(www.ayu.ics.keio.ac.jp)
URLリンク(www.ono.org)

3:名無しさん@お腹いっぱい。
02/11/03 20:52
>>1

関連リンク。前スレより。
URLリンク(zsh.sourceforge.net)
URLリンク(zsh.sunsite.dk)
URLリンク(www.zshwiki.org)
URLリンク(dengaku.org)
URLリンク(www.sol.cs.ritsumei.ac.jp)
URLリンク(tehanu.hpcl.titech.ac.jp)
URLリンク(www.swlab.csce.kyushu-u.ac.jp)
URLリンク(aquahill.net)
URLリンク(www.ayu.ics.keio.ac.jp)
URLリンク(www.ono.org)
URLリンク(www.nicola.jp)
URLリンク(www.pichilemon.net)
URLリンク(www.melonet.jp)
URLリンク(www.hakusensha.co.jp)


4:名無しさん@お腹いっぱい。
02/11/03 20:52
2?

5:名無しさん@お腹いっぱい。
02/11/03 20:52
公式サイト URLリンク(www.zsh.org)
前スレ スレリンク(unix板)

URLリンク(tehanu.hpcl.titech.ac.jp)
URLリンク(www.gentei.org)
URLリンク(cl.aist-nara.ac.jp)
URLリンク(dengaku.org)

URLリンク(zsh.sourceforge.net)
URLリンク(zsh.sunsite.dk)
URLリンク(www.zshwiki.org)
URLリンク(dengaku.org)
URLリンク(www.sol.cs.ritsumei.ac.jp)
URLリンク(tehanu.hpcl.titech.ac.jp)
URLリンク(www.swlab.csce.kyushu-u.ac.jp)
URLリンク(aquahill.net)
URLリンク(www.ayu.ics.keio.ac.jp)
URLリンク(www.ono.org)


6:名無しさん@お腹いっぱい。
02/11/03 20:56
おまいらおもしろいです。

7:名無しさん@お腹いっぱい。
02/11/03 21:01
グダグダやな。まあいいけど。

8:名無しさん@お腹いっぱい。
02/11/03 21:03
>>2 から >>5 同じ時刻…

9:名無しさん@お腹いっぱい。
02/11/03 21:07
やっぱ998任せは無茶だろ。

10:名無しさん@お腹いっぱい。
02/11/03 21:17
>>9
先に立てといて 998 になってから返事すりゃよかったのに・・・

11:名無しさん@お腹いっぱい。
02/11/03 21:24
さすがに>>1 に何も張ってないのはいかがなものかと。

12:前スレ951
02/11/03 21:27
zsh の情報を集める wiki を立てました。ぜひ自由に使ってください。
その他情報もまとめていこうと思います。
URLリンク(zshintro.s22.xrea.com)


13:名無しさん@お腹いっぱい。
02/11/03 21:30
>>12
otu-
URLリンク(zshintro.s22.xrea.com)
logo がうまく表示されていないみたいだけど?

14:前スレ951
02/11/03 21:36
すいません、直しました。

15:名無しさん@お腹いっぱい。
02/11/03 22:04
>>11
携帯から見るときはありがたい

16:名無しさん@お腹いっぱい。
02/11/03 22:06
大人の玩具激安販売!!
ピンクローター190円!!
その他商品どこよりも安いですよ!
URLリンク(www.king-one.com)


17:名無しさん@お腹いっぱい。
02/11/03 23:42
前のスレッドにeshellのこと書いてた人がいたけど、
emacs でzsh使いたいなら、 explicit-shell-file-name に
zshのパスを文字列で設定すればよろし。

18:名無しさん@お腹いっぱい。
02/11/04 00:02
スレタイに「入門」っていらないような。

19:名無しさん@お腹いっぱい。
02/11/04 00:35
後知恵

20:名無しさん@お腹いっぱい。
02/11/04 00:59
*/はディレクトリに展開されますが、アクセス権の無いディレクトリは除外されます。
なぜ?


21:名無しさん@お腹いっぱい。
02/11/04 01:12
中身が読めないからでしょ

22:名無しさん@お腹いっぱい。
02/11/04 01:48
bindkey -aの
"j" down-line-or-history
ってやつの-or-historyが激しくいらないんだが、
donw-lineってコマンドはないらしい。激しくむかつく。

23:名無しさん@お腹いっぱい。
02/11/04 22:08
以前質問したものです。
あるテキストを更新時間順に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: そのようなファイルやディレクトリはありません
: そのようなファイルやディレクトリはありません




24:名無しさん@お腹いっぱい。
02/11/04 22:29
>>23
ls -t|xargs more
でいいんでない?
微妙にスレ違い。

25:名無しさん@お腹いっぱい。
02/11/05 01:10
foreach i (`ls -t`); echo $i;end|xargs more
これでできましたが。

26:名無しさん@Emacs
02/11/05 02:53
>>25
なんでわざわざ xargs つかう

for i in `ls -t` ;do more $i ;done では不満?

27:名無しさん@お腹いっぱい。
02/11/05 07:30
っていうか more `ls -t` でダメな理由を教えてほしい


28:名無しさん@お腹いっぱい。
02/11/05 10:37
>>27
前スレで似たようなことを指摘したんですけどね。意図が伝わら
なかったか。

あと zsh 的には more *(.om) かな

29:名無しさん@お腹いっぱい。
02/11/05 12:29
ちょっと、話がずれますが質問です。

$ 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 * で消せますよ。そうではなくてバッククオートを使ってやる場合です。


30:名無しさん@お腹いっぱい。
02/11/05 13:17
rm "`ls`"

31:名無しさん@お腹いっぱい。
02/11/06 01:54
>>12をみて
precmd() {
TITLE=`print -P $USER@%m on tty%l: %~`
echo -n "\e]2;$TITLE\a"
}
とやってみたのですが、screenを使っているとできないみたいです。
どうしてですか?スレ違い?TERMはvt100です。

32:前スレ931
02/11/06 03:32
あるディレクトリにcdしたら、そのディレクトリでの作業の留意点
を表示するという使い方を思いついた。
motdのような感じ。
これだけでは心もとないのでcronでかけるチェックも書いたけど。


33:名無しさん@お腹いっぱい。
02/11/06 09:33
zshで日本語ファイル名を補完させたときに、

\M-^B\M-\n\M-O\M-^N@\M-^B\M-L\M-\t\M-o.txta

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


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




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

一行の設定で直る。アホ。

35:名無しさん@お腹いっぱい。
02/11/06 15:43
>>34あんた不親切だなぁ。1行ぐらい書いてあげてもいいじゃないか。

36:名無しさん@お腹いっぱい。
02/11/06 16:25
setopt PRINT_CHEESE_BIT

37:名無しさん@お腹いっぱい。
02/11/06 16:35
cygwin の zsh-4.0.4 を rxvt の上で使っているのですが、
コンソールから日本語を入力すると化けてしまいます。
一応、quote すれば日本語ディレクトリに移ることは出来ます。(化けますが)
あと、PROMPT の %~ などが日本語ディレクトリだと化けてしまうのですが、
どうやったら化けなく出来るのでしょうか。

print_eight_bit は設定してあります。

38:名無しさん@お腹いっぱい。
02/11/07 21:13
>>36

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

setopt:133: no such option: PRINT_CHEESE_BIT


39:名無しさん@お腹いっぱい。
02/11/07 21:23
zstyle ':completion:*' menu select=10
これでファイルなどの補完をC-f,C-bなどで移動できるんですが、
リターンを一回おしただけではコマンドは実行されず、2回おさなければならないので、
けっこうめんどくさいです。リターン一回で実行できるようにはできませんか?

40:名無しさん@お腹いっぱい。
02/11/08 11:24
すれ違いかもしレンガ、zshラーに聞きたい!!


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

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





41:名無しさん@お腹いっぱい。
02/11/08 11:58
>>40 に聞きたい!!
**/* で find を使わなくなるのは分かるが、
grep はどうしてお使いにならなくなってしまったのですか?
その秘技を教えて下さい。


42:名無しさん@お腹いっぱい。
02/11/08 15:11
たぶん、>>40が言いたいのは "| grep" ではないかな?
憶測だけど

43:名無しさん@お腹いっぱい。
02/11/08 21:27
findつかわねえから文法しらねえや。zshで何日前という指定じゃなくて
何月何日のファイルと言う風にできたらさらに便利だと思うな

44:名無しさん@お腹いっぱい。
02/11/08 22:00
>>40
ファイルが多すぎる時.

zshで|grepの代わりって何?

45:名無しさん@お腹いっぱい。
02/11/09 01:00
>>40
色々条件つけたい時(日付とか)
zshに依存しないスクリプト書く時

46:名無しさん@お腹いっぱい。
02/11/09 09:34
time の結果をファイルに書き込むにはどうすればいいですか?
man zshmisc すると、standard error に出力するって書いてあるけど、
   time command 2>logfile
としても、command のエラーが記録されるだけで、
測定結果は画面に表示されてしまいます。

47:名無しさん@お腹いっぱい。
02/11/09 15:47
今月のUnix Userの記事はおもしろかったです。
>>46
漏れは/usr/bin/time使ったらできたよ。


48:名無しさん@お腹いっぱい。
02/11/09 21:24
>>47
% /usr/bin/time -o logfile command
でいけました。

どういうわけか、シェルのbuiltin コマンドじゃなきゃイカン
と思い込んでいた。

49:名無しさん@お腹いっぱい。
02/11/09 21:48
>>46 time command 2>&1 >logfile でどうよ?

50:名無しさん@お腹いっぱい。
02/11/10 08:20
>>31 スレ違い
スレリンク(unix板:193番)

51:46 = 48
02/11/10 12:16
>>49
うまいやりかたがみつからない。
descriptor の指定は全部command の一部として解釈されちゃう。

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

% time cat <largefile >/dev/null

なんてやる時はその方が都合がいいんだろうけどね。

52:名無しさん@お腹いっぱい。
02/11/10 13:21
>>50
ありがとう。できました。

53:名無しさん@Emacs
02/11/10 13:53
>>46
% 2>logfile time command


54:名無しさん@お腹いっぱい。
02/11/10 16:52
>>51
2>logfile time command
でいかかでしょうか

55:名無しさん@お腹いっぱい。
02/11/10 16:53
げっ、何時間も前に書き込みがあったとは。逝ってきます…

56:46
02/11/10 16:55
>>53
なるほど、そういうやり方も許されるのね。
ありがと。

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

% 2>logfile time command 2>/dev/null

57:名無しさん@お腹いっぱい。
02/11/11 11:23
今日更新したファイルだけ
ls
で表示できますか?

58:名無しさん@Emacs
02/11/11 12:00
>>57
すれ違い氏ね

59:名無しさん@お腹いっぱい。
02/11/11 15:51
>>57

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

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


>>58
あんた恥ずかしいよ


60:名無しさん@お腹いっぱい。
02/11/11 20:57
>>59
そういう書き方もあったのか。
*(m-n)はn日まえ以降に更新したファイルで
*(mn)はn日前に更新したファイル
ってことですね。

61:名無しさん@お腹いっぱい。
02/11/11 21:34
しかし、 57 の言う「『今日』更新したファイル」というのは、簡単には
書けない

62:名無しさん@お腹いっぱい。
02/11/11 21:58
ls -lしてgrepかなぁ。

63:名無しさん@お腹いっぱい。
02/11/11 22:04
ls -l|grep "`date|cut -d" " -f2,3`"
cutのデフォルトの区切りってスペースじゃないのかよ!

64:名無しさん@お腹いっぱい。
02/11/12 02:38
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だけで出来なかったよ。

65:名無しさん@お腹いっぱい。
02/11/12 04:02
>>64
力技で持っていくと
echo *(ms-$[$(print -P '%D{%H}' \* 3600 + '%D{%M}' \* 60 + '%D{%S}')])
かな。

まだ簡単にできるかな? しかし、時刻指定がもうちょっと楽にできればなあ

66:名無しさん@お腹いっぱい。
02/11/12 06:39
もしcronで動かすだけなら
実行時刻を考えればいいだけのような気もしてきた

67:名無しさん@お腹いっぱい。
02/11/12 19:39
>>64
すげー。それがあれば何月何日から何月何日の間に更新されたファイルとかさがせるね。
もっと簡単につかえるようにするにはどうすればいいだろう。

68:名無しさん@お腹いっぱい。
02/11/15 03:55
Emacs21のshell-modeでzshを使ってます
前スレでeshellというshell scriptを書いてそれをESHELLにsetすれば良い
という指摘がありましたが、あれではzshの補完を完全には活かせてません
よね?
どうにかしてこの問題を解決出来ませんでしょうか?

因にterm-modeではファイル名の補完すらできませんでした

69:名無しさん@お腹いっぱい。
02/11/15 17:07
ansi-term で普通に補完できてますが

70:名無しさん@Emacs
02/11/15 17:15
>>69
Me too!

71:68
02/11/16 02:42
>>69
ansi-term良いですね
よろしければ便利な設定とか教えて頂けませんか?
日本語のページが極端に少ないもので…

#やっぱり辞書を片手に英語から?

72:名無しさん@お腹いっぱい。
02/11/16 12:25
>>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)]
}


73:67
02/11/16 14:11
>>72
いやー、すごいですねー。

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

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

74:65
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 が評価値になります。

75:名無しさん@お腹いっぱい。
02/11/16 22:38
$(( )) -> $[ ] は気がついたから変更してたんだけど、
''は気づいてなかった。

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

: の有無はzshに限らずshell scriptのFAQという気がする。

76:73
02/11/17 22:16
>>74
ありがとうございます。
>>75
FAQでしたか。すいません。

77:名無しさん@お腹いっぱい。
02/11/29 00:24
さがってるからあげるね。

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
これを実行しなければ問題ないんだが、そう言うわけにはいかないので
だれか教えてください。

79:名無しさん@お腹いっぱい。
02/12/01 17:18
>>78
_flex を ~/.zfunc/ にコピーして input files の部分を書きかえる。
その後 $FPATH=~/.zfunc:$FPATH を .zshenv 等に加える。
そしてzshを起動しなおす。


80:名無しさん@お腹いっぱい。
02/12/01 17:58
>>79
できた。ありがとう。
今までオプションの補完ができるなんてスゲーとか思ってたけど、
_flexとかのファイルに書いてあるだけなのか。

81:名無しさん@お腹いっぱい。
02/12/01 19:40
むしろ_flexとかのファイルに書いてあるから
自由自在にカスタマイズ(のはず)

82:名無しさん@お腹いっぱい。
02/12/07 22:59
age

83:名無しさん@お腹いっぱい。
02/12/09 21:35
%cat dummy
001 aho
002 boke
003 hage

というファイルを
001
002
003

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

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




84:名無しさん@お腹いっぱい。
02/12/09 21:51
cut -f1 dummy > f1; cut -f2 dummy > f2

いやー、セミコロンって便利♥

85:83
02/12/12 11:11
ぼくは真面目に質問してるのです!!

86:名無しさん@お腹いっぱい。
02/12/12 11:26
>>85
>>84 は真面目に答えてると思うが。

87:84
02/12/12 12:28
>>86
フォローして貰っといてなんだが、別にマジメって程のモンではありませぬ(w

88:名無しさん@お腹いっぱい。
02/12/12 14:16
というか、awk使うべきだろ
この場合

89:名無しさん@お腹いっぱい。
02/12/12 17:37
↑キボン

90:名無しさん@お腹いっぱい。
02/12/12 23:30
>>89
スレ違い

awk '{print $1 > "f1"; print $2 > "f2";}' dummy

91:名無しさん@お腹いっぱい。
02/12/13 00:43
84 の方が短い罠

92:84=90
02/12/13 02:43
そして 84=90 という罠

93:名無しさん@お腹いっぱい。
02/12/13 19:34
オークの中でリダイレクトできるのか。

94:名無しさん@お腹いっぱい。
02/12/15 02:53
zshでの関数定義内において
標準入力をファイルに書き出すには
どのような書き方がありますか?

使い方:
last | x2w

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

read line do;~;done しか思い当たりません。


95:名無しさん@お腹いっぱい。
02/12/16 02:40
短く書くのならcatでいいのでは?

x2w () {
cat >> dummy-memo.txt
}


96:83
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
になります。



97:名無しさん@お腹いっぱい。
02/12/17 14:59
date -3
で今日の日付をhighlight表示させる方法ありませんか?

98:65
02/12/17 16:57
>>96
r 1=2 とか。それよりも for loop を廻した方が早いと思うが
>>97
くだ質へ行きたまえ

99:名無しさん@お腹いっぱい。
02/12/18 01:12
>>96
!:gs/1/2/
はどう?

100:100
02/12/19 02:07
zsh (・∀・)イイ!!

101:名無しさん@お腹いっぱい。
02/12/19 02:29
シェル変数を補完しないようにするにはどうすればよいのでしょう?

102:名無しさん@お腹いっぱい。
02/12/19 08:24
awk --help |grep hoge
grep --help | grep hoge
のようにhelpの出力をgrepしたい時は
| を使うのでしょうか?







103:名無しさん@お腹いっぱい。
02/12/19 09:49
>102
そうですが何か?

104:名無しさん@お腹いっぱい。
02/12/19 10:48
sourceコマンドの補完で質問。
原因不明で、以下のものが動かなくなった。
他のサンプル持ってないので、皆さんの
_source見せてください。
おながいします。


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


105:名無しさん@お腹いっぱい。
02/12/19 14:33
あー、グローバルエイリアスってすごいね。
これだけでzshに存在意義を見出させてしまいます。

zsh以外で実現しているシェルってあるの?

106:名無しさん@お腹いっぱい。
02/12/19 17:36
>>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'

107:名無しさん@お腹いっぱい。
02/12/19 19:52
foreach i (ココの部分)
      ^^^^^^^^
グローバルエイリアスがいちいち展開されてウザイっす。
例えば、bindkeyでキーバインディングの空き情況を調べる時、
foreach i (w \W i \I);bindkey "^x$i";end
のように展開を避ける必要があって、面倒です。

グローバルエイリアス展開の有無を情況ごとに調整する
オプションありませんか?

108:名無しさん@お腹いっぱい。
02/12/19 20:52
bindkeyを引数なしで実行すればいいのでは?

109:名無しさん@お腹いっぱい。
02/12/19 22:47
>>107
> グローバルエイリアス展開の有無を情況ごとに調整する
> オプションありませんか?
これは自分も以前思ったことがあった。しかし、グローバルエイリアス
の有効・無効を「簡単に」切り替えられる方法は見つけられなかったが、
一応の方法は見つけた。

無効にしたいとき、
disable -a $galiases[(I)*]
有効に戻したいとき
enable -a $dis_galiases[(I)*]

110:名無しさん@お腹いっぱい。
02/12/19 23:36
漏れはグローバルエイリアスって使ったことないんだけども、
それって使い方を間違えているんじゃない?
もっと、衝突しづらい文字列のエイリアスをあてがうのが正しい使い方かと。

111:名無しさん@お腹いっぱい。
02/12/20 00:25
そうでもない

112:名無しさん@お腹いっぱい。
02/12/20 21:55
%echo '
>hoge
>hoge
>ho
ここまで入力して上の行に戻れる?

113:104
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などの出力結果をコンソールに出しながら
標準出力と標準エラー出力をそれぞれ別ファイルに吐き出すことは出来ますか?


115:名無しさん@お腹いっぱい。
02/12/22 03:02
make >LOG.stdout 2>LOG.stderr >& /dev/tty
とか
make >LOG.stdout 2>LOG.stderr |& tee
の方がいいか

116:名無しさん@お腹いっぱい。
02/12/22 03:38
どうもありがとうございます。
shじゃできないけど、zshだと出来るのですね。

117:名無しさん@お腹いっぱい。
02/12/22 23:13
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)

120:名無しさん@お腹いっぱい。
02/12/22 23:22
>>117
勘違いスマソ
alias history='history -20'

121:117
02/12/23 00:09
alias使うと、
% history -m 'hoge*'
などのマッチングが出来ません。

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




122:名無しさん@お腹いっぱい。
02/12/23 00:10
>>121
> % history -m 'hoge*'
> などのマッチングが出来ません。

ということにしたいのですね。

123:名無しさん@お腹いっぱい。
02/12/23 01:23
そもそもhistoryコマンドって何に使う?
>>121
grep使えば?

124:名無しさん@お腹いっぱい。
02/12/23 03:01
>>118
> autoload run-helpをやってもM-h(run-help)でwhereなどの内部コマンドのヘルプが
> でてこないのは漏れだけ?
手許では unalias run-help; autoload run-help で内部コマンドのマニュアルが動いている。
もっとも zshbuiltins(1) が先頭から表示されるだけで、それほど便利ではない(w

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

>>117
history は fc -l の別名だから適当に使い分ければ?

125:名無しさん@お腹いっぱい。
02/12/23 16:35
>>124
run-helpがaliasされてたのですか。おもしろい使い方ですね。
>単位は byte でないよ。履歴の数そのもの
スマソ

126:名無しさん@お腹いっぱい。
02/12/26 01:38
$@, $*の扱いがzshとshで違うのは仕様ですか?

127:名無しさん@お腹いっぱい。
02/12/26 10:12
>>126
どう違う。


128:名無しさん@お腹いっぱい。
02/12/26 21:33
#test.sh
arg.sh $@
arg.sh $*
arg.sh "$@"
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になった。

129:名無しさん@お腹いっぱい。
03/01/03 11:52
から揚げ

130:名無しさん@お腹いっぱい。
03/01/03 15:49
うまうま

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 というように改行キー入れないと動かなくなります。

これ、どのへんの設定を直せばいいんでしょうか。


132:777
03/01/03 19:06
>>826
すんばらしい。
ありがとうございました。


133:名無しさん@お腹いっぱい。
03/01/03 20:16
>>826 に期待がかかるわけだが。

134:826
03/01/03 22:49
>>777
いえいえ、どーいたしまして

135:名無しさん@お腹いっぱい。
03/01/04 13:11
>>131
4.06にしたら?

136:名無しさん@お腹いっぱい。
03/01/07 01:08
>>128
see SH_WORD_SPLIT

% zsh -y test.sh 'a b' 'c d'
4
4
2
1


137:128
03/01/07 19:35
>>136
ありがとうございます。

zshってzshのオプションは補完してくれないのか。

138:名無しさん@お腹いっぱい。
03/01/07 20:04
-o


139:名無しさん@お腹いっぱい。
03/01/11 12:07
日経Linuxでちょろっと取り上げられてたage

140:名無しさん@お腹いっぱい。
03/01/12 12:54
zshrcの置き場所って
~/.zsh/zshrc
で正しいですか?
設定を読み込んでくれないのですが

141:名無しさん@お腹いっぱい。
03/01/12 13:01
>>140
/etc/zshrc

142:名無しさん@お腹いっぱい。
03/01/12 13:17
>>140
~/.zshrc


143:名無しさん@お腹いっぱい。
03/01/12 13:22
>>140
$HOME/.zshrcでいいんじゃない?

144:名無しさん@お腹いっぱい。
03/01/12 13:24
>>140
ドキュメントを読まない方はお断りします。

145:名無しさん@お腹いっぱい。
03/01/12 16:59
>>12 のwikiが無くなってるんだけど、どっかに移転しましたか?

146:140
03/01/13 03:33
140ですが
$HOME/.zshrc
を読み込んでくれません
aliasも有効にならないし
環境変数も有効にならないし
書式がおかしいというエラーも出ません
なんででしょうか
chpassでログインシェルを変更しました
またログインシェルを変更せずとも
ただたんにフォアグラウンドで走らせようとも
関係なく読み込んでくれません
関係ないか
なんででしょうか?

147:140
03/01/13 03:40
ちなみにパーミッションは
-rw-rw-rw-: こんな感じですね
とくに意味は無いですが
そのうち変えます
自分に読み込み権限はあります


148:名無しさん@お腹いっぱい。
03/01/13 10:14
>>147
source $HOME/.zshrc って打ったらどうなる?

149:名無しさん@お腹いっぱい。
03/01/13 11:00
>>147
> -rw-rw-rw-: こんな感じですね

(゚Д゚)ハァ?

150:名無しさん@お腹いっぱい。
03/01/13 13:55
>>140

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

man zsh に目を通しておきませう


151:150
03/01/13 13:59
あ、 >>150 は zsh 4.0.6 (i686-pc-cygwin) での話なんで、
他の環境では違うのかも...

152:山崎渉
03/01/15 12:53
(^^)

153:名無しさん@お腹いっぱい。
03/01/20 20:56
GUIでアイコンをクリックすると適切なアプリが起動するように、
プロンプトでファイル名をうったら適切なアプリが起動したら便利だと思う。
zshのpreexecとかでできないかな?

preexec(){
if [ -f "$1" ]; then
vi $1
fi
}
と定義して
%.zshrc
とやるとviは起動するんだけど、 そのあとに
zsh: command not found: .zshrc
となる。ちょっとうざい。

154:名無しさん@お腹いっぱい。
03/01/20 21:11
>>153
スクリプトで拡張子見て起動するようにしてみれば?

155:名無しさん@お腹いっぱい。
03/01/21 09:36
>>154
まず magic を見て、次に拡張子の方がいいだろうな。
file の出力を拾うのがいいかな?


156:名無しさん@お腹いっぱい。
03/01/21 18:13
>>154-155
スクリプトだとたとえ1文字にしても
%a hoge.txt
としなければいけない。
%hoge.txt
ってのはやっぱり無理かな。

157:名無しさん@お腹いっぱい。
03/01/21 22:12
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

参考にしたのは
URLリンク(dengaku.org)
のrun-fg-editorと
URLリンク(www.zshwiki.org)
のpreexec。

158:名無しさん@お腹いっぱい。
03/01/21 23:31
>>157
カッケー!サンキュウ!

159:158
03/01/22 01:58
よく考えたら補完が使えなくなるのか。うーん。

160:155
03/01/22 09:43
おれはpreexecの中で一時的にaliasを定義したらいいかな?
と思ってやってみたんだが、aliasの展開はpreexecより前
みたいなんだよなー。
ソースをちょっと直せば対応できそうな気がするけど。


161:名無しさん@お腹いっぱい。
03/02/02 14:25
faq っぽいですがよろしくです。

shell> aaa bbbbbbbbbbb ccccc

とかあって、bbbb の中頃にカーソルがあるとします。そこで、
次の単語までジャンプする方法ってありますか?
# つまり ccccc の頭まで。
矢印キー押しっぱなしというのは美しくないので・・

162:名無しさん@お腹いっぱい。
03/02/02 16:10
>>161
ESC f とか ESC b とか

163:名無しさん@お腹いっぱい。
03/02/03 02:15
さんくすです! esc か・・。
ctrl に適当に割り当てられれば便利そうですね。
^F も ^B も日頃使わないからそれに振ってみます ;-)

164:名無しさん@お腹いっぱい。
03/02/03 11:06
>>163
Meta-b(Alt-b) でイくない??

165:名無しさん@お腹いっぱい。
03/02/03 15:09
macos 上のターミナルなので alt は無いです。option キーだと
変な文字が入力されるだけだし・・。ううむ。

166:名無しさん@お腹いっぱい。
03/02/03 23:28
>>161ではありませんが、C-, とか C-. に割り当てることは出来ませんよね?
ってこれは、terminalの問題か...。


167:名無しさん@お腹いっぱい。
03/02/06 23:32
実行しているコマンド名をウィンドウのタイトルに設定したいんですが、そんなこと
可能でしょうか?
Enterでコマンドが投入された直後にそのコマンドラインをウィンドウのタイトルに
設定できればいいと思ったんですが、うまい方法を見つけられませんでした。
実行が終了して元に戻すのはPROMPTでいいんでしょうが。

168:名無しさん@お腹いっぱい。
03/02/07 00:04
>>167
preexec を設定してはどうでしょうか。
cf. URLリンク(www.zsh.org)


169:167
03/02/07 00:45
>>168
そういうフックがあったのですね。ありがとうございました。試してみます。

170:fushianasan
03/02/07 17:49
zshって、tcshとくらべると、
動作速度、メモリの使用量はどうなの?

171:名無しさん@お腹いっぱい。
03/02/08 01:01
>>170
起動はおそい

172:fushianasan
03/02/08 01:06
一回起動しちゃうと、サクサク?

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

tcshマンセーな俺はzshを愛せるだろうか

173:名無しさん@お腹いっぱい。
03/02/08 04:20
こんな感じ
% 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

うーむ、実質二倍って感じ?

174:名無しさん@お腹いっぱい。
03/02/08 08:58
>>172
一回起動するとサクサク!
screenはdetatchしてatatchすれば起動の遅さは気にならないはず

175:名無しさん@お腹いっぱい。
03/02/08 10:28
486 なマシンだと zsh の方が completion とか明らかに遅かった。ヲレには
耐えられないレベルだったので使用を諦めた記憶がある。

176:fushianasan
03/02/09 00:03
>>173-175
御丁寧にどうも。
とりあえず、つかってみようかと思います。
多機能なぶん、おもいのはしかたないのかなぁ。


177:名無しさん@お腹いっぱい。
03/02/10 18:26
>>175
Pentium/120MHzでもcompletionとか明らかに遅いよ。
でもなんとかつかえる範囲なので使ってるけど。
普段余り触ることのないルータ機だからってものあるけど。

178:fushianasan
03/02/10 22:12
P2/233Mhzでも、微妙に遅いかも…。

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

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

地道にzshの勉強しながら移行します。

179:名無しさん@お腹いっぱい。
03/02/10 22:53
>>178
2.xでも使ってみれば?
それでも現行のtcshより便利じゃないかな。
ってtcshの事はよく知らないんだけど。


180:名無しさん@お腹いっぱい。
03/02/10 22:57
ソンナワケ(ry

181:名無しさん@Emacs
03/02/11 18:44
>>179
|>!|2.xでも使ってみれば?
|>!|それでも現行のtcshより便利じゃないかな。

ということにしたいのですね?

182:名無しさん@お腹いっぱい。
03/02/12 00:56
>>180,181
いや、おれの.zshrcは2.6の頃から大して変わって
ないからさ(細かい所はいじってるけど)。
最近追加された機能なんて使わなくても十分
便利なんじゃないかな、と思っただけ。


183:名無しさん@お腹いっぱい。
03/02/12 01:49
~/.zshrcって何書いています? キーバインドくらいでしょうか?

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


184:名無しさん@お腹いっぱい。
03/02/12 02:54
ssh だと読み込まれるけど

185:名無しさん@お腹いっぱい。
03/02/12 06:38
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 を通す方法があったら教えて下さい。

187:名無しさん@お腹いっぱい。
03/02/12 09:40
>>186
「utf-8移行スレ」なんてスレ立てて情報集めてみるのはどう?
各プログラムの utf-8 対応度が知りたい。


188:名無しさん@お腹いっぱい。
03/02/12 20:16
.zshrcってないの?

189:名無しさん@お腹いっぱい。
03/02/12 21:31
ある

190:名無しさん@お腹いっぱい。
03/02/13 03:19
sjisなファイル名はちゃんと補完できないのか?

191:名無しさん@お腹いっぱい。
03/02/13 16:21
なんだか404から406にした時かなり遅くなったように感じますた。

192:名無しさん@お腹いっぱい。
03/02/13 21:31
zsh上でとあるソフトを make install として/usr/bin なんかに入っても
zshを再起動させないとコマンドの補完に含まれないんだけど、なんか設定あるのですか?
逆にPATHの中のコマンドを削除した場合、ずっとそのコマンドが補完対象に含まれるし。

193:名無しさん@お腹いっぱい。
03/02/13 21:34
>>192
rehash

194:_
03/02/14 22:11
zshのオプションに文字列を渡せてそれを実行させてプロンプトに欝って欲しいのですけど
どうしたらできますか?

195:_
03/02/14 22:42
-e -cだと実行した後zsh死んでしまうし。

196:名無しさん@お腹いっぱい。
03/02/14 23:10
>>194
なんでそんなことしたいの?

197:名無しさん@お腹いっぱい。
03/02/17 19:06
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でもできる方法ない?

198:名無しさん@お腹いっぱい。
03/02/17 23:18
>>197
わかりやすいのがいいのなら、
./hoge > out.txt 2> error.txt |& cat
とか。
197もそうだけど、setopt multios されてないとダメ。
hでは
((./hoge |tee out.txt >&3) 2>&1 |tee error.txt) 3>&1
くらいかな。もっと簡単な方法あるかな?


199:198
03/02/17 23:19
s/hでは/shでは/


200:名無しさん@お腹いっぱい。
03/02/18 00:15
>>198
> ./hoge > out.txt 2> error.txt |& cat
これだと、out.txt に stderr も含まれない?

./hoge > out.txt 2> error.txt >& /dev/tty
なら大丈夫だが、あまり好みではない

201:198
03/02/18 10:51
>>200
あれ、ほんとだ。確認したはずなんだが、頭が寝ていたらしい。
ありがと。
しかし、 |& と >& はふるまいが違うのか。
んなの man 眺めたくらいじゃ気付かんよ・・・

ちなみに/dev/tty使うの嫌いなのは一緒だったりする。


202:197
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に全部入るのかわからなかった。

203:198
03/02/18 14:08
>>202
zshmisc(1) に

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

と書いてある。そこから想像しろという事らしいな。


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

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

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

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

でも、綺麗とは言い難い…

205:197
03/02/18 17:42
うわ、既出でしたか。毎日見てるはずなのにな・・・

206:名無しさん@お腹いっぱい。
03/02/20 00:32
tcshの
bindkey -k up history-search-backward
bindkey -k down history-search-forward
みたいな事は、zshで出来るのかな?

これがないと移行する気になれないんだが、
出来る人情報キボン

207:名無しさん@お腹いっぱい。
03/02/20 00:50
>>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でコールした関数の履歴を活用したい...。


209:名無しさん@お腹いっぱい。
03/02/20 01:06
>>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

210:名無しさん@お腹いっぱい。
03/02/20 01:10
>>207,209
サンクス!
これで移行する事ができました。
zsh、おもったより軽くて快適。

イイ!!

211:名無しさん@お腹いっぱい。
03/02/20 13:23
zshがディレクトリのシンボリックを
勝手にリンク先の名前に戻してしまうのですが、
どういう風に設定したらよろしいでしょうか?
意図的に名前をかえてリンクしてあるディレクトリの意味がなくなってしまいました。
お知恵をお貸しください。

212:名無しさん@お腹いっぱい。
03/02/20 13:27
すまそ、
ディレクトリのシンボリックリンクを

でした。

213:211
03/02/20 13:51
自己解決しました。

スレ汚しすまそ。

214:名無しさん@お腹いっぱい。
03/02/20 14:13
>>213
なんだったの?

215:名無しさん@お腹いっぱい。
03/02/20 15:55
>>214

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

chase_linksを消したらなおった。


216:名無しさん@お腹いっぱい。
03/02/22 17:08
compctl -x 's[-]' -s '`kill -l`' - 'p[*]' -c -- killall
tcshから引き継いだやつなんですが、
compinitしないと動かなんです。
compinitせずに動かす方法はありますか?

217:名無しさん@お腹いっぱい。
03/02/22 17:34
その設定は別に要らんような。killall のデフォルトの補完とそんなに違う?

218:名無しさん@お腹いっぱい。
03/02/22 18:23
必要なんです。
「compinit」しませんから。
非常に重くなるので、compctlで済ませたいです。

219:名無しさん@お腹いっぱい。
03/02/23 13:39
>>218
compinitしとけ。重くなるって、起動だけじゃなくて?

220:名無しさん@お腹いっぱい。
03/02/23 15:10
>>218
[prefix]/share/zsh/[version]/functions/ から要らない補完関数消したら?

221:名無しさん@お腹いっぱい。
03/02/23 17:45
レスどうも。
根本的な解決にならないようですので、
自分でどうにかします。

ありがとうございました。

222:名無しさん@お腹いっぱい。
03/02/26 15:05
補完リストをカラー表示する方法ってありますか?

223:名無しさん@お腹いっぱい。
03/02/26 15:16
無い。

224:名無しさん@お腹いっぱい。
03/02/26 15:18
>>222テメー犬厨だな、
晒しage

225:名無しさん@お腹いっぱい。
03/02/26 15:27
あるだろ。

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

とか。

まあ、聞く前に man zshall しろってこった。

226:名無しさん@お腹いっぱい。
03/02/26 15:37
zmodload -i zsh/complist
export ZLS_COLORS='di=01;36'

227:名無しさん@お腹いっぱい。
03/02/26 15:40
>>226
出来ました。ありがとうございます。

228:名無しさん@お腹いっぱい。
03/02/26 21:03
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}

229:名無しさん@お腹いっぱい。
03/03/04 02:05
>>12は消滅?

230:名無しさん@お腹いっぱい。
03/03/04 04:44
   ______________
 /:\.____\
 |: ̄\(∩´∀`) \  <先生!こんなのがありました!
 |:在  |: ̄ ̄ U ̄:|
URLリンク(saitama.gasuki.com)

231:名無しさん@お腹いっぱい。
03/03/07 00:40
cygwinのzshで日本語入力が文字化けするのは仕様ですか?
   % echo あほ
と書くと、echo  の後が文字化けします。
(結果は正しく「あほ」と出ます)

zshはeucなら標準で入力できるようなのでUN*X環境では
大丈夫だと思いますが…

232:名無しさん@Emacs
03/03/07 16:11
zshって\nの扱いが妙じゃないですか?
たとえばrubyなんかで
print ("hello\n")
は表示できるのに
print ("hello")
だと何も表示されません。

これバグじゃないかと思うのですが。

233:名無しさん@お腹いっぱい。
03/03/07 16:34
バグではなくて仕様。echo -n hoghoge でも同様の結果になる。
デフォルトでは、プロンプト前にCRを出力するようになっているから。
zsh には、右プロンプトやマルチライン編集機能があるので、その方が
都合がいいため。

setopt NO_PROMPT_CR すれば、一応お望み通りになるが…

234:名無しさん@Emacs
03/03/07 16:47
>>233
それやると今度は画面が崩れます。

RPROMPT='[%~]'

こんなの設定してるからなんでしょうね。
少し不便

235:名無しさん@お腹いっぱい。
03/03/07 17:29
>>233にあるように都合が悪いわけです。RPROMPT に改行いれるように
すればましになりますが

236:名無しさん@お腹いっぱい。
03/03/07 17:31
RPROMPT じゃなくて PROMPT だった

237:名無しさん@お腹いっぱい。
03/03/08 21:25
>>231
bashだと、それ以下ですね
cygwinの端末問題じゃないですか?


今月号のUNIX USERは結構(・∀・)イイ!!かも

238:名無しさん@お腹いっぱい。
03/03/09 02:08
cygwinのzshの起動時に
Ignore insecure directories and files and continue [ny]?
と聞かれてしまうのですが、どうすれば聞かれないように出来ますか?

239:名無しさん@お腹いっぱい。
03/03/09 12:11
>>238
URLリンク(pc.2ch.net)
の709,799


240:名無しさん@お腹いっぱい。
03/03/09 17:14
.zshrc に setopt nohup を追加して読み込ませました。
あるシェルスクリプトを
./a.sh&
したあと、exit しようとしたのですが
zsh: you have running jobs.
となって抜けられませんでした。
どうすればいいのでしょうか? こういう時に nohup を使うのでは
ないのでしょうか?

241:名無しさん@お腹いっぱい。
03/03/09 17:15
disown

242:名無しさん@お腹いっぱい。
03/03/09 17:15
あるいは
./a.sh&!

243:名無しさん@お腹いっぱい。
03/03/09 17:54
>>240
setopt nocheckjobs


244:240
03/03/09 18:12
>>241-243
ありがとうございました

245:名無しさん@お腹いっぱい。
03/03/10 03:18
この場合、もう一度 exit すれば抜けられるけどね

246:名無しさん@お腹いっぱい。
03/03/10 14:06
>>239
ありがとうございました。ログに載ってたんですね。

247:名無しさん@お腹いっぱい。
03/03/12 20:35
今月の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

248:名無しさん@お腹いっぱい。
03/03/12 22:10
>>247
今月号の記事はなかなか面白そうだな。立ち読みしてみるか。
ところで、最近のマニュアルだと zshall じゃなくて zshbuiltins にしないと
駄目じゃないの?

249:名無しさん@お腹いっぱい。
03/03/13 23:30
質問さていただきます。
zshの補完リストの色の事なんですが、X端末側で指定してある色に従わせる方法を教えていただけますでしょうか?

250:249
03/03/13 23:32
連続カキコすいません。
色を表示させる設定は

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

としています。
どなたか御教示おねがいします。

251:249
03/03/13 23:47
自己解決しました。
スレ汚しスマソ。

252:名無しさん@お腹いっぱい。
03/03/14 04:44
二つの履歴ファイルを時系列順にマージするような方法は zsh に
用意されていますか? 適当なスクリプトでも書いて対処するしかない
のかな

253:名無しさん@お腹いっぱい。
03/03/14 06:32
用意されてます

254:名無しさん@お腹いっぱい。
03/03/14 17:13
されてないだろ

255:名無しさん@お腹いっぱい。
03/03/14 17:35
setopt share_history

256:名無しさん@お腹いっぱい。
03/03/14 18:11
>>253-255
煽らないと正解レスが得られないという、UNIX 板の典型的なコンボパターンだな。

257:名無しさん@お腹いっぱい。
03/03/14 20:02
>>252
参考までに
URLリンク(www.namazu.org)

258:252
03/03/15 00:44
申し訳ありませんが、それらのことは知っていますし、実際普段から使っています。
>>252は、例えば異なるホストでの履歴をマージしたいときなどのことをいっています。

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

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

やはり適当なスクリプトを書いた方がよさそうです

259:名無しさん@お腹いっぱい。
03/03/15 03:15
単純なソートでいいかと思ったら複数行あるとまずかったのか。
適当なスクリプトってこんなもんでどう?

#!/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.

260:This 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.

261:252
03/03/15 03:47
>>259-260
どうも有難うございます。目的が果たせました。ruby ってすっきり書けるんですね。

自分は setopt INC_APPEND_HISTORY しているので、整列されたものを fc で
単純に読みん込んで exit しても元の木阿弥になってしまいます。
HISTSIZE=0 にしてから $HISTFILE の置き換え & exit することで対処しました。

262:名無しさん@お腹いっぱい。
03/03/15 03:48
>>259
短くしてみた(w
#!/usr/bin/ruby
print STDIN.find_all{|line| /\\\Z/ !~ line}.sort
# This code is PDS

263:名無しさん@お腹いっぱい。
03/03/17 01:26
そんでつまるところ
 ま と め る と ど う な る の?

…既にfcを使ってマージするところからやり方が
分からない罠

264:名無しさん@お腹いっぱい。
03/03/17 06:03
マニュアルの fc の項を見ればわかると思うが…

265:名無しさん@お腹いっぱい。
03/03/18 19:58
マトメトマ

266:名無しさん@お腹いっぱい。
03/03/20 01:16
>>262
それだと継続行をまとめてソートじゃなくて
2行目以降が消えて変にならない?

267:252
03/03/20 07:20
変になります。言うの忘れてた(w

268:名無しさん@お腹いっぱい。
03/03/20 14:58
zsh 4.0.6 で、

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

したら、表示が

~i

になるのは、漏れだけか?

269:名無しさん@お腹いっぱい。
03/03/20 16:12
どこかで変数 i を ~/bin にしてるんじゃないのか

270:名無しさん@お腹いっぱい。
03/03/20 17:00
openssl コマンドの補完が欲しいな。

271:名無しさん@お腹いっぱい。
03/03/26 02:50
外出ですか?
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 "URLリンク(www.google.com)"
}

272:名無しさん@お腹いっぱい。
03/03/26 08:02
ガイスツ

273:名無しさん@お腹いっぱい。
03/03/27 13:46
ソトダシ

274:名無しさん@お腹いっぱい。
03/03/27 23:56
tabがあったっぽいところに^がついてるのはなぜ?

275:名無しさん@お腹いっぱい。
03/03/28 02:46
>274 
271です。それは、screenでコピペしたためエディタの見た目そのままになってました。
失礼しました。そのままじゃ動かない;;

276:名無しさん@お腹いっぱい。
03/04/09 14:35
2点ほど質問です。

1)
% less hoge.txt

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

2)
% cv supdate

% cvs update
としたいのですが、簡単な手はありますでしょうか?

277:名無しさん@お腹いっぱい。
03/04/09 23:33
1)
^A^D^D^D^Dvi
2)
^A^F^Fs^F^D

278:名無しさん@Emacs
03/04/10 00:07
>>277
阿保
vi !$
C-r SPC C-t

279:名無しさん@お腹いっぱい。
03/04/10 00:11
>276
1)
% less hoge.txt[RET]
v

280:名無しさん@Emacs
03/04/10 00:17
>>277
M-d じゃなくて、C-d を使っている時点で素人決定

281:名無しさん@お腹いっぱい。
03/04/10 00:55
>>277
1)
^cwvi

2)
Fvas

282:名無しさん@お腹いっぱい。
03/04/10 21:38
UnixUser キタ━━━(゚∀゚)━━━ !!

283:名無しさん@お腹いっぱい。
03/04/10 22:48
そういえば、最近 UnixUser を読んでないんだけど、今月の連載記事
はどんな内容でしたか?

284:名無しさん@お腹いっぱい。
03/04/10 23:04
買ったが読んでない。
compsys とかいうやつのはず。
今回が最終回のはず。

285:名無しさん@お腹いっぱい。
03/04/12 05:10
皆さんの小技を披露してください

286:名無しさん@お腹いっぱい。
03/04/12 09:06
しかしまぁなんですねぇ。

287:名無しさん@お腹いっぱい。
03/04/12 09:16
ほんまにほんまやなあ

288:名無しさん@お腹いっぱい。
03/04/12 10:22
それは円ひろし

289:山崎渉
03/04/17 12:15
(^^)

290:名無しさん@お腹いっぱい。
03/04/17 16:49
ニヤニヤ(・∀・)

291:名無しさん@お腹いっぱい。
03/04/17 22:21
みなさんの小枝が知りたいです。

292:名無しさん@お腹いっぱい。
03/04/17 23:10
いらっしゃ~い。

293:山崎渉
03/04/20 05:51
   ∧_∧
  (  ^^ )< ぬるぽ(^^)

294:名無しさん@お腹いっぱい。
03/04/21 00:37
それは桂三枝

295:名無しさん@お腹いっぱい。
03/04/21 06:07
今月と先月のUnix Userは読んでおいたほうがいいぞ >283
あそこまでの解説は保存版になる

296:名無しさん@お腹いっぱい。
03/04/21 11:28
そろそろ O'Reilly あたりから本が出るといいのだが。

297:名無しさん@お腹いっぱい。
03/04/21 11:54
>>296
YOU shall write it.


298:名無しさん@お腹いっぱい。
03/04/21 13:59
Unix User の解説が書籍にならないかなぁ。

299:名無しさん@お腹いっぱい。
03/04/21 18:55
RedHat8.0を使ってます。
標準のシェルをbashからzshにするために、/etc/passwdファイルを編集したのですが、
そうするとmanやlessの日本語が表示されなくなってしまいます。
どなたかこれを解決する方法を教えてください。

300:名無しさん@お腹いっぱい。
03/04/21 19:12
大方 .bashrc の $PAGER の設定を .zshrc に移してないってとこだろうな。

301:名無しさん@お腹いっぱい。
03/04/21 23:00
>>298
編集部にメール出しなはれ

302:名無しさん@お腹いっぱい。
03/04/25 02:18
>>299-300

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

どうでもいいけどシェルを変えるだけなら
/etc/passwdを直接いじるよりもchshを
使った方がいいのでは。

303:名無しさん@お腹いっぱい。
03/04/29 23:09
cygwinで使うと最近のPen4でも重いのは何とかならないかなあ?

304:名無しさん@お腹いっぱい。
03/04/30 00:06
そんなに重いかなぁ?使い方と感じ方次第だろーけど。

305:名無しさん@お腹いっぱい。
03/04/30 01:22
設定にもよるのかもしれないけど、時々カレントディレクトリ上の
ファイル名でも1秒くらいかかる場合がある。
sedとかgrepとか呼ぶせいかなあ?

306:名無しさん@お腹いっぱい。
03/04/30 06:55
Cygwin だから

307:名無しさん@お腹いっぱい。
03/04/30 10:21
zsh で履歴に重複がある場合,
それを履歴に加えないような
.zshrc の設定方法ありますか?

308:動画直リン
03/04/30 10:25
URLリンク(homepage.mac.com)

309:名無しさん@Emacs
03/04/30 11:56
>>307
あります。
duplicate

310:名無しさん@お腹いっぱい。
03/04/30 15:44
>>309

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

どう使えばいいんでしょうか?

311:名無しさん@お腹いっぱい。
03/04/30 15:54
man zshoptions

312:名無しさん@お腹いっぱい。
03/04/30 16:50
setopt hist_ignore_all_dups

313:名無しさん@お腹いっぱい。
03/04/30 17:41
>>312
ローソン! …じゃなくて サンクス!

314:名無しさん@お腹いっぱい。
03/04/30 17:43
ギャー!!

315:名無しさん@お腹いっぱい。
03/04/30 17:53
すいません

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

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

hist_save_no_dups も同様です…

316:名無しさん@お腹いっぱい。
03/04/30 17:55
もうだめぽ

317:名無しさん@お腹いっぱい。
03/04/30 17:58
>>315
4.0.6使え

318:名無しさん@お腹いっぱい。
03/04/30 18:03
URLリンク(cgi14.plala.or.jp)

319:名無しさん@お腹いっぱい。
03/04/30 18:58
>>315 setopt histenablenullpo

320:名無しさん@お腹いっぱい。
03/04/30 19:29
ぬるぽ!?

321:名無しさん@お腹いっぱい。
03/04/30 20:09
>>319-320
ガッガッ

322:bloom
03/04/30 20:25
URLリンク(homepage.mac.com)

323:名無しさん@お腹いっぱい。
03/05/01 19:33
zsh シェルが動いているコマンドラインで,
その zsh のヴァージョンを調べるには?

324:名無しさん@お腹いっぱい。
03/05/01 19:38
zsh --version で出なかった?
man zsh でも最下部に出るかも

325:名無しさん@お腹いっぱい。
03/05/01 19:49
>>323
$ echo $ZSH_VERSION





326:名無しさん@お腹いっぱい。
03/05/02 21:28
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 です。


329:名無しさん@お腹いっぱい。
03/05/07 02:08
^[ は escape そのものをじゃないと駄目だが、それは大丈夫? `whoami` も %n
でいいような

330:名無しさん@お腹いっぱい。
03/05/07 02:14
$HOST も %m でいいような。
%% のところは %# の方がお勧め。

331:名無しさん@お腹いっぱい。
03/05/07 02:20
>>329
^[ をそのまま書いてました・・・
thxです。


332:名無しさん@お腹いっぱい。
03/05/07 17:33
option='-l -F'
ls $option
ls: オプションが違います --
詳しくは `ls --help' を実行して下さい.
zsh: 17896 exit 1 ls $option
となってしまうんだが、どういうことよ。bashだとできるんだが。

333:名無しさん@お腹いっぱい。
03/05/07 20:42
quote されてないときの挙動が違うから。bash などと同じにしたければ
setopt SH_WORD_SPLIT とすればよい。

一時的に変えたければ ls ${=option} とかね

334:332
03/05/07 23:39
>>333
よくわからんけど${=option}で解決したよ。ありがとう。

335:332
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
   川o・-・)ノ <先生!こんなのがありました!
URLリンク(www.muryou.gasuki.com)
URLリンク(muryou.gasuki.com)
URLリンク(www.muryou.gasuki.com)
URLリンク(muryou.gasuki.com)
URLリンク(www.muryou.gasuki.com)
URLリンク(muryou.gasuki.com)
URLリンク(www.muryou.gasuki.com)
URLリンク(muryou.gasuki.com)
URLリンク(www.muryou.gasuki.com)
URLリンク(muryou.gasuki.com)
URLリンク(muryou.gasuki.com)
URLリンク(www.muryou.gasuki.com)

338:名無しさん@お腹いっぱい。
03/05/08 02:32
set の出力を見れば判るけど、IFS の中身に NULL があるからでしょう。
env | grep LANG とでもしておけばいいんでは

339:名無しさん@お腹いっぱい。
03/05/08 02:42
>>338
あ、本当だ。
どうもです。

env|grep LANGで望み通りの動作しました。

340:名無しさん@お腹いっぱい。
03/05/13 02:45
最近MacOS10.2.6を使い出し、
ファイル名がUTF-8で戸惑っているのですが、
zshではUTF-8を通すことは出来ないのでしょうか。
検索したら186の質問が引っ掛かったのですが
そこでは解決していなかったので質問させていただきます。

341:名無しさん@お腹いっぱい。
03/05/14 09:22
chown ro として C-i すると、
chown root: になりますか?
chown root. になりますか?
この辺の挙動に関して教えてください。

342:481
03/05/14 09:43
>>341
root.となった。
echo ${_comps[chown]}
_chown
share/zsh/4.0.6/functions/_chownみるよろし。

343:名無しさん@お腹いっぱい。
03/05/14 10:07
>>342
$OSTYPE ってどこで定義されているんでしょうか?
いままで、: 立った気がするんですけどいつのまにか . になってたので……。

344:名無しさん@お腹いっぱい。
03/05/14 20:05
>>343
どこで定義されてるかはしらんけど、solarisでやったら:になったし、
linuxでやったら.になったぞ。

345:名無しさん@お腹いっぱい。
03/05/15 02:27
>>344
すいません。
~/.zshrc に OSTYPE=$(uname) というのを入れていた生でした。

346:名無しさん@お腹いっぱい。
03/05/15 03:29
sudo chown root: ここで C-i したときに、自分の所属していないグループを
補完するにはどうすればいいのでしょうか?


347:_
03/05/15 03:36
~oノハヽo~                
  ( ^▽^) < こんなのございまーす♪ 
URLリンク(www.hiroyuki.zansu.com)
URLリンク(hiroyuki.zansu.com)
URLリンク(www.hiroyuki.zansu.com)
URLリンク(hiroyuki.zansu.com)
URLリンク(www.hiroyuki.zansu.com)
URLリンク(hiroyuki.zansu.com)
URLリンク(www.hiroyuki.zansu.com)
URLリンク(hiroyuki.zansu.com)
URLリンク(www.hiroyuki.zansu.com)
URLリンク(hiroyuki.zansu.com)

348:名無しさん@お腹いっぱい。
03/05/17 02:46
コマンド打ってる途中でその行の頭に戻りたい場合、tcshならhomeキーで
戻れるけどzshじゃどうすれば戻れるか分かりません。
sudo後から付ける時とかカーソルキーで戻るのめんどくさくて・・・。

349:名無しさん@お腹いっぱい。
03/05/17 02:51
>>348
Emacs モードなら Ctrl-A とか。
ていうか、home キーで戻すってすごいな。

350:山崎渉
03/05/22 01:53
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―

351:名無しさん@お腹いっぱい。
03/05/22 17:19
emacsモードがあるということは、viモードもあるの?

352:名無しさん@お腹いっぱい。
03/05/22 17:23
>>351
あるよ。
man zshzle

353:名無しさん@お腹いっぱい。
03/05/22 22:05
うほっ!
つかいづれ…。

354:348
03/05/23 00:38
>>349
ほんとだ。戻れました。ありがとう。
emacs使えくせにemacsモードで使ってました・・・。


355:348
03/05/23 00:39
>emacs使えくせにemacsモードで使ってました・・・。
使えないでした。失礼しますた。

356:名無しさん@お腹いっぱい。
03/05/23 10:01
vi使いはviモードで使ってるんかね
イチイチ^[せなあかんって…使いづらくね?

357:名無しさん@お腹いっぱい。
03/05/23 10:08
使いやすい。ただ、一度コマンドモードに入った後、再び入力モードにはいると
以前に入力した文字がバックスペースで消えないのがつらい。
それと4xで4文字消して、.で繰り返しても1文字しか消えない。

358:名無しさん@お腹いっぱい。
03/05/23 11:48
参考までに URLリンク(csx.jp)

359::
03/05/24 14:15

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




360:名無しさん@お腹いっぱい。
03/05/24 19:43
>>357
bindkey "^H" backward-delete-char


361:357
03/05/24 20:48
>>360
ありがとう。というかいつのまにかviモードになってたみたい。
どうやらEDITORがvimになってるせいらしい。
bindkey -e
bindkey '^[' vi-cmd-mode
にした。

362:名無しさん@お腹いっぱい。
03/05/27 15:18
zshを常用しようか
tcshのままでいようか
激しく悩み中

363:名無しさん@お腹いっぱい。
03/05/27 15:40
おれはzshに乗り換えた。オタだから
tcshはzshと比べると
・若干省メモリ&機敏。
・シンプルなので設定が楽。
の2点がいい。普通に使うにはtcshで十分だな。

364:名無しさん@お腹いっぱい。
03/05/27 16:27
>>363
そうなんだけど、tcshの持つ妙なクセに最近イラついてきてる
俺もヲタだから乗りかえたいのは山々なんだけど
以前のzshrcを紛失した痛みと、メモリの都合で思案中
設定すんのが何より面倒くさい…。

365:名無しさん@お腹いっぱい。
03/05/27 16:58
事ある毎に少しずつ設定していってるからそちらはあまり問題では
なくなってきてるけど、機敏でないのが辛いので常用はtcshになってる。

366:名無しさん@お腹いっぱい。
03/05/27 17:17
>>365
一応設定おわらせた。
言うまでもないと思うけど、最適化はしてあるよね?
MMX pentium程度あれば、速度的な面は大丈夫だと思うけど。
あ、compinitとか使うとかなりのスペックを要するか。
俺は、未だにcompctlで補完させちょるよ。

367:RMSを時給600円で雇いたい
03/05/27 17:51
(pd)ksh程度のメモリの使用量で
zshくらい働けるshellキボンヌ

368:名無しさん@お腹いっぱい
03/05/27 21:15
zsh だと % wget URLリンク(hoge.com)
と簡単に猥褻図画をさくさく落せるんで, これは便利,
乗り換えようか, と. だが, zsh に乗り換える香具師は
皆そいうのが目的, というのが見透かされそうでもあり,
禿しく思案中でつ.

369:名無しさん@お腹いっぱい。
03/05/27 21:22
>>368
おいおい!みんながみんなそんなんじゃねえよ!もまいと一緒にすんなYO!

370:名無しさん@お腹いっぱい。
03/05/27 21:26
漏れはvimの連番になってるパチーを落すときに
かなり便利だった。
それ以外では、どこが他のshellに比べて優位なのかわからん。
いまいち、zshでなかればならないっていう理由もないな。
至高のナントカカントカっつーHPもむなしく感じる。
「tcsh なんてウンコ」

機能的にそれほどかわらんのに、無駄に重いところをみると
zshはタダのうんこではないな。
そういう意味では、タダのウンコのtcshよりは優れているのかもしれないが。

371:名無しさん@お腹いっぱい。
03/05/27 21:37
前の関連スレで紹介されているし、ちと古いけど。
URLリンク(www.gentei.org)

372:名無しさん@お腹いっぱい。
03/05/27 21:45
他の shell でもできるかもわからんけど、
漏れは scp でリモートの path を補完してくれるのにはたまげたな。

373:名無しさん@お腹いっぱい。
03/05/27 21:46
>>372
そんなん出来たのか
しらんかったよ、zshユーザーなのに。

374:名無しさん@お腹いっぱい。
03/05/27 21:55
w3m で ~/.w3m/history の中の URL を補完とか。

375:名無しさん@お腹いっぱい。
03/05/27 21:57
chown で user:group の補完とか。

376:名無しさん@お腹いっぱい。
03/05/27 21:59
configure のオプションの補完とか。
Makefile のターゲットの補完とか。

377:名無しさん@お腹いっぱい。
03/05/27 21:59
>>374-375
tcshでも設定しだいではいけそうだな。
zshでは、compinitすれば一発か?
起動が重いけど。

378:名無しさん@お腹いっぱい。
03/05/27 22:01
>>376
それも、zsh固有ではないなぁ。
っつーか、補完じゃtcshとたいしてかわらんべ。

ファイル名生成規則とか、コマンドラインスタックはtcshより優れてるな。

379:名無しさん@お腹いっぱい。
03/05/27 22:02
kill で pid の補完とか。
MH のコマンドで folder の補完とか。

380:名無しさん@お腹いっぱい。
03/05/27 22:04
>>379
MHコマンドつーのは何かわからんが
killのpid補完もいけるな。

補完ネタでは、格別優位ではないよ。
compinitで設定一発完了っつーのおいしいかもしれんがね。
リスクが無いわけではないけど。

381:名無しさん@お腹いっぱい。
03/05/27 22:05
まぁ、実際さ、bash と tcsh の違いが export か setenv くらいにしか
思ってないような奴が、zsh 使っても違いを感じないわけで。
以前 ksh や bash や tcsh をそこそこ使って、いまいち手になじまない
と感じた、違いのわかる漢がたどりつくシェルなのであって、一般人が
使うようなものではないと、そう思うわけですよ。ヲタクとしては。
そうですねぇ。わかる奴にはわかるんだけどねぇ、って感じですか。
あれですよ。普段 Windows とかで、たま~に ssh でログインしてさわっ
ているような奴には、違いはわからんと思いますよ。実際、この板に来て
る奴にも多いんですよ。そういうエセ UNIX 使いが。
いや、別に煽ってるわけじゃないんですよ。ヲタなもんで、どうしても
こういう書き方になってしまうんです(w

382:名無しさん@お腹いっぱい。
03/05/27 22:05
>>372
ゲ、マジだ。ビビツタ
だけど、補完しようとしたらpass聞かれた(ワラ

383:名無しさん@お腹いっぱい。
03/05/27 22:09
とりあえず、どうしてもここでtcshネタをやりたいなら
最低限これくらいは前提とした上でやってほすぃ。不毛。

URLリンク(tcshrc.sourceforge.net)

384:名無しさん@お腹いっぱい。
03/05/27 22:11
"^[a" accept-and-hold
"^[q" push-line
"^O" accept-line-and-down-history
"^[." insert-last-word
"^['" quote-line
このへんの機能はほかのシェルにはないよね?
あと便利なキーは何がありますか?

385:名無しさん@お腹いっぱい。
03/05/27 22:11
>>381
> 以前 ksh や bash や tcsh をそこそこ使って、いまいち手になじまない
> と感じた、違いのわかる漢がたどりつくシェルなのであって、
であるからには、zshをそこそこ使って、いまいち手になじまない
と感じる人間も否定しちゃいけないね。

その一線を越える人がたまにいるみたいで嫌になる。

386:名無しさん@お腹いっぱい。
03/05/27 22:15
>>381
俺は君がいうとおりの
>以前 ksh や bash や tcsh をそこそこ使って、いまいち手になじまない
という口なんだが
zshが何物よりも優れているとは思わんなぁ。
ただし、zshはデカいが小回りは効くな、かゆい所に手が届くというか。


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

pdkshも、ちょっとした不満さえ我慢できればかなり軽くて良いんだがね。
本家kshとの微妙な違いも、時として鼻につくこともあるが。

387:名無しさん@お腹いっぱい。
03/05/27 22:16
>>382
あ、そうそう、公開鍵なり ssh-agent なりで、
あらかじめ password 聞かれないようにしておく必要はありますです。

388:名無しさん@お腹いっぱい。
03/05/27 22:16
一線を越えた人はなに使うの? もしや scsh?

389:名無しさん@お腹いっぱい。
03/05/27 22:19
>>388
shだろうな

390:名無しさん@お腹いっぱい。
03/05/27 22:32
>>383の補完設定のやつ使っても
compctlで、ほんの少しだけ設定したzshと同じくらいのメモリの使用量だ。
tcshの方がメモリの面では、お得かな。

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

zshに移行してしまった後から、また悩む。

391:名無しさん@お腹いっぱい。
03/05/27 23:06
tcshのHISTSIZEはエントリの数だけど
zshはバイト数?

ヒストリのサイズはメモリに響くので
識者の方いらっしゃいましたら、回答キボンヌ

392:名無しさん@お腹いっぱい。
03/05/28 07:56
>>391
たしか過去スレにあったぞ。

393:名無しさん@お腹いっぱい。
03/05/28 09:06
zsh もエントリーの数だに

394:名無しさん@お腹いっぱい。
03/05/28 10:42
>>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)です。


398:名無しさん@お腹いっぱい
03/05/31 07:42
>>397
洩れのとこでは zsh で
% echo 'aaa\nbbb'
aaa
bbb
%
となるけど.
bash でも,そいうふうになるようにせい, いうのか,
zsh で aaa\nbbb と echo させたいのか?



399:名無しさん@お腹いっぱい。
03/05/31 08:44
# /bin/echo 'aaa\nbbb'
bbb'aaa\nbbb

俺はこうなったが。炒ってよし!

400:名無しさん@お腹いっぱい。
03/05/31 09:56
>>398
組み込みコマンドの echo と、/bin/echo は違うと思うよ。
zsh の組み込みだとそうなるけど、GNU の echo だと、

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

というようになるね。>>399 のようになるのは、知らん。

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

ヽ(´▽`)ノ zsh万歳



402:直リン
03/05/31 11:14
URLリンク(homepage.mac.com)

403:397
03/05/31 12:00
しまった。sage忘れたばっかりに…

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

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

ヽ(´▽`)ノ Eterm万歳







なんだ、悪いのはオレかよ…


404:398
03/05/31 20:05
すまそ, 組み込みコマンドでなくて,
/bin/echo の話だったのが分かってなかった
私をぶって. んでも, そんなら bash でも
zsh でも

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

でっせ, うちでは.

405:名無しさん@お腹いっぱい。
03/05/31 21:50
>>12のwikiはどうなってますか?
最近こちらを見始めて、激しく気になるのですが。

406:名無しさん@お腹いっぱい。
03/05/31 21:52
たぶん2ちゃんねらの事だから
荒らして潰したんでしょうね。

407:名無しさん@お腹いっぱい。
03/05/31 21:52
>>3
とかのリンクにはへんなのが混じっているようだけど、こういうものなの?

408:名無しさん@お腹いっぱい。
03/06/01 09:11
>>3
仕様

409:名無しさん@お腹いっぱい。
03/06/03 00:45
12のことをぜんぜんしらずにzshのWiki作りはじめてました。
需要ありますか?

410:名無しさん@お腹いっぱい。
03/06/03 06:54
あります

411:409
03/06/03 12:18
>>410

Pentium200MHzのノート鯖なんで、ちと負荷が辛そうです。
(というか、自分で使ってても、待たされてじりじりする)
近いうちに中身を別のいくらか速い奴に移すので、そしたらまた来ますわ。

412:名無しさん@お腹いっぱい。
03/06/03 18:04
>165
Terminal→ウィンドウの設定...→エミュレーション→「メタキーとしてoptionキーを使用する」をチェック→設定をデフォルトとして使用

413:名無しさん@お腹いっぱい。
03/06/03 18:48
printf hoge
で、hogeと表示される?
俺のはナニも表示されず(tcsh, bashではOK)原因特定に手間取った。

414:名無しさん@お腹いっぱい。
03/06/03 20:07
>>413
>>232-236 あたりを

これもいい加減 FAQ だから、次スレのテンプレに入れた方がいいな。
大部先の話だが(w

415:名無しさん@お腹いっぱい。
03/06/03 20:33
>411
マジか
期待して待ってます

416:413
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


418:名無しさん@お腹いっぱい。
03/06/03 23:27
7桁にしている人を初めてみた。というか、なんでそんな値

419:名無しさん@お腹いっぱい。
03/06/04 01:10
高林さんのを参考にしました。今 600Kくらい。


420:名無しさん@お腹いっぱい。
03/06/04 02:19
単位はエントリーの数なんだが

421:名無しさん@お腹いっぱい。
03/06/04 08:17
俺は10000を超えたら別ファイルに保存してる。
起動が遅くなるからね

422:名無しさん@お腹いっぱい。
03/06/04 17:33
おれも一年ほど前から history は富豪的に使うようにした。
C-r でインスコ時からの記録が全て検索できるので便利。

423:422
03/06/04 17:44
とは書いたが、
>>417 はおれの設定と二けたも違ってるな。
百万もどうやったらたまるんだ。(笑)
setopt hist_ignore_dups
setopt hist_ignore_all_dups
こうしてるから、最近 history の増加率が減少してきたよ。

424:名無しさん@お腹いっぱい。
03/06/04 17:53
>>417 はものすごい速さでキーを叩くんだろう。
ホームディレクトリが NFS だったりしたら、zsh の起動や終了が重くて大変そうだ。

ところで、X 上の仮想端末で zsh 使ってる場合、
X を終了したときに history って保存されるの?

425:名無しさん@お腹いっぱい。
03/06/04 19:10
>>424
やってみたら?

426:名無しさん@お腹いっぱい。
03/06/04 19:12
昔のhistoryを見るのは結構おもしろい。

427:名無しさん@お腹いっぱい。
03/06/04 19:25
setopt HIST_IGNORE_DUPS として、現在履歴が 45000 程溜まっているけど、
それでも一番古いもので一年ちょっと前。100万溜めるのはかなり大変そうだな(w

>>422
X を使うなら setopt SHARE_HISTORY か setopt INC_APPEND_HISTORY として
おかないと、かなり不便のような

428:名無しさん@お腹いっぱい。
03/06/04 19:31
>>424
setopt share_historyして、10000人くらいで同時に同じアカウントで使ってるんじゃないの。

429:422
03/06/04 19:54
>>425
history ファイル見てみたらタイムスタンプが前回 X を終了した時刻になってたから、
logout じゃなくて signal 受けて終了するときにもちゃんと保存するのかな。

>>427
HISTFILE=~/.zsh_history.$HOST.$tty
とかやってるからそれほど不便ではないです。

430:417
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 にしておきました。


431:名無しさん@お腹いっぱい。
03/06/04 21:24
byteじゃないだろ。
The maximum number of events stored in the internal history list.

432:名無しさん@お腹いっぱい。
03/06/04 21:53
zsh のスレでは、何故か byte 単位とか言う奴が時々出てくるのが謎
もしかして他にそんな shell があるのか

433:417
03/06/04 21:59
>>431
ああ、ほんとだ。メモリ上に保存されるヒストリの数なんですね。
ありがとうございます。


434:名無しさん@お腹いっぱい。
03/06/04 22:20
>>432
漏れもウェブサイトかどっかで何度かそんな記述を見た憶えがある。
この都市伝説の出所きぼんぬ。

435:名無しさん@お腹いっぱい。
03/06/04 22:25
このスレが出てきてワロタ
URLリンク(www.google.co.jp)

436:名無しさん@お腹いっぱい。
03/06/05 01:02
ハゲワラ

437:431
03/06/05 09:45
>>434
俺もどっかのサイトで見たことがある。
このスレで指摘されるまではサイズだと思ってた

438:名無しさん@お腹いっぱい。
03/06/05 15:32
あんたもだったのかよ(w

439:名無しさん@お腹いっぱい。
03/06/05 18:06
ファイル名補完などで、通り過ぎてしまった補完候補に戻ることってできますか?

440:名無しさん@お腹いっぱい。
03/06/05 18:20
自分は reverse-menu-complete を適当に割り当てている。
戻るだけだったら、undo (C-x C-u、C-x u) でも用は足せるけど

441:名無しさん@お腹いっぱい。
03/06/05 18:23
undo に C-_ を忘れていた。C-/ で C-_ を吐く端末も多いからこれが一番楽か

442:439
03/06/05 18:55
>>440
そんな便利なコマンドがあったのですか!
man zshzleは一通り読んだつもりだけど気づきませんでした。
undoでもできるんですね。

最近知ったんですけどredoもあるんですね。
bindkey -a '^R' redo
bindkey -a u undo
でvimっぽくして使ってます。使う機会ないけど。

443:名無しさん@お腹いっぱい。
03/06/05 20:41
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 を駆使すれば対処できるのかもしれないが。

誰かうまい方法を知っていたら教えてたもう

444:名無しさん@お腹いっぱい。
03/06/06 02:44
最初だけ 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
相互リンクかよっ。

445:名無しさん@お腹いっぱい。
03/06/06 05:26
>>444
相互リンクにワロタ


446:名無しさん@お腹いっぱい。
03/06/06 12:43
>>444
[ self-insert = "$LASTWIDGET" ] の方が望みの動作をしてくれるので、
こちらにして快適になったよ!! 助言有難きかな

あと、自分も zshzle をちゃんと読むべきだったな(w

447:411
03/06/07 06:31
>>411です。

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

DNS情報がまだ伝搬しきってないと思いますが、
URLリンク(hiki.ex-machina.jp)
でどうぞ。

古いマシンのほうにアクセスしてしまうようなら、
URLリンク(volans.ex-machina.jp)
URLリンク(218.219.152.75)
も試してみてください。

448:名無しさん@お腹いっぱい。
03/06/07 10:14
>>447
乙彼

449:名無しさん@お腹いっぱい。
03/06/07 23:28
>>447
お疲れ様。良い感じに出来てますね。

ただ、色が淡くて読みづらい&目が疲れる かもです・・・。

450:名無しさん@お腹いっぱい。
03/06/07 23:53
確かにちょっと目に厳しいかも

451:447
03/06/08 03:16
色についてはちょっといじってみますね。

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


452:名無しさん@お腹いっぱい。
03/06/08 15:30
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 URLリンク(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 が出てくるようになるでしょうか。



次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch