[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 12:41 / Filesize : 219 KB / Number-of Response : 1004
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

zsh入門 パート2



1 名前:名無しさん@お腹いっぱい。 [02/11/03 20:49]
パート2ですよ,にーさん


595 名前:名無しさん@お腹いっぱい。 [03/09/05 21:18]
(´-`).。oO(2行ってかっこいいのか?ダセーよキモイし)

596 名前:名無しさん@お腹いっぱい。 [03/09/05 21:19]
(´-`).。oO(>>582はキモヲタ)

597 名前:一行でも二行でもなんでもいいだろが mailto:sage [03/09/05 21:21]
なんかウザいのが粘着してるな
zshユーザーってこんなのばっかりなのか?

598 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/05 21:25]
本当に本が欲しいところ。ハァァ…

599 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/05 21:26]
>>597
ウザくない奴は書き込まないから、こういうのばかり目立って
zshユーザはこんなのだ。と勘違いしているだけ。

600 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/05 21:29]
>>597 厨房必死だな
おまえなんか死ね
zsh最強

601 名前:名無しさん@お腹いっぱい。 [03/09/05 22:05]
zshは正直ウザいね

602 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/05 22:52]
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 のディレクトリが合わなくってしまうので、まだ使っていません。
この辺解決された方いますか?




604 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/06 01:18]
>>603
子プロセス (term の中の shell) のカレントディレクトリを得るのが難しいから
無理そうな気もするね。
それこそ、 RPROMPT に埋め込んだカレントディレクトリを term が watch しとく、
みたいなんができると解決できるのかな?

605 名前:603 mailto:sage [03/09/06 02:01]
>>604
仰せの通り、カレントディレクトリはプロンプトから得れば良いですが、
term-send-raw() に advice する時にちょっと工夫しないとダメそうです。
この関数は何か入力されるとコールされる関数のようですので、
`Enter'が入力された時だけ default-directory を更新し、
`a'が入力された時などは子プロセスのカレントディレクトリを
検索しないようにしないと使い物にならないみたいです。


606 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/06 03:21]
>>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'.

607 名前:581 mailto:sage [03/09/06 09:05]
>>606
ありがとう。
${(P)$(echo bar)}こんなこともできるんですね。

608 名前:名無しさん@お腹いっぱい。 [03/09/06 14:15]
右プロンプト邪魔臭いよね。俺は端末エミュレータのタイトルに色々
表示させてる。結構便利。

609 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/06 17:10]
X上ではいいが、普通のコンソールではそれができないからなあ

610 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/06 17:23]
%20<...<%~%<< とかやって適当に切り詰めてみては

611 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/06 17:29]
www.dreaming.org/~giles/bashprompt/prompts/flex.html
bashのプロンプトだけど、画面の右上にプロンプトが出る。

612 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/08 01:27]
たしかに、わざわざ右見るのが嫌で
%3~ とかしてるので、PWDを表示する用途ではRPOMPTは必要なしだな。
で、RPOMPTは何に使ってるの?


613 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/08 06:54]
>>612
pwd



614 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/08 07:45]
>>612
PWD

615 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/08 17:48]
>>612
おれはpwdだ。

616 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/10 00:42]
$と%って、なんか歴史的な意味合いがあるの?

617 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/11 13:53]
>>612
時刻{ヒストリ# or Error#}ホスト名

618 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/11 18:23]
時刻   いらね
ヒストリ# いらね
ホスト名  左
pwd    左


619 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/11 20:31]
プロンプトなー。俺はこんな感じにしてる。
PS1=$'[%n@%m] (%~)\n%# '
2行って初めは違和感あったけど、慣れると使いやすい。
RPS1は初めのころ使ってたけど、出たり消えたりするのが
ちょい欝陶しかった。

620 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/12 01:47]
二行とかいうと
またウザいのが粘着しだすからやめて。

621 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/12 04:33]
3行以上って香具師いる?

622 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/12 09:55]
ホスト名とかはscreenのcaptionに表示させてるYO!

623 名前:名無しさん@Emacs mailto:sage [03/09/12 12:20]
kterm 使ってたときは、プロンプトは % だけの
シンプルなものにして、ホスト名とディレクトリは
status line に表示させたりしてたな。




624 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/12 17:15]
>>582
設定パクらせていただきますた。

625 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/12 22:56]
zshで
cd /u/l/b [TAB]

cd /usr/local/bin
と補完する方法はありますか?
あったら教えてエロい人!!

626 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/12 23:24]
>>625
できるけど、どの設定か忘れた。
オプションは>>554

627 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/12 23:56]
>>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じゃ上手くいかない…。
何かが足りないのか、バージョンによる違いなのか…。

628 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/13 00:30]
>>627
>>626 は「オプションは」と言っとるだろが。 setopt complete_in_word じゃないの?

629 名前:628 mailto:sage [03/09/13 00:36]
あぁ、後半読んでなかった。確かに compinit 使わないとうまくいかない。逝ってきます。

630 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 19:14]
zsh重すぎ
こんなの常用してる香具師の気がしれんな。

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

tcsh
bash
ksh
なら、呼び出した途端に起動するというのに。

631 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 19:16]
compinitが重い原因なのわかるが
こいつがなきゃロクに補完もできないじゃないか。

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

zsh最低。

632 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 20:02]
Zsh 、良くも悪くも富豪シェル

633 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 20:20]
shellなんてそう頻繁に起動するもんじゃないし、いいじゃないか。



634 名前:名無しさん@お腹いっぱい。 [03/09/15 20:45]
>>633
screen使うようになると、shellバンバン起動します。

あ、それともzshユーザーはshellは一個で我慢してるの?

635 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 20:45]
>>633
>>630 はシェルスクリプトに tcsh やら zsh を使ってるアホ

636 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 20:46]
>>634
まっとうな screen 使いはめったに shell 終了させないのでめったに起動もしません。

637 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 20:56]
>>636
cd や lsにしかshell使わないならそれもいいだろうけど
フォアグラウンドで時間のかかる処理させてると
もう一個シェル欲しくなるのは人情というものではなかろうか。

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

という認識でよろしいか?

638 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 20:57]
>>636
確かに1つは上げっぱなしだけど、screen の window をちょくちょく増やした
りしない?


639 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 20:59]
>>638
まっとうなscreen使いはwindow1つです。
アタッチもデタッチもしません。
screen一つです。

640 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:04]
まあ、ある意味zsh + screen使いは強者だな。
悪く言えば馬鹿なんだろうけど。

641 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:07]
>>635
スクリプトとしてzshを使う場合
重い印象ないんだけどね。
メモリもそんなに喰わないし。

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

でも、compinitしてるときはわからん。
うちはcompinitしない主義なので。

642 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:11]
別にシェルの起動が5秒短くなったところで、仕事の効率は変わらないよ。

643 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:15]
>>642
それ、負け惜しみとも泣き言とも取れるんですが。
そんなこと言わずに、改善していきましょうよ。


5秒も待たされるこのイライラ。
俺は嫌でたまりませんね。
廃れゆくcompctlで頑張ってますが
いつ、まともに動かなくなるか。



644 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:21]
screen+zsh だったらバックグラウンドで起動すればいいんじゃない?
確かに時間かかるけど、せっかくマルチタスクなんだからじっと待つ
必要はないわけだし。


645 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:23]
zshで唯一 絶対的に他のものより優れていえる部分は
ファイル名生成機能とコマンドラインスタックだと思う。
そのためだけに使ってるといってもいい。
(つまり、それほどの魅力がある)

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

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

ログインシェルはtcsh
スクリプトはbash
とかもいいと思う。


646 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:27]
>>644
zsh単体でもバックグラウンドでもいいと思うが
処理内容を表示"させたい"場合はバックグラウンドに回すと
えらい邪魔くさい思いをすることになる。
(プロンプトが表示されたと思ったら処理内容が流れてきて邪魔する)
フォアグランドで動かして、screenで別にWindowにして
そっちで続きの作業する。もしくは別の仮想端末立てて
作業を同時進行する。これもマルチタスクらしい使い方だと思うけど。

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



647 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:30]
普通にもう一つシェルを起動させればいいじゃない。
待ち時間が我慢できない人は他のシェルを使えばいいだけだし。

648 名前:名無しさん@お腹いっぱい。 [03/09/15 21:32]
そうです!
zshは最強なんだから改善の余地などないのです!!
どんどん機能盛り込んで重くなることこそが目的なのです!!
性能低いビンボー人は死ぬまでkshでも使ってなさい!!

649 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:33]
zsh = Unix界のWindows

650 名前:名無しさん@お腹いっぱい。 [03/09/15 21:42]
age

651 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:50]
もう夏休み終わったんだけどなー

652 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 21:51]
夏休みが終ったからzshユーザーはいなくなったんですね。

653 名前:名無しさん@お腹いっぱい。 [03/09/15 21:53]
zshは最強だよ
間違いない
最強のシェル



654 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 22:01]
>>641

compinitはふつー.zshrcでやるものなので、
スクリプト(=対話モードで起動されていない)
では実行しないのでは?

655 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 22:05]
>>654
だね。
だからスクリプトとして実行するときは重くないわけだ。
まあ、kshやらbashからしてみりゃデカいが
zshでスクリプトやるのも面白いよ。

656 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 22:06]
熱くなってるとこ悪いんだけど、zsh でも複数起動はできるんだよ。
確かに起動は遅いけど、待ってれば起動するんだよ。


657 名前:名無しさん@お腹いっぱい。 [03/09/15 22:10]
そうです!!
zshユーザーはセッカチな厨房とは違うのです!!
とにかく待つのです!!メモリをいくら消費しようとも気にならない寛大さがあります!!

658 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 23:10]
煽るといろんな意見や本音が聞けて楽しい。

659 名前:644 mailto:sage [03/09/15 23:33]
>>646
いや、screen で Create したまま放っておけばいいのでは、って後半に
書いてるね。誤解を招く表現でスマソ。


660 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 23:35]
>>646
アファなの?

661 名前:名無しさん@お腹いっぱい。 [03/09/15 23:41]
zshユーザー必死

662 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 23:45]
>>661
zsh スレで必死になるぶんにはええやん。

663 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/15 23:52]
>>662
たしかに

イキロ zshユーザー



664 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 10:32]
$ 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秒でした。


665 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 10:54]
zsh + screen + nxt が最強

666 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 11:25]
以前から起動に5秒とかいってるやつって、
100MHzぐらいのマシン使ってるの?

667 名前:名無しさん@お腹いっぱい。 [03/09/16 11:38]
対話的に実行される場合と
スクリプトとして実行される場合の区別もつかない香具師がいるようです

668 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 14:40]
WinホストのVMware内のFreeBSD + screen + zshでwindow増やすと
HDDがスリープしてるときは、5秒ぐらいかかるね。

669 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 14:43]
Cygwinのzshだけど、1秒以内で起動するよ

670 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 15:16]
ちゃんとcompinitしてる?
いいなぁ。

671 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 15:16]
>>667
もしかして、>>664 では compinit が実行されないと言うことですか。
ではどうすればいいのだろう。

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

こんな感じ?

>>668
それは zsh の実行速度とは関係ないような...


672 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 19:50]
screenで最初に3つぐらい起動しとけば、平均一週間くらいもつから起動時間
なんて気にしない。
echo $SECONDS
106345

673 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 20:05]
漏れも screen 内に常時 5匹 zsh 飼ってて、
終了したり新たに立ち上げたりとかは滅多にしないので、
起動に時間掛かっても気にならないなぁ。



674 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 20:43]
俺10匹.でもCtrl-Dでよく死ぬのでちょくちょく起動し直してる
でもあまり気にならない.zshが古いからかな

675 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 21:00]
ファイル名生成機能(というか**/)だけのために zsh 使ってるんですが
他に使えるシェルないですか?

676 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 21:01]
>>674
3.0.5あたりか?だとしたら古過ぎ。

677 名前:674 mailto:sage [03/09/16 21:18]
3.0.8みたいです.古すぎ?


678 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 21:23]
>>677
軽すぎ。

679 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 21:26]
>>677
バッファに^Dが残ってしまうという問題がその頃に修正されたのでは
なかったかな? ttp://www.zsh.org/mla/users/1998/msg00425.html

俺は最初からignoreeof派なのでzshが落ちるということはなかったが

680 名前:674 mailto:sage [03/09/16 21:43]
>>679
それはならないみたいです.
ただ単純に連打しすぎるだけです.

使い慣れてないので,あまりバージョンによる違いがわかりません...
軽いならいっかな.

681 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 21:52]
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

682 名前:676=679 mailto:sage [03/09/16 22:01]
>>680
> ただ単純に連打しすぎるだけです
ignoreeofは?

> 使い慣れてないので,あまりバージョンによる違いがわかりません...
俺も長い間3.0.x系に留まっていたので最近の補完機能はわからん。
かといって当時書いた補完の設定を移植するのも面倒なので最近は
ファイル名生成({01..52}とかw)だけのためにzshを使っている。

683 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 22:24]
4.0.4使ってるが、compinit 利用してても
1GHzマシンで1秒もかからんぞ。



684 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 22:26]
連打するような状況のときは Alt + D しる

685 名前:674 mailto:sage [03/09/16 22:35]
>>682
^Dで終了するのも好きなので,まあたまに間違ってもいいかなあと

>>684
Alt+Dでどうなるの?
やってみてもzsh終了するけど.やり方が違うのか?

686 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 22:48]
3.1.6あたりで、compinitせずに使うのが理想的かも
軽い軽い

687 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/16 22:52]
ちなみに、compinitが正式採用されたのは3.1.6。
multicomp使いたいので、3.1.5にしようかと思ったら
ラージファイルに対応してなかった。
vmware使ってるとデカいファイル扱うことがあるので
ラージファイル必須。

688 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/17 17:49]
zshだめぽ
kshが最強です。

689 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/17 17:57]
pdkshにzshにglobが移植できないものかと奮闘中
すげー難しいです。

690 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/20 03:51]
ファイル名補完の順番を、カレントディレクトリのものを最優先
にするにはどうすればいいんでしょうか?

691 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/20 03:55]
何もせずともカレントのものを優先してますが何か?

692 名前:690 mailto:sage [03/09/20 05:07]
そうならないことがあるんですが。
CDPATHを設定しているせいでしょうか?

693 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/21 22:46]
>>581
eval echo \$$hoge
eval echo $`echo $hoge`
eval $hoge=aaaa




694 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/22 00:53]
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH"

path=( /bin /usr/bin /usr/local/bin $path )
って結果が違うんだな


695 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/22 09:11]
>>694 いっしょじゃねーかよ。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<219KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef