1 名前:名無しさん@お腹いっぱい。 mailto:sage [05/02/02 20:03:26 ] zshのスレその4です。 過去スレ zsh入門 pc.2ch.net/test/read.cgi/unix/990283346/ zsh入門 パート2 pc3.2ch.net/test/read.cgi/unix/1036324177/ zsh その3 pc5.2ch.net/test/read.cgi/unix/1080002786/ >>2-3 リンク
295 名前:294 mailto:sage [2005/11/23(水) 22:03:02 ] おもしろいけど、たしかに鬱陶しい。 なんか動作が変だし。
296 名前:290 mailto:sage [2005/11/24(木) 04:25:33 ] >>295 list-choicesっていうのを削ればちょっとましになる。
297 名前:290 mailto:sage [2005/11/24(木) 04:58:55 ] すこしでも鬱陶しいのを減らすのと自分の好みとして 1.補完候補に色をつけたい(zstyle?) 2.terminalのまんなかあたりより下に プロンプトがいかないようにしたい --------------------- |$ls bar |$tar -xf hoge | - - - - - - - - - -<-ここより下にいかない | | --------------------- 1.は(とてもじっくり調べれば)なんとかなるっぽいけど 2.がわからん
298 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/24(木) 11:22:51 ] >>290 2.はターミナルの問題な気が…。
299 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/25(金) 00:15:29 ] >>279 zstyle の completer の _expand を自作の _list_expand とかに すればよさそうだけど、これ多分めんどいね。 これやるなら expand-or-complete 使ってる場合は complete-word にしないといけない。
300 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/25(金) 00:51:06 ] 誰か freebsd 用の _ls 持ってない? -T で tabsize になるのが不便だ。いや消せばいいんだけど。
301 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/25(金) 01:01:24 ] >>297 2. って意味あるの?
302 名前:290 mailto:sage [2005/11/25(金) 08:59:17 ] >>301 いわれてみれば気づいたけれど意味あんまり無いな 結局鬱陶しいと思うひとにはどう足掻こうと鬱陶しいだろうし (自分的には気にならない) 補完に色付ける方法もなんかわかったしなんか そこそこ満足してしまったからまあべつにいいや
303 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/25(金) 10:19:57 ] 1って zstyle ':completion:*' list-colors #{(s.:.)LS_COLORS} みたいにやってできるやつのこと? それとも、もっと高度な処理を期待している?
304 名前:290 mailto:sage [2005/11/25(金) 21:06:30 ] >>303 亀レスすまん 補完候補はそれで色付けられたから 補完候補に付いては満足 ただもしできるならば例えばemergeを補完するときに $ emer| (|はキャレット)までうって $ emer|ge と補完されたときキャレットより右側の補完された文字列 に色を付けたい echo -n '\e〜' でもいいけど動作がおかしくなるからそれ以外ってある?
305 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/26(土) 17:14:46 ] ないと思う。
306 名前:290 mailto:sage [2005/11/26(土) 20:37:44 ] やっぱそうだよね・・・
307 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/28(月) 01:29:40 ] % : \x9c a a[改行なし] なにコレ
308 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/28(月) 20:16:55 ] なにそれ?
309 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/29(火) 02:15:15 ] % echo \x9c a ax9c a じゃあコレ。
310 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/29(火) 02:57:24 ] % echo \x9c a x9c a となるんだが
311 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 01:27:31 ] すまないそしてありがとう。 これは screen 用に preexec () echo -n "\ek$1\e\\" としていたところ、 echo によって解釈された \x9c ('\') が どうも \ek に対する終端になっていた模様。 # man screen には \x9c に関するそうした記述は見当たら # なかったが ついでに \ek の後に来る文字列の最大長が 255 である様子 なので、それも考慮したらこうなった。 preexec () echo -nE $'\ek'"${1[1,255]}"$'\e\\'
312 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 15:29:37 ] Zsh 4.2.3 で svn の補完をしようとして, $ svn add [TAB] とすると以下のようなメッセージが表示されてしまいます. >_arguments:comparguments:208: invalid argument: <引数> 言語関係の設定は以下のようになっています.どうするのが良いでしょうか? LANG=ja_JP.eucJP LANGUAGE=ja LC_CTYPE=ja_JP.eucJP
313 名前:名無しさん@お腹いっぱい。 [2005/12/05(月) 23:14:31 ] Version 4.2.6 of zsh has been uploaded to ftp.zsh.org/pub and to Sourceforge. The changes are minor: mostly bugfixes, with a few enhancements to completion functions. In case you haven't been following development, you should be aware that a development version 4.3.1 will be released soon (before Christmas, unless I get really tied up) which will contain support for multibyte character sets such as UTF-8 in the line editor (though there's not yet not much support in the main shell). This appears to be working quite well already. (4.3.0 was the version number used during initial development on the branch, so doesn't correspond to a release.)
314 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/05(月) 23:20:37 ] >>313 クリスマスまでにマルチバイト対応ですか。
315 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/06(火) 10:53:51 ] >>313 おっ やっとか
316 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/06(火) 11:14:19 ] EUC も OK?
317 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/07(水) 00:13:36 ] だめじゃない?と思ったら such as UTF-8 か。 UTF-8 しか相手にしてないと思ってたよ。期待しよ。
318 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/07(水) 00:49:23 ] EUC-JPなら今でも普通に使えるよ。
319 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/07(水) 01:10:56 ] ちょっとおかしいやん。 patch 当てれば完璧なんかな。
320 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/07(水) 09:52:02 ] EUC は | www.ono.org/software/zsh-euc/ FreeBSD ports によれば | What I did over this is disable the hack for non-EUC locales. ということであった 本家で普通に綺麗に EUC 扱えるようになると良いね
321 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/08(木) 19:02:44 ] >>312 >>43-
322 名前:名無しさん@お腹いっぱい。 [2005/12/10(土) 00:50:41 ] I've put a test release of zsh 4.3 in the pub/development directory of ftp.zsh.org. It's unlikely to differ much from 4.3.1 when that appears. The main new feature compared with 4.2 is multibyte support. This is only enabled by default on some machines (most recent PC Unix-like targets in particular). Reports on other machines where it works (or compiles but doesn't work) when you explicitly supply --enable-multibyte to configure would be useful. The documentation package for 4.3 contains a PDF file instead of a PostScript file. This should be easier to browse.
323 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/10(土) 23:36:06 ] 4.3.0-dev-2 試してみたけど、ふつーに、euc-jp 使えたよ。
324 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/11(日) 22:09:28 ] >>311 みたいに preexec で ${1[1,255]} とか $1 を添字つきで使うと history -D で出る elapsed times が 0:00 になってしまう。 ナンダコレ。
325 名前:名無しさん@お腹いっぱい。 [2005/12/20(火) 15:25:16 ] ~/.zshrc に以下のように書いてプロンプトの先頭からタブを何回か打ち, 次の行まで行ったあと Ctrl-a を打っても先頭までもどらず, プロンプトの終わりからカーソルまで空間ができてしまいます. colors を使わなければ正常なのですが, colors を使うと上のようになってしまうのはなぜでしょうか? autoload -U colors; colors PROMPT="$fg[cyan]%n@%m$reset_color $"
326 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/20(火) 23:44:20 ] >>325 colorsを使わず直接エスケープシーケンスを入れて回避することにしました
327 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/22(木) 12:15:41 ] zshrc に export RED=$'%{\e[1;31m%}' とか書いてると export を実行した時の出力にも色が付いて見にくいです RED='%{%}' <2個めの%以降が赤 SHELL=/bin/zsh <全部赤 SHLVL=2 <全部赤 何か回避策はありませんか
328 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/22(木) 13:23:36 ] export しなきゃいけないの? (shell 変数じゃ駄目?) あとは RED でなく COLOR_{R,G,B,C,M,Y,...} みたいにして COLOR_ZZ 辺りに戻すシーケンスを入れておく おいらのは CLbgK='\033[0;40m' ... CLfgWb='\033[1;37m' CLreset='\033[0m' (←alphabet order で最後に来るようになってる)
329 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/22(木) 13:54:19 ] >>328 > export しなきゃいけないの? うわあぁ export じゃなく local にして解決しました アホでした
330 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/22(木) 14:04:20 ] あとは >328 みてもらえれば分かるけど shell script で使いたいだけなら echo したときに 初めて esc として評価されるような書き方をしておくと set で出るときには色はつかない。
331 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/24(土) 05:01:48 ] >>325 PROMPT="%{$fg[cyan]%}%n@%m%{$reset_color%} $" が正しいのでは。
332 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/26(月) 14:26:58 ] >>331 それでうまくいきました. エスケープ文字でカーソル位置を変えないようにするには %{...%} でくくっとかないといけないんですね.
333 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/27(火) 11:18:22 ] 文字列でエスケープ文字を直接入力以外で表現する方法ある? echoに渡すなら\eとか\033とか使えるけど、PROMPTに使いたいんだよね。
334 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/27(火) 16:22:58 ] PROMPT="..$(echo \e)..." という感じでechoの結果を埋め込むっていうのはどう?
335 名前:333 mailto:sage [2005/12/27(火) 17:56:55 ] よく読んだら前のレスにヒントがあった。$'...\e...'とすればいいのね。 先達よありがとう。
336 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/28(水) 01:55:39 ] ユーザがコマンドとして使うことを意図しない関数の命名法って 決まっているのでしょうか? _で始まるのは補完用みたいですが……。
337 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/30(金) 04:11:03 ] クリスマスって 1月6日までか?
338 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/08(日) 23:52:37 ] zsh 4.3.0-dev-2使ってみたけど、EUCも一文字として扱ってくれる。
339 名前:名無しさん@お腹いっぱい。 [2006/01/09(月) 09:10:16 ] あんまり関係ないけどこんなのどうですか? i=0 PROMPT='%U$USER%{^[[$[31+(i/3)%6]m%}@%{^[[m%}%U%m%#%u ' RPROMPT='%U%{^[[$[31+(i++/3)%6]m%} %~ %{^[[m%}'
340 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 09:39:06 ] 既に起動してる状態で$PROMPTとかを変えるってどうするの? なんか反映されないのだけど
341 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 09:55:05 ] .zshrc で変えていること自体 "起動している状態" で変えているわけだが
342 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 11:47:23 ] それはとにかく変わんないんだもん
343 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 13:08:39 ] % PROMPT=hogehoge
344 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 13:49:20 ] 反映されないよ。俺の環境変なのかな。
345 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 13:51:00 ] 実は zsh 使ってないだろ?
346 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 13:58:03 ] ごめん。precmdで毎回更新してたorz
347 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 14:45:12 ] >>346 precmdで何してる?
348 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 15:38:44 ] if [ $? = 0 ] ; then PROMPT="%{^[[34m%}%m:%{^[[m%}%(1j.%{^[[31m%}%j:%{^[[m%}.)%{^[[35m%}%.%# %{^[[m%}" RPROMPT="%{^[[35m%}%~%{^[[m%} %{^[[36m%}%T%{^[[m%}" else PROMPT="%{^[[34;07m%}%m:%{^[[m%}%(1j.%{^[[31;07m%}%j:%{^[[m%}.)%{^[[35;07m%}%.%# %{^[[m%}" RPROMPT="%{^[[35;07m%}%~%{^[[m%} %{^[[36;07m%}%T%{^[[m%}" fi } こんなこと
349 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 18:20:06 ] っ%(?.foo.bar)
350 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 19:47:19 ] >>349 試してみたけど、$?が0の時に駄目みたい
351 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 20:12:55 ] あ、そういうことか
352 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 20:20:51 ] PROMPT='%{^[[34%(?..;07)m%}%m:%{^[[m%}%(1j.%{^[[31%(?..;07)m%}%j:%{^[[m%}.)%{^[[35%(?..;07)m%}%.%# %{^[[m%}' RPROMPT="%{^[[35%(?..;07)m%}%~%{^[[m%} %{^[[36%(?..;07)m%}%T%{^[[m%}" こうなるというわけね。 プロンプトなんて久々にいじったから手間取った。
353 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 20:37:47 ] >>348 setopt printexitvalueは知ってる? 知ってるならいいけど。
354 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/09(月) 23:25:17 ] >>353 今初めて知ったけど視認性高めたいので両方使う事にするよ。
355 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/11(水) 00:05:23 ] 4.3.0-dev-2にしてから % echo -n hoge hoge% % のように出力のあとに青い%が出るようになった。バグ?
356 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/11(水) 00:21:59 ] >>355 (゚Д゚)ハァ?
357 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/11(水) 21:09:13 ] 4.3.0-dev-2だけど、aliasの-sが効かなくなってる。
358 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/11(水) 22:35:47 ] そうですか。
359 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/12(木) 16:45:12 ] >>355 呪い
360 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 16:35:14 ] そうですか。
361 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/14(土) 01:18:06 ] ttp://d.hatena.ne.jp/secondlife/20060108/1136650653 ここにある zsh + screen で端末に表示されてる文字列を補完する の compadd - "${reply[@]%[*/=@|]}" って何やっているのですか?
362 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/14(土) 02:47:28 ] つ gdb
363 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/14(土) 08:59:49 ] >>361 それは自分がパート2で書いたのが下敷きになっているようだね。 ttp://makimo.to:8000/2ch/pc3_unix/1036/1036324177.html#816 > って何やっているのですか? ls や zsh の補完リストで、ファイル名にファイルの種別を表すサフィックスが ついてることが多いので、それを削除したのを補完候補としている。 そのレスを書いてから、2、3回手を入れて今はこんな感じ。 # dabbrev complete for zsh HARDCOPYFILE=$HOME/tmp/screen-hardcopy touch $HARDCOPYFILE screen-dabbrev-complete () { setopt localoptions extendedglob local reply lines=1000 local hp="([\'\"])##" tp="([*/=@|:\'\",)])##" screen -X eval "hardcopy $HARDCOPYFILE" # screen -X eval "hardcopy -h $HARDCOPYFILE" # scrollback buffer の内容も含む場合 reply=($(sed '/^$/d' $HARDCOPYFILE | tr ${WORDCHARS//[._-]/} ' ' | sed '$ d' | tail -$lines)) compadd -M 'm:{a-z-}={A-Z_}' - ${${${${reply[@]##${~hp}}%%${~tp}}://(?|??)}} } zle -C screen-dabbrev-complete menu-complete screen-dabbrev-complete #bindkey '^[/' screen-dabbrev-complete bindkey '^[^_' screen-dabbrev-complete
364 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/14(土) 09:31:33 ] つづき。 _history-complete-{newer,older}のデフォルトの割当てと衝突するので 変えたのだが、使っていて混乱することがある。元に戻した方がいいか。 正直なところ、解読不能になってしまって最初の頃で止めておけばよかったと思う。 1週間に1回使えばいい方だが、使いたいときにちゃんと動いてくれると嬉しい。 が、意図する補完になってくれないことが増えたような。最後に手を入れた変更と キー割当ての混乱が原因かな。
365 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/15(日) 14:23:37 ] FreeBSD で acroread7 + zsh のときに % acroread [TAB] _acroread:7: no such file or directory: /usr/local/bin/acroread[ブッ] と怒られます。 めんどうなんで↓こんな力業をかましてしまいましたが、 ヨイコの皆様はどう対処されているのでしょうか?
366 名前:365 mailto:sage [2006/01/15(日) 14:24:29 ] --- /usr/local/share/zsh/4.2.6/functions/Completion/X/_acroread.dist Sun Jan 15 13:52:52 2006 +++ /usr/local/share/zsh/4.2.6/functions/Completion/X/_acroread Sun Jan 15 14:19:03 2006 @@ -4,15 +4,16 @@ # Try extracting the version number directly from the executable. # (This will fail if the executable is a wrapper script for acroread.) -local ver=${${${(f)"$(<$commands[$words[1]])"}:#^ver=*}##ver=} -[[ -n $ver ]] && _acroread_version=$ver +#local ver=${${${(f)"$(<$commands[$words[1]])"}:#^ver=*}##ver=} +#[[ -n $ver ]] && _acroread_version=$ver -if (( ! $+_acroread_version )); then - local acropath=${${(s. .)${${(f)"$($words[1] -help 2>&1)"}[1]}}[2]} - _acroread_version=${${${(f)"$(<$acropath)"}:#^ver=*}##ver=} -fi +#if (( ! $+_acroread_version )); then +# local acropath=${${(s. .)${${(f)"$($words[1] -help 2>&1)"}[1]}}[2]} +# _acroread_version=${${${(f)"$(<$acropath)"}:#^ver=*}##ver=} +#fi -if [[ $_acroread_version == 7.* ]]; then +#if [[ $_acroread_version == 7.* ]]; then +if true; then _arguments -C \ '--display=:X display:_x_display' \ '--screen=:X screen (overrides the screen part of DISPLAY)' \
367 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/15(日) 15:51:15 ] 俺はこれを挿入。以前のバージョンにこのオプションがあったかどうか 知らないが、どうせそんなの使うことはないだろうからいいやと。 if (( ! $+_acroread_version )); then _acroread_version=$($words[1] -version 2>/dev/null) fi ところで、globを変数展開等とあわせて同時にやる方法ってないですかね。 すぐにはあまりいい例が浮かばないですが、たとえば files=(*.c(.N)) files=(${files%.c}) を一旦変数へ代入することなく一行で書きたい。
368 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/15(日) 19:52:14 ] >>365 compdef -d acroread
369 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/17(火) 04:20:54 ] >ttp://d.hatena.ne.jp/secondlife/20060108/1136650653 なんというか、出典を示さず自分で考えたみたいに書く奴って最低だよね。
370 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/17(火) 04:59:13 ] キモ
371 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/17(火) 10:17:04 ] >>369 くわしく
372 名前:名無しさん@お腹いっぱい。 [2006/01/17(火) 21:07:13 ] age
373 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/18(水) 05:13:12 ] > とvimrc diaryに書かれてたので て書いてあるじゃん
374 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/18(水) 06:04:26 ] それは要望がじゃなくて?
375 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/18(水) 06:12:10 ] >>373 国語力乏しすぎ
376 名前:名無しさん@お腹いっぱい。 [2006/01/18(水) 15:43:45 ] cdするとき、ほかのユーザーの ホームディレクトリが補完候補にあがってしまうんだが、 どうやったら補完しないようになるかわかります? たとえば、自分以外にhogeさんがいるとすると、 cd hoge ってやると、今どこにいても~hogeにcdできちゃうんだけど。。。
377 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/18(水) 17:26:06 ] >>376 補完されなかったが。
378 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/18(水) 17:39:21 ] unsetopt CDABLE_VARS
379 名前:376 mailto:sage [2006/01/19(木) 17:40:49 ] thx どっかのサイトからコピペってるうちに怪しい設定が大量に入り込んでたみたいデス これで快適なzshライフが遅れそう ありがとうございますた
380 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/21(土) 01:41:48 ] skkの動的補完が便利なので、zshも動的補完してくれないかなーと 思う。
381 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/21(土) 01:47:27 ] skkは使ってるけどzshでやられたらウザそう
382 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 00:23:15 ] まあ、切れれば無問題
383 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 22:57:40 ] >>380 predict-on じゃなくて?
384 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 23:05:48 ] >>365 それってこういう状況? % where acroread /usr/X11R6/bin/acroread % echo $commands[acroread] /usr/local/bin/acroread /usr/local/bin/acroread は参照先のない シンボリックリンクのようだけど、 これを消せばまあ動くかな。(試してない) where の結果と commands の内容が違ったりするんだね。
385 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 23:58:39 ] >>367 うーん。 files=(*.c(.N:s/.c/)) だと末尾の一致がないから、 files=(${$(echo *.c(.N))%.c}) とかかな。echo を消したい。
386 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/23(月) 01:48:09 ] >>385 echoとか使っちゃうと途端に空白だとか何だとかの問題が入ってきちゃうんで、 zsh内の各種展開のみで済ませたいんですよねえ。 で、globも変数展開もあわせて一発で書きたいなと。 いまんとこ次善の策として>>367 のように2行書いてるわけですが、 一発で書ければ変数を導入しなくてよくなる場合もあるので。
387 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/23(月) 08:38:32 ] 一般的な方法はないんじゃないかな。やりたい内容によっては修飾子や 何やらで済ませられるけど。>>367 のような単純な例だと、files=(*.c(.N:r)) でも いいだろうし。globbing の展開は最後だから、変数展開を後にしたいとすると 結局多段にするのが簡単ということになりそう。
388 名前:365 mailto:sage [2006/01/23(月) 10:00:36 ] >384 いや 両方とも /usr/X11R6/bin/acroread な状況です。 深く考えずに zsh を portupgrade で 4.2.6 にしたら こんななりましたです。 ただ/usr/local/bin/acroread@ は参照先消えた状態で存在したので 消した上で /usr/local/share/zsh/4.2.6/functions/Completion/X/_acroread を 元に戻してみたらやっぱりこんななりました。 % acroread [TAB] _acroread:12: no such file or directory: まあおいらには >368 みたいな対処がいいのかもしんないけど
389 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/23(月) 18:26:32 ] >>387 やっぱそうですか。ありがとう。
390 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/23(月) 22:47:42 ] >>388 /usr/X11R6/bin/acroread って acroread5 じゃないので?
391 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/27(金) 23:20:48 ] cat hoge.txt | sed > tmp.txt mv tmp.txt hoge.txt というのを、zsh なら、 cat hoge.txt | sed > hoge.txt 的に、tmp.txt を必要なしにできたような気がするんだけど、勘違い? あったような気がするんだけど、みつからねえぇ。
392 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/27(金) 23:41:15 ] >>391 ( rm hoge.txt; sed > hoge.txt ) < hoge.txt
393 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/27(金) 23:52:24 ] cp =(cat hoge.txt | sed) hoge.txt
394 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 10:33:11 ] なんか怖くない?
395 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 13:16:27 ] zshじゃなくても cat << __EOF___ | ed hogehoge.txt edなこまんど : __EOF__
396 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 16:06:41 ] それ、catの意味あるのかよ。
397 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 17:03:40 ] ナイスつっこみ
398 名前:名無しさん@お腹いっぱい。 [2006/01/29(日) 15:24:34 ] screenを使っているんですが ^sで分割したいんですが zshのインクリメンタルサーチが始まってしまいます。 このキーバインドを無効にするにはどうしたらいいですか?
399 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/29(日) 15:45:58 ] bindkey '^s' undefined-key
400 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/29(日) 17:46:40 ] >>398 zshがscreenのキー入力を食うはずがないのだが。
401 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 19:12:35 ] んだ
402 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/02(木) 03:51:18 ] 今日CVSから最新のzshとってきてmakeしたんだけど : yodl -o zsh.texi -I. -w ztexi.yo version.yo zsh.yo; \ test -f zsh.texi make[1]: *** [zsh.texi] Error 1 make: *** [all] Error 1 とか言われちゃいます。zsh.texiなんてソースの中に無いみたいだけど… OSX10.4.4 texinfo 4.7
403 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/02(木) 05:38:50 ] そりゃあyodlで生成しているから
404 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/04(土) 11:06:28 ] zsh -c "hoge|moge" とかするとき、aliasは使えないんですかね
405 名前:272 mailto:sage [2006/02/04(土) 11:25:17 ] >>404 $ZDOTDIR/.zshenvにaliasを書いちゃう
406 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/04(土) 13:33:34 ] どうもです
407 名前:名無しさん@お腹いっぱい。 mailto:age [2006/02/07(火) 20:53:47 ] (I meant to send this yesterday, but got sidetracked, so this is already out of date.) I uploaded 4.3.0-dev-3 to the pub/development directory of ftp.zsh.org. This fixes a few odd things in multibyte mode and there are the usual completion function tweaks. It's now possible to define a ZLE hook function zle-keymap-select to run when $KEYMAP changes. One minor incompatibility is that the shell no longer sets HOME itself if it wasn't in the environment (which it usually is). [In the next version we'll continue to set HOME unconditionally in native zsh emulation.] It's probably in a pretty fit state to be released as 4.3.1 now. -- Peter Stephenson <pws@csr.com> Software Engineer CSR PLC, Churchill House, Cambridge Business Park, Cowley Road Cambridge, CB4 0WZ, UK Tel: +44 (0)1223 692070 To access the latest news from CSR copy this link into a web browser: www.csr.com/email_sig.php
408 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/17(金) 05:59:48 ] 4.3.1 がでそう
409 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/20(月) 23:23:23 ] 白い液もでそう
410 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/21(火) 00:02:27 ] 母乳ですか。 そうですか。
411 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/25(土) 01:30:36 ] 変色します
412 名前:名無しさん@お腹いっぱい。 [2006/02/28(火) 22:11:10 ] I've uploaded ftp://ftp.zsh.org/pub/zsh-4.3.1.tar.gz ftp://ftp.zsh.org/pub/zsh-4.3.1.tar.bz2 ftp://ftp.zsh.org/pub/zsh-4.3.1-doc.tar.gz ftp://ftp.zsh.org/pub/zsh-4.3.1-doc.tar.bz2 Please try this out on as many systems as possible as soon as you get a chance; if there are any significant problems I'll produce a 4.3.2. This is very little changed from 4.3.0-dev-5, so there shouldn't be any. If it looks OK I'll make the appropriate arrangements at Sourceforge and Freshmeat (please feel free to pass the message on elsewhere; I don't use comp.unix.shell or Slashdot myself). Thank you to everyone who helped. The release announcement currently looks like: This version contains initial support for multibyte characters in the shell's line editor (in particular UTF-8, although any character set supported by the system library is usable). Please read the appropriate sections of the file INSTALL as this support is not turned on by default on all systems where it can be used. The release also contains a few enhancements to shell syntax and supplied functions as well as numerous bug fixes. See the file NEWS for more detail. There are only a few unavoidable incompatibilities with previous versions, mostly to enhance compatibility with other shells and standards; see the README file.
413 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/01(水) 01:40:08 ] zsh 4.3.1でeuc patchがあたらないのだが、 patch当てないでmultibyte supportってまともに動く?
414 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/01(水) 03:03:15 ] 普通に動く プロンプトが削れていくバグも無い
415 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/01(水) 15:49:32 ] >>414 OSは?
416 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/01(水) 16:00:39 ] multibyteってコンパイル時以外に何か設定いる?
417 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/01(水) 17:31:32 ] >>416 LC_CTYPE
418 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/03(金) 03:09:51 ] .2
419 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/06(月) 20:20:39 ] 4.3.2に上げたらUTF-8な端末上で日本語入力しても化けなくなった。
420 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/06(月) 20:57:33 ] >>419 Linuxユーザでしょ
421 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/06(月) 21:11:34 ] やっぱそうか・・・
422 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/06(月) 21:22:44 ] Mac OS X だけど化けない。嬉しい。
423 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/06(月) 21:41:22 ] utf8ですか?
424 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/07(火) 03:31:22 ] 4.3 になったらマルチバイトのあつかいがうまくなった
425 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/07(火) 03:56:59 ] zsh-4.3.2 -f bindkey -e で delete おすと ~ が入力される quoted-insert だと ^[[3~ bindkey '^[[3~' delete-char で望んだ動作になるんだけど なにが悪いのかな?
426 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/07(火) 14:41:04 ] どちらか o デフォルトのemacsキーバインドはDELキーに何も割りあてられていない o TERMが正しくない
427 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/07(火) 15:24:55 ] ああ、pantherダメなんだ
428 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/10(金) 05:57:10 ] おお、いつのまに。freebsd ports にこねーなあ。
429 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/11(土) 11:34:00 ] おれも ports 待ち
430 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/11(土) 13:28:49 ] freeze
431 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/11(土) 18:10:37 ] cygwin版マダー
432 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/11(土) 19:08:10 ] いつの間にか日本語文字のカーソル移動が きちんと二バイト単位でできるようになってるよ。
433 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/12(日) 00:12:04 ] 4.3.1、4.3.2と試してみたけど表示とかカーソル移動は問題無し。 が、"第1話.avi"とかなファイルを"?1?.avi"とかで指定できなかった。 環境はLinux(Gentoo)、LANG系は全部ja_JP.UTF-8。
434 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/12(日) 01:12:02 ] 「第1話」は 「??1??」でマッチするね。
435 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/16(木) 18:31:05 ] 誰かfish(friendly interactive shell)って使ったことある人いる? なんかちょっとすごそう。かも?
436 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/16(木) 20:45:13 ] 少し前に試用してみたことはある。 良かった点は動的に色をつけてけっこう綺麗なことかな。 一方、 ・コンソールの取り回しが重かった ・構文規則が bourne shell 系でも csh 系でもない独自なもので覚えるのが面倒だった ・細かいチューンの方法がよくわからなかった という理由で利用を断念した。 まあ zsh がわかりやすいわけではないけれど、今はもう設定しちゃってるしね。 「設定が諸悪の根源」という思想もまあわかるんだけど、そのわりに標準がと ても使いやすいというわけじゃないし、補完系の設定を見てみたらとても複雑 だったし、理念に実装が追い付いていないなーという感じ。
437 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/16(木) 21:26:35 ] >>437 確かに。 >・構文規則が bourne shell 系でも csh 系でもない独自なもので覚えるのが面倒だった >・細かいチューンの方法がよくわからなかった 使ってて似たようなことさっき思った。w うーんやっぱzsh越える用なのってそうそう出てこいわな。
438 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/18(土) 22:22:56 ] 取り敢えず名前から困るからな。繰り上がって aash とか。
439 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/19(日) 07:22:01 ] っzzsh
440 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/19(日) 08:17:11 ] shzzじゃないの
441 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/19(日) 16:05:54 ] bush
442 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/22(水) 21:57:35 ] for i in a b c d e ; do ; command $i ; done をよくやるんだが、zshならもっと簡単にやる方法あったりしない?
443 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/22(水) 22:32:46 ] ないんじゃないかな。数字だったら{x..y}でいいんだけど。 せいぜいdo, doneを省くくらい。
444 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/23(木) 00:08:23 ] そういうスクリプト作ったら?
445 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/23(木) 02:35:37 ] perlなスクリプト perl hoge.pl a zで、aからzまででる perl hoge.pl g oならgからoまで #!/usr/bin/perl for($i=ord($ARGV[0]);$i<=ord($ARGV[1]);$i++){print chr($i),"¥n";}
446 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/23(木) 13:36:59 ] jot -c 5 a
447 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/24(金) 07:19:52 ] setopt BRACE_CCL の下だと {a-e} で a b c d e を生成できる。 あと、自分はこんな関数を定義していて偶に使う。 function each () { for i in "$@[1,-2]"; do eval $@[-1] ${(qq)i} done } command は内部コマンドにあるから名前を変えるが、>>442 の例だと each {a-e} command1 みたいなかんじに。
448 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/25(土) 09:37:04 ] スレ違いだけど each func arg1 arg2 ... の方が直感的と思ったオレは lisper ?
449 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/25(土) 10:48:26 ] >>448 lisperならeachじゃなくてmapの方が直観的と思うハズだ。
450 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/25(土) 10:49:28 ] と思ったがschemeならfor-eachか。
451 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/26(日) 00:35:54 ] カリー化マンセー
452 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/26(日) 18:19:02 ] autocdくらいしか変更してないけど快適。
453 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/28(火) 04:59:32 ] >>451 Haskell?
454 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/28(火) 23:20:07 ] perl -le 'print for (a .. d)'
455 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/09(日) 17:17:32 ] >>442 bash ならもっと簡単にやる方法あるよ: bash -c 'for i in {a..e} ; do ; command $i ; done'
456 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/09(日) 17:56:03 ] >>455 それはbash3と断るべきだな。現状まだbash2の方が多いし、bash2ではできない。 それより、zshは {1..5}は展開できるのに、{a..e}が展開できないのってなんか中途半端。
457 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/09(日) 18:09:41 ] すまん、純粋な好奇心で聞くのだが、 bash3 では {aa..zz}とかみたいなこと は出来るの? あるいは {a..aa} とかはどうなるの? 一文字限定でもあった方が便利ではあるだろうが。
458 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/09(日) 23:49:01 ] bash のスレで聞いたら?
459 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/09(日) 23:55:17 ] >>457 できないよ
460 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/14(金) 21:37:30 ] ttp://www.freedesktop.org/wiki/Software/BadSoftware そろそろここのリストから消えそうだね
461 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/16(日) 10:42:22 ] >最終更新日時 2005-08-12 22:30:57
462 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/19(水) 20:05:10 ] 4.3系は日本語入力可能だね
463 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/19(水) 21:03:10 ] portsにはまだこないの?
464 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/20(木) 02:27:27 ] portsってことはBSD系だよね?unstable版とかって選べないの? ちなみにソースなら ttp://www.zsh.org/pub/ ここにあるよ
465 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/21(金) 03:44:27 ] portsがunstable版だもの
466 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/23(日) 19:15:09 ] Ports tree unfrozen はとっくにしてるんだよねえ。
467 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/23(日) 20:20:34 ] なかなかアップデートされないportsはパッチを作ってsend-prで 送りつけてやるのがいいよ。
468 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/25(火) 13:16:33 ] ports まだ?
469 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/25(火) 21:54:38 ] 早く送りつけろよ
470 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/25(火) 22:43:20 ] ってか send-pr されてるじゃん。自分で作って損した。 www.freebsd.org/cgi/query-pr.cgi?pr=ports/95970
471 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/05/01(月) 16:58:29 ] >>470 乙
472 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/05/01(月) 17:26:55 ] ports きた。 4.3.2
473 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/03(土) 18:44:04 ] cygwin の package にはこないんかのう。sjis が扱えるとウハウハなんじゃが。ま、いま cygwin つかってないけど。
474 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/09(金) 22:32:03 ] すべてのコマンドで実行時間(sys,real)を表示するにはどうしたらいいのでしょう? precmd内から何らかの方法で値を取得し表示できるのが理想なのですが…。 すべてのコマンドにtime -o /tmp/hogeを頭につけてそれを取得する、という方法でも結構です。 REPORTTIME=0にTIMEFMTだと出ないときがあるので何とかしたいのです。
475 名前:sage [2006/06/10(土) 03:55:58 ] accouting を on にすれば? man acct
476 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/21(水) 02:35:14 ] なんかzsh 4.3.2でacroreadの補完がおかしくなったんだけど俺だけ?
477 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/21(水) 14:18:03 ] おなじく acroread おかしい。補完しようとするとなんかごちゃごちゃ出てきて, _acroread:12: no such file or directory: Gtk-WARNING とか言われる。tcsh では問題ないのに。
478 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/21(水) 14:31:53 ] 4.3.2 というか、 acroread の 7.x のときに上手く動かないっつー問題。 いつになったら直るのかなあ。 >>365-368 あたりを読んでみ。
479 名前:476 mailto:sage [2006/06/21(水) 17:55:28 ] それとは別件。なぜか別のシェルを上げたら使えたので 何か変なsetoptでも知らないうちにしちゃったのかも。 それが影響するcompletion関数というのも勘弁だけど。
480 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/12(水) 16:20:40 ] すみません質問があるのですが、以下のようにして ls の結果を less にパイプして 表示するようにしたいのですが、以下のやり方だと引数を入れたとき引数が less の 引数として認識されてしまい、ls の引数として認識させることができません。 alias -g L='| /usr/local/bin/jless' alias ls="ls -alG L" csh 等では以下のようにして同等の機能を持たせられるので、zsh でも同じこと はできると思うのですが、やり方を知っている方がおられましたら教えていただけないでしょうか? ls [オプション] [ファイル名] | less -e alias ls "/bin/ls \!* | less -e"
481 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/12(水) 16:43:09 ] ls() { /bin/ls ${1+"$@"} | less -e }
482 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/12(水) 16:51:43 ] >>481 いまどき ${1+"$@"} なんてしなくても "$@" で桶。
483 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/12(水) 16:58:57 ] そうなの?
484 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/12(水) 21:33:38 ] そうよ
485 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/12(水) 23:46:50 ] いまどきもなにも、このスレに書くってことはzsh限定でしょ。"$@"すら$*でよいのでは。
486 名前:480 mailto:sage [2006/07/13(木) 01:17:09 ] >>481 そのように設定をし、ちゃんと動作することを確認いたしました。 質問にお答えいただき、どうもありがとうございます。
487 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/15(土) 23:09:45 ] bindkey -v を使っているんですが、 emacs bindでいうところの、再帰履歴検索がやりたくて、 bindkey "^R" history-incremental-search-backward bindkey "^S" history-incremental-search-forward と書いたのですが、Ctl-Rは効くのですが、Ctl-Sが効きません。 何故ダメなのかを教えてください。 もしくは、他の方法でもいいので、 bindkey -v の状態で、再帰履歴検索をやる方法を教えてください。
488 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/15(土) 23:37:43 ] www.itmedia.co.jp/help/tips/linux/l0612.html これじゃないの
489 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/16(日) 00:18:19 ] ビンゴです! どうもありがとうございました。
490 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/03(木) 00:16:10 ] インクリメンタル検索って再帰履歴検索っていうんだ 初めて知ったかも
491 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/03(木) 07:35:22 ] どこの用法だよその謎訳語
492 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/03(木) 19:21:26 ] "再帰履歴検索" の検索結果 1 件中 1 - 1 件目 (0.29 秒) このスレしかヒットしねぇ('A`)
493 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/06(日) 02:36:57 ] 再帰履歴検索 で検索した結果 1〜10件目 / 約54,800件 - 0.46秒 ahooクオリティ(・∀・)
494 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/07(月) 00:10:45 ] timeコマンドの出力をリダイレクトでつかまえたい場合、どうすればいいんでしょうか? % time hoge とした時の、hogeコマンドの出力は /dev/null に、 timeコマンドの出力は >output などとしてファイルに出力したいのですが。 time hoge を実行するだけのシェルスクリプトを書いておけば、 以下のようにして望んだ結果を得られるのですけど。 % cat hoge.sh time hoge % ./hoge.sh >/dev/null 2> output 0.012
495 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/07(月) 00:43:47 ] (time hoge > /dev/null) 2> a
496 名前:494 mailto:sage [2006/08/07(月) 03:43:48 ] おお! なんかすごい基本的なことだったのかもしれませんが、ありがとうございます。
497 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/07(月) 16:47:31 ] time はコマンドじゃなくて予約語。
498 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/07(月) 19:57:51 ] ( )じゃなくて{ }でもよかった
499 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/07(月) 22:11:10 ] GNUのtimeもきっと/usr/binあたりにあるでそ
500 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/09(水) 12:34:49 ] ない
501 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/09(水) 13:25:35 ] >>499 >>494 は GNU time の話ではない。
502 名前:名無しさん@お腹いっぱい。 [2006/08/16(水) 01:03:00 ] lists.debian.or.jp/debian-users/200608/msg00104.html 日本語特有の設定ってある? ロケールと print_eight_bit くらいだとおもうんだけど
503 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/16(水) 04:17:04 ] ヒドス ttp://hiki.ex-machina.jp/zsh/index.cgi?MessageBoard
504 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/16(水) 08:36:54 ] ワロタ
505 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/16(水) 21:03:15 ] >>502 そいつは日本語特有の設定というより、 日本語で書かれた資料を切望しているように見えるんだが。
506 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/09/14(木) 00:24:17 ] cygwin版4.3.2キター
507 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/09/16(土) 02:36:00 ] まじでかぁあぁあ でもいまcygwinいれらんね〜
508 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/09/25(月) 12:46:33 ] (bash 3.1.17) $ bar=bar $ echo ${bar/#/foo} foobar $ echo ${bar/%/foo} barfoo (zsh 4.3.2) $ bar=bar $ echo ${bar/#/foo} foobar $ echo ${bar/%/foo} bar どうして?バグ?
509 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/09/27(水) 13:27:58 ] zsh スレの過疎ぶりにワラタ # グローバルエイリアスを my-expand-abbrev 用の連想配列 に追加する # 注意:現状ではうまく動いているようだが、おかしくなっても知らない function abbrev-with-global-aliases() { local globals="$(alias -g|tr '=' ' ')" local backup="$(alias -L)" unalias -m '*' eval 'myabbrev+=( '$globals' )' eval $backup } abbrev-with-global-aliases
510 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/09/29(金) 09:02:55 ] これだけでよかった。死ね俺 # グローバルエイリアスを myaddrev に追加 myabbrev+=( ${==${(kv)galiases}} )
511 名前:名無しさん@お腹いっぱい。 [2006/10/02(月) 21:26:17 ] 生きろよ
512 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/05(木) 15:43:08 ] なにこの過疎スレ
513 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/08(日) 21:39:06 ] zshイイと思うけどなあ bash+bash-completionじゃボロボロで使いモノにならんよ Fedora Core 6ではzsh-4.3.2また見送りか
514 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/08(日) 22:09:14 ] 今も昔もインストールすればいいだけ
515 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/09(月) 02:17:27 ] bashの中途半端振りはいつもいやになるな % command >& log すらできないし はよ駆逐されてくれ
516 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/09(月) 02:35:46 ] >>515 zshが全部でデフォルトシェルにならない限り無理。 bashはbashでいいと思うけど。 zshと比較する気は無い。
517 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/14(土) 02:02:32 ] command.com = ミゼット ash = ムーブ csh = キューブ ksh = マーチ cmd.exe = フィット tcsh = シビック bash = カローラ zsh = ステップワゴン powershell.exe = ボンドカー
518 名前:名無しさん@お腹いっぱい。 [2006/10/14(土) 10:31:09 ] zshはチューリング コンプリートですか?
519 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/14(土) 12:33:04 ] scshの評価もキボンヌ
520 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/14(土) 17:54:47 ] $(ls)などはexpand-or-completeで展開できますが alias を展開することはできますか
521 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/14(土) 18:10:29 ] which
522 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/14(土) 19:54:00 ] global alias だとエラーメッセージにおきかえられてしまいます global alias でも使える方法はありますか?
523 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/15(日) 21:41:19 ] "^Xa" is _expand_alias
524 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/16(月) 06:04:57 ] m(_________________________________)m
525 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/16(月) 16:40:22 ] 平謝り
526 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/24(火) 16:35:29 ] bash = たろう tcsh = はなこ zsh = じろう
527 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/04(土) 15:43:13 ] zstyle ':completion:*:default' menu select true の ^F, ^B, ^N, ^P での移動が bindkey '^P' history-beginning-search-backward-end bindkey '^N' history-beginning-search-forward-end これを設定してるせいで ^N, ^P が履歴検索になってしまいます。 補完候補の選択時は履歴検索にならないようにする方法はありますか?
528 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/06(月) 04:32:14 ] >>527 なんか色々考えたけど、これが手っ取り早いかな。 bindkey -M menuselect '^P' up-line-or-history bindkey -M menuselect '^N' down-line-or-history ところで、マルチライン編集をする機会があるなら、 history-beginning-search-{backward,forward}-end よりも {up,down}-line-or-beginning-search の方が便利だと思う。
529 名前:527 mailto:sage [2006/11/08(水) 17:36:25 ] >>528 ありがとうございます。 しかし、「no such keymap `menuselect'」と出て上手くいきません…。 ちょっとマニュアル読んで調べてみます。
530 名前:527 mailto:sage [2006/11/08(水) 18:19:03 ] zsh起動して bindkey -M menuselect '^N' down-line-or-history と、やると「no such keymap 'menuselect'」とエラーになってしまう。 だけど、いったん補完リストを出してからやると、ちゃんと設定できる。 何故だ…orz
531 名前:527 mailto:sage [2006/11/08(水) 18:52:26 ] 解決しました。 zmodload zsh/complist で先に読み込まなきゃいけないんですね。 >>528 >{up,down}-line-or-beginning-search の方が便利だと思う。 こっちの方が良さそうです。ありがとうございました。
532 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/11(土) 03:24:11 ] ちなみに俺はこうしてる zmodload zsh/complist bindkey -M menuselect "^V" forward-word bindkey -M menuselect "^[<" beginning-of-history bindkey -M menuselect "^[>" end-of-history bindkey -M menuselect "^[v" backward-word bindkey -M menuselect "^M" .accept-line 最後の行はなんで入れたか覚えてない
533 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/11(土) 14:35:43 ] 俺はこうしてる zmodload zsh/complist bindkey -M menuselect '^n' down-line-or-history bindkey -M menuselect '^p' up-line-or-history bindkey -M menuselect '^o' accept-and-infer-next-history
534 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 14:34:03 ] どんなコマンドを実行したときも自動的に標準出力のログ をとってくれるような設定ってありませんか?
535 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 14:45:25 ] >>534 man 1 script man 1 tee
536 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 14:46:52 ] >>534 script?
537 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 14:59:13 ] makeした後とかで「teeしとけばよかった」と思うことがあるので、 どんなコマンドうったときも自動的にteeしてくれるようなものが あるといいと思ったのですが、viとかを考えるとけっこう難しいですね。 scriptは常用するにはちょっとうざいです。
538 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 15:05:35 ] >>537 kterm -sl 10000 とか??? スクロール保存行を多くとっておけばいいじゃん。 どーでもいいけど、質問は zshとどう関係あるんだよ??
539 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 15:26:25 ] だから、loginしたときに自動でteeでもscriptでも走らせればいいじゃんって ことじゃないの?
540 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 15:30:19 ] teeだと viが使えなくなる。 scriptだと大げさ。知らずに使ってると巨大なファイルができるかも。 よって、今のところ kterm -sl 10000 が最適解か?
541 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/23(木) 15:38:38 ] screen 使っとけば? # xscript (だっけ?) 思い出した。
542 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 04:26:30 ] 補完機能がすごいらしいしcsh系のへんなとこがないらしいので最近 chsh した初心者です。 まだ分からないことだらけですが、これからお世話になります。 こんな環境です。 FreeBSD 5.4-RELEASE-p6, X Window System Version 6.9.0, kterm: version 6.2.0.ext02 早速質問です。 mplayer についての記述が以下にありました。 /usr/local/share/zsh/4.3.2/functions/Completion/X/_mplayer ここにmfilesの候補として*.flvがないため、入れたいのですが、 どこ(どのファイル)にどう記述するのが正しい方法ですか。 latex だと *.tex が補完の候補にあがりますが platex については記述がないみたいです。 そこで locate zsh |grep -i latex してみたところ、結果が空でした。 latex と同じものを補完してくれればいいのですが、どうすべきですか。 似た問題がいくつかあります。初歩的な質問ですがどうぞよろしく。
543 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 04:48:30 ] >>542 /usr/local/share/zsh/4.3.2/functions/Completion/X/_mplayer - "*.(#i)(avi|mp3|mpg|mpe|mpeg|m1v|m2p|m2v|mov|asf|vob|mjpg|wma|wmv|asx|qt|rm|mkv|mka|ogm|ogg|wav)(-.)" && ret=0 + "*.(#i)(avi|mp3|mpg|mpe|mpeg|m1v|m2p|m2v|mov|asf|vob|mjpg|wma|wmv|asx|qt|rm|mkv|mka|ogm|ogg|wav|flv)(-.)" && ret=0 試してないけどこんな感じ? /usr/local/share/zsh/4.3.2/functions/Completion/Unix/_tex に #compdef tex latex slitex pdflatex jadetex pdfjadetex platex とか書いてない?
544 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 05:44:47 ] >>543 早速有難うございました! 二つともうまくゆきました。 ホームディレクトリに何か作ることを想像しましたが、 /usr/local/share/zsh/4.3.2/ 以下のファイルをを直接直してもいいのですね。 デスクトップ使用なので個人的には問題ありません。 ただ zsh のバージョンアップの際に注意しないといけないですね。 バージョンアップに左右されない書き方や、管理者でない場合のことも知りたいです。 ディレクトリ名を打つと cd するのがデジャビュ的になつかしいです。 MS-DOS 用のソフトで見たのか、記憶はさだかでありませんが、なつかしいです。
545 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 07:23:27 ] zshはいい加減正式版をリリースしてくれないと泣いちゃうよ?
546 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 13:06:39 ] >> 544 platexに関しては % compdef _tex platex で_texの補完ルールをplatexに適用できる
547 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 15:42:55 ] >>544 >596 名前: 名無しさん@お腹いっぱい。 投稿日: 02/07/21 06:49 > 1. ~/.zfunc というディレクトリをつくる > 2.$fpath に ~/.zfunc を加える(.zshrc 等には PATH と同じように書けばOK) > 3.以下のファイルを _mplayer という名前で ~/.zfunc 以下にセーブする > 4.あとは ~/.zcompdump をいったん消してから zsh を立ち上げなおしてくだちい > > == _mplayer ここから=============================================== > #compdef mplayer > > _arguments -R \ > '-h[オプションの一覧]' \ > '-V[冗長モード]' \ > '*:Movie File:_files -g \*.\(\#i\)\(mp3\|mpeg\|mpg\|avi\|wmv\)' > ==ここまで========================================================= > オプションはたいぎいので書いてません。 私もこういう設定は~/以下に置きたいので、上のを試してみたんですけど、tabを押すと _main_complete:1: _main_complete: function definition file not found というエラーが出て補完が効かないです。
548 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 19:57:20 ] みなさんのお蔭でだいぶ見えてきました。伏して謝します。 以下御報告。 >>546 おお、これはいろんな場面で役に立ちますね! % compdef _dvi dvipdfmx あと、うしろにargumentたくさん取れるみたいですね。 % compdef _tex platex jbibtex >>547 大きなヒントになりました。ほとんどそのままですが以下の方法でできました。 % mkdir ~/.zfunc % cd ~/.zfunc % cp /usr/local/share/zsh/4.3.2/functions/Completion/X/_mplayer ./ ファイルを編集して .zshrc に次の行を追加。 fpath=(~/.zfunc $fpath) 引用に「PATH と同じように書けばOK」とありますが、以下ではNGでお書きのエラーが出ました。 fpath="$fpath:~/.zfunc" fpath="$fpath;~/.zfunc"
549 名前:547 mailto:sage [2006/11/24(金) 22:00:53 ] >>548 fpath="~/.zfunc "$fpath はだめで(自分はこうやってて、だめだった) fpath=(~/.zfunc $fpath) だとうまくいくんですね。 なんでだろう?
550 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 23:14:58 ] ()は配列。前者は文字列にセットしちゃうからだめ。 FPATH="~/.zshfunc:$FPATH" でもよい。
551 名前:547 mailto:sage [2006/11/25(土) 00:10:24 ] >>550 お答えありがとうございます。 すっきりしました。
552 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/15(金) 13:37:16 ] zshのデフォルトのプロンプトにcsh/tcshと同じ % が使われてるのはどうして?
553 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/15(金) 18:47:06 ] 普通 % だから
554 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/15(金) 19:37:26 ] >>552 csh/tcshからの移行組に対するリハビリモードだから。 社会復帰できたらちゃんと PS1='$ ' に設定するのが望ましい。
555 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/16(土) 05:32:14 ] wiki消えるぞ〜 hiki.ex-machina.jp/zsh/index.cgi >重要 勝手ながら、都合により本サービスを停止することに致しました。停止予定日は2007年1月10日を予定しております。 >予定日までに wiki.fdiary.net/ など他のHikiFarm?への移動をお願いいたします。(2006.12.7)
556 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/17(日) 21:56:04 ] cygwinでzshを使い始めた若輩者です 解説サイトを見てますと起動時に ~/ 以下の .zshrc .zshenv .zshprofile .zlogin が読み込まれることが前提のようなのですが 自分の環境ですと .zshrc しか読み込みません 他の3つの設定を読み込むにはどこに設定すればいいのでしょうか?
557 名前:名無しさん@お腹いっぱい。 mailto:sage [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シェル)の時
558 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/18(月) 11:33:40 ] /root が 700 で下のように zsh で先に * が 展開されちゃうのはどう回避したらいい? $ sudo ls -l /root/* zsh: no matches found: /root/*
559 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/18(月) 12:36:56 ] shell について勉強し直すのが先でそ
560 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/18(月) 15:15:53 ] >>557 ありがとうございます。 おかげで全部のファイルの読み込みが出来ました。 zshenvが読み込まれてないと思ったのは ファイルの最初に書いてる echo をコメントアウトしてしまっていました。
561 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/20(水) 01:29:26 ] >>555 消えるんだ。。。もったいない。 ここいったいどんな管理になっているのだろう 連絡先とか管理者とか何も書いてない。 勝手に、コピーして違うページに公開するわけにはいけないし。。。 >wiki.fdiary.net/ など他のHikiFarm?への移動をお願いいたします。 って、ことは、勝手に移してよい? それとも、サーバ管理者が、wiki管理者に移動を依頼しているのかよくわからね。。。
562 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/20(水) 01:32:58 ] >>561 移していいんじゃない?
563 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/20(水) 11:50:29 ] >>561 頼む。 とりあえずやっておいて、もし重複したりしたら後で消せばいいんじゃないの?
564 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/21(木) 17:15:13 ] ライセンスはどうなってるのよ。 勝手にコピー公開していいのか?
565 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/23(土) 15:18:05 ] >>564 それが、問題だな。。。
566 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/23(土) 20:50:50 ] 書いた人のライセンス? サービス側のライセンス? 一部書いた人間としてはコピーしておくれって感じだが。
567 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/24(日) 02:09:41 ] まずは移転先を確保。 次に自分が書いた箇所を移転先にコピー。 残りは破棄。 これで問題なかろう。
568 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/24(日) 09:53:30 ] 別に特定のライセンスとか明記していない いわば「便所の落書き」を よそに移したって問題なかろう
569 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/24(日) 11:11:28 ] 阿呆か
570 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/25(月) 03:01:44 ] 厳密には、便所の落書きでも2chの書き込みでも、書いた人に著作権とかの権利がある。 きっとコピーするには、編集した人全員に許可をもらう必要があると思うけど、、、 でも、そこまで厳密にする必要も無いと思うからWikiを創めた人(Wiki管理者)が、 許可したら移して良いと思う。 というわけで、誰かWiki管理者のふりをしてwiki書き換えといてくれ。。。と冗談を言ってみる。
571 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/27(水) 22:02:07 ] ライセンスが確定していなかった以上、別のWikiへの転載は禁止。 もったいないが、仕方がない。 てことでFA?
572 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/27(水) 23:01:47 ] 阿呆か
573 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/27(水) 23:21:10 ] 新しいwikiにコピーさせてもらって、 ライセンスのことは注意書きとして書いておけばいい。
574 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/28(木) 04:32:09 ] くだらねえな ・このスレのまとめを新たに作る ・Wiki移転 やってることの本質は変わらんだろ。 著作権法を軽んずる気はないが、意味のおかしい会話になっている。
575 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/28(木) 07:35:59 ] 素直に著作権法は無視といえばいいのに。
576 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/28(木) 11:40:56 ] 新たにまとめたら同じになった! 同じ元ネタを同じようにまとめたんだから当然だよな!
577 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/28(木) 11:53:17 ] あるあるw
578 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/28(木) 11:53:51 ] 再実装ってやつだな
579 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/28(木) 12:00:10 ] たまたまならしょうがないよな
580 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/29(金) 13:17:24 ] bindkey で割り当て可能なコマンドの一覧てどこにあるんでしょうか コマンドラインスタックをESC-q から Ctrl-q に変えたくて探してます
581 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/29(金) 14:20:18 ] stty を調べろ、に一票
582 名前:名無しさん@お腹いっぱい。 mailto:sage [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など他の項目はどう見つければいいんでしょうか
583 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/29(金) 17:04:08 ] >>581 は「知ったか」に1票。 zshの bindkeyの話なので、stty(低レベルの端末設定)とは関係ない。
584 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/29(金) 17:09:19 ] 探してるのはこういうのか? zsh.sourceforge.net/Doc/Release/zsh_29.html これはちょっと古いけど、普通にインストールしてるなら ローカルにも同じようなのがあるでそ。
585 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/29(金) 19:08:30 ] >>583 ありがとです >>584 そうです。ありがとうございます コマンドラインスタックは push-line なんですね ずっと buffer stack で探してました…。
586 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/30(土) 00:30:21 ] >>585 Esc-q にbindされている関数の名前だけ分かればいいなら bindkey |grep q すりゃわかると思う。 一覧ではないから>>580 の答えではないが。 >>581 はC-qがsttyで割り当てられてるって話でそ。 C-s/C-qなんて今更使わんが。
587 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/30(土) 01:41:47 ] stty で奪われてたら zsh で扱いたくても扱えないでそ > C-s/C-qなんて今更使わんが。 「使わない」には同意だけど大抵設定はされてるでしょ
588 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/30(土) 11:53:03 ] >>586 普通 M-x describe-key-briefly でそ?
589 名前:名無しさん@お腹いっぱい。 mailto:sage [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). こういう違いがあるようなんですが、よくわかりません。
590 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/05(金) 04:50:28 ] 重複削除をどの時点で行うかが違う。 よくわかりませんで思考停止するんじゃなくてもうちょっと考えてみなよ。 ・どこまでわかっていて、よくわからないのはどの部分なのか、 ・わからないところはどのような可能性が考えられるか、 ・それらの可能性が本当かを確かめるにはどうすればいいか、 を自分で考えるようにすればもう少し読解力が高まると思われ。
591 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/05(金) 07:16:54 ] 書き込みのあとそれぞれ設定して調べたところ、 前者はシェルを抜けた段階でヒストリファイルの重複を削除するのに対して 後者は即時にメモリ内?のヒストリ重複を削除してるっぽいことがわかりました。 いずれもシェルを抜けた段階でファイルの重複は消されるようなので 設定は片方だけでよさそうですが、 share_history などの設定もいろいろ影響してそうなので それ以上はつきつめて調べてません。 590 さん、助言どうもありがとうございました。
592 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/05(金) 08:43:16 ] 手元の .zshrc だと setopt hist_ignore_dups # 前後のダブりのみ消す setopt hist_ignore_all_dups # ヒストリに追加されるコマンド行が古いものと同じなら古いものを削除 と両方書いてあるな。 説明はmanualのまんまだ。
593 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/05(金) 16:40:36 ] wiki移転完了(たぶん) ttp://wiki.fdiary.net/zsh/ XML-RPCでガーーーッと移動してちょこっといじっただけ。 変なとこあったら修正よろしく。
594 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/06(土) 18:38:01 ] >>593 おつかれ、サンクス
595 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/18(木) 20:02:39 ] 同僚に薦められてzshに移行したばかりのものです。 いきなり質問で恐縮ですが、 コマンドラインで、第二引数だけをヒストリから補完とか可能でしょうか? 可能でしたら方法をお教えください。 具体的には、あるコマンドを(第二引数の)ファイルに実行した後で、 別のコマンドをそのファイルに実行したい時に、簡単な操作で 第二引数を呼び出したいのです。
596 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/18(木) 21:10:44 ] M-. (insert-last-word) かな?
597 名前:595 mailto:sage [2007/01/18(木) 21:17:18 ] >>596 おお、ありがとうございました。 できましたw zshの強烈な補完に感動してます。 ありがとうございました。
598 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/23(火) 06:52:27 ] predict-on, predict-off を同じキーに配置して オンならオフ、オフならオンに変更するために predictの状態を知りたいんですが どうやったら調べられるんでしょうか?
599 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/24(水) 04:17:04 ] 状態を示す変数でも作ればいいじゃないの
600 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/24(水) 05:38:07 ] >>599 ああ、そうかなるほど。 助かりましたありがとうございます アホなりになんとかできました
601 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/30(火) 04:58:45 ] このスレもぼちぼち立ってから2年か。読み返しみると結構レス書いてるな。 実は少人数で廻してるのか。
602 名前:名無しさん@お腹いっぱい。 mailto:age [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 が参照できるみたいな ことなんですが。
603 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/06(火) 19:23:28 ] 関数の中で while [ $# -gt 0 ] do i=$1;shift;j=$1;shift ... done とかやればいいんじゃないの?
604 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/06(火) 19:42:32 ] for i j in param1 param2 ...
605 名前:602 mailto:sage [2007/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. ありがとうございます
606 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 09:38:07 ] MYCOM コラム『漢のzsh』 ttp://journal.mycom.co.jp/column/zsh/001/ こんなん始まったね。
607 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 11:06:01 ] >>606 お、これ面白いね。早速ブクマクした てゆーか数年zsh使ってたが、"ls -"の後の補完でオプション出るの知らんかった・・・アホだな俺。。
608 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 12:40:10 ] これだけだと面白くなるかどうかまだわからんw WEB上だけの連載なのかな。 UNIX USER の連載は書籍化もされず、WEB で公開されることもなく 埋もれていくのか。本誌は休刊しちゃったし。
609 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 12:59:28 ] zshマスターだけちぎってUNIXUSER全部捨てた
610 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 13:00:39 ] ん? だからPDF版買えって話じゃないの?
611 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 13:54:16 ] >>610 あれ、そんなの売ってたっけ?
612 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 15:08:15 ] >>606 pc10.2ch.net/test/read.cgi/linux/1170503611/351 この後にこんな記事ができるってのは、2chみてんのかね。
613 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 15:34:33 ] その程度の基本的な機能の紹介で2chと結びつけるのは酷だなw
614 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 15:36:41 ] >>612 compinitは設定じゃねーよ。 常識だ。 というわけで、>>606 には一応期待しておくが、まだ評価はできん。
615 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 16:02:12 ] >>612 の351も>>606-607 も本人と決め打つのが2ちゃんだろw
616 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/09(金) 20:21:31 ] ぜんぶ俺だから
617 名前:名無しさん@お腹いっぱい。 [2007/02/09(金) 21:22:33 ] UUの連載も内容的にはけっこう古くなっているから、今更書籍化ってのも難しいんじゃないのかな。 今回のは常識だけど、まぁまだ第1回だから今後に期待だな
618 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/11(日) 15:24:29 ] MYCOM記事読んできますた
619 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/11(日) 17:14:19 ] 誰かzshrc晒せ
620 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/11(日) 18:10:44 ] 前にキチガイモーオタが晒してたなw
621 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/11(日) 19:22:49 ] perl -e "print 100"; とすると 100% と表示されます、% は色反転してます この % を出したくないんですけど、どうすればいいですか
622 名前:621 mailto:sage [2007/02/11(日) 19:38:35 ] 事故解決
623 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/11(日) 19:40:34 ] >>622 解決方法くらい書きたまえキミぃ。
624 名前:621 mailto:sage [2007/02/11(日) 19:43:17 ] \n を自動で補ってくれてただけなわけで こんな機能があったとは
625 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/16(金) 12:59:46 ] MYCOMのzsh連載、早速第2回が掲載されているね。 今度はプロンプトのカスタマイズ。
626 名前:名無しさん@お腹いっぱい。 mailto:sage [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 " とかのほうがよさそうなもんだが
627 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/16(金) 13:37:22 ] > エスケープを直接設定ファイルに記述することを嫌って、 > echoやprintfコマンドを使う場合もある。好きな方を選べばいい。 > ただ、コマンドだとプラットフォームごとに動いたり動かなかったりするので、 > ここでは直接書いて使っている echo も print も printf も組み込みコマンドですがなにか
628 名前:626 mailto:sage [2007/02/16(金) 13:39:46 ] 誤)エスケープシーケンス 正)エスケープ orz
629 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/16(金) 14:25:01 ] 設定ファイルとかプロンプトとかどうでもいいからさっさと補完の事教えてくれよう
630 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/16(金) 21:36:58 ] あんまり期待できないな
631 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 09:15:00 ] この程度の事はだれもが通る道だよな それで記事が書けるなんて
632 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 10:59:40 ] 紹介記事(スレ住人的には既に通ってきた内容)と 使いこなし記事(スレ住人も新たな発見がある内容) は違うよなぁ……
633 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 12:02:36 ] このコラムはどういう層を対象にしてるんだろうか
634 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 12:09:58 ] 第1回の出だしに、こんなの書いてある > ここ1年でzshへ移行しやすい状況が整ってきている。 > はじめるには悪くないタイミングだ。 これからzshを始める人向けだろう
635 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 12:34:49 ] いや、それはわかってるけど…
636 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 13:14:31 ] 大地の記事がそんなにいいわけないだろ。 冷静になれ。
637 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 18:20:30 ] むしろこのスレの住人がうなるようなコアな内容を出してきたらウケル。
638 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 19:02:04 ] >>637 ありえない。 もうUNIXUSERの記事の焼き直しでいいよ。
639 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 19:06:28 ] 妙な記事書かれるより安心だなw
640 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 19:17:27 ] zshに限らず最近シェル使わなくなってきた
641 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 19:54:57 ] compctlの解説だけで終わったりして
642 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 20:03:17 ] シェル使わないってなんだ。ログインすらしてないってことか。
643 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 21:14:52 ] 正直にいって細かく設定しても使わないよね zshrcは千行あるけど
644 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/17(土) 23:16:31 ] >>641 compsysは無しかよw
645 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/18(日) 02:04:24 ] その1000行のzshrcを見せてもらおうか
646 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/18(日) 20:08:40 ] 一行一レスでいいから
647 名前:名無しさん@お腹いっぱい。 [2007/02/24(土) 10:43:48 ] htmlで終わるファイルが存在すれば"Exist"と表示させたいとして、 zsh で、 if [ -e *html ];then echo "Exist";fi とすると、 zsh: no matches found: *url となってしまいます。 shでは期待どおりの動作をします。 zshで期待のどおりの動作をするにはどうすればよいでしょうか?
648 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 11:22:11 ] setopt NULL_GLOB
649 名前:647 [2007/02/24(土) 11:56:49 ] ありがとうございました。 こうすると、上の問題は解決しましたが、htmlで終わるファイル名を表示しようとして ls *html とすると、ディレクトリにhoge.htmlがあっても ls: *html: そのようなファイルやディレクトリはありません と出ようになりました。 この問題を解決避けるには、 いちいち、setopt NULL_GLOB, setopt GLOB をしなければならないのでしょうか?
650 名前:647 [2007/02/24(土) 12:09:56 ] if noglob [ -e *html ];then echo "Exist";fi としてもいいみたいですね。
651 名前:名無しさん@お腹いっぱい。 [2007/02/24(土) 12:41:46 ] echo {1..3} で 1 2 3 となります。 echo {a..c} では {a..c} です。 これを a b c とするように出来ないでしょうか?
652 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 12:50:38 ] 出来ない
653 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 12:51:43 ] bashならできる
654 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 13:24:36 ] >>651 setopt brace_ccl echo {a-z}
655 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 13:33:21 ] {a..c}を、という質問なわけだが、、
656 名前:651 [2007/02/24(土) 13:55:06 ] >>652-655 ありがとうございます。 {a..c} ではできない、やりたかったら、 >>654 のようにしろ、ってことですね。 ありがとうございました。
657 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 20:36:40 ] mycomの連載、3回目は履歴に関して
658 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 22:04:30 ] >647 noglob と nullglob を混同してない? noglob は glob しなくするオプション(globの否定)だけど、 null_glob はそれとは違うよ。 オレの環境では null_glob をセットしてもそんなエラーにはならないんだけど。
659 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 22:15:22 ] unsetopt nomatch してるんじゃ?
660 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 23:08:41 ] まあ *.html(N) でいい
661 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/24(土) 23:32:56 ] mycomの今回のはあまり参考にはならんかった。zsh初心者向けぽいな。 ちなみに俺は履歴関連はこんだけオプション有効にしてる。 man zshoptions 読むだけでもマンドクセ状態だが・・・ setopt extended_history setopt hist_expire_dups_first setopt hist_ignore_all_dups setopt hist_ignore_dups setopt hist_ignore_space setopt hist_reduce_blanks setopt hist_save_no_dups setopt hist_verify setopt inc_append_history setopt share_history setopt csh_junkie_history
662 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 00:08:02 ] 漢漢と五月蝿い記事だなあ。
663 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 09:20:45 ] 誰か $path から存在しないディレクトリを削除するコードを書いてくれ
664 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 10:22:44 ] 手元の .zshenv より addpath () {[[ -d $1 ]] && path=($path $1)} # add $* to top of PATH list. addpathlist() { tmppath= for newpath in $* if [ -d $newpath ]; then tmppath=($tmppath $newpath) fi path=($tmppath $path) unset tmppath } addpathlist ~/bin /usr/local/bin /usr/local/gnu /usr/X11R6/bin /usr/local/X11R6/bin /usr/local/X11R5/bin addpath /usr/local/gcc/bin addpath /usr/ucb ...
665 名前:647 [2007/02/25(日) 12:49:04 ] >>658 すみません。ウソ言ってました。 >こうすると、上の問題は解決しましたが、htmlで終わるファイル名を表示しようとして >ls *html >とすると、ディレクトリにhoge.htmlがあっても >ls: *html: そのようなファイルやディレクトリはありません >と出ようになりました。 は間違いでした。正しくは、 (setopt NULL_GLOB とすると) *htmlにマッチするものが無い場合、 カレントディレクトリ以下のファイル、ディレクトリが全て表示される、 です。 そして、NULL_GLOBはglobにマッチするものがなかったら何も渡さない、 ということでNO_GLOBはglobしない、という違いも理解しました。 だから、当前、setopt NULL_GLOB をして*htmlにマッチするものが無かった場合は 上のような動作をするのですね。 私が初めに書いたエラーがでるのは、setopt NO_GLOBとした場合ですね。 >>659 さんのようなオプションをつけていたわけではなく、単に私の間違いでした。 >>660 さんのおっしゃるように、 if [ -e *html(N) ];then echo "Exist";fi でもOKでした。
666 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 14:39:20 ] 試さずにかいたが、-e *html(N) って常に真を返さないか
667 名前:647 [2007/02/25(日) 15:37:36 ] >>666 そうですね汗 またまたいいかげんなこと言ってしまいました。 if [ -e *html(N) ];then echo "Exist";fi はつねにExistとでます。 >>647 で書いたことをやりたい場合には、 1) setopt NULL_GLOB if [ -e *html ];then echo "Exist";fi (この場合はls *htmlで*htmlがなかったらlsと同じになってしまうので) そのあとで setopt GLOB 2) または、 if noglob [ -e *html ];then echo "Exist";fi が正しいようです。
668 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 16:29:49 ] 1) は setopt NO_GLOB では。 NULL_GLOB だと多分 *html(N) と変わらないよ。 あと、特に [ に拘らなければ [[ -e *html ]] でもいいかな。
669 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 17:29:32 ] $ touch test.html $ [ -e test.html ] && echo found || echo not found found $ [ -e *.html ] && echo found || echo not found found $ [[ -e test.html ]] && echo found || echo not found found $ [[ -e *.html ]] && echo found || echo not found not found $ touch '*.html' $ [[ -e *.html ]] && echo found || echo not found found
670 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 17:39:18 ] [[ ]] はグロブを展開しないぽい [ はコマンド扱い? (これも builtin だよね)
671 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 17:55:15 ] >>647 の htmlで終わるファイルが存在すれば"Exist"と表示させたい(ただしzsh: no matches foundは嫌)は、 unsetopt nomatch するのが一番だろ。 その後は [ -e *html ] でも [ -n `echo *html` ] でもおk ( [[ -e *html ]] はだめぽい ) もしnomatchが嫌なら [ -e *html(N) '' ] && echo Exist { [ -e *html ] && echo Exist } 2>/dev/null みたいなw
672 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 17:59:40 ] 案外、簡単に処理できないもんだな。気付かずに罠にはまりそう。 昔ながらのやり方が安全かw if ls | egrep '\.html$' >/dev/null; then echo Exists; fi
673 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 18:13:15 ] glob関連はNOMATCH, NULL_GLOB, CSH_NULL_GLOB とオプションがあってよくわからん。 参考: ttp://d.hatena.ne.jp/amt/20060907/nomatch ttp://d.hatena.ne.jp/amt/20060806/ZshNoGlob ttp://www.ayu.ics.keio.ac.jp/~mukai/translate/zshoptions.html (man zshoptions)
674 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/25(日) 18:33:09 ] nomatchは途中で処理が止まるから厄介 $ echo *UNKO; echo AAAAAAAAAAAAAAAAAAAAAAAA zsh: no matches found: *UNKO $
675 名前:名無しさん@お腹いっぱい。 [2007/02/26(月) 07:55:40 ] >>669 > $ [ -e *.html ] && echo found || echo not found ↑は .html ファイルが2つ以上ある場合は動かない. [ -e `ls -1 *.html|head -n 1` ] && echo found || echo not found だとちゃんと動くが、もっとスマートなやり方はないものか...
676 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/26(月) 07:59:19 ] >>675 の訂正. > $ [ -e *.html ] && echo found || echo not found は zsh では動くね. bash では動かないけど. でも混乱を避ける為に、↑のように書くのは良くないだろう
677 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/26(月) 08:34:32 ] サブシェル使ってよければ (for f in *.html; do [ -f "$f" ] && return 0; done; return 1) && echo aru || echo nai /bin/shで動く筈。
678 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/26(月) 11:03:52 ] もう外部コマンド使って ls *.html | wc | awk '{print $1}' でいいじゃん
679 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/26(月) 11:18:07 ] アホ現る
680 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/26(月) 21:05:11 ] [ `echo -n *.html(N) | wc -l` -gt 0 ]
681 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/26(月) 21:26:59 ] [[ -n `echo *html(N)` ]] && echo Exist || echo # うまくいく [[ -n `echo` ]] && echo true || echo false # false [ -n `echo *html(N)` ] && echo Exist || echo # 常にExist, だめ [ -n `echo` ] && echo true || echo false # true
682 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/27(火) 02:46:16 ] [[ls *.html && $? ]] じゃ駄目なわけ?
683 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/27(火) 02:47:37 ] ``わすれた・・・
684 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/27(火) 02:48:42 ] しかも-aだね。逝ってきます。
685 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/02(金) 22:11:55 ] mycomの連載、更新されていたけどツッコミどころが幾つかあるな
686 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/03(土) 01:23:44 ] よしつっこめ。
687 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/03(土) 03:11:14 ] ショートカットキーという言い方は気持が悪いな
688 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/05(月) 01:38:58 ] 最近はてブのホットエントリでzsh関連のをちょくちょく見掛けるけどなんかあったのかしら。
689 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/05(月) 06:18:24 ] そういう連中にとってzshがクールでナウいんだよ。
690 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/07(水) 18:55:38 ] localeがちゃんとしてたらja_JP.SJISでも動きますか?
691 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/07(水) 19:17:30 ] ナニが?
692 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/08(木) 01:16:40 ] カーソル移動とかプロンプト等の桁数計算とかSJIS2バイト目のメタキャラクタ無視とか。
693 名前:名無しさん@お腹いっぱい。 [2007/03/16(金) 10:04:06 ] あれ? % autoload predict-on % predict-on predict-on:zle:5: can only be called from widget function
694 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 14:01:13 ] 錫癜
695 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 20:44:04 ] >693 ウチではそのエラー出ないよ ところで、恥ずかしながら predict-on は知らなかったですよ。
696 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/24(土) 22:24:26 ] >>663-664 久しぶりに見たから1ヶ月前へのレスだけど path=($path(N)) でいけない?
697 名前:663 mailto:sage [2007/03/24(土) 23:10:35 ] user@ubuntu:~$ zsh -f ubuntu% test=(foo bar /home) ubuntu% echo $test foo bar /home ubuntu% echo $test(N) foo bar /home ubuntu% echo ${^test}(N) /home >>696 だとうまくいったりいかなかったりで困ってたんですけど、rc_expand_paramのせいでした。 path=(${^path}(N)) でうまくいくみたいですね。
698 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/03(火) 14:48:38 ] suffix alias がコマンドでも展開されて欝
699 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:16:19 ] mycom の連載見て、bash から乗り換えたら欝 bash $ sudo rm ~foo (~foo -> /home/foo のシンボリックリンク) シンボリックリンク ~foo が消える zsh % sudo rm ~foo (~foo -> /home/foo のシンボリックリンク) Error: foo はディレクトリ % sudo rm -r ~foo ホームディレクトリが消える orz
700 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:21:46 ] まさか '~foo' ってファイルを作ったのか? ニョロ展開をやめさせたいんなら ./~foo って指定すればいいし何が言いたいのかわからん
701 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:24:47 ] >>700 違うよ。 俺は意味わかった。zshが ~の展開の際にシンボリックリンクをたどってしまう という問題だね。Error: foo はディレクトリ の時点で気づくべき。
702 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:32:22 ] いまいちよくわらん。 foo アカウントのホームディレクトリが /usr/home/foo とかになってて、 それが /home/foo へのシンボリックリンクになってる、とかそんな感じ? つーかなんで rm -r なんてする気になったんだろ。
703 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:39:59 ] 同じく意味がわからん 少なくとも問題という意識はわからん (動作の話はそういうものとしか言いようがないし... >702 も言う通り -r はそれこそ意図的じゃん)
704 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:41:06 ] unsetopt chaselinks で解決したりする?
705 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:44:18 ] シンボリックリンクに対して rm -r しても、 そのシンボリックリンクが消えるだけ(先までたどらない)からだろ。 多分、rmでエラーが出たから rm -r にしただけだろ。 まさか、~foo が実体ディレクトリを指してるとは頭から思ってないから、 シンボリックリンクを消す意味で気軽に rm -r したと。
706 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:57:57 ] >>705 その「エラーが出たから -r」ってのが意味わからん。 -f ならまだわかるけど。
707 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:00:07 ] で、「~foo」っていうファイルはあったのか? なかったのか?
708 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:01:32 ] >>707 お前ずれてる。~fooなんてファイルの話じゃない。
709 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:02:21 ] >>708 んじゃどういう話?
710 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:03:09 ] >>709 読解力ない香具師だなぁ。
711 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:04:16 ] >>710 すまんね。 詳細教えてくれよ。
712 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:06:19 ] /etc/passwd には、/usr/home/foo で登録されてる。 /usr/home/foo はシンボリックリンクで、実体の /home/foo を指している。 この状態で、~foo というチルダ展開は、 bashだと /usr/home/foo に展開されるが、 zshでは /home/foo に展開される。 という問題。
713 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:08:27 ] では>>699 さん、正解をどうぞ。
714 名前:699 mailto:sage [2007/04/10(火) 20:35:00 ] 説明不足で、ごめんなさい。 真相は>>701 , >>705 さんのおっしゃる通りです。 昔 bash で /bar$ ln -s /home/foo ~foo として /bar/~foo を作ったのですが、もう使う必要がなくなったので今日 zsh で /bar% rm -r ~foo としたら、ユーザ foo のホームディレクトリ /home/foo 自体が消えてしまった ということです。 bash では alias rm="rm -i" としていたので、rm のエラーに対していつもの勢いで -r の試行をしてしまいました。 >>713 私が悪いので、皆さん正解です。
715 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 21:05:19 ] シンボリックリンクを消すならunlink
716 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 22:04:28 ] そういえば mycom の連載があったな。すっかり忘れてた。 つっこもうと思ってそれっきりだった。
717 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 22:40:44 ] >>716 では遠慮なくツッコメ。
718 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 23:55:45 ] けっきょく ~foo あったんじゃん。
719 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 02:25:44 ] シンボリックリンクにrm -rやったのがまずいよ。
720 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 07:12:17 ] >>718 なんでやねん。欲嫁。 >>714 では、 $ ln -s /home/foo ~foo と実行してるから、~fooという名前のsymlinkはできない。 ~fooという名前のsymlinkを作るためには、 $ ln -s /home/foo '~foo' のように、クォートするなり、./~foo みたいに ./を付けるなりしないといけないから。
721 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 07:14:15 ] >>719 シンボリックリンクにrm -rやること自体はまずくない。(変ではあるが) まずかったのは、それがシンボリックリンクではなかったこと。
722 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 08:37:49 ] >721 いや、シンボリックリンクに対して rm -r するのはおかしいよ。 -r オプションは「当該ファイルをディレクトリとみなして中身もいっしょに 消す」という意図のオプションだから、仮に rm で消せなかったとしてもシン ボリックリンクだと認識しているファイルに使うのがまずヘン。 だって中身を消したかったわけじゃないでしょ。
723 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 09:45:48 ] >>714 > として /bar/~foo を作ったのですが、 って言ってるんだから、 ~foo っていうファイル名のファイル (シンボリックリンク) が あったんじゃないの?
724 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 09:53:03 ] >>723 そこは確かに曖昧だが、質問者の理解不足によるものだろう。 ln -s /home/foo ~foo を実行してシンボリックリンクを作っている以上、 ~fooは展開されて、実際のパス名になるから、 「~foo」なんて名前のシンボリックリンクができたわけではないことは明らか。
725 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 09:58:53 ] そもそも元質問者のレベルの人が、~が付いたファイルを作ること自体難しいだろう。 (クォートとかで回避する方法も知らないだろうし)
726 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 10:30:52 ] > /bar/~foo を作った zsh とか以前に極めて悪趣味 > シンボリックリンクにrm -rやること自体はまずくない。(変ではあるが) まあそうだけど "まずいかどうか" じゃなくて 「意味を理解せず(考えず)」に -r というのは銃殺刑確定 "(変ではあるが)" に集約されるけどな
727 名前:699 mailto:sage [2007/04/11(水) 23:44:00 ] すいません、今回の件は zsh と関係ありませんでした。 原因は、「~ユーザ名」と「~非ユーザ名」で挙動が異なる事を知らなかったという 私の理解不足にあります。 zshで foo@example:/bar% sudo rm -r ~foo でホームディレクトリが消えた後、 bash で foo@example:/bar$ sudo ln -s /home/foo2 ~foo2 foo@example:/bar$ sudo rm -r ~foo2 (ここで、foo2 は既に存在しないユーザ名。/home/foo2 自体は実在する。) として、検証してしまいました。 >>718 , >>723-725 「/bar/~foo」は、ありました。 しかし、実際には>>720 さんの説明の通りにしなければエラーになります。 したがって、作成時にはクォートしたと思います。 >>719 , >>721-722 今後は、>>715 さんの様にしたいと思います。 >>726 全くその通りです。 こんな unix の初歩的な事でスレを汚してしまい、 申し訳ないです。
728 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 23:51:24 ] >727 なるほどね。いや悪いってわけじゃないです。 ただ ~user という用法をしらない人がいると 誰も思わなかったから「ネタだろ」位に皆思ってただけで...
729 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/12(木) 02:39:00 ] ここがUNIX板でよかったね。
730 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 09:32:32 ] ところでディレクトリに張った シンボリックリンクをrm -rすると実際どうなるの?
731 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 09:34:23 ] >>730 それくらい実験してみろよ。 そのシンボリックリンクだけが消えるだけだよ。
732 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 14:53:23 ] この流れワロタ
733 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 20:52:19 ] % echo {001..005}\\n 001 002 003 となって2行目以降にスペースが入ってしまうのは なんででしょうか?
734 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 20:57:26 ] 001\\n 002\\n 003\\n 004\\n 005\\n に展開されるから
735 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/14(土) 02:35:54 ] >>734 ありがとうございます。 とすると余計な空白なしに出力するのに 最もシンプルな書き方はどうなるのでしょう echo {001..005} | tr "[:space:]" "\n" だとベストではないですよね
736 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/14(土) 02:55:22 ] シンプルというか真っ先に思い付くのは for i in {001..005}; do echo $i; done とか。zsh のことだから省略記法があるのかな。
737 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/14(土) 02:58:56 ] と書きつつ思い付いた。print -l {001..005} でいいか。
738 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/17(火) 22:38:46 ] zsh 4.3.3 released
739 名前:名無しさん@お腹いっぱい。 [2007/04/21(土) 00:26:43 ] zsh 4.3.4 releases
740 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 05:16:08 ] 情報ゼロワロタ journal.mycom.co.jp/news/2007/04/20/023/index.html
741 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 08:01:49 ] 「マルチバイトサポート」って何回言った?て感じ
742 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 09:03:22 ] >>740 書いたあと一回でも読み返したとは思えん文だなw
743 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 10:58:42 ] > 4.3.4は機能拡張を実施したメジャーリリース。 ??メジャーリリース?
744 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 11:53:18 ] そっとしといてやろうぜ…。
745 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/22(日) 02:10:35 ] ちんこ
746 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/22(日) 04:04:57 ] ホームをNFSで共有する環境で起動が異常に遅い事があったけど 原因が compinit する時にNFSで共有してる .zcompdump へのロックだったので compinit -d /tmp/$USER.zcompdump とかしたら幸せになれた
747 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/27(金) 10:44:22 ] ウォーニングだバカ……
748 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/06(日) 19:10:15 ] こんな人が記事書いているのかと思うと。
749 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/06(日) 20:06:07 ] % echo 'a c d' 複数行の履歴を編集する時に改行のつもりで RET を打鍵すると accept-line が呼ばれてしまうのだけど、これを回避する方法ってありますか?
750 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/06(日) 20:11:17 ] >>749 C=v C-j かな?
751 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/07(月) 06:14:08 ] >>750 できました。ありがとう
752 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/09(水) 12:10:15 ] ...微妙な記事だ journal.mycom.co.jp/column/zsh/index.html
753 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/09(水) 13:01:30 ] おまいも微妙だな
754 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/09(水) 13:17:14 ] zsh-loversにのってるような変態tipsを紹介すればいいのに
755 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/25(金) 03:27:08 ] builtin sleep が欲しいなと思ったら zselect -t が使えた
756 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/25(金) 04:26:49 ] bash の complete-into-braces (M-{) って zsh だと どうすればいいんでしょうか?
757 名前:87 mailto:sage [2007/06/09(土) 00:33:14 ] % wget www.zsh.org/pub/zsh-4.3.4.tar.gz % tar xzvf zsh-4.3.4.tar.gz % cd zsh-4.3.4 % ./Util/preconfig % ./configure --enable-multibyte --enable-locale % make % sudo make install どこに記述すればいいんだいよう
758 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 03:25:54 ] tab補完でtab押すごとに補完候補が順に入力された状態になるけど 行き過ぎたときに戻る方法ってありませんか? shift+tabとか押してみたけどダメだった
759 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 03:28:36 ] Ctrl+Pは?
760 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 03:40:28 ] >>759 コマンド自体が一個前のに戻るだけでした
761 名前:名無しさん@お腹いっぱい。 [2007/06/14(木) 05:52:05 ] >>758 # 補完候補を←↓↑→で選択。 zstyle ':completion:*:default' menu select true で、矢印キーで移動するのはダメですか?
762 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 09:37:53 ] 自分は undo を使う
763 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 11:34:06 ] >>758 C-/
764 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 15:27:19 ] みなさんレスありがとうございます >>761 おぉ、そんな便利なこともできるんですね >>762 >>763 できました
765 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 21:35:57 ] undo したあと redo ってどうやりますか?
766 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 23:03:04 ] unko したあと redo ってどうやりますか?
767 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/15(金) 10:39:14 ] >>766 気合いで尻の穴に吸い込め
768 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/15(金) 12:23:07 ] redoをbindkeyで好きなキーに割り当てればいいのではないでしょうか
769 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:07:51 ] あるコマンドで hogehoge=filename などとファイル名を渡すときに、 =(nannkano_command) の一時ファイルで物臭をやろうとすると hogehoge==(nannkano_command) となって == の解釈でエラーに なってしまう。エスケープしても別のエラーになる。うまくやる方法は ないかな。
770 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:23:31 ] zfsから誘導されてきました pc11.2ch.net/test/read.cgi/unix/1181716111/27 できればこのキチガイをzshから出さないようにしてください。 迷惑です。
771 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:35:51 ] >>769 $ hogehoge='=(nannkano_command)' $ echo "$hogehoge" =(nannkano_command) ↑ってできるけど、これじゃ駄目なの?
772 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:57:39 ] いや駄目だと思うが…
773 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 13:03:22 ] >769 =(command) の一時ファイルはすぐ消えちゃうよ。かりに hogehoge=... に渡せても、それを再利用したときにはもう消えてると思うんだけど、どういう風に利用することを考えているの? っていうか、やりたいのは `...` の方だったりしない? あと、わたしの手元では hogehoge==(command) でも一時ファイル名はちゃんと取れるけどなあ。
774 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 13:33:25 ] >>773 ファイルの要る部分だけを抜き出して渡したいんですよ。履歴に突っ込んでおいて たまに呼び出したいぐらいの軽い用途です。 たしかに単独の変数代入だと自分ところでも動きますが、コマンド途中だとエラーに なってしまいます。例えば、 $ echo hogehoge==(command) zsh: not found
775 名前:名無しさん@お腹いっぱい。 [2007/06/17(日) 19:10:37 ] watch と打ったあとに引数のところでコマンド名の補完して欲しいんだけど どう設定したらいいですか?
776 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 19:19:04 ] compdef _precommand watch かな
777 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 19:29:19 ] >>776 できました ありがとうございます bashから乗り換えたけど色々と便利ですね
778 名前:名無しさん@お腹いっぱい。 [2007/06/27(水) 03:40:21 ] 拡張子に応じたコマンドを自動実行 journal.mycom.co.jp/column/zsh/016/
779 名前:気まぐれアナスイ mailto:!(ΦyΦ+){秘密です。} [2007/06/27(水) 11:53:22 ] >>778 なるほど? そういう事ですか…
780 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/27(水) 13:56:37 ] mycom の zsh の連載、まだ続いてたのか
781 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/27(水) 14:50:24 ] こないだなんかネタを募集してたぞ journal.mycom.co.jp/column/zsh/015/
782 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/01(日) 21:04:02 ] bindkey -v でコマンドスタックが使えないんですが bindkey '^Q' push-line だとだめ、bindkey の出力にはちゃんとでてるのに bindkey '^P' push-line だとできるが P は別で使ってるので... bindkey -v の人スタックどうしてるんだろう?使ってないとか?
783 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/03(火) 04:42:58 ] bindkey "^Q" push-lineで普通に使えるが。
784 名前:名無しさん@お腹いっぱい。 [2007/07/03(火) 16:58:40 ] 今までtcshを使っていましたが、 zshならscreenでsshをする場合、 screenのウィンドウ名にログイン先のホスト名が自動で付けれる ので最近zshに乗り換えたものです。 聞きたいのですが、 % history 1 less .zshrc 2 ls 3 man man 4 history という履歴において先ず、l(小文字のLです)とタイプして ↑を押す時、 tcshの場合は 「history」 や 「man man」 を飛ばして ll(小文字のLです)から始まる 「ls」 を表示してくれますが zshの場合は 「history」 と表示されます。 ネットで調べたら autoload 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 と.zshrcに書いて Ctrl+P、Ctrl+Nでtcsh上の矢印を使った履歴検索が実現できました。 しかし、自分はやはり慣れた↑や↓を使いたいのですが どう書けばzshで実現できるのでしょうか? どなたかご教授おねがいします。
785 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/03(火) 18:48:30 ] bindkey で矢印キーに割り当てる
786 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/03(火) 18:48:48 ] "^[[A" "^[[B"っつーことか? ついでに「ご教授」でもググってみることをすすめるとく
787 名前:784 [2007/07/03(火) 20:33:42 ] >>785 そうなんです 結局矢印キーは どういうコードで表わされるかを 聞きたかったんです。 意味不明な文ですみませんでした。 >>786 ありがとうございました。 "^[[A" "^[[B" で実現できました。 「ご教授」を「教えてください」の丁寧語の意味で使っていました。 こういう場合は「ご教示」なのですね。 失礼しました。
788 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/03(火) 20:40:42 ] 通常の設定なら、「Ctrl-v 何らかのキー」でそのキーの端末コードがわかる
789 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/03(火) 23:02:51 ] > screenのウィンドウ名にログイン先のホスト名が自動で付けれるので最近 > zshに乗り換えたものです。 自動で付けてくれるような機能あんだっけ?
790 名前:784 mailto:sage [2007/07/03(火) 23:27:25 ] >>788 あっ 本当ですね こんな機能、全く知りませんでした。 教えてくれてありがとうございました。 >>789 すみません、文章が不正確でした。 正しくは、.zshrcに function ssh_screen(){ eval server=?${$#} screen -t $server ssh "$@" } if [ x$TERM = xscreen ]; then alias ssh=ssh_screen fi を記述したらできます。 ttp://d.hatena.ne.jp/naoya/20051223/1135351050 でも自分の環境は2行目の eval server=?${$#} で失敗するので、この2行目を A=$# eval server=$"$A" としています。
791 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/03(火) 23:41:57 ] 「教授する」という動詞もあるので「ご教授願います」でも構わない、 と聞いたこともある。
792 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/04(水) 00:52:42 ] 単に大仰かどうかという話だ
793 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/04(水) 01:11:04 ] >>790 これはリモートでコマンドを実行するんじゃなくて、リモートログインするという前提なのか? それなら function ssh_screen { screen -t $@[-1] ssh "$@" } とかでいいんじゃないの。
794 名前:784 mailto:sage [2007/07/04(水) 02:12:45 ] >>793 >これはリモートでコマンドを実行するんじゃなくて、リモートログインするという前提なのか? そうです。 >function ssh_screen { > screen -t $@[-1] ssh "$@" >} >とかでいいんじゃないの。 今まで動けばいいと思って、大して気にしていませんでした。 指摘されたこの機会に見直してみました。 自分はsshを使うとき % ssh ホスト名 -l リモートのユーザー名 と使うので function ssh_screen { screen -t $1 ssh "$@" } としてみました。
795 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/04(水) 08:46:05 ] >>791 間違いではないが、 本来言いたいこととは意味がちょっと違う。 www.tt.rim.or.jp/~rudyard/torii009.html
796 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/07(土) 00:11:03 ] pc11.2ch.net/test/read.cgi/unix/1079601220/132-133n に「諸君、私はzshが好きだ」が張られているわけだが。 どうしてこのスレに書かないのか疑問だ。w
797 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/07(土) 00:27:05 ] >>796 「zsh! zsh! zsh!」
798 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/09(月) 04:54:36 ] 今いるフォルダ(フォルダ名:number)に one two three というフォルダがあるとして ls *~two とすると one three が表示されます cd .. ls number/*~two だと one two three が全部表示されてしまって two が除外されないのですがなぜでしょうか? つД`) タスケレ !!
799 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/09(月) 07:31:37 ] ls number/*~number/two とか。
800 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/09(月) 09:49:08 ] ls number/(*~two)
801 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/09(月) 15:09:44 ] プロンプトに%~を入れているのですが、 プロンプト(または%~)の長さが一定以上なら改行して次の行の先頭に > を出すようにしたいと考えているのですが、 そういうことできますか? 長さによって次のうち適当な方になるようにしたい↓ 通常: ~/どこそこ> 長いとき: ~/じゅげむじゅげむごこうのすりきれぱいぽぱいぽ >
802 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/09(月) 15:29:41 ] LF=$'\n' PROMPT="%~%20(l.$LF.)> "
803 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/10(火) 02:54:30 ] ありがとうございます。条件分岐なんてできたんですね。
804 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/10(火) 03:00:37 ] LFを定義するかわりに PROMPT='%~%20(l, ,)> ' と書いてもいけました。
805 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/10(火) 09:17:30 ] こんなことしてみた zstyle -e ':completion:*:processes' command ' [[ "$oldcontext" = *sudo* ]] && reply=("ps -e") || reply=("ps -u $USER") ' きもいので没リスト行き。
806 名前:798 mailto:sage [2007/07/11(水) 17:45:11 ] >>799 , 800 ありがと━(・∀・)━!!!! アクセス規制で返事遅れ orz
807 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/28(土) 11:04:19 ] parent_dir1/subdir/hoge.txt parent_dir1/subdir/fuga.txt parent_dir2/aho.txt parent_dir2/aho2.txt みたいな状態で子ディレクトリ(parent_dir1/subdir/ or parent_dir2/)単位に 処理をしたいとします。 for dir in *(/) do targetdir=$(echo ${dir}/*...) <= ここに$dirの下に子dirがあればソレ 以下いろいろ処理 なければ$dirを targetdirにセットしたい done *(/) にマッチしなければ . にマッチとか 何か条件マッチするglob みたいなことってできないんでしょうか?
808 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/31(火) 15:38:01 ] >>807 末端のディレクトリだけを対象にしたいということ? findを使うのはダメですか? find ./ -type d | while read dir do if [ -z $(find $dir -mindepth 1 -maxdepth 1 -type d) ] then # dirに対する処理 fi done
809 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/31(火) 16:09:27 ] エントリごとにfind起動しなくても、 postorderで出力させて文字列マッチでいいんじゃない。これでどう? dir0= find -d topdir -type d | while read -r dir do case "$dir0" in "$dir"/*) ;; *) echo "$dir";; # dirに対する処理 esac dir0="$dir" done findにファイル名中の改行を出力するとき\を前置するオプションが欲しい。 つまり-rなしのreadと対で使えるような。
810 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/31(火) 16:53:45 ] なるほど一つ前のdirを覚えておいて それをマッチさせるってことか。 >末端のディレクトリだけを対象にしたいということ? そういうことだったんですが、 結局お目当てのファイルが当該ディレクトリにあるかどうかを 判別して処理みたいなことをしてしまいました for dir in *(/) do subdir='' for sd in ${dir}/**/*(#qN/) ${dir} do if [[ -e omeate-file-name ]]; then subdir=$sd break fi done # subdir での処理 done
811 名前:名無しさん@お腹いっぱい。 [2007/08/09(木) 05:47:45 ] screenのtitleを実行中のコマンド名に自動的にかえることができるらしいので、 ^[k^[\ ( ^[ はエスケープ文字)をPROMPTの頭に追加したところ、 候補のリストがプロンプト行の下に複数行にわたって出てくるような補完を実行したり、 折り返しのある行の履歴をesc+kで戻って(vi modeです)編集したりするときに、 カーソルが4バイト分右にずれたり、一行上にずれたりよくわからない動作をするように なってしまいました。 setopt no_always_last_prompt で、複数行の候補の出る補完をした際のずれは なくなったんですが、コマンド履歴からの行編集はやはりカーソルが一行上や 4バイト右にずれます。 対処法ご存知の方いらっしゃいませんか。
812 名前:811 [2007/08/09(木) 05:49:05 ] --- .zshrcからsetoptとPROMPTの部分を抜粋 setopt no_always_last_prompt setopt auto_cd setopt auto_list setopt auto_pushd setopt no_auto_remove_slash setopt no_extended_history setopt glob_dots setopt hist_ignore_all_dups setopt hist_reduce_blanks setopt hist_save_no_dups setopt no_hup if [ ! "$STY" -o "$WINDOW" = 0 ]; then setopt ignore_eof fi setopt inc_append_history setopt no_list_beep setopt no_prompt_cr setopt prompt_subst setopt pushd_ignore_dups setopt rm_star_silent setopt no_share_history if [ "$STY" ]; then PROMPT='^[k^[\%{$prompt_color%}[%n@%m:%d]%#%{$reset_color%} ' else PROMPT='%{$prompt_color%}[%n@%m:%d]%#%{$reset_color%} ' fi 色つける部分とってみても結果は同じでした。
813 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/09(木) 06:24:11 ] >>811 812の中に答あるじゃん。
814 名前:811 mailto:sage [2007/08/11(土) 13:01:42 ] ^[k^[\ を %{ %} でくくったらなおった模様。 813は答を書かないなら黙ってろ。
815 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/12(日) 02:33:12 ] 誰が何書こうがいいんじゃね。 自分の欲しい答じゃないと逆ギレするくらいなら最初からこんなとこで質問するなよ。
816 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/12(日) 02:47:46 ] まあこの手の質問には「OS入れなおせ」とかトンチンカンな答え返す香具師がいるからね。
817 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/12(日) 11:01:02 ] >>814 夏ですねー。
818 名前:名無しさん@お腹いっぱい。 [2007/08/24(金) 13:34:45 ] これってどう発音するの? ゼットシェル ゼットエスエッチ ズィーシェル ズィーエスエッチ ズィーッシュ おれは心の中で、いつも最後のやつで呼んでいるお。
819 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/24(金) 13:43:30 ] >>818 UNIXに関する言葉のひらがな読みスレッド pc11.2ch.net/test/read.cgi/unix/1001358861/
820 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/24(金) 14:00:58 ] >>818 ズドラービスチェ
821 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/24(金) 16:35:03 ] ザッシュと心の中で発音してるかな。 bash(バッシュ)とかash(アッシュ)の流れ。 でもcsh(シーシェル)、tcsh(ティシーシェル)、ksh(コーンシェル)だったりするけど。
822 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/08/24(金) 16:52:32 ] もう>>819 に移動したみたいよ。
823 名前:名無しさん@お腹いっぱい。 [2007/09/15(土) 00:01:52 ] zshのプロンプトが勝手に左端に戻ってしまうのを避ける方法はありますか? たとえば、 perl -e 'print "hoge"' すると、(プロンプトを[PROMPT]と書くとして) hoge[PROMPT] が一瞬で [PROMPT] にもどってしまうのでhogeが出力されたのか判別できなくて困るときがあります。 気を付けているときはよいですが、Perlのプログラムのバグ取りをprint文を使って 行っているとき、これにうっかりしていて嵌まるときあります。 (プログラム中の正規表現で正しく切り取れたか確認するとき等) bashのときは hoge[PROMPT] のままだったのですが、zshでもこういう風にする方法はありますか?
824 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/15(土) 00:19:34 ] setopt no_prompt_cr
825 名前:823 [2007/09/15(土) 09:05:38 ] >>824 解決しました。ありがとうございます!
826 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/15(土) 22:37:35 ] そういえばいつのまにか prompt_sp なんてのがあるんだね。 promptnl みたいに unsetopt prompt_cr PROMPT=$'%{${fg[blue]}[EOO]${fg[default]}\e[$[COLUMNS-7]C \r%}'$PROMPT (C の後は半角スペース2個) ってやってるから使う気ないけど。 % のところを任意の文字列/色にできれば prompt_sp に任せるんだけどなあ。残念。
827 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/15(土) 22:39:35 ] >>787 zkbd ってのもあるよ。まあ要らないかな。
828 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 00:04:12 ] しばらくプロンプトが戻ってこない操作(makeとか)が終了したらbeep鳴らそうと precmd() {echo -n '\a'} としてみたけど、流石にうざい。 もっとうまい方法きぼんぬ。
829 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 00:06:01 ] icqとかのwav
830 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 00:51:26 ] make; echo -n '\a' じゃだめなの?
831 名前:828 mailto:sage [2007/09/16(日) 01:32:53 ] うん。忘れるから。
832 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 01:48:45 ] eject
833 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 03:08:16 ] >>832 それはbiff用(謎)
834 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 03:11:16 ] コマンド実行時間が一定以上なら音を出す、 とかすればいいのかな。 できるのか知らんけど。
835 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 03:29:00 ] ring_after=$1 shift (sleep $ring_after; echo ^G^G^G) & ringer_pid=$! trap "kill $ringer_pid" CHLD sh -c $* 思いつきで書いてみた。検証はしていない。
836 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 04:24:15 ] >>834 precmd () { [ $TTYIDLE -gt 10 ] && echo ^G; true } かな。
837 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 06:41:14 ] threshold=5 precmd () { (( ${+EXEC_SECONDS_START} )) && (( SECONDS - EXEC_SECONDS_START > threshold )) && echo \\a ; unset EXEC_SECONDS_START } preexec () { (( EXEC_SECONDS_START = SECONDS )) } とか。TTYIDLE なんてあるんだね。
838 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/16(日) 06:46:58 ] >>836 最後の true って意味あんの?
839 名前:828 mailto:sage [2007/09/16(日) 18:47:42 ] 翼をありがとう ハ_ハ ('(゚∀゚∩ とべるよ! ヽ 〈 ヽヽ_)
840 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/19(水) 01:39:19 ] zshで、指定されたこのディレクトリ以下の、XXXX年Y月ZZ日以前に作成されたファイルを一覧し、確認後、 一括削除したいのですが、どのようにすればいいのかわかりますでしょうか?
841 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/19(水) 09:07:11 ] touch -d YYYYMMDD dummyしておいて echo **/*(e:'[[ $REPLY -ot dummy ]]':) とか? ファイルのタイムスタンプじゃなく日付で比較する方法がわからんかった。 **/*(mh+2) でmtimeで2時間以上経ってるファイルってのは示せるな。 h(時間)以外に月や日数は指定できるが、具体的な日付は指定できないようだ。
842 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/19(水) 15:56:58 ] findでやった方がいいんじゃないか
843 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/19(水) 16:59:02 ] zshスレでそれを言っちゃあおしめぇよ (?)
844 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/19(水) 20:44:16 ] あ、やっぱりそうだったんだ。 なんでfind -atime使わないのかと思ってた
845 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/19(水) 21:17:12 ] findでのやり方を知った上でzshではどうなるかを考えるべきなんだろうけど。 echo **/なんたらだと argument too longになることがあるしね。
846 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/23(日) 10:32:04 ] select-word-style shell って multibyte 対応になってからおかしくなったよね。 (( CURSOR += ${#word} )) ってやってて(wordはこれからまたごうとしている語)、 ${#word} が bytes で CURSOR が chars だからみたいだけど。 ${#word} を chars で取得する方法か CURSOR を bytes で設定する方法はあるかな。 誰か知らない? $(wc<<<$word) とかはちょっと重いからなあ。 multibyte parse を自前でやるって手もあるけど。
847 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/27(木) 05:27:16 ] % echo a b c a b c % echo !:2[TAB] % echo b % !:0-2[TAB] % echo a b 知らんかった機能だけどわりと便利かも
848 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/27(木) 11:15:49 ] csh 由来の古典的な過去履歴参照もいろいろ痕跡は残ってるし 使いこなせば便利な場面はあるんだろうけど オツムの 使いこなしバッファ の容量がもう溢れてるザンス
849 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/27(木) 15:35:24 ] c-/ でUndoって紹介されているサイトがあるけど、自分のところではUndoにならん。どして?
850 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/27(木) 15:40:45 ] bindkey -e
851 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/28(金) 12:22:50 ] >>849 端末は何? TeraTermやPoderosaだとだめかも
852 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/28(金) 12:53:11 ] 端末はTeraTerm、sshで入っている。そして、指摘通り駄目だった。 ちなみにホストはVMware上のFreeBSD。こちらも駄目。 もちろん、bindkey -e は有効にしているのだけど、何か方法ありませんか?
853 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/28(金) 18:10:08 ] stty ?
854 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/28(金) 19:50:38 ] >>852 UTF-8 TeraTerm Pro with TTSSH2なら何もせずにいける. ttp://sourceforge.jp/projects/ttssh2/ 古いTeraTermならこれでいける ttp://www.sakurachan.org/ml/teraterm/msg00422.html
855 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/29(土) 00:30:55 ] >>854 UTF-8 TeraTerm Pro with TTSSH2 にしてみたけど、駄目みたい。 c-x u は有効なんだが・・・。
856 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/29(土) 08:44:52 ] >>855 日本語キーボードだとだめかも C-_ はどう? (/ と 右シフトの間のキー)
857 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/09/29(土) 14:16:30 ] 当方、日本語キーボードです。 C-_でも駄目でした。