トップページunix
981コメント260KB

zsh その4

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。05/02/02 20:03:26
zshのスレその4です。

過去スレ
zsh入門
http://pc.2ch.net/test/read.cgi/unix/990283346/
zsh入門 パート2
http://pc3.2ch.net/test/read.cgi/unix/1036324177/
zsh その3
http://pc5.2ch.net/test/read.cgi/unix/1080002786/

>>2-3リンク
0554名無しさん@お腹いっぱい。2006/12/15(金) 19:37:26
>>552
csh/tcshからの移行組に対するリハビリモードだから。
社会復帰できたらちゃんと PS1='$ ' に設定するのが望ましい。
0555名無しさん@お腹いっぱい。2006/12/16(土) 05:32:14
wiki消えるぞ〜
http://hiki.ex-machina.jp/zsh/index.cgi
>重要 勝手ながら、都合により本サービスを停止することに致しました。停止予定日は2007年1月10日を予定しております。
>予定日までに http://wiki.fdiary.net/ など他のHikiFarm?への移動をお願いいたします。(2006.12.7)
0556名無しさん@お腹いっぱい。2006/12/17(日) 21:56:04
cygwinでzshを使い始めた若輩者です
解説サイトを見てますと起動時に ~/ 以下の
.zshrc .zshenv .zshprofile .zlogin が読み込まれることが前提のようなのですが
自分の環境ですと .zshrc しか読み込みません
他の3つの設定を読み込むにはどこに設定すればいいのでしょうか?
0557名無しさん@お腹いっぱい。2006/12/17(日) 23:19:24
/etc/zshenv 常に(-fの時も)
~/.zshenv 常に
/etc/zprofile -l(loginシェル)の時
~/.zprofile -l(loginシェル)の時
/etc/zshrc 対話モードの時
~/.zshrc 対話モードの時
/etc/zlogin -l(loginシェル)の時
~/.zlogin -l(loginシェル)の時
0558名無しさん@お腹いっぱい。2006/12/18(月) 11:33:40
/root が 700 で下のように zsh で先に * が
展開されちゃうのはどう回避したらいい?

$ sudo ls -l /root/*
zsh: no matches found: /root/*
0559名無しさん@お腹いっぱい。2006/12/18(月) 12:36:56
shell について勉強し直すのが先でそ
0560名無しさん@お腹いっぱい。2006/12/18(月) 15:15:53
>>557
ありがとうございます。
おかげで全部のファイルの読み込みが出来ました。
zshenvが読み込まれてないと思ったのは
ファイルの最初に書いてる echo をコメントアウトしてしまっていました。
0561名無しさん@お腹いっぱい。2006/12/20(水) 01:29:26
>>555
消えるんだ。。。もったいない。

ここいったいどんな管理になっているのだろう
連絡先とか管理者とか何も書いてない。
勝手に、コピーして違うページに公開するわけにはいけないし。。。


>http://wiki.fdiary.net/ など他のHikiFarm?への移動をお願いいたします。
って、ことは、勝手に移してよい?
それとも、サーバ管理者が、wiki管理者に移動を依頼しているのかよくわからね。。。
0562名無しさん@お腹いっぱい。2006/12/20(水) 01:32:58
>>561
移していいんじゃない?
0563名無しさん@お腹いっぱい。2006/12/20(水) 11:50:29
>>561
頼む。
とりあえずやっておいて、もし重複したりしたら後で消せばいいんじゃないの?
0564名無しさん@お腹いっぱい。2006/12/21(木) 17:15:13
ライセンスはどうなってるのよ。
勝手にコピー公開していいのか?
0565名無しさん@お腹いっぱい。2006/12/23(土) 15:18:05
>>564
それが、問題だな。。。
0566名無しさん@お腹いっぱい。2006/12/23(土) 20:50:50
書いた人のライセンス? サービス側のライセンス?
一部書いた人間としてはコピーしておくれって感じだが。
0567名無しさん@お腹いっぱい。2006/12/24(日) 02:09:41
まずは移転先を確保。
次に自分が書いた箇所を移転先にコピー。
残りは破棄。

これで問題なかろう。
0568名無しさん@お腹いっぱい。2006/12/24(日) 09:53:30
別に特定のライセンスとか明記していない
いわば「便所の落書き」を
よそに移したって問題なかろう
0569名無しさん@お腹いっぱい。2006/12/24(日) 11:11:28
阿呆か
0570名無しさん@お腹いっぱい。2006/12/25(月) 03:01:44
厳密には、便所の落書きでも2chの書き込みでも、書いた人に著作権とかの権利がある。
きっとコピーするには、編集した人全員に許可をもらう必要があると思うけど、、、
でも、そこまで厳密にする必要も無いと思うからWikiを創めた人(Wiki管理者)が、
許可したら移して良いと思う。

というわけで、誰かWiki管理者のふりをしてwiki書き換えといてくれ。。。と冗談を言ってみる。
0571名無しさん@お腹いっぱい。2006/12/27(水) 22:02:07
ライセンスが確定していなかった以上、別のWikiへの転載は禁止。
もったいないが、仕方がない。

てことでFA?
0572名無しさん@お腹いっぱい。2006/12/27(水) 23:01:47
阿呆か
0573名無しさん@お腹いっぱい。2006/12/27(水) 23:21:10
新しいwikiにコピーさせてもらって、
ライセンスのことは注意書きとして書いておけばいい。
0574名無しさん@お腹いっぱい。2006/12/28(木) 04:32:09
くだらねえな
・このスレのまとめを新たに作る
・Wiki移転
やってることの本質は変わらんだろ。
著作権法を軽んずる気はないが、意味のおかしい会話になっている。
0575名無しさん@お腹いっぱい。2006/12/28(木) 07:35:59
素直に著作権法は無視といえばいいのに。
0576名無しさん@お腹いっぱい。2006/12/28(木) 11:40:56
新たにまとめたら同じになった!

同じ元ネタを同じようにまとめたんだから当然だよな!
0577名無しさん@お腹いっぱい。2006/12/28(木) 11:53:17
あるあるw
0578名無しさん@お腹いっぱい。2006/12/28(木) 11:53:51
再実装ってやつだな
0579名無しさん@お腹いっぱい。2006/12/28(木) 12:00:10
たまたまならしょうがないよな
0580名無しさん@お腹いっぱい。2006/12/29(金) 13:17:24
bindkey で割り当て可能なコマンドの一覧てどこにあるんでしょうか
コマンドラインスタックをESC-q から Ctrl-q に変えたくて探してます
0581名無しさん@お腹いっぱい。2006/12/29(金) 14:20:18
stty を調べろ、に一票
0582名無しさん@お腹いっぱい。2006/12/29(金) 16:43:18
使い方を間違ってるのか stty -a だと以下の項目しかでませんでした…。
intr, quit, erase, kill, eof, eol, eol2, swtch, start, stop, susp, rprnt, werase, lnext, flush

backward-kill-lineなど他の項目はどう見つければいいんでしょうか
0583名無しさん@お腹いっぱい。2006/12/29(金) 17:04:08
>>581 は「知ったか」に1票。

zshの bindkeyの話なので、stty(低レベルの端末設定)とは関係ない。
0584名無しさん@お腹いっぱい。2006/12/29(金) 17:09:19
探してるのはこういうのか?
http://zsh.sourceforge.net/Doc/Release/zsh_29.html

これはちょっと古いけど、普通にインストールしてるなら
ローカルにも同じようなのがあるでそ。
0585名無しさん@お腹いっぱい。2006/12/29(金) 19:08:30
>>583
ありがとです
>>584
そうです。ありがとうございます
コマンドラインスタックは push-line なんですね
ずっと buffer stack で探してました…。
0586名無しさん@お腹いっぱい。2006/12/30(土) 00:30:21
>>585
Esc-q にbindされている関数の名前だけ分かればいいなら
bindkey |grep q
すりゃわかると思う。
一覧ではないから>>580の答えではないが。

>>581はC-qがsttyで割り当てられてるって話でそ。
C-s/C-qなんて今更使わんが。
0587名無しさん@お腹いっぱい。2006/12/30(土) 01:41:47
stty で奪われてたら zsh で扱いたくても扱えないでそ

> C-s/C-qなんて今更使わんが。

「使わない」には同意だけど大抵設定はされてるでしょ
0588名無しさん@お腹いっぱい。2006/12/30(土) 11:53:03
>>586
普通 M-x describe-key-briefly でそ?
0589名無しさん@お腹いっぱい。2007/01/05(金) 01:43:53
HIST_SAVE_NO_DUPS と HIST_IGNORE_ALL_DUPS ってどう違うんですか?
zsh のマニュアルによると

HIST_SAVE_NO_DUPS
When writing out the history file, older commands that duplicate
newer ones are omitted.

HIST_IGNORE_ALL_DUPS
If a new command line being added to the history list duplicates
an older one, the older command is removed from the list (even
if it is not the previous event).

こういう違いがあるようなんですが、よくわかりません。
0590名無しさん@お腹いっぱい。2007/01/05(金) 04:50:28
重複削除をどの時点で行うかが違う。

よくわかりませんで思考停止するんじゃなくてもうちょっと考えてみなよ。

・どこまでわかっていて、よくわからないのはどの部分なのか、
・わからないところはどのような可能性が考えられるか、
・それらの可能性が本当かを確かめるにはどうすればいいか、

を自分で考えるようにすればもう少し読解力が高まると思われ。
0591名無しさん@お腹いっぱい。2007/01/05(金) 07:16:54
書き込みのあとそれぞれ設定して調べたところ、
前者はシェルを抜けた段階でヒストリファイルの重複を削除するのに対して
後者は即時にメモリ内?のヒストリ重複を削除してるっぽいことがわかりました。
いずれもシェルを抜けた段階でファイルの重複は消されるようなので
設定は片方だけでよさそうですが、
share_history などの設定もいろいろ影響してそうなので
それ以上はつきつめて調べてません。
590 さん、助言どうもありがとうございました。
0592名無しさん@お腹いっぱい。2007/01/05(金) 08:43:16
手元の .zshrc だと

setopt hist_ignore_dups # 前後のダブりのみ消す
setopt hist_ignore_all_dups # ヒストリに追加されるコマンド行が古いものと同じなら古いものを削除

と両方書いてあるな。
説明はmanualのまんまだ。
0593名無しさん@お腹いっぱい。2007/01/05(金) 16:40:36
wiki移転完了(たぶん)
ttp://wiki.fdiary.net/zsh/

XML-RPCでガーーーッと移動してちょこっといじっただけ。
変なとこあったら修正よろしく。
0594名無しさん@お腹いっぱい。2007/01/06(土) 18:38:01
>>593
おつかれ、サンクス
0595名無しさん@お腹いっぱい。2007/01/18(木) 20:02:39
同僚に薦められてzshに移行したばかりのものです。

いきなり質問で恐縮ですが、

コマンドラインで、第二引数だけをヒストリから補完とか可能でしょうか?
可能でしたら方法をお教えください。

具体的には、あるコマンドを(第二引数の)ファイルに実行した後で、
別のコマンドをそのファイルに実行したい時に、簡単な操作で
第二引数を呼び出したいのです。
0596名無しさん@お腹いっぱい。2007/01/18(木) 21:10:44
M-. (insert-last-word) かな?
05975952007/01/18(木) 21:17:18
>>596
おお、ありがとうございました。
できましたw

zshの強烈な補完に感動してます。

ありがとうございました。
0598名無しさん@お腹いっぱい。2007/01/23(火) 06:52:27
predict-on, predict-off を同じキーに配置して
オンならオフ、オフならオンに変更するために predictの状態を知りたいんですが
どうやったら調べられるんでしょうか?
0599名無しさん@お腹いっぱい。2007/01/24(水) 04:17:04
状態を示す変数でも作ればいいじゃないの
0600名無しさん@お腹いっぱい。2007/01/24(水) 05:38:07
>>599
ああ、そうかなるほど。
助かりましたありがとうございます
アホなりになんとかできました
0601名無しさん@お腹いっぱい。2007/01/30(火) 04:58:45
このスレもぼちぼち立ってから2年か。読み返しみると結構レス書いてるな。
実は少人数で廻してるのか。
0602名無しさん@お腹いっぱい。2007/02/06(火) 17:24:08
for i in param1 param2 ...
do
いろんな仕事を param 毎に
done
ってやりますけど,各ループ実行に 2個づつ,3個づつみたいな
パラメータの渡し方って可能でしょうか?

python でいうところの
for i,j in ( (x1,y1), (x2,y2), ...)
とすると $i, $j でそれぞれ x1, y1 が参照できるみたいな
ことなんですが。
0603名無しさん@お腹いっぱい。2007/02/06(火) 19:23:28
関数の中で
while [ $# -gt 0 ]
do i=$1;shift;j=$1;shift
...
done
とかやればいいんじゃないの?
0604名無しさん@お腹いっぱい。2007/02/06(火) 19:42:32
for i j in param1 param2 ...
06056022007/02/07(水) 02:05:24
>603
なるほど〜 とおもったところで
>604 ってナンだろう? と目を擦って…

ガーン!!! そんなのアリだったのか〜

info zsh したら確かにそう書いてある!!

for NAME ... [ in WORD ... ] TERM do LIST done
.snip.
More than one parameter NAME can appear before the list of WORDs.

ありがとうございます
0606名無しさん@お腹いっぱい。2007/02/09(金) 09:38:07
MYCOM コラム『漢のzsh』
ttp://journal.mycom.co.jp/column/zsh/001/
こんなん始まったね。
0607名無しさん@お腹いっぱい。2007/02/09(金) 11:06:01
>>606
お、これ面白いね。早速ブクマクした
てゆーか数年zsh使ってたが、"ls -"の後の補完でオプション出るの知らんかった・・・アホだな俺。。
0608名無しさん@お腹いっぱい。2007/02/09(金) 12:40:10
これだけだと面白くなるかどうかまだわからんw
WEB上だけの連載なのかな。

UNIX USER の連載は書籍化もされず、WEB で公開されることもなく
埋もれていくのか。本誌は休刊しちゃったし。
0609名無しさん@お腹いっぱい。2007/02/09(金) 12:59:28
zshマスターだけちぎってUNIXUSER全部捨てた
0610名無しさん@お腹いっぱい。2007/02/09(金) 13:00:39
ん? だからPDF版買えって話じゃないの?
0611名無しさん@お腹いっぱい。2007/02/09(金) 13:54:16
>>610
あれ、そんなの売ってたっけ?
0612名無しさん@お腹いっぱい。2007/02/09(金) 15:08:15
>>606
http://pc10.2ch.net/test/read.cgi/linux/1170503611/351
この後にこんな記事ができるってのは、2chみてんのかね。
0613名無しさん@お腹いっぱい。2007/02/09(金) 15:34:33
その程度の基本的な機能の紹介で2chと結びつけるのは酷だなw
0614名無しさん@お腹いっぱい。2007/02/09(金) 15:36:41
>>612
compinitは設定じゃねーよ。
常識だ。

というわけで、>>606には一応期待しておくが、まだ評価はできん。
0615名無しさん@お腹いっぱい。2007/02/09(金) 16:02:12
>>612の351も>>606-607も本人と決め打つのが2ちゃんだろw
0616名無しさん@お腹いっぱい。2007/02/09(金) 20:21:31
ぜんぶ俺だから
0617名無しさん@お腹いっぱい。2007/02/09(金) 21:22:33
UUの連載も内容的にはけっこう古くなっているから、今更書籍化ってのも難しいんじゃないのかな。

今回のは常識だけど、まぁまだ第1回だから今後に期待だな
0618名無しさん@お腹いっぱい。2007/02/11(日) 15:24:29
MYCOM記事読んできますた
0619名無しさん@お腹いっぱい。2007/02/11(日) 17:14:19
誰かzshrc晒せ
0620名無しさん@お腹いっぱい。2007/02/11(日) 18:10:44
前にキチガイモーオタが晒してたなw
0621名無しさん@お腹いっぱい。2007/02/11(日) 19:22:49
perl -e "print 100"; とすると 100% と表示されます、% は色反転してます
この % を出したくないんですけど、どうすればいいですか
06226212007/02/11(日) 19:38:35
事故解決
0623名無しさん@お腹いっぱい。2007/02/11(日) 19:40:34
>>622
解決方法くらい書きたまえキミぃ。
06246212007/02/11(日) 19:43:17
\n を自動で補ってくれてただけなわけで
こんな機能があったとは
0625名無しさん@お腹いっぱい。2007/02/16(金) 12:59:46
MYCOMのzsh連載、早速第2回が掲載されているね。
今度はプロンプトのカスタマイズ。
0626名無しさん@お腹いっぱい。2007/02/16(金) 13:22:22
PROMPT="%B%{^[[31m%}%/#%{^[[m%}%b " # ただし ^[ は エスケープシーケンス
よりは
PROMPT=$'%B%{\e[31m%}%/#%{\e[m%}%b '
とか
autoload -U colors; colors
PROMPT="%B%{$fg[red]%}%/#%{$reset_color%}%b "
とかのほうがよさそうなもんだが
0627名無しさん@お腹いっぱい。2007/02/16(金) 13:37:22
> エスケープを直接設定ファイルに記述することを嫌って、
> echoやprintfコマンドを使う場合もある。好きな方を選べばいい。
> ただ、コマンドだとプラットフォームごとに動いたり動かなかったりするので、
> ここでは直接書いて使っている
echo も print も printf も組み込みコマンドですがなにか
06286262007/02/16(金) 13:39:46
誤)エスケープシーケンス
正)エスケープ
orz
0629名無しさん@お腹いっぱい。2007/02/16(金) 14:25:01
設定ファイルとかプロンプトとかどうでもいいからさっさと補完の事教えてくれよう
0630名無しさん@お腹いっぱい。2007/02/16(金) 21:36:58
あんまり期待できないな
0631名無しさん@お腹いっぱい。2007/02/17(土) 09:15:00
この程度の事はだれもが通る道だよな
それで記事が書けるなんて
0632名無しさん@お腹いっぱい。2007/02/17(土) 10:59:40
紹介記事(スレ住人的には既に通ってきた内容)と
使いこなし記事(スレ住人も新たな発見がある内容)
は違うよなぁ……
0633名無しさん@お腹いっぱい。2007/02/17(土) 12:02:36
このコラムはどういう層を対象にしてるんだろうか
0634名無しさん@お腹いっぱい。2007/02/17(土) 12:09:58
第1回の出だしに、こんなの書いてある
> ここ1年でzshへ移行しやすい状況が整ってきている。
> はじめるには悪くないタイミングだ。

これからzshを始める人向けだろう
0635名無しさん@お腹いっぱい。2007/02/17(土) 12:34:49
いや、それはわかってるけど…
0636名無しさん@お腹いっぱい。2007/02/17(土) 13:14:31
大地の記事がそんなにいいわけないだろ。
冷静になれ。
0637名無しさん@お腹いっぱい。2007/02/17(土) 18:20:30
むしろこのスレの住人がうなるようなコアな内容を出してきたらウケル。
0638名無しさん@お腹いっぱい。2007/02/17(土) 19:02:04
>>637
ありえない。

もうUNIXUSERの記事の焼き直しでいいよ。
0639名無しさん@お腹いっぱい。2007/02/17(土) 19:06:28
妙な記事書かれるより安心だなw
0640名無しさん@お腹いっぱい。2007/02/17(土) 19:17:27
zshに限らず最近シェル使わなくなってきた
0641名無しさん@お腹いっぱい。2007/02/17(土) 19:54:57
compctlの解説だけで終わったりして
0642名無しさん@お腹いっぱい。2007/02/17(土) 20:03:17
シェル使わないってなんだ。ログインすらしてないってことか。
0643名無しさん@お腹いっぱい。2007/02/17(土) 21:14:52
正直にいって細かく設定しても使わないよね
zshrcは千行あるけど
0644名無しさん@お腹いっぱい。2007/02/17(土) 23:16:31
>>641
compsysは無しかよw
0645名無しさん@お腹いっぱい。2007/02/18(日) 02:04:24
その1000行のzshrcを見せてもらおうか
0646名無しさん@お腹いっぱい。2007/02/18(日) 20:08:40
一行一レスでいいから
0647名無しさん@お腹いっぱい。2007/02/24(土) 10:43:48
htmlで終わるファイルが存在すれば"Exist"と表示させたいとして、
zsh で、
if [ -e *html ];then echo "Exist";fi
とすると、
zsh: no matches found: *url
となってしまいます。
shでは期待どおりの動作をします。
zshで期待のどおりの動作をするにはどうすればよいでしょうか?
0648名無しさん@お腹いっぱい。2007/02/24(土) 11:22:11
setopt NULL_GLOB
06496472007/02/24(土) 11:56:49
ありがとうございました。
こうすると、上の問題は解決しましたが、htmlで終わるファイル名を表示しようとして
ls *html
とすると、ディレクトリにhoge.htmlがあっても
ls: *html: そのようなファイルやディレクトリはありません
と出ようになりました。
この問題を解決避けるには、
いちいち、setopt NULL_GLOB, setopt GLOB
をしなければならないのでしょうか?
06506472007/02/24(土) 12:09:56
if noglob [ -e *html ];then echo "Exist";fi
としてもいいみたいですね。
0651名無しさん@お腹いっぱい。2007/02/24(土) 12:41:46
echo {1..3}

1 2 3
となります。
echo {a..c}
では
{a..c}
です。
これを
a b c
とするように出来ないでしょうか?
0652名無しさん@お腹いっぱい。2007/02/24(土) 12:50:38
出来ない
0653名無しさん@お腹いっぱい。2007/02/24(土) 12:51:43
bashならできる
0654名無しさん@お腹いっぱい。2007/02/24(土) 13:24:36
>>651
setopt brace_ccl
echo {a-z}
■ このスレッドは過去ログ倉庫に格納されています