■掲示板に戻る■
全部
1-
101-
201-
301-
401-
501-
601-
701-
801-
901-
1001-
最新50
レス数が1000を超えています。残念ながら全部は表示しません。
zsh入門
1 :
名無しさん@お腹いっぱい。
:2001/05/19(土) 23:42
なんかそろそろzshの補完機能をじっくりいじろうかなぁと思ったんですけど
compctl読みにくいですねぇ…
自分で書いたのもいまいちしっくり来ない…
ってことでみんなの.zshrc(主に補完部分)を見せ合いっこしませんか?
自分はまともなの書けてないですが…
zstyleも勉強したいので大歓迎
というか参考文献が少なすぎるのでかなり喜ばれるはず
いままで他のshellを使ってきた方もこれを機に一緒に勉強しましょー
とりあえず自分のオプションはこんな感じです。tcshライクになってます。
bindkey -e
bindkey ' ' magic-space
bindkey '^W' kill-region
bindkey '^Q' reverse-menu-complete
setenv () {export $1="$@[2,-1]"}
unsetenv (){unset $1}
setopt prompt_subst
setopt nohup
setopt auto_cd GLOB_COMPLETE
setopt auto_remove_slash
setopt extended_history hist_ignore_dups
setopt prompt_subst
setopt pushd_ignore_dups rm_star_silent sun_keyboard_hack
setopt extended_glob list_types
setopt no_beep always_last_prompt
setopt cdable_vars sh_word_split auto_param_keys no_clobber
setopt complete_aliases setopt complete_in_word auto_list
unsetopt list_ambiguous auto_menu
155 :
w
:01/11/05 16:16
>>154
> M-x term
> でzshを選ぶんじゃだめなの?
M-x term 派の方ですか?
M-x term は便利そうなんですがいまいち使いこなせません。
どのように活用されているか教えてください。
156 :
154
:01/11/05 16:25
>>155
> M-x term 派の方ですか?
> M-x term は便利そうなんですがいまいち使いこなせません。
> どのように活用されているか教えてください。
いや、僕はEmacsスレで昔便利だって教わっただけなんです。
たしかに実際のshellに近いと思いますがやっぱりkterm+zshを使っています。
M-x termの場合一度C-cするのが面倒ですね。
157 :
w
:01/11/05 16:57
>>156
> たしかに実際のshellに近いと思いますがやっぱりkterm+zshを使っています。
> M-x termの場合一度C-cするのが面倒ですね。
キルリングすら共有できない M-x term を使うよりも、
krxvt + zsh の方が快適ですよね。
screen + emacs -nw が一番なのかもしれないですね。
158 :
名無しさん@XEmacs
:01/11/05 22:23
>152
うーん、おいら的には極楽。 > shell-mode
ログ見るときとか less かまさんでもいいし、
別 window に移動する手間もないので。
いくつも shell-mode のバッファ開いて、色々なトコに
ssh したり ./configure;make したり
tail -f log で監視しながら作業したりできるし。
ただ、 XEmacs だと shell-mode が死ぬほど遅いのがイヤ。
あと M-x term は、なんか中途半端な気が。
term 使うくらいなら、別 window + screen かなぁ。
159 :
名無しさん@Emacs
:01/11/05 22:38
bash使ってます.
zshは昔から知っており,熱烈ファンも多いようですね.
んで,zshの明らかに優れてる点を教えてくださいまし.
あと,bash,tcshに比べて劣ってる点はありますか?
160 :
名無しさん@お腹いっぱい。
:01/11/05 22:49
>>159
http://www.gentei.org/~yuuji/rec/pc/intro-zsh.html
161 :
名無しさん@Emacs
:01/11/05 22:54
なるほど,すばらしいのはわかりました.
しかしbashに比べて,劣ってる点はないのかしら?
たとえば重いとか.
162 :
名無しさん@お腹いっぱい。
:01/11/05 22:56
>>161
設定がめんどう、とか。
163 :
名無しさん@お腹いっぱい。
:01/11/05 23:07
>>161
多分、bash より重いと思うが今のマシンじゃ気にならない。
確かに設定は面倒なのでそういうのが楽しめる人向きかも。
ということで zsh 最強。
164 :
名無しさん@お腹いっぱい。
:01/11/05 23:21
% cd /usr/local/share/emacs
っち、行きすぎたよ
C-hを5回
% cd /usr/local/share/
にしてから
% cd /usr/local/share/mule
こんな感じの時ワンタッチで前の/まで削除
してくれる方法無いですか?
165 :
oij
:01/11/05 23:56
>>164
backward-kill-word が使える. 僕は emacs binding で
bindkey "^[h" backward-kill-word
こんな風にしてる.
166 :
165
:01/11/05 23:59
おっと, その前に, WORDCHAR から / を取り除いておかないといけなかった.
export WORDCHARS='*?_.[]~=&;!#$%^(){}<>'
こんな風に.
167 :
164
:01/11/06 00:04
>>165
隊長メチャクチャ便利です。
脳汁が出てしまいました
168 :
149
:01/11/06 00:19
>>151
たしかにそーかも.もーちょっとこのスレ観察させてもらうわ.
良さはそれなりに分かってるつもりなんで.
169 :
w
:01/11/06 09:23
>>165
> backward-kill-word が使える. 僕は emacs binding で
> bindkey "^[h" backward-kill-word
> こんな風にしてる.
M-h のデフォルト run-help は便利だよ。
$ bindkey G backward-kill-word
"^W" backward-kill-word
"^[^H" backward-kill-word
"^[^?" backward-kill-word
デフォルトでも割り当てられてるね。
C-w って emacs とは違うんだ、しらなんだった。
170 :
165
:01/11/06 15:28
run-help は変則的だけど
\C-x\C-h に割り当ててる.
僕は M-h で backward-kill-word したいんで.
171 :
名無しさん@お腹いっぱい。
:01/11/08 03:10
zshの補完って便利ですね。
% killall [TAB]
でkillしたいものの補完はできないのでしょうか?
172 :
名無しさん@お腹いっぱい。
:01/11/08 05:34
>>171
俺は 4.0.2 を使っているけど、候補が出るけど?
ただし、絶対パスで起動させているプロセスは
出てこないな。
173 :
名無しさん@お腹いっぱい。
:01/11/08 05:35
と思ったが違うな。root だと候補に出てくる。
174 :
名無しさん@お腹いっぱい。
:01/11/10 00:35
>171
compctl だと設定しないと出てこない。しかもかなり面倒。
compinit だと、このコマンド書くだけで殆どやってくれる。manとかkillとか。
前は色々書いてたけど、今はcompinitだけにした。マジで脳汁弾けましたよ。
175 :
171
:01/11/10 06:55
>>174
autoload -U compinit
compinit
~/.zshrcにこの2行がありました。
kill は補完が効きましたがkillallは候補が出てきませんでした。
なんででしょうね?
# zsh --version
zsh --version
zsh 4.0.2 (i386--freebsd4.3)
176 :
171
:01/11/10 15:29
4.0.4あげ
177 :
名無しさん@お腹いっぱい。
:01/11/10 15:33
む。4.0.4 出てるよ。サンクス。
>>176
178 :
名無しさん@お腹いっぱい。
:01/11/10 15:38
しかし、本体2MB、ドキュメント2MBとは巨大なシェルだな
179 :
名無しさん@お腹いっぱい。
:01/11/10 15:43
compctl ばっさり捨てて compinit だけにしたけど、
非力なマシンだと補完時の動作が重くなったような気が。
気のせい?
それとも何か設定ミスしてるのだろうか?
180 :
名無しさん@お腹いっぱい。
:01/11/10 17:52
実行ファイル本体としては bash より小さいよ.
181 :
名無しさん@お腹いっぱい。
:01/11/10 19:18
モジュール化に努めている御蔭だな(w
182 :
名無しさん@お腹いっぱい。
:01/11/10 19:23
>>179
俺は compctl を捨て切れずに残してあるんだが、
これで書かれた補完の動作に妙なところがある。
>非力なマシンだと補完時の動作が重くなったような気が。
>気のせい?
気のせいではないと思う…(w
新しい補完システムを日本語で解説しているサイトは
ないもんだろうか。
183 :
名無しさん@お腹いっぱい。
:01/11/10 23:46
4.0.4って何が変わったの?
184 :
名無しさん@お腹いっぱい。
:01/11/10 23:55
3%の機能しか使っていない僕には分りませんでした。
infoはなぜか4.0.3だね
185 :
名無しさん@お腹いっぱい。
:01/11/16 01:03
>>164
さっきメイリングリストで同じような質問をしていている者がいて、
pws が「bash-backward-kill-word widget を使え」と答えていた。
「何そんなのあったのかー」と調べてみたが 4.0.2 にはなかった(-_-)ウツダ
4.0.4 にはあるみたいだね。今すぐにはインストールできないから、
別の機会に試してみるよ。
これって、zsh を使い始めると結構皆が思う疑問かもしれない。
実際俺もそうで、zle を駆使して適当にでっちあげてた(w
zsh の存在を知ったのは 1993 年頃だと思う。1995 年に
広瀬さんが fj に日本語マニュアルを投稿したのを機会に
乗り換えようと決意。が、tcsh の set complete = enhance
な環境並の補完ができないのと、history-search-{forward,backward}
(Esc-N, Esc-P) ライクな履歴検索ができないことで挫折。
結局、完全に移行できたのは 3 年ぐらい前だよ。ちなみに後者は、
history-beginning-search-{forward,backward}-end を使えば
実現できる。
186 :
名無しさん@お腹いっぱい。
:01/11/16 01:40
>pws が「bash-backward-kill-word widget を使え」と答えていた。
ってどうやるのかなー
187 :
185
:01/11/16 01:51
>>186
zle -N bash-backward-kill-word
bindkey お好きなキー bash-backward-kill-word
な感じ。
188 :
名無しさん@お腹いっぱい。
:01/11/16 02:49
man の補完て効きますか?
効かないのでコマンドを打ったあとC-aで先頭に戻ってman を追加してる。
こんなのzshっぽくないよー
189 :
185
:01/11/16 02:51
>>188
うちでは補完は効いているし、何なら run-help(Esc-h)を使えば
いい。
190 :
188
:01/11/16 02:56
なんか上でも書いたけどkillallで効かなかったり
manで効かなかったりして調子わるいな。
たぶん~/.zshrcのどっかを自分がかってにいじっちゃったんだと思う。
たいしたことしてないから作りなおそうかな。
>>189
Esc-hは知らなかった。便利ですね
191 :
185
:01/11/16 03:07
>>190
>Esc-hは知らなかった。便利ですね
便利なんだけど、たまに Esc-Ctrl-h を打ち損ねて
manual が出てくると鬱になる(w
192 :
185
:01/11/16 04:23
結局 4.0.4 の中身を見てみた。
bash-backward-kill-word () {
local WORDCHARS=''
zle .backward-kill-word
}
こういう使い方をすれば良かったのか。目から鱗。
でも、メーリングリストでは以前にも解が出ていたようで
tcsh-backward-delete-word () {
local WORDCHARS="${WORDCHARS:s#/#}"
zle backward-delete-word
}
自分もこっちが好みだな。という訳でバージョンアップは
またの機会に(w
193 :
名無しさん@お腹いっぱい。
:01/11/16 08:20
zshを入れてみました。が、まだ入れただけです。
これからいろいろとやってみます。
194 :
名無しさん@お腹いっぱい。
:01/11/16 15:32
>>175
FreeBSD か。
_killall を覗いてみましょう。
ports で入れてるなら /usr/local/share/zsh/4.0.?/functions/_killall
195 :
175=188
:01/11/16 21:10
こうなってました。
#compdef killall
if [[ "$OSTYPE" = linux* ]]; then
_alternative \
'signals:: _signals -p' \
'processes:process:{ compadd "$expl[@]" ${${${${(f)"$(_call_program processes-names ps ${
${EUID/(#s)0(#e)/xa}//[0-9]#/} ho cmd 2> /dev/null)"//[][\(\)]/}:#(ps|COMMAND|-*)}%%\ *}:t} }'
else
_signals -p
fi
196 :
名無しさん@お腹いっぱい。
:01/11/20 00:18
zsh では、alias や function で直前の履歴の
最後の引数とかを呼び出せないんでしょうか。
197 :
名無しさん@お腹いっぱい。
:01/12/03 07:40
実は3重だったり
198 :
age
:01/12/03 21:13
***/ というのがあることを知ったage。
199 :
名無しさん@お腹いっぱい。
:01/12/04 02:35
screen 使ってるんでたくさん zsh が動いているんですが,
これらの history を共有する方法はありますか?
200 :
名無しさん@お腹いっぱい。
:01/12/04 03:50
>>200
setopt INC_APPEND_HISTORY
あるいは
setopt SHARE_HISTORY
を試すといいかもしれない。
201 :
名無しさん@お腹いっぱい。
:01/12/04 06:10
>198
梅干し二つとどう違うの?
202 :
199
:01/12/04 14:51
>>200
おおできてる! ありがとう.
203 :
名無しさん@お腹いっぱい。
:01/12/05 01:52
age
204 :
名無しさん@お腹いっぱい。
:01/12/05 02:28
このスレ見て、zsh のバージョンを 4.x に上げようと思った。
3 に比べて、すごく良くなってる・・・
205 :
198
:01/12/07 04:33
>>201
シンボリックリンクもたどってくれるらしい。
公式サイトのZSH Reference Cardに書いてあった。
206 :
名無しさん@お腹いっぱい。
:01/12/08 06:23
tcshのpostcmdとかprecmdみたいに
プロンプトのでる前後で、コマンドを実行させる方法はありますか?
207 :
名無しさん@お腹いっぱい。
:01/12/08 06:41
precmd という関数を定義していれば実行される。
208 :
206
:01/12/08 07:03
どうも、早速できました。
jobsコマンドの出力がパイプを流れてくれないんです。
jobs|cat
としても何もでてこない。
209 :
名無しさん@お腹いっぱい。
:01/12/08 07:12
>>208
標準出力ではなくて、直接端末に出力している
と思われ。
210 :
名無しさん@お腹いっぱい。
:01/12/14 22:55
compinitするとcdの補完候補にcdpathのものも出てきてうざいから
compctl -g '(|.)*(-/)' cd
で設定し直してるんだけどもっといい方法ない?
211 :
zztop
:01/12/15 18:44
>>208
ほんとだ.
jobs | cat ...NG
jobs |& cat ... NG
(jobs) | cat ... NG
jobs > a; cat a ... OK
jobs | tee a; cat a ... NG
212 :
名無しさん@お腹いっぱい。
:01/12/20 10:35
>>210
> compinitするとcdの補完候補にcdpathのものも出てきてうざいから
> compctl -g '(|.)*(-/)' cd
> で設定し直してるんだけどもっといい方法ない?
俺はこうやってみたがまだ出る。
どうしよう
213 :
名無しさん@お腹いっぱい。
:01/12/20 10:43
2001年を締めくくるに、ふさわしい祭りです!
米【TIME】紙が「Person of the 2001」の投票を行っています。
75年の歴史を誇る由緒正しい賞で、過去には「ヒトラー」や「レーニン」
なども選出されています。
TIME 投票ページ
■Masashi Tashiro■ で表記統一しましょう。(■は抜かす)
http://www.time.com/time/poy2001/
投票は削除を避けるために手動で。
締め切りは24日ですです。。。
こちらは軽いですけど結果はみれまえせん(連続投票可能)
TIME 投票ページ
http://www.time.com/time/poy2001/nominee_pop.html
※「Masashi Tashiro」で表記統一しましょう。
名前やメール欄など適当に 例)simura@or.jp
記入して、投票しよう。
新しいページがちゃんと開くまで待つ!!
VOTEの連打はダメ!!
葉書票もあるだろうから、ネット上で1位になっても安心できない。
2位にダブルスコア以上つけるのが望ましい。 。らしい。
本スレ
http://choco.2ch.net/test/read.cgi/news/1008799152/
前スレ
http://choco.2ch.net/test/read.cgi/news/1008799136/
214 :
名無しさん@お腹いっぱい。
:01/12/20 12:01
なんか以前、ちょっと複雑なリダイレクトをすると
動作がおかしい(shと非互換)ことがあって、setoptかなにか
一発やるとsh互換になってちゃんと動いたという
ことがあったんですが、なんでしたっけ。
ど忘れ...
215 :
見当違いだったらスマソ。
:01/12/20 21:44
% curl -O http://なんとか/なんとか/\[1-200\].jpg
216 :
215
:01/12/20 21:47
このスレ初めて読んだので、今頃
>>98
に対してレスしてしまった。。。
重ね重ねスマソ。
217 :
名無しさん@お腹いっぱい。
:01/12/20 21:50
>>210
のとも関連するけど、functionの中に入ってるのを使いつつ、それらを自分で改造することは出来ないのかな?
ようするにfunction/_cdを使わない方法又はそれらを再定義する方法ってことなんだけど。
_user_at_hostとか自分が使うのが限られてるから変更できるとかなり便利になりそうなんだけど
共有してる物を直接いじるわけには行かないし…
218 :
名無しさん@お腹いっぱい。
:01/12/20 22:21
compinitを使わずにcompdefが出来るような方法無いかなぁ
219 :
217
:01/12/20 23:05
.zcompdumpいじったらいいのね。なんか気持ち悪いけど自己解決
220 :
名無しさん@お腹いっぱい。
:01/12/21 09:00
>>219
compdef -d cd して後は好きに定義すればいーんじゃないの?
.zcompdumpをいじるのはどーかと。
当方zsh歴1日なので、外してたらごめんね。
221 :
名無しさん@お腹いっぱい。
:01/12/21 21:52
_altanativeとか_wantedとかがドキュメント読んでもいまいち分からない。
どこかにわかりやすい解説無いかなぁ
222 :
名無しさん@お腹いっぱい。
:01/12/21 21:53
オライリーとかから「zsh入門」出ないかな〜
6000円ぐらいまでなら出してもいいな
223 :
名無しさん@お腹いっぱい。
:01/12/21 21:59
Effective zsh きぼん
224 :
名無しさん@お腹いっぱい。
:01/12/21 23:25
Modern zsh Design キボンヌ
225 :
名無しさん@お腹いっぱい。
:01/12/21 23:39
初めてのzsh
226 :
名無しさん@お腹いっぱい。
:01/12/22 00:31
How 2 zsh
227 :
名無しさん@お腹いっぱい。
:01/12/22 01:07
計算機プログラムの構造と解釈とzsh
228 :
名無しさん@お腹いっぱい。
:01/12/22 01:11
サルしか分からない zsh
ウキッキー
229 :
名無しさん@お腹いっぱい。
:01/12/22 01:13
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=436&forum=10&0
今日初めて見た.「をぉ!いい情報あるかな?」
・・・
無かった (;´Д`)
230 :
210
:01/12/22 15:56
>>212
compinitって時々手動でやるだけだから勘違いしてたみたい。
こっちもcompctlだけじゃ戻らなかった。スマソ
結局
>>220
の compdef -d cd で解決。
potatoマシンは3.1.9-dev-8だからバージョン毎に
処理を分けるようにして自動でcompinitするように
しようっと。
231 :
名無しさん@お腹いっぱい。
:01/12/25 18:56
とりあえず_wantedと_alternativeとcompaddあたりの使い方はなんとなく分かったけど
やっぱり既存の複雑な関数は意味不明…
だれか詳しく解説してage
232 :
名無しさん@お腹いっぱい。
:01/12/25 19:14
>231
出来れば
> _wantedと_alternativeとcompaddあたりの使い方
を説明してYO!
# でも漏れは既存の複雑な関数も当然解説出来ないけど < 教えて君でスマソ
233 :
名無しさん@お腹いっぱい。
:01/12/26 02:39
候補から外す(?) "~" の後を tab で補完はさすがに出来ないの?
234 :
名無しさん@お腹いっぱい。
:01/12/26 02:53
イミワカランヨ
235 :
名無しさん@お腹いっぱい。
:01/12/26 03:24
>>233
俺も偶にできたらいいな思うが多分無理っぽい
236 :
名無しさん@お腹いっぱい。
:01/12/27 01:48
http://zsh.sunsite.dk/Images/wizard.gif
これ誰?
リンク拡充(採録含む)
http://www.sol.cs.ritsumei.ac.jp/~sawaki/comp/zsh/
http://dengaku.org/naoki/zsh/Doc/zsh_19.html
http://dengaku.org/~naoki/zsh/FAQ-J/zshfaq-j.html
http://cl.aist-nara.ac.jp/~daiti-m/text/zsh-intro.html
http://www.soft.ics.keio.ac.jp/~kayanuma/2001/note/zshreadme.html
http://www.soft.ics.keio.ac.jp/~kayanuma/2001/note/winzsh2.html
http://tehanu.hpcl.titech.ac.jp/zsh/waka/intro-CommandLineEditing.html
http://tehanu.hpcl.titech.ac.jp/zsh/
http://www.swlab.csce.kyushu-u.ac.jp/~hatano/material/zsh/
237 :
名無しさん@お腹いっぱい。
:01/12/27 01:51
zsh で rm **/*hogehoge するときちょっとドキドキする...。
238 :
名無しさん@お腹いっぱい。
:01/12/27 02:23
>>237
先に echo **/*hogehoge で確認しといてからやるといいかも。
239 :
名無しさん@お腹いっぱい。
:01/12/27 02:48
>>234
233はextendedglobのことでしょ。
とりあえずスペースあけて別途補完してM-bで戻ってスペース消すとか。
240 :
名無しさん@お腹いっぱい。
:01/12/27 02:52
>>237
tabで展開してからという手もあるけどhistoryがうざくなるから
おすすめはしない。
241 :
名無しさん@お腹いっぱい。
:01/12/27 04:33
>>240
展開してから undo してもいいけどね。
量が多いと処理が重いけど(w
242 :
名無しさん@お腹いっぱい。
:01/12/27 06:51
>> 237
C-x * して展開して確認した後,C-x u で戻すってのをよくつかいまふ.
243 :
名無しさん@Emacs
:01/12/27 09:58
色んな機能があるんだな。
漏れは全然使いこなせてないなぁ。前から判ってたけど(w
244 :
234
:01/12/27 10:32
>239
あー,そーゆー名前なんすか.良く知らないんですよ,そーゆーの(苦笑)
今はおっしゃるようにスペース入れて補完してからスペース消してるんですけど,
なんだかなーって感じで.まぁこの機能があるだけでも有難いとしとくのがいいのかな.
>243
禿同
C-x * なんて「そーいやそんなドキュメントどっかで読んだなー」ぐらいで
全然覚えちゃいなかった・・・
245 :
名無しさん@お腹いっぱい。
:01/12/28 05:25
展開結果をみるのはC-x gでいいみたい。
http://dengaku.org/~naoki/zsh/FAQ-J/zshfaq04-j.html#l43
C-x gを忘れたらtabで展開してからundoすればいいと覚えておくつもり。
246 :
さすらいのbashユーザ
:01/12/28 13:05
function precmd {
local exit=$?
if [ $exit = 0 ]; then
echo "\033]2;(゚д゚)ウマー\007\c"
elif [ $exit = 255 ]; then
echo "\033]2;( ゚д゚)ポカーン\007\c"
else
echo "\033]2;(゚Д゚)マズー\007\c"
fi
}
ktermとかで遊んでね。
% (exit 0)
% (exit 255)
% (exit 1)
247 :
名無しさん@お腹いっぱい。
:02/01/02 02:06
興味あるのでage
248 :
名無しさん@お腹いっぱい。
:02/01/09 23:05
興味あるのでage
249 :
名無しさん@お腹いっぱい。
:02/01/13 10:32
^L
250 :
名無しさん@お腹いっぱい。
:02/01/14 00:17
bashみたいに回数指定のignoreeofってできない?
251 :
名無しさん@お腹いっぱい。
:02/01/14 09:45
>>148
http://www.ono.org/software/zsh-euc/zsh-4.0.4-euc-0.1.patch.gz
使ったことはないけど。
252 :
名無しさん@お腹いっぱい。
:02/01/14 16:47
>>237
mv **/*hogehoge /tmp てのはどう?
253 :
名無しさん@お腹いっぱい。
:02/01/18 02:28
auto correct を設定して data と打ったら cat ? と聞かれるね。
スタートレック思い出しちゃったよ。
254 :
名無しさん@お腹いっぱい。
:02/01/18 06:38
zstyle ':completion:*:default' menu select=1 (・∀・)イイ!
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver5.26+ (01/10/21-)