トップページunix
1001コメント276KB

GNU screen その3

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2005/03/21(月) 07:24:04
前スレがdetachされたので再attachしますた

前スレ
screenってどうよ http://pc.2ch.net/test/read.cgi/unix/1001966406/
GNU screen その2 http://pc5.2ch.net/test/read.cgi/unix/1048030339/
GNU screen その3 http://pc5.2ch.net/test/read.cgi/unix/1087436430/
0002名無しさん@お腹いっぱい。2005/03/21(月) 07:25:10
screen参考リンク

GNU本家 http://www.gnu.org/software/screen/
公式ML(英語 たまにドイツ語) http://groups.yahoo.com/group/gnu-screen/
でかいのネット http://www.dekaino.net/screen/
UnixUser2004年1月号記事 http://risky-safety.org/%7Ezinnia/screen/contribute2/
Screen Glossary http://zinnia.dyndns.org/~hiki/Screen/
@IT:screenコマンドとは http://www.atmarkit.co.jp/flinux/rensai/linuxtips/692usescreen.html
私家版GNU Screen http://www.rubyist.net/~rubikitch/computer/hacks/screen/
0003名無しさん@お腹いっぱい。2005/03/21(月) 07:26:44
スレタイおもいっくそ間違えた orz
正しくはその4ですな
0004名無しさん@お腹いっぱい。2005/03/21(月) 09:28:04
You hear a distant explosion dayomon!
0005名無しさん@お腹いっぱい。2005/03/21(月) 12:17:10
>>1
超乙!
0006名無しさん@お腹いっぱい。2005/03/22(火) 23:37:11
即死しそうな勢い
0007名無しさん@お腹いっぱい。2005/03/23(水) 11:22:37
勃起age
0008名無しさん@お腹いっぱい。2005/03/23(水) 20:32:32
常に使ってるけど特に不満もなし・・
0009名無しさん@お腹いっぱい。2005/03/24(木) 09:43:06
もうネタ切れですね。
0010名無しさん@お腹いっぱい。2005/03/24(木) 21:46:45
あぁそうそう思い出したよ
hardcopyとlogのときのencodingの指定ってどうやればよかったんだっけ?
0011名無しさん@お腹いっぱい。2005/03/28(月) 06:44:35
放置か…みじめだな
0012名無しさん@お腹いっぱい。2005/03/28(月) 07:19:19
まあ、次にバージョンアップされる頃には、
誰かが答えるよ。
0013名無しさん@お腹いっぱい。2005/03/28(月) 20:34:04
スレタイ番号が間違っているせいで今日になって新スレに気付いた
0014名無しさん@お腹いっぱい。2005/03/28(月) 22:11:30
>>10
logは文字化けしないけど、hardcopyは文字化けする。

こんなかんじ。
$^$"!"<!$K%P!<%8%g%s%"%C%W$5$l$k:"$K$O!"
C/$+$,Ez$($k$h!#
0015142005/03/28(月) 22:16:55
単純に8ビット目が欠落している。バグ?
0016名無しさん@お腹いっぱい。2005/03/29(火) 01:56:53
fileio.cのWriteFileではimageを単純に出力しているが、
display.cのRAW_PUTCHARのような処理が必要なようだ。
0017名無しさん@お腹いっぱい。皇紀2665/04/01(金) 03:36:13
あげ
0018名無しさん@お腹いっぱい。皇紀2665/04/01(金) 10:33:42
くそすれあげ
0019名無しさん@お腹いっぱい。2005/04/04(月) 09:37:40
新スレたったのにさびれているね

本家screenMLに流れたscreenの歴史って論文のURLでも貼っとくか
http://churchturing.org/w/screen/
http://churchturing.org/w/screen.pdf
0020名無しさん@お腹いっぱい。2005/04/04(月) 13:14:43
>>19
さんくす
0021名無しさん@お腹いっぱい。2005/04/04(月) 19:52:17
mlterm + screen で dialog 使うと、

+------------k
|            |
|            |
|            |
+qqqqqqqqqqqqj

って感じになって、しまう。

xterm + screen でも、mlterm 単独でも問題なく表示できるんだけど、
termcap が悪いのかな?
0022名無しさん@お腹いっぱい。2005/04/04(月) 21:06:20
>>21
表示できるときと、できないときの$TERMは?
0023名無しさん@お腹いっぱい。2005/04/05(火) 09:20:29
UTF-8だったりして
0024名無しさん@お腹いっぱい。2005/04/05(火) 12:54:24
xterm(TERM=xterm): 表示できる
xterm/screen(TERM=screen): 表示できる(日本語化けるが)
mlterm(TERM=mlterm): 表示できる
mlterm/screen(TERM=screen): (´人`)ナムー

>>23
LANG=ja_JP.eucJP です。
0025名無しさん@お腹いっぱい。2005/04/05(火) 13:40:57
screenを起動したウインドウのタイトルをscreenにしたいのですができるのでしょうか?
いつも bashとなってしまいます
0026ヽ(´ー`)ノ ◆.ogCuANUcE 2005/04/05(火) 13:50:31
>>25
shelltitle screen とかそういうことか?
0027名無しさん@お腹いっぱい。2005/04/05(火) 16:55:26
>>24
terminfoのenacs, smacsを出力したらどうなる?
tputが入ってるなら
tput enacs;tput smacs;echo qqqq
0028242005/04/05(火) 17:04:13
>>27
──
…と、q の数だけ罫線が表示されます。

>>23 ので気になったのですが、ldd dialog すると

> libncursesw.so.5 => /usr/lib/libncursesw.so.5 (0x4001f000)
> libm.so.6 => /lib/tls/libm.so.6 (0x40065000)
> libc.so.6 => /lib/tls/libc.so.6 (0x40088000)
> /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

ncursesw って出るんですけど、これは関係ありますか?
0029名無しさん@お腹いっぱい。2005/04/05(火) 18:49:55
>>28
>──
>…と、q の数だけ罫線が表示されます。
terminfoデータベースは悪くないようですね。

これをgcc -lcurses hoge.cでコンパイルして実行したらどうなり
ますか?

#include <term.h>
#include <stdio.h>

int main(void)
{
  setupterm(NULL, 0, NULL);
  putp(ena_acs);
  putp(enter_alt_charset_mode);
  puts("qqqq");
  putp(exit_alt_charset_mode);
  return 0;
}
0030名無しさん@お腹いっぱい。2005/04/05(火) 19:54:45
1番始めに起動したscreenでだけ|が≠と表示される。
ぬあなんじゃこら。
0031242005/04/05(火) 20:03:20
>>29
-lncurses でも -lncursesw でもチャンと罫線表示されました。

dialog が ncurses の関数を使っているので、試しに

#include <ncurses.h>

int main(void)
{
initscr();
box(stdscr, ACS_VLINE, ACS_HLINE);
refresh();
endwin();

return 0;
}

…と書いてみましたが、やはりキチンと表示されました。

うーん…GNU dialog がタコなのか?(´Д`)
使ってるのは dialog-1.0-20050306 なんですけど。
0032名無しさん@お腹いっぱい。2005/04/05(火) 22:05:48
>>30 == >>31?

>>30
C-a Hでlogをとってdialogを起動して何が出力されてるか調べてみて。
0033名無しさん@お腹いっぱい。2005/04/06(水) 01:18:20
screenを完全に終了させたいんですけど
どうするのでしょうか?
今はわからないので "C-a k"で全てを殺してやっています
関数名もついでに教えていただけるとうれしいです
0034242005/04/06(水) 01:23:55
>>32
違うっす。

上げますた。

$ dialog --infobox test 10 30
http://aploda.org/dat3/upload41382.txt
0035名無しさん@お腹いっぱい。2005/04/06(水) 01:27:48
>>33
オレはescapeをC-zに変えているが、
C-z : で quit で終了している。
0036名無しさん@お腹いっぱい。2005/04/06(水) 11:44:55
>>34
うーん。上げられたtxtを見るとちゃんとしたエスケープシーケン
スが吐かれています。
$ cat upload41382.txt
で罫線が表示されました。

このlogを取った環境と>>28>>31で罫線が表示された環境は
同じ(mlterm+screen(TERM=screen))ですか?

mlterm+screenでscreenを起動したときのTERMはmltermですか?
C-a *のdisplaysのterm-typeで確認できます。
0037242005/04/06(水) 12:49:22
>>36
同じです。

C-a *
> mlterm 170x62 user@/dev/pts/0 1(w3m) rwx

$ echo $TERM
mlterm
$ screen -R
$ echo $TERM
screen

…です。
0038362005/04/06(水) 14:49:49
>>37
ぼくにはもうお手上げです。原因不明です。

あとは、upload41382.txtを見ながら地道にどのエスケープシーケ
ンスが悪いか調べるしかないですね。
とりあえず、ここまで削れば罫線が表示されるはずです。
^[(B^[)0^Nlqqqqqqqqqqqqqqqqqqqqqqqqqqqq
0039362005/04/06(水) 16:19:12
>>37
$ echo $TERM
mlterm
$ script
$ screen -R
C-a H
$ dialog --infobox test 10 30
C-a d
$ exit

これでscriptの結果とscreenlogを見比べて、エスケープシーケ
ンスがどのように変化しているかを調べると何かわかるかもしれま
せん。
0040名無しさん@お腹いっぱい。2005/04/08(金) 18:46:58
rpmで入れたscreenの、メッセージの表示される行がタイトルバーに行っちゃいます。
コマンドラインで弄ってる時、視点はスクロールしていく情報を追う結果、一番下を
追っている事が多いですから、なんとか下にこのメッセージ行を持っていきたいのですが
.screenrcの設定でなんとかなるんでしょうか?
0041名無しさん@お腹いっぱい。2005/04/08(金) 18:51:44
>>40
hardstatus off
0042名無しさん@お腹いっぱい。2005/04/08(金) 18:52:21
自己レス。
/etc/screenrcの
# special xterm hardstatus: use the window title.
termcapinfo xterm 'hs:ts=\E]2;:fs=\007:ds=\E]2;screen\007'
この設定をコメントアウトしたらいけました。スレ汚し失礼。
0043名無しさん@お腹いっぱい。2005/04/10(日) 09:35:52
質問させてください。
screenを起動させて、デタッチした後-rで復帰すると日本語が文字化けします。
デタッチするまでは問題なく動いています。
どこかで復帰後、
^A:encoding eucJP eucJP
^A^L
すると直るとあったのですが、効果ありません。
screenはScreen version 4.00.02 (FAU) 5-Dec-03
OSはSuSE9です。

.screenrcは
defencoding eucJP
encoding eucJP eucJP
startup_message off
autodetach on
hardstatus alwayslastline "%w%=%c"
^Aiの情報は、
起動後:(20,56)/(144,56)+100 +flow eucJP G0^B[B^BI^D] 0(bash)
復帰後:(20,2)/(144,56)+100 +flow eucJP G0^B[B^BI^D] 0(bash)
という感じです。

どなたか文字化けを直す方法をご教示ください。
0044名無しさん@お腹いっぱい。2005/04/10(日) 11:43:42
>>43
> どなたか文字化けを直す方法をご教示ください。
KTerm を使う
0045432005/04/10(日) 12:35:01
>>44
申し訳ありません、最も重要なことを書き忘れました。
screenを利用しているのが、putty経由で接続した環境です。
puttyのスレに書き込んだほうがいいでしょうか。

もしやと思ってputtyの端末文字列にkterm設定してみましたが変わらずです。
0046名無しさん@お腹いっぱい。2005/04/10(日) 12:42:05
>>43
かなり謎な現象ですね。
screen -rするときの$LANGはeucになっていますか?
0047432005/04/10(日) 13:09:49
>>46
謎でもなんでもなかったようです・・・
LANGがen_US.UTF-8になっていたのでja_JP.eucJPにして直りました。
ありがとうございます。
最初に確認すべきでした。申し訳ありません。最近導入したサーバーであったので、LANGの設定をし忘れていました・・・orz

>>44
>>46
おふたかたとも、ありがとうございました。

0048名無しさん@お腹いっぱい。2005/04/13(水) 02:41:46
Cygwin+screen上でvimを使うと画面の乱れが激しいんですが、
ちゃんと使えてるという方います?
0049名無しさん@お腹いっぱい。2005/04/13(水) 21:02:05
>>48
ちゃんと使えてますよ. 環境変数 TERM とか /etc/termcap 
とか確認した?
0050名無しさん@お腹いっぱい。2005/04/15(金) 08:40:45
>>49
TERMはcygwinでもscreenでもだめです。
termcapはこんな感じなんですが。
cygwin:\
:xn@:op=\E[39;49m:Km=\E[M:te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:tc=linux:
0051名無しさん@お腹いっぱい。2005/04/15(金) 10:39:14
端末は何使ってる?
0052名無しさん@お腹いっぱい。2005/04/16(土) 05:49:00
DOS窓です
0053名無しさん@お腹いっぱい。2005/04/29(金) 13:08:42
0054名無しさん@お腹いっぱい。2005/04/30(土) 18:56:08
0055名無しさん@お腹いっぱい。2005/04/30(土) 20:44:19
0056名無しさん@お腹いっぱい。2005/04/30(土) 22:45:42
fox
0057名無しさん@お腹いっぱい。2005/05/15(日) 05:54:08
http://groups.yahoo.com/group/gnu-screen/

> Description
>
> GNU screen is NOT developed any more.
> The maintainers only fix serious bugs.
>
> So this list has been closed. Do NOT join! thankyou.
>
> please use your favourite newsreader to
> access the group on gmane.org (see link).
>
> this list and its archive will be deleted soon.
0058名無しさん@お腹いっぱい。2005/05/15(日) 10:53:11
失礼甚しい
0059名無しさん@お腹いっぱい。2005/05/15(日) 12:36:18
おいおい。まじかよ。もっと開発がんばってくれよ。
0060名無しさん@お腹いっぱい。2005/05/15(日) 13:12:05
藻前らがもっとt-shirts, money, beer & pizzaを送らんからだ。


こうなったら総帥に跡を継いで頂くしかないか。
国内だろうし場合によっては一度くらいはpizzaを届けさせてもらおう。
0061名無しさん@お腹いっぱい。2005/05/15(日) 14:44:25
>>60
うむ同意。

とはいえ、新機能はとくに要らんから
本家にsecurity fixだけやってもらうだけでもいいな。
0062名無しさん@お腹いっぱい。2005/05/15(日) 14:56:26
しかしなにもMLのアーカイヴまで消さなくてもいいと思うんだが。
トラブルでもあったのかと思っちまうぞ
0063名無しさん@お腹いっぱい。2005/05/15(日) 15:23:01
バイバイ
0064名無しさん@お腹いっぱい。2005/05/15(日) 15:54:20
archiveはgmaneで見れるからいいだろ、ってことなのかな
0065名無しさん@お腹いっぱい。2005/05/15(日) 17:53:20
gnuscreen-2chでも作るか
0066名無しさん@お腹いっぱい。2005/05/15(日) 18:39:08
screen-users@gnu.org は健在だよ
0067名無しさん@お腹いっぱい。2005/05/16(月) 12:15:33
>>65
おながいします
0068名無しさん@お腹いっぱい。2005/05/17(火) 17:29:17
EUCな設定のときにShift-JISなテキストをうっかり表示しちゃうと
しばらく止まっちゃうんですが回避策ないですか
0069名無しさん@お腹いっぱい。2005/05/17(火) 17:38:26
ない
0070名無しさん@お腹いっぱい。2005/05/17(火) 18:44:08
hardcopyとlogをUTF-8化しないと開発終了させませんよ
0071名無しさん@お腹いっぱい。2005/05/17(火) 20:06:43
そこらへんこそ日本人の出番という気もする
0072名無しさん@お腹いっぱい。2005/05/18(水) 00:17:28
端末だけから拡張してX11のアタッチ/デタッチができると素晴しいかも。
hardcopyはttyrecをマージして貰いたい。勿論編集可で。ヒューマンsnortのできあがり。
以上、妄想でした
0073名無しさん@お腹いっぱい。2005/05/18(水) 01:00:23
ttyrecをマージするとどうなるの?
0074名無しさん@お腹いっぱい。2005/05/18(水) 01:32:53
>>72
X の display 全体なら vnc でできるね。
window 単位なら xmove で別のサーバに退避させるとかでできるかも。
面白そうだからやってみて。
0075名無しさん@お腹いっぱい。2005/05/18(水) 01:49:50
つ[Teleporting System]
0076名無しさん@お腹いっぱい。2005/05/18(水) 07:16:32
つ [いしのなかにいる!]
0077名無しさん@お腹いっぱい。2005/05/23(月) 10:03:07
256色はまだ不完全なままなんだよね?
0078名無しさん@お腹いっぱい。2005/05/23(月) 10:45:55
>>77
なんかいまいち思い通りに制御できないけど,動くことは動くよ.
emacs と w3m-256 でしか試してないけど.terminal は putty.
0079名無しさん@お腹いっぱい。2005/05/26(木) 03:15:02
256色版screenを使うとemacs -nwで使える色もかなり増える?
0080名無しさん@お腹いっぱい。2005/05/26(木) 03:25:14
>>79
端末が対応していれば。
0081名無しさん@お腹いっぱい。2005/05/26(木) 06:19:18
ktermやmltermじゃダメ?
0082名無しさん@お腹いっぱい。2005/05/26(木) 11:30:42
putty + screen + emacs on FreeBSD で基本的には 256 使えてるんだけど、
tset しないと駄目みたい。

mlterm と kterm は非対応じゃないかな。手元ではどっかから拾ってきた(多分
xterm のおまけ) 256colors2.pl 走らせて確認してるけど.
0083名無しさん@お腹いっぱい。2005/05/30(月) 18:58:50
hardstatus のとこに各shellがどのマシンログインしているのかを表示することはできますか?
bash tcsh zsh のどれでもいいです。
0084名無しさん@お腹いっぱい。2005/05/30(月) 19:05:58
screen -t host ssh host
0085842005/05/30(月) 19:07:10
質問の意図を誤解している気がするから、もう少し詳しく説明して。
0086名無しさん@お腹いっぱい。2005/05/30(月) 22:16:29
>>82
言羊しく!

emacs 以前に、Putty 0.58 + 5.3R 上の screen (ports を
CONFIGURE_ARGS=--enable-colors256 で再コンパイル) にて
どうにも256色が出てくれません。
screen 無しだと 256color2.pl で256色出るのは確認出来て
いるのですが、何か思い当たることなどありませんか?

0087名無しさん@お腹いっぱい。2005/05/30(月) 23:45:18
>>86
俺も--enable-colors256でコンパイルしたけど、256表示されない。
エスケープシーケンスをダンプして見てみたら、^[[48;5;16mが
^[[416mに変換されていた。
0088832005/05/31(火) 00:29:10
>>84 >>85
screen@colinux | 0:28 05/05/31 | 0 tcsh 1* tcsh 2 tcsh 3 tcsh
となってるtcshの部分を、このマシンからsshしている先のホスト名にしたいです。
0089名無しさん@お腹いっぱい。2005/05/31(火) 00:35:22
>>88
シェル関数でsshのラッパーを書くのがいいかと。

ssh() {
    screen -X title $1
    command ssh "$@"
}
0090872005/05/31(火) 00:44:30
terminfoのputtyのsetaf, setabが正しくなかったようだ。
xtermから取ってきた
setab=\E[48;5;%p1%dm,setaf=\E[38;5;%p1%dm,
にしたら256表示された。
>>82はどのterminfo使ってるの?
0091822005/05/31(火) 11:19:07
FreeBSD なので termcap ですな。
env TERM=xterm-256color screen -T xterm-256color
とかしたうえで、.zlogin に
setopt noglob
eval `/usr/bin/tset -s`
unsetopt noglob
とか書いてる。試行錯誤なので正しいことやってる自信はなし。

けど、これだといきなり emacs を起動している screen だと tset が走らない
ので駄目ぽ。
0092名無しさん@お腹いっぱい。2005/05/31(火) 16:12:47
>>88
prompt に screen の title を書き替えるエスケープシーケンスを埋め込むっ
て手もある
0093862005/05/31(火) 21:55:13
>>91
むー、そうですか。同じようにしてもこちらではダメですねぇ。
env TERM=xterm-256color screen -T xterm-256color
だとむしろ悪化。Color cube, 6x6x6:、Grayscale ramp: 共に
なにも表示されなくなってしまいます。

ちなみに FreeBSD のバージョンはなんですか?
0094822005/05/31(火) 23:49:12
>>93
ちょっと今週は時間取れないのであまり詳細貼れないけど、FreeBSD は 4 系。
あと ~/.termcap に xterm のソースに入ってた termcap を置いてる。
必要かどうかは不明。切り分けは週末にでもやってみる。
■ このスレッドは過去ログ倉庫に格納されています