1 :
ミスタースクリーン :
2006/05/27(土) 18:18:42
2 :
名無しさん@お腹いっぱい。 :2006/05/27(土) 18:21:35
2get
^_:screen
4 :
名無しさん@お腹いっぱい。 :2006/05/27(土) 19:23:26
ウホッ
不安定な通信環境では必須ツール
6 :
名無しさん@お腹いっぱい。 :2006/05/28(日) 16:23:06
新スレ立て おつかれ navi2chで書き込みできなくなっててあせったよ
8 :
名無しさん@お腹いっぱい。 :2006/05/30(火) 11:12:43
こ の ス レ は 終 了 致 し ま し た 。 長 い 間 ご 支 援 あ り が と う ご ざ い ま し た 。
こ の ス レ は 再 ア タ ッ チ 致 し ま し た 。 長 い 間 デ タ ッ チ お つ か れ さ ま で し た 。
アタッチの大事な旦那様
メイドscreenハァハァ
自分最近WinからLinuxに乗り換えたばかりで、もちろんscreenなんて知らなくて乗り換えて 初めて使いはじめたんだけどこれってネタ満載かつ便利かつえろい究極の環境と考えて 桶??
桶
15 :
名無しさん@お腹いっぱい。 :2006/06/02(金) 16:40:01
こ の ス レ は 終 了 致 し ま し た 。 長 い 間 ご 支 援 あ り が と う ご ざ い ま し た 。
attach ↓再開。
│↑ └┘ 終了
% screen [ret]
>>18 やはり Screen ユーザには Zsh 使いが多いのかな?
おれはtcsh使ってる
漏れもtcsh つかzshって%だっけ?
>>19 ああ、俺はzshだ。
promptなんてdefaultじゃつかわんだろう。
自分も zsh で % にしてるよ。 別に大した意味はないが $ だと bash っぽいので。
それにしても%を見て
>>19 というのは不思議な発言
>>23 $ は由緒正しきBourne shだろ。
% はcshだと誤解されるので、$ にした方がいい。
>
zsh って一応 ksh の系統なんじゃないの。
>>24 今土器(t)cshユーザーは撲滅済み。
とすると%はzshしかいないはず、というごく当たり前の発想では?
やっぱりその手合いか だからzshは嫌われる
なんで超越理論ばっかりなの?
GNOMEターミナルな俺様が来ましたが何か?
ターミナルとシェルの区別が付かない方でしたらお帰り下さい。
>>26 確かに tcsh のデフォルトはそれだな。
そんな自分は bash
34 :
19 :2006/06/04(日) 00:28:08
>>24 ありゃ?そうなんだ。
他のシェルは使ってないんだけど、以前どっかのスレでプロンプトを % にした例を出したら、
お前 Zsh 使いだろ、って指摘されたことがあったので、 % なら Zsh かと思いこんでた。
スマンコ。
>>33 俺はてっきりDOSのコマンドプロンプトかと・・・
>>32 てっきり通じると思ってジョークで書いたんだけど通じないならごめん。
オレはエスパーじゃないので通じなかった 次はエスパーが集うスレでやってくれ 頼む
esp でなかったことにしよう。
エスケーパーとか
$ # じゃなかったっけ?
俺は昔ESPを飯のタネにしてたことがあるぞ。
PROMPT=%(!.#.$)
>>41 ああ、よくバッグの中に入ったりされてましたね、伊東さん
zombieなウィンドウをまとめて消す巧い方法はありませんかね
Ctrl + Alt + BackSpace
screen -wipe かと思った
やはりないんですかね
telinit 6
zombie に限らずフラグを指定してウィンドウを select できればなあ
>>51 パッチできたら、おれにも分けてください。
screen内のアプリケーションでxterm互換のマウスステータスレポートを 受け取ることは出来ますか? PuTTYからemacsやw3mを使っていて、コンソールでもマウスという環境に 慣れてしまっています。screenからマウスを利用できれば普段から利用 できるのですが…
可能なはず
55 :
53 :2006/07/06(木) 01:29:29
>>54 レスありがとうございます。環境を書き忘れましたがLinux 2.4系で
screenのバージョンは3.09.09 (FAU) 25-May-01です。
最新のバージョンに上げれば何もせずにマウスが使えるようになる
のか、それともscreenrcの設定が必要なのか、もし情報がありまし
たら教えてください。
57 :
53 :2006/07/06(木) 06:16:41
>>56 ありがとうございます。screenrcに
termcapinfo xterm XT
を入れれば良かったのですね。ヘルプにもちゃんと
XT (bool) Terminal understands special xterm sequences
(OSC, mouse tracking).
書いてあったのに、見つけられずお恥ずかしいです。w3mでの考慮点も
よく分かりました。
恥かきついでにもう一つ質問させてください。
screenを特定の画面サイズで利用するにはどうすればよいでしょうか?
具体的には、99桁×30行というサイズで利用したいので、screenrcに
下記の設定を入れました。
termcapinfo xterm 'WS=\033[8;%d;%dt'
width 99 30
この設定で新規起動時にはちゃんと99桁×30行になってくれるのですが、
デタッチした後アタッチすると80桁×30行になってしまいます。
あるいは、ターミナルソフトの側でサイズを設定しておき、screenの
起動時に現在のサイズに追従するという動きでも構いません。
こちらの方法も-Aオプションを試したのですが上手く動きませんでした。
教えてちゃんで恐縮ですが、ご存知でしたらよろしくお願い申し上げます。
eval `resize`
59 :
名無しさん@お腹いっぱい。 :2006/07/09(日) 18:56:33
>>53 termcapinfo xterm 'li#30:co#99'
60 :
名無しさん@お腹いっぱい。 :2006/07/10(月) 15:11:54
ログインするマシンが複数あって、どこにセッションが残っているか(残したか)憶えきれない。 お前らどう管理してるんだ?
>>60 screenあげるHubホストを数台決めておいて、リモートホストはそこからsshしている。
screen -ls
screen -ls するくらいだったら screen -r するでそ
sshでscreen -lsしまくるくらいしか解が無いのかなあ。 数ヶ月放置したカビの生えたセッションが残りそうだ。
(Dead ???)
~/.bash_profile とかに screen -ls | grep '(Detached)$' 入れてる。
このプログラムなんでsuidなんだ?
>>67 utmpとかいじるからな。xtermとかもだろ?
suid無くてもdefloginまわりが効かなくなるだけだから、
気になるなら外しても大丈夫よ。
複数のユーザーでセッションを共有するときにsuidが必要
そんな器用(余計)な事もできるのか。深いな。
ちなみにどうやってやるの?
user-a の、セッション名 foobar の screen 上にて、 multiuser on acladd user-a user-b の shell から screen -r user-a/foobar とすれば user-b は user-a の screen の foobar セッションを attach できる。
サンクス ペアプログラミングとかで使えるかも
ktermの上でvimを実行するときは :set mouse=a :set ttymouse=xterm でマウスが使えるようになるんですが、 kterm+screen上でvimを実行するとこれでは駄目なようです。 vimのドキュメントによると以下の通りなんですが、 screen がなにかコードを変換してしまってるんでしょうか? xterm xterm-like mouse handling. The mouse generates "<Esc>[Mscr", where "scr" is three bytes: "s" = button state "c" = column plus 33 "r" = row plus 33
>>75 termcapinfo kterm XT
でいけました。ありがとうございます。
77 :
名無しさん@お腹いっぱい。 :2006/08/10(木) 16:45:17
screenで複数のウィンドウを作成して操作していると、ときどきウィンドウの切り替えができなくなります。 原因と対処方法をご存知でしたら教えてください。 今はいったんexitしてから、新しいウィンドウを作成しなおすという対処療法でしのいでいます。 環境はLinux2.6とMacOS X 10.4です。
>>77 このスレにエスパーはいない
せめて以下についてはっきりしてなきゃ何も助言できないよ
・障害の内容をもっと具体的に説明してくれ
* 再現性はあるのか?
* どのようなキー操作でどのような結果になるのか?
* ~/.screenrcの内容は?
* exitするとは具体的に何を意味しているのか?
・screenのバージョンは?
・linux2.6のディストロとバージョンは何? kernelだけじゃ何もわからん
・端末(エミュレータ)は何を使っているのか?
あたたたたたたたたたーっち
再現性はわからないです 時々複数のウィンドウを使っているとそうなります Numlockと書かれたキーを触るとそういう現象がおきやすいです ~/.screenrcというのはよく分からないですが ファイルまたはディレクトリはありませんと言われます exitというのは電源ボタンを長押しすることです screenのバージョンはCVSのHEADです linuxはヴァインをつかっています エミュレータはパラレルスを使っています エスパーさんよろしくおねがいします
81 :
名無しさん@お腹いっぱい。 :2006/08/13(日) 22:16:58
画面ロック?
斜め上の回答キターー
パラレルスって仮想マシンエミュレータだろ
必要な情報は*端末エミュレータ*は何なのかってことだ
Vineのversionもな
俺はエスパーじゃないけど、問題はscreenにあるんじゃなくて
>>77 の能力不足にあるくらいわかるぞ
夏だねえ
そりゃ8月だからな
いまあらゆる状況からscreen中のemacsに編集画面を飛ばして、 編集の終了と共に元の画面に復帰するスクリプトを書いてます。 おおまかには - screen/emacs未起動なら→screen/emacs起動 - screenの中なら→select n; gnuclient file; other - screenの外なら→screen -x -p n; gnuclient file; screen -X detach という動作なんですが、emacs/gnuservやscreenの起動待ちやら attach+gnuclient+detachのタイミング制御でsleepが細かく 入ったりして、いまいち完成度が高くありません。 シェルスクリプト相談室行こうかとも思ったんですが、screenに かなり特化した改良が必要と思うので、ここに問題のスクリプト 貼り付けて相談してもよいですか?
駄目です
うざい
>>87 答えが得られるかはわからんけどみな興味はあるんじゃないかな?
まあ興味のある人ならばみな興味があると思うよ
似たようなことをやってる者が多いと思うが
91 :
86 :2006/08/19(土) 19:52:08
すみません、ではスレ汚しですが、いまこんな感じになってます(行数 エラーがでるので分割します): #!/bin/sh exec > /dev/null 2>&1 # check if gnuserv/emacs is already available if ! gnuclient -batch -eval t; then # invoke emacs in screen if [ -n "$STY" ]; then # already in screen - simply invoke emacs screen -X screen 9 emacs else # check running screen or invoke one screen -X exec true || screen -d -m # wait for screen to accept request while ! screen -X exec true; do sleep 0.25; done # invoke emacs, with wrapping attach/detach action to # workaround a bug(?) that ignores "-p 9" in detached mode # # comment this out if you invoke emacs in .screenrc (sleep 0.25; screen -X screen 9 emacs; screen -X detach) & screen -x fi # wait for gnuserv/emacs to accept request while ! gnuclient -batch -eval t; do sleep 0.25; done fi
92 :
86 :2006/08/19(土) 19:59:48
続きです: if [ -n "$STY" ]; then screen -X select 9 & gnuclient "$@"; screen -X other else (sleep 0.25; screen -D -m -c /dev/null gnuclient "$@"; screen -X detach) & screen -x -p 9 fi で、悩んでいるポイントは ・emacs未起動時にscreen外部から指定window内でemacs起動するのが綺麗にできない ・最後の編集画面へのジャンプで、screen外部からemacsセッションにattachしつつ gnuclientを実行する所の両立が綺麗にできない ・screenの起動完了をビジーループでしかチェックできていない ・emacsの起動完了をビジーループでしかチェックできていない の4点です。これらを対処するためにフォアグラウンドと バックグラウンドで並行して処理させたりしているのですが、 いずれもsleepが入ってしまい、妙なウェイトが入ったり タイミングがずれて処理失敗するなど、いまいちな状態です。
93 :
86 :2006/08/19(土) 20:11:29
今はLinux上なのでsleep 0.25とかイレギュラーな指定をしたりして 誤魔化しているのですが、 (sleep 0.25; screen -X screen 9 emacs; screen -X detach) & screen -x (sleep 0.25; screen -D -m -c /dev/null gnuclient "$@"; screen -X detach) & screen -x -p 9 を特に何とかできないかと考えてます。 いずれも (...) の部分の実行が attach 後の実行でなくては問題が あるためアドホックに sleep していますが、結局それでも間に合わずに 失敗したり、変にもたついたりと散々です。
スクリプトの頭にtrap "" SIGHUP入れてもだめ?
95 :
名無しさん@お腹いっぱい。 :2006/08/30(水) 14:37:23
C-a c で新しいウィンドウを作ったとき、そのウィンドウの中の シェルのカレントディレクトリを、現在のカレントディレクトリと 同じにすることってできますか?
>>95 無理。screenは子プログラムのカレントディレクトリは関知しないし、できない。
そのシェルから screen $SHELL とするのはダメなの?
>>96 ありがとうございます。
>そのシェルから screen $SHELL とするのはダメなの?
スクリプト中で使うのでなく、普段C-a cするときの動作が
そうだったら便利なのにという事なので。
>>97 それなら、
alias cd 'chdir \!*; screen -X chdir $PWD'
とでもしておけば最後にcdした所が有効にはなるけど。
ただし、あくまでそのscreenの中で「最後にcd (screen -X chdir $PWD) した場所」であって、
現在のwindow中のプロセスのカレントディレクトリは知りようがないな。
99 :
86 :2006/08/30(水) 21:12:22
bindでC-a cに何かのシェルスクリプトを実行するように 割り当てておいて、その中で新窓作成+位置移動するような処理を 書いておくってのはどう?
100 :
86 :2006/08/30(水) 21:25:17
>>94 ちょっと意図がわからないけど、
(gnuclient "$@"; screen -X detach) & screen -x -p 9
とウェイトなし&gnuclient用ttyの確保処理を省略するための案と
いうことであってる?
で、結果だけど、だめだった。
実は nohup とかもやっていて、それもダメだったので、gnuclient の
起動のためだけに screen を使わざるを得ないのかなと諦め気味。
で、ここの問題は論理的には
# attach しながら裏で gnuclient 経由編集開始して、終了後に detach
(gnuclient "$@"; screen -X detach) & screen -x -p 9
と書きたいのだけど、gnuclient に tty 渡さないといけないから
(screen -D -m -c /dev/null gnuclient "$@"; screen -X detach) & screen -x -p 9
こうなって、でもって screen -x -p 9 の要求が gnuclient 用 screen に
行ってしまうといけないので、
(sleep 0.25; screen -D -m -c /dev/null gnuclient "$@"; screen -X detach) & screen -x -p 9
と screen+gnuclient の実行が screen -x -p 9 の後になるように調整して、
既存の screen セッションのほうに attach するようにしてる。
と、こんな具合にドミノ式に sleep が入ってくることになってしまい、
別の観点からの解決法はないものかと悩み中。screen -x -p 9 を
バックグラウンドに回す訳には行かないし、どうしたものか。
101 :
フンバリャーウンコ・ヨーデル ◆xlAOIq6jZw :2006/09/05(火) 22:07:54
どーでもいいけど 9 は変数にしとけ。
ハア?
103 :
86 :2006/09/05(火) 22:42:14
>>101 やっぱりツッコまれますか。そこ確かに完成度低いんですよね。
番号じゃなくウィンドウ名にしたいとは思っているのですが、
名前を振るだけだと番号が頭から振られてしまい、通常の
自分の利用範囲とかぶって逆に使いにくいので、まず動作を
詰めてからということでスルーしてます。
104 :
フンバリャーウンコ・ヨーデル ◆xlAOIq6jZw :2006/09/06(水) 17:37:25
まあ簡単な置換動作ですむからな。 それより、うまくいったのか?
匿名の場で自分を主張するって 日頃よっぽど無視されてる人間なのか?
tp://blog.gcd.org/archives/50663205.html これ、どっかで見たような気がしたんだけど、既出?
みんなオレオレで解決してるんじゃないの? 誰か連絡してやれってば
109 :
86 :2006/09/07(木) 21:51:18
>>104 改良という意味なら、80%位は解決できたよ。gnuclient用ttyを
screenで確保するから干渉するのであって、forkpty(3)で自前で
確保する別のスクリプト組んで、組み合わせて解決した。
今は最後の部分は
if [ -n "$STY" ]; then
(forkpty gnuclient "$@"; screen -X other ) & screen -X select 9
else
(forkpty gnuclient "$@"; screen -X detach) & screen -x -p 9
fi
とsleepフリーになって快適。forkptyは
pid = forkpty(&amaster, NULL, NULL, NULL);
if (pid > 0) { waitpid(pid, &status, 0); return status; }
execvp(...);
なtccスクリプト。
残っているのは新規のscreen+emacs起動の際の、screen -dm した
新セッションにどうやって外部からemacs起動させるかと、それぞれの
起動完了待ちのsleepループだけど、前者は.screenrcでemacs起動する
ようにして回避したので、残るはsleep待ちのコードが一箇所だけ、
それも初回起動の所だけになるまで単純化できた。
とりあえず解決おめでとう。 emacs -nwにこだわらないでXのEmacsを使ったほうがいいと思うぜ。 Emacs上へのpasteはwritebufとinsert-file使えばできる。 もちろん、スクリプトでfocusを切り換えられるウィンドウマネージャーを使おう。
リモートアクセスかもしんないじゃん
それなら仕方ない
そこでVNC Serverをですね。
普通はVNCなんて変態チックな事せずにX-Serverを用意する。
115 :
86 :2006/09/08(金) 20:46:55
ごめん、デスクトップ環境はWindowsなので、emacsは 常にTeraTerm/Putty越しにしか使わないんだ。 ていうか、Xとかリモートデスクトップ使ったらscreenの メリットが半減してしまうのでは。TeXmacs(+Maxima)使えないのだけが 唯一残念ではあるけど。
ttyrecを知らんみたいだな>元記事執筆者
>>117 これはLinux.comの翻訳記事です。
>>118 うん、わかってるって。だから「元記事」執筆者て書いた。
翻訳者や>116の調査能力をあげつらっている訳ではない。
^aのまま使ってる人間ってそこそこいるんだな. 定番は^[, ^t, ^zあたりだろうけど.
二度うち ^[ よりは ^] の方が扱いやすいと思うがね
>>121 俺はどれでもないなあ。俺と同じエスケープ使ってるという人見たことない。
>>121 片手で使えるから^zだな。
a, tはemacs, [, ]はtelnetあたりと個人的に相性が悪い。
>124 じゃあ何を使ってる? ってかこのネタになるとスレが伸びるなあ おれの知合いには ^x がいる。
んじゃ俺のを書くが ^b だな。キーボードの下の列の左から追って いって、どう考えても使わなさそうなのがこれだったから。
^bか。THX。 emacsやシェルで使いまくると思うんだが、人によるのかな。 おれも ^t だけど、どうせ emacs で C-t なんてほとんど使わないからこれでいいと思ってる。
使われているキーを考えると emacs binding 使ってる場合は bash: a b c d e f h i j k l m n p r s t u v w y z emacs: a b c d e f g h i j k l m n p q r s t v w x y - \ telnet: ] とかがダメ? もっとも t (transpose-chars) なんて typo 修正用だけど 使うこと少ないから ^t とか選択する人は結構いそう。自分は 両手で打ちたいので ^o にしてる。まだ干渉したことはないけど、 ^o ってどこかで使ってたりするのかな。 結局 o t [ あたりが選択肢として残るだけかな・・・
>>129 kinput2+Cannaのin/outとかEmacsではopen-lineだかとぶつかる。
以前は ^t を使ってたけど、 システム管理用共有ユーザ (ほとんどの設定がデフォルトのまま) を使う機会が多くて、 そこは screen も ^a のままなので、慣れるために自分の環境も ^a に変えた。 ペアプロしてるひとってエスケープのキーはどうしてるんだろう?
>>131 screen使ったペアプロってあるのか。
^aはEmacsキーバインド使ってると弩腐れな設定だな。
shellすら満足に使えなくなる。
133 :
131 :2006/09/13(水) 14:11:01
慣れるとそうでもないよ。 screen 無しに戻ったときにも無意識に ^aa ってやってしまうことがたまにあるけど。
^z
>>120 何のことか分からなかったけど、今日RSSみてたらやっとわかった。
誰でもscreen使うような人間なら思うことじゃないかと思うんだが。
>>135 そんなにttyrecってメジャー?世界的に。
俺は大概のとこにある(もしくは自分で入れる)からscreenで十分だなぁ。
ただ、ttyrecでそういうことができるってのは参考になった。
???
138 :
124 :2006/09/13(水) 20:45:30
127は俺じゃないよw ちなみに^bでもなく。まだ出てこない。
\033 って人もいるな
>138 なにー。すっかり騙された そういえば、^qという人もいたな。たしかに滅多に使わないが、稀に使うからなあ……
141 :
127 :2006/09/14(木) 01:57:41
>>140 って、なんか俺騙したみたいじゃん。トホホーン
そりゃあ俺様はGNOME端末マンセーのヘタレだけどさぁ…
^^
いずれにしても、ウィンドウシステム上ではC-;で割り当てのキーを 吐くようにして専らそっちを使ってるな。最近じゃコンソールでも 設定できることが多いし。
なんでいまさらtelnet使う人がいるのかよくわからんなあ。最近のルータは ssh使えるのも多いし。 ...と思ったけど、80とか23とか叩くことはよくあるか。 telnetで^]使うのって自分はせいぜい^]closeぐらいだから、^]^]二度うちで 困らないけどね。
んだんだ
146 :
124 :2006/09/14(木) 10:37:31
>>142 ばーれーたーかー どうかは知らないが、
そう、^^です。大抵の端末でC-6で入力できる。余談だけどESCはC-3で入力できるね。
いまだ何かとぶつかって困った記憶がない。
>>146 C-6なら、Ciscoのルータとか触ってるとC-Shift-x-6とか使うからぶつかりそうだな。
このへんのネタをまとめる Wiki とかないかな? エスケープキーの人気ランキングとか、 俺はこんなキーを使ってるぜ自慢とか、 このキーだとこれこれとバッティングするから要注意とか、 そんなネタがまとまってるところがあると良さそう。 あ、俺には Wiki 立てるとかそういうのムリ。
screen のネタなんだから wiki じゃなくて tty (telnet?)で接続すると見れるとか そういうのにしないとな
150 :
124 :2006/09/14(木) 11:58:12
>>147 なるほど。こんなキーコンビネーションもあるのね。覚えておこう。
それで困る人は ^_ (こっちはC-7) でどう? これも使われてる?
151 :
124 :2006/09/14(木) 12:00:18
と思ったけど^_はundoで使うからダメだね。
片手派か両手派かでも分かれるな
とりあえず 「xx の使用頻度は低い」とか主観的な意見と 事実とは分けようよ。 おれは ^t はそれなりに使うけど ^] の使用頻度は許容範囲. あと ^z なんて激しくよく使うよ (screen 使うような人は suspend なんてよく使うもんだと思ってたけどな) ^t (transpose-chars)については、利用頻度は多くないんだけど "使いたい場合にダブルストローク必要では意味がない" コマンドだと思ってる
漏れはsuspendはよくする人だが、screen使ってるんだからもう1枚 開けよ、と自分にツッコムことはままある。 まぁ、一番多いのはssh経由の~付きsuspendだったりするわけだが。
>>156 wikiに^zの内容追加したが
^zを使っているが、suspendはほぼ全く使わない。
いつ使うんだ?
screen使う前はsuspendさせたりfgしたりbgしたりと忙しかった
使う人がいるからその機能があるんでしょ 流儀は人それぞれ
telnetの出番がどうのとかtranspose-charsの頻度がどうとかは省いた方がいいんじゃない? 関係ないし主観的なので。読んだ人が自分の状況に即して考えればよい話かと。 C-a デフォルトのエスケープキー。 衝突: Emacs等の行頭へ移動 C-] (ESC) 衝突: telnetのエスケープキー 衝突: viの入力モード脱出 衝突: その他エディタ等のエスケープ入力 C-t 衝突: Emacsのtranspose-chars C-z 衝突: 各種端末でのサスペンド C-o 衝突: Emacsのopen-line 衝突: Cannnaの変換モード移行 C-q 衝突: Emacsのquoted-insert くらいでどう?
>>161 (viなどの)ESCは C-[
telnetのエスケープは C-]
混同砂。
C-q は X-ONとモロ衝突してるじゃん。X-ONがないと画面固まるよ。
>>163 X-ONてなに?
stty -ixonとかのことか?
別に主観のよせあつめでいいんじゃね
>>161 内容の細かい点はともかく、フォーマットはシンプルで良いんじゃなかでしょうか。
>>165 関係ないし主観的、ってのはつまりは余計な一言ってことです。
viの入力モード脱出に対して、viなんて使う奴いねーよという話もある。
とか書いたらモメるのは目に見えてるでしょ? それと同じことです。
C-^ (C-6?)と主張してた人はどうした? C-\ も たまご とかと被るけどどれくらい使っている人がいるんだろう screen スレ自体、ある意味時代に取り残されてる人のスクツだからねぇ
だからC-;でいいじゃん。
淡々と書き換えてみた。あと、敬体を常体に。 Ctrl-zにNetHackを入れたのは趣味だ。
>170
>>161 衝突の議論もいいけど、screen なしの端末を触ってるときに間違って操作し
てしまったときの影響もいれたいな。私は ^z^z だが、二度押しでの被害は特
にない。
C-z の suspend って、シェルの機能じゃなくて端末の機能じゃないっけ?
英語キーボードで C-^ っている?
screen: C-z elscreen: C-\ minicom: C-^
178 :
名無しさん@お腹いっぱい。 :2006/09/15(金) 09:56:10
suspendはscreen使うようになって以来使ってない。 suspendするくらいなら新しく窓開く。
>174 書いてみたよ >178 そういう人もいるでしょう。 そうじゃないひともいるでしょう。 それだけ。
さすぺんどはそれまでのひすとりとかが使えるから これはこれで用途はあるんだよもん
>180 zsh というシェルには SHARE_HISTORY という機能がありましてね
180ではないが。
>>181 それはそれで使いにくかったりするんだよもん
180ではあるが。
>>181 「それまでの」ひすとりというのがミソなんだよもん
^a :title だよもんスレッドだよもん
>181 それが便利だという人もいるでしょう。 そうじゃないひともいるでしょう。 それだけ。
世界は皆一つの意思の許に統一されるべきという主張でしょうか?
>>179 =
>>185 =
>>187 人によって設定や使い方が違うのをリストアップして研究しようとしてるわけだろ。
それを、「人それぞれ」みたいなことを言うと、話が終ってしまうし、
誰もそんなことは期待していない。お前はほんとにつまらない香具師だ。
で?
もうほっとこうよ。
だよもん
192 :
名無しさん@お腹いっぱい。 :2006/09/18(月) 18:35:18
Apple ハードで Linux な私ですが [Control] が [A] 直左なので ^a で inputrc も vi モードで ln -s vim vi です
>>192 Apple ハードで Linux な私ですが [A] 直左は [caps lock] です。英語キーボード
escape ^z^z で使用
screen + Emacs で日本語のページを編集しようとすると、 文字化けする。一部分だけ正常に読めるところも。 端末文字コードは UTF-8。 screen って非ASCII扱うときになんか気をつけること有る?
なんでデフォルトが^aなんだろう? screenって、emacsのより昔からあったのかな。 Cannaよりは古いと思うから、デフォルトで^oを選択しててもよかったのでは。
^o は vi の (ry どれがデフォルトだったとしても不平を言う香具師はいるので、 正直どれがデフォルトでも良かったんではないかと思う。
wiki 弄ってて思ったけど ^a はそれなりにデフォルトとして悪くないと思う >174 的観点とか(エスケープシーケンスとしては)他で 使われていないとかいろいろな点を考慮すると。 どうせ変更できるものなんだしね。
>>196 ^O isn't a vi command
Emacs では行追加が割り当てられてるな
200 :
フンバリャーウンコ・ヨーデル ◆xlAOIq6jZw :2006/09/19(火) 16:50:24
>>195 べつにいいじゃん。変えられるんだから。
emacsは30歳。
>>194 set-terminal-coding-system?
別にいいじゃん変えられるんだからと安易なキーバインディングを行った結果のemacs モード間の整合考えるとカーソル移動は実質上変更できない。
202 :
フンバリャーウンコ・ヨーデル ◆xlAOIq6jZw :2006/09/19(火) 17:04:54
>>194 terminfoとかtermcapとかの方に問題があるんじゃねーの
>>195 ^oにはdabbrev-expand当ててるから譲れん
あれ、急にローカルあぼ〜んが増えたぞ
いちいち発表しなくていいよ。
時間たったからいいだろうとか考えて蒸し返してるんなら不快だから さっさと知らせとこうと思って
それでやむもんじゃないよ。
それでやむような香具師ならとうにやめてる罠。
「GPLは危険」 複数のLinuxカーネル開発者が共同声明
http://opentechpress.jp/opensource/article.pl?sid=06/09/26/0227202 ---
TorvaldsはLKMLへのメールの中で、Bottomleyの意見に同意している。
「僕の個人的な意見を言うと、 公開議論の大部分が、
GPLに関して政治的な動機を持った人たちによって行なわれているなあということ。
だからとても声の大きなGPL支持者たちがいる。
だけど大量の開発を結局のところ実際にやってる人たちっていうのは
普通は彼らほど口が達者じゃないし、実際その意見はほとんど知られてないって気がする。
FSFの意見は実際の開発者の(しかも、かなり多数の)意見を必ずしも代弁してはいないっ
てことを、 実際の作業をたくさんやる人たちが知らしめる手段だ。」
>>212 そこのページには
オープンソース:「GPLv3は危険」〜複数のLinuxカーネル開発者が共同声明
と書いてあるのだが?
>>213 あちこちマルチしてるやつだから相手しない方がいいよ。
215 :
名無しさん@お腹いっぱい。 :2006/10/09(月) 00:07:58
Screen: version 4.00.02 OS: MacOSX(10.4.8) CPU: PowerPC 質問: Screen を入れ子にしている場合の Window 間移動方法が知りたい screen を起動しているシェルから、別の screen のセッションが動いている サーバにログインして attach する事がよく有ります。 このとき、第一階層(自マシン)の Window は移動可能なのですが、 第二階層(サーバ)の Window を移動するにはどのようなキー操作を したらよいのか教えてください。 エスケープには ^A を使っています。よろしくお願いします。
>>215 ひとつめのscreen:^Aなんとか
ふたつめのscreen:^A^Aなんとか
217 :
215 :2006/10/09(月) 00:58:50
218 :
フンバリャーウンコ・ヨーデル ◆xlAOIq6jZw :2006/10/09(月) 11:19:57
別のescape使えよ
マシン毎に別のエスケープなんて設定せんだろ普通。
そんなことをしたら余計に混乱するわな。 status 行に "本日のエスケープ: ^B" とか表示したりして
screen->screen->screen のときは三番目を ^t にして使ってたよ。
俺はノートPCは^ee, デスクトップは^aa, 鯖マシンは^zzてな具合に している。だいたい3重のscreenまでで足りている。
重ねて使わないときもいちいちバインドを使い分けなきゃならんのか 手元のウィンドウをタブ化するとか SOCKS串経由で直接SSHするとか考えた方がマシ
224 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 07:58:21
年内に垂直画面分割を実現したscreen-4.01がリリースされる予定 by ミヒェル=シュレーダー
使い分けるのも慣れたらそんなに気にならないけどな screen ごとに頭切り替えて作業するし
226 :
ギレン総帥 :2006/10/23(月) 22:32:47
screen-4.0.3 キター
狼がきた?
screen-users MLに流れたアナウンスを貼る
Subject: Secfix release for screen: screen-4.0.3
From: Michael Schroeder <
[email protected] >
To:
[email protected] Cc:
[email protected] Date: Mon, 23 Oct 2006 15:23:02 +0200
Hi Screen lovers,
I've just released screen-4.0.3. This is not the promised next version
with vertical split and other cool things, but just a security release
that fixes two bugs in the utf8 combining characters handling. The
bugs could be used to crash/hang screen by writing a special string
to a window.
The fixed version is (as usual) available via:
ftp://ftp.uni-erlangen.de/pub/utilities/screen/screen-4.0.3.tar.gz Credits go to cstone & Rich Felker for finding the bugs.
Cheers,
Michael.
--
Michael Schroeder
[email protected] main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);}
Ambiguousな文字の幅問題は修正された?
231 :
名無しさん@お腹いっぱい。 :2006/10/27(金) 00:56:26
~/.zshrc に export PATH=~/bin:$PATH を書いているのですが、 ~/bin/hoge を screen hoge で起動しようとすると Cannot exec 'hoge': No such file or directory といわれてしまいます。 パスを通すにはどうしたらいいんでしょうか?
echo $PATHの結果は
export PATH="$HOME/bin:$PATH"
>231 zsh のマニュアル読んどけ interactive shell でない起動のときには .zshrc は処理されず .zshenv のみ
235 :
名無しさん@お腹いっぱい。 :2006/10/28(土) 15:45:00
>>235 この連休は結婚式に出るとかいろいろ予定がつまってるので
作業できそうにないです。
しばらくお待ちいただきたい。
238 :
235 :2006/11/03(金) 12:29:11
>>236-237 (ギレン総帥)
ご返答ありがとうございました。
4.0.2→4.0.3での変更内容がアレ*だけ*であることを考えると、これらの
パッチは「正しく動作する」、すなわち4.0.2のときと同様に適用すべき
である、ということになる可能性が高いかと。
^a を一度押したとき、次のキーを入れるまで下に何か表示させることってで きますか?
240 :
名無しさん@お腹いっぱい。 :2006/11/09(木) 09:30:40
eval "command" "echo foo"
echo -e "\033]2; $USER@$HOSTNAME\007" としたとき、screen のステータスラインでなく kterm のタイトルを変更させるにはどうすればいいですか?
242 :
239 :2006/11/10(金) 00:15:37
>>240 ありがとうございます。うーんうまくいかなかった・・・
余談だが、結婚式に出るのは漏れの方で、 おまいは主役だろ!w >ギレンたん とにかく、ヲメ。
MacOS X TigerのTerminal上でGNU screenを使ってます。 screenを起動するときにUTF-8を表示させたいのでscreen -Uとして起動しています。 しかし、ls -vすると日本語が正しく表示されません。 'ユーザ登録'というファイル名が'ユザ登録'となってしまいます。 どなたか改善方法をご存知の方いませんか? ・環境 MacOS X Tiger 10.4.8 screen 4.00.02
utf8で使ってるけど -Uは使ってないな
utf8対応っていっても、MacOS Xはけっこう面倒な出力をするからなあ。 濁音とか。そこまでscreenは対応してないんじゃないかな。
そうそう、MACの濁音ってなんとかなんないの? NFS上に保存してるから、他のUNIXから見ると見苦しいです。。。 通常の濁音に変換する方法とかってありますか?
糞マックだから、諦める。 やはり、隔離したままの方がよかったな。<まっく
ファイル名に日本語なんか使うやつはばかです
251 :
名無しさん@お腹いっぱい。 :2006/11/16(木) 13:25:33
同意
どんだけ亀レスなんだよ と思ったヲレもtcsh使い
初めてつかったのがtcshで、bash使ってる今も好きなんだよなぁ zshとかどうも馴染めない、なんか補完機能を自慢げに誇る割に PATH通ってる所に実行ファイル置いてもすぐに反映されねぇし screenが縦分割できない(要パッチ)ことをしってorz中
言いたいことはわかるけど、tcshもrehashが必要な点はいっしょじゃん
>>254 昔はtcshで今はbash/zshだな。
tcshはC-rが設定しないと使えない時点で捨てた。
screenでの縦分割って必要か?
漏れは中のEmacsとかで分割してるからいらないと思うが。
すげー独り善がりなやつだな
なくても困らないからいらない。<縦分割。
どっちかっていうと >258 が世の中に存在しなくても困らないから >258 はいらない
>>259 どっちかじゃなくて、おまえがいらない。
画面は縦長であるべき。
今、時代はPC-100。
PC-100は横にもなったぞ。
そろそろディスプレイの隅をつまむと変形できる 可変ディスプレイの実用化が望まれる
それよりも空中に投射するディスプレイの実用化を早くしてほしい。
直接脳内に送られる方がうれしい
>268 デバイスが暴走すると、脳に影響がでそうだな
キモチイイ信号なんかも screen で切り替えられるのかな(ワクテカ
>>270 multi sessionで複数人で共有できるよ
rootにsetuidしないとダメだけどね。
Krackして進入するよりも挿入する方が流行るな
Krack って言うのはどこの言葉ですかね?
この意味ならKの方じゃなくてCの方だね。
>>244 OS Xとscreenのバージョンは同じだが、
当方の環境では問題なく表示できてる。
277 :
名無しさん@お腹いっぱい。 :2006/11/20(月) 21:46:31
classが予約語の言語でクラスオブジェクトの変数をklassと書くようなもの
Kombatみたいなもんかと
MORTAL KOMBAT面白かったな
CrackとKrackは意味が違うだろ
sqreenとかパチモンみたいだw
sqleen :JOIN :SELECT
自作自演のわびとさび
>>287 SQLは知ってますが、「激ワラ」するポイントが判らなくて「?」なんです。
なので無粋だとは思うけど、その心をおながいします。
冗談の解説ほどつまらんものもないので、SQLなコマンドの前に:があるってことを よ〜く考えろ
screenに何かをさせるコマンドは : で始まる
"screen"と同じ発音の"SQLeen"、SQL!
自分で書いててアレだけど、
>>289 に同意
291 :
名無しさん@お腹いっぱい。 :2006/12/02(土) 08:54:42
おまいはLとRの区別もできんのかね
292 :
名無しさん@お腹いっぱい。 :2006/12/02(土) 09:23:20
釣りだと気付けよ
293 :
名無しさん@お腹いっぱい。 :2006/12/02(土) 09:27:07
どう考えても自演ですね ほんと(ry
294 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 12:41:44
やはり自演だったようですね 図星だったんで逃げたか? (プ
screen使い始めたばかりなんだが、 puttyで流れた行を見る為のスマートな方法はないの? マウスでスクロールしても見れないんだけど。
C-a[
どうせloginしたらすぐscreen起動するから、 puttyとかxtermとかのscroll barはいつも無効にしてる。
>>295 termcapinfo xterm ti
こんなことで自演するわけがないだろ なに言ってんだ
xterm-256color にしたけど、色が多いと見づらい。
>>299 ヴァカは放置ということで、1つよろしく頼みます
302 :
名無しさん@お腹いっぱい。 :2006/12/04(月) 23:53:53
バックグラウンドでmakeが終わったときに screen -X echo "make finished" というようにメッセージを表示したいんですけど、すぐに Activity in window で上書きされてしまいます。 screen -X eval 'echo "make finished"' 'sleep 5' となどとやってもだめなんですが、どうすればいいんでしょうか?
ごめん、screen の解決には全然ならないけど、 別の解としてXをつかっているのであれば、 xmessage "make finished" ってのはどうだろう。
いつもは emacsの中で M-x compile してるから気にならないな
306 :
名無しさん@お腹いっぱい。 :2006/12/20(水) 12:27:18
ratpoison なら ratpoison -c 'echo make finished' とか
make ; echo ^Gとかやって、bellで代用するんじゃだめ?
鳴ったときにトイレいってたら終わりや
309 :
名無しさん@お腹いっぱい。 :2006/12/22(金) 23:58:26
はぁ?
311 :
名無しさん@お腹いっぱい。 :2006/12/24(日) 02:01:22
リモートのマシンとかCD-ROMdriveがないマシンでどうするかが課題か。
finish 用の画面に切り替えるんじゃだめか?
もう面倒だからwallしちゃえ
マウスでリージョンを選択することはできないんですかね?
はい、できません
そうですか。
317 :
名無しさん@お腹いっぱい。 :2007/01/02(火) 16:17:06
Shift+上下左右 xclip の組み合わせ
318 :
317 :2007/01/02(火) 19:24:55
ごめ、上下左右ってのはドラッグな。
screen 実行してる端末と x 動いてる端末が同じならそれでいいんじゃね。
>>317 よくわからないけど、こうしてみました。
KTerm*VT100.translations: #override \
Shift <Btn1Down>: string(0x14) string(0x6e)\n\
Shift <Btn2Down>: string(0x14) string(0x09)\n\
Shift <Btn3Down>: string(0x14) string(0x70)\n\
これでShift+Btn2 で C-t C-i が送られてリージョン切り替えできるんだけど、
同時にクリップボード貼り付けもされてしまいます。
これは防げないのでしょうか。
clearコマンドを使うと、現在のウィンドウが消えますが、 スクロールバッファには残っています。ハンカク文字列板の スレ一覧とかが残っているのを消しておきたいような場合、 スクロールバッファも消すにはどうしたらよいですか。 スクロールバッファが消えていると怪しまれる可能性に ついては考慮しないことにします。 あとついでにクリアした分のスクロールバッファが占有して いるメモリをfreeして(OSによっては)返還できますか?
そういうのは家で見れ。
窓を殺せばいいじゃん
普段、タイトルバーにカレントディレクトリを表示させる設定にしているんですが、 screenを起動するとscreenの設定値に上書きされてしまうので、 いまいちscreenを常用する気になれないでいます。 screen使いながら、タイトルバーにカレントディレクトリを動的表示する方法を 知ってる人いたらお願いします。 シェルはcshですので、cshの場合でお願いします。 (シェルを変えろという話はなしで・・・)
何のタイトルバーよ。
326 :
名無しさん@お腹いっぱい。 :2007/01/09(火) 00:20:11
>>325 失礼。
端末エミュレータね。xterm使ってます。
tcshなら余裕だが、cshは知らん。 以上
>>327 tcshならできる?
参考に聞いときましょ。
>>324 screen をハックするのが手っ取り早いんじゃないの
>>329 ハック?Cソースをいじるってことだよね?
ここ何年もCはご無沙汰なんで、腰が引けるなぁ〜
あと、ソースいじることで関係ないとこで、
変な動作になるのが、怖いんだよね。
費用対効果を考えると、シェルかscreenのコマンドを
使って設定するほうが良いかと・・・
というわけで、
>>327 さん、tcshでの設定お願いします。
だが断る
332 :
名無しさん@お腹いっぱい。 :2007/01/09(火) 23:37:57
>>331 知らないならいいよ。
知ってる方います〜?お願いしま〜す。
>>330 すでにタイトルバーに表示させる設定にはしてるんでしょ? だから
hardstatus とか使えば場所は違うけど表示はできるわけでしょ。
あとはそれを端末のタイトルバーに出すだけ。簡単じゃん。
費用対効果とか言ってる暇あったらハックしろって。
こ の ス レ は 終 了 致 し ま し た 。 長 い 間 ご 支 援 あ り が と う ご ざ い ま し た 。 〜終〜
335 :
333 :2007/01/10(水) 00:49:48
>>330 もし今 hardstatus を使ってなければの話だが、.screenrc に
termcapinfo * 'hs=\E]2;\7:ds=\E]2;\7:ts=\E]2;:fs=\7'
hardstatus lastline '%h'
と書くのはどうよ
336 :
名無しさん@お腹いっぱい。 :2007/01/10(水) 01:18:59
>>333 hardstatusって、調べたらscreenのコマンドじゃん。
コマンド実行時に変更可能で、
あとエスケープシーケンスも適用できるみたいね。
>>335 こういう方法もあるんだ・・・
意味は全然わからんけど、
そのまま使えそうだから試してみるよ。
なんとなく、できそうってわかったよ。
助かった。どーもね。
シェルスクリプト内で echo -n -e "\033k${s}\033\\" とすることでタイトルを ${s} に変更することができますが 元に戻すために予めタイトルを取得しておくには どうすればいいのでしょうか? シェル側で戻してやるしか方法はないでしょうか?
338 :
名無しさん@お腹いっぱい。 :2007/01/12(金) 18:10:38
→私家版
>>337 gentoo だと ~/.bashrc で PROMPT_COMMAND に定義されている内容で
タイトルが出るので、そのコマンドを実行すればいいことになるのだが。。。
あと私の環境だと echo -n -e "\033k 〜 でタイトル設定は出来なかった。
echo -n -e "\033]0; 〜 \007"
ならウィンドウ・タイトルと最小化したときの名前が変わった。
echo -n -e "\033]2; 〜 \007"
だとウィンドウ・タイトルのみで最小化したときの名前は変わらなかった。
man console_codes を読んだら、確かにそう書かれていた。
恐らく sjis 環境で使っている人は少ないとは思うのですが、パッチを作ってみましたので公開します。
1. sjis 変換修正パッチ
encoding utf8 sjis の設定下だと、ほとんどの種類の記号が入力できなくなる点を修正します。
2. cp932 変換版
メインは sjis と Unicode との変換用テーブルの差し替えです。変換を Microsoft による変換に合わせます。
いわゆる WAVE DASH - FULL WIDTH TILDE 問題あたりの挙動が変わります。
また、115〜119 区にある IBM 拡張文字についても変換が可能となります。こちらはパッチによる修正が必要です。
バイナリは cygwin 向けに作成していますが、パッチ等はどの環境でも同様に有効だと思います。
ttp://yak.myhome.cx/junks/index.html#cygwin.screen
>>338 >>339 ありがとうございます.
スクリプト内だけでなんとかしたいので,
終了時に $SHELL にでもリセットしておくことにします.
>342
どーも。
sjis 変換修正パッチの方は投げたほうがいいかな、と思ったらすでに相当のものが上がっていました。
https://savannah.gnu.org/bugs/?17842 cp932 変換版は豪快に挙動を変えてしまいますので本家に投げるのはふさわしくないかと思います。
cp932 と sjis とを切り替えられるようにできればありかとは思うのですが、簡単には実現できなさそうだったので、
差し替えるだけになっています。
screen なしでは生きていけない体になるくらい便利ですね。 ところで、二つの ssh クライアントで同じサーバにつないで、 それぞれの ssh に同じ screen の管理下のウィンドウを表示 したいのですが、可能なんでしょうか? 何を言っているのだと思われるかも知れませんが、 screen で上下に split している画面のうち片方を、 別につないだもう一つの ssh に表示したいのです。
可能
別の端末からもう一回 screen しても、新たな screen が 立ち上がるだけで、すでに別の端末で起動している screen の 管理下にあるウィンドウをもらえるわけじゃないんですよね? クソッ、とおもって screen -dr したら丸ごと こっちの端末に来ちゃった・・・・・ 丸ごとじゃなくて一部のウィンドウだけくれ〜 そもそも ^Z (私はエスケープを ^Zに割り当ててます) * で ディスプレイ一覧なるものが出るのだから、 一つの screen プロセスが複数の端末をつかんで それぞれの端末に自由にウィンドウを表示できるように なっているのだと信じてます。manpage 読んだら分かる?
-x Attach to a not detached screen session. (Multi display mode) こ、これか?これなのか!?
>>347 それだ、それなのだ
つ sc() { screen -x || screen; }
つ screen -xR
なんだか忘れたが screen -xRR がいいといわれて以来そうしている
何が違うんでそ
screen -xR hoge というのを screen 起動スクリプトにしてる。 どの端末から入っても単一のセッションにアタッチできる。
先刻、 screen が異常終了したんですが、それからというもの $ screen /var/run/utmp: No such file or directory /etc/ttys: No such file or directory となって、screen を起動できなくなってしまいました. どうすればこの症状が直りますか?
ぶっ壊れバージョンを使用してただけでした テヘッ
356 :
名無しさん@お腹いっぱい。 :2007/02/03(土) 11:18:38
hardstatus でフォーカスされたセッションには "[%n:%H]" ってセットしてるんだけど、フォーカスされて ないセッションは "%n:%H" のようにしたいんですが、 その場合、 hardstatus をどのようにセットすればいいですか?
単純な表示だけで細かい指定はできないんじゃないかな
%Fと%?を使えばできそうな。
info嫁
無理無理
>>356 フォーカスされたセッションってどんなの?
フォーカスされたウインドウじゃないんだよね。
363 :
ギレン総帥 ◆0QHV7fcZ.2 :2007/02/10(土) 13:11:37
364 :
名無しさん@お腹いっぱい。 :2007/02/11(日) 04:52:29
blogのコピペで手抜きかよw>>ギレン総帥
日付を見ればわかると思うが
>>363 の方を先に書き込み、blogはそれをコピペした
まぁ手抜きなのは認める
じゃヒーロータイム始まるので、また
blogはコピペで手抜きかよw>>ギレン総帥
〃∩ ∧_∧ ⊂⌒( ・ω・) はいはいワロスワロス `ヽ_っ⌒/⌒c ⌒ ⌒
グッド手抜き、ギレン総帥。
縦分割すごくイイけど、ファイルがいっぱいある dir で ls -l とかすると、メチャクチャ遅いのはオレのマシンのせいか? pen3 550MHz memory 768MB の kterm上
>>369 同じく遅い(途中で一瞬停止する)。
pen4 3.2GHz memory 1.5GB の krxvt上
ウィンドウグループとか便利そうだね。
ところで縦2分割したときに、
左の終端と右の先端を繋いでひとつのウィンドウにするような機能はない?
アナウンスを見るかぎりなさそうだけれど。
右と左のウィンドウをつなげてひとつのウィンドウにする...? それってどういうこと? どっちか閉じれば良い話じゃないの? それはともかく、オレの狭いモニタじゃ縦分割はあまり使いでがないことがわかったよ。 いまはlayoutをどう使うか思案中
こんな便利ソフトウェアがあったとはorz 長時間かかりそうな作業するときはシェルスクリプト書いてnohupで起動してとかやってね。 馬鹿みたいだ。
>>372 「馬鹿みたい」じゃない。
「馬鹿」なんだ・・・・
>>373 orz orz orz orz orz o..............rz
ちょっとdetachする前に回線吊ってきます。
375 :
370 :2007/02/22(木) 17:04:41
>>371 わかりづらくてすまん。
一画面上に見える行数が倍になるので嬉しいかな、と。
>>375 |abcdefg|hijk... |
ってスクリーンの見え方ってこと?
("|"はscreenの端を表す)
一画面にして
|abcdefghijk... |
ってのとどう違うのだ?
|abc|jlk| |def|mno| |ghi|pqr| ってことだろ。
378 :
370 :2007/02/22(木) 18:33:02
>>377 ごめん。その図をはじめに書けばよかった。
ターミナル最大化して使っていて、右のほうが余るからってことです。
もしかしてターミナル側でそういう機能があったりするのかな?
ちょっと調べてみる。
さりげなく jkl が jlk に化ける機能付!
それなら +-----------+ |abcdefghijk| +-----------+ |lmnopqrstuv| +-----------+ って機能も欲しいな。
それって、 +-----------+ |abcdefghijk| |lmnopqrstuv| +-----------+ とどう違うの? ↓以下ループ
>>381 emacsとか使ってるなら自動的に折り返してくれるから問題ないが、
w3mとか使うとたまに欲しくなる
…こともある。
つ 札束の力でデュアルモニター
質問 multi display modeで後からattachした画面サイズにscreenの中もなって欲しいんだけど、何か方法ある?
回答 ^A F (fit) 詳細はman screen
C-a :fit
copyモードの /, ? による検索は less/vi のように n, N で検索方向変えられないのは 微妙に使いづらーい N で逆方向に検索したいよ
>>369 プロファイルとってみたけど
わからんかった orz
emacsの縦分割は遅くないので
描画のしかたが悪いんだろうね
>>389 一部分のスクロールのためのエスケープシーケンスがVT100互換端末にないん
じゃないの? 全部書き直してれば遅いよね
>>390 emacsが速く感じるのはjump scrollしてるからじゃね?
bash on screenな環境で、これ以上文字列消せない(BS不可)な状態で BSキー押すと毎回一瞬画面が白くなるのですが、 こうならないようにする方法ありませんか? screenじゃないnative bashでは起こりません。 knoppix linux tty/ttyp(putty) 両方とも同じ現象が起こります。
visual bellだっけ
395 :
392 :2007/03/17(土) 18:36:20
>>393 特に問題ありません。
結局よくならなかったのですが、
KNOPPIX使ってたのはHDをbadblocksするためだけで
その問題なかったHDにGentoo Linux入れて、
そこでのscreenは全く問題ありませんでした。
ということで、とりあえずは解決です。
暇があったら詳しく原因調べてみます。
スレ汚しごめんなさい。
Ctrl + Tabにコマンドを割り当てたくて、 bindkey ^¥011 とかそれっぽいのを、 いろいろ試したんですがダメでした。 おしえてください。
>>396 tab自体がCtrl+I(0x09)だ。
xtermとかの端末レベルで独自のコードを割当てないと無理。
398 :
396 :2007/03/23(金) 15:42:10
>>397 さん
レスどうもです
端末レベルの独自コードを調べる
いい方法があれば教えてください
調べるっつーか勝手に割り当てろ
401 :
396 :2007/03/23(金) 17:46:27
ええと、勝手に割りあてる方法がわかってないです。 MacのTerminal.appを使ってます。 TERM_PROGRAM=Apple_Terminal TERM_PROGRAM_VERSION=133 TERM=xterm-color
複数のユーザで別々のscreenをつかうにはどうしたらいいのでしょうか? $ screen ^A d $ su - foo $ screen とやると Cannot open your terminal '/dev/pts/0' - please check. といわれてしまいます。
>>403 screen -S baka
とかでセッションを分けたらどう?
>>403 su がいけないんじゃないか?これでどうよ
$ screen
^A d
$ su - foo
$ script /dev/null screen
>>405 これで解決です。感謝します
なぜこれで動くのかわかりませんが
407 :
名無しさん@お腹いっぱい。 :2007/04/05(木) 17:11:59
screen上でzshを使っているとC-r(インクリメンタルサーチ)が効かなくなったり C-aやC-eでカーソルを最初や最後に移動ができないんですが これを直すには.screenrcでどういう設定を行えばいいでしょうか?
なにも
もうちょっとシチュエーションがわからないことにはなんとも。 どういうOSで、ssh経由なのかlocalなterminal emu上なのか、 どんな.screenrcなのか、screenを動かす前のstty -aの出力はどうか、とか。
bashで現在実行しているコマンドを取得してタイトルに反映させるにはどのようにすればよいのでしょう、、 PROMPT_COMMAND 'echo -n -e "\033k$(whoami)@$(hostname):$(pwd)\033\134"' を変えればよさそうなんですがシェル変数にもなく、調べたところzshの方法はあったのですがbashでの方法がわかりません、、
screenの中で画面をフルに使うアプリケーション(vi, emacs, nethackなど)を使用し、 終了すると、プロンプトに戻ってきたときに、画面の1番上の行からプロンプト位置まで に以前表示されていた文字がクリアされてしまいます。screenを使わず直接ターミナル 上でこれらのプログラムを起動→終了した場合はこれらの文字は残っています。 これは端末(MacOS X 10.4.9 標準のターミナル.app)によるものでしょうか。screenが やっているのでしょうか。抑止する(クリアしないで文字を残しておく)ことは可能でしょ うか。 TERM=xterm-colorを設定しています。シェルはMacOSXのzsh 4.2.3です。
>>411 screenも一応端末なんだけどね
Terminal.appの環境設定で$(TERM)をvt100とかに変えとけば
.screenrc に altscreen を書いたり消したりすると変わるかもしれない。
む、altscreen onでよさげです。
>>415 .bashrcに
export PROMPT_COMMAND='echo -ne "\ek\e\\"'
.screenrcに
一般ユーザーならshelltitle "$|bash"
rootならshelltitle "#|bash"
でいけました!ありがとうございます。
417 :
名無しさん@お腹いっぱい。 :2007/04/29(日) 12:58:09
複数のコマンドの実行にはあんまり美しくないけど register + process がセオリー?
419 :
名無しさん@お腹いっぱい。 :2007/05/13(日) 14:10:04
eucからutf8に環境移行中なんだけど、 captionとかが日本語文字化け、これなんとかなりません? .screenrcには、defencoding utf-8、encoding utf-8 utf-8って 書いてcaptionとか以外は普通に使えてるんだけど。
421 :
名無しさん@お腹いっぱい。 :2007/05/14(月) 00:38:55
>>420 つーことは、UTF8だと対処法なし??
captionとかに日本語使うなって事でOK??
なんのためのオープンソースだ
test
>>422 世界を征服したいんですが,screenのソースコードを変更してどうにかできませんか?
まずはHello, world!からだな
make world
make: *** ターゲット `world' を make するルールがありません. 中止.
info screenの例だと
echo -n -e "\033k\033\134"'
になってるが上手く行かず、
>>416 だと上手く行った
なんでだ?
' が多いとか?
コピペミスだ 'echo -n -e "\033k\033\134"' コマンドに失敗してたらそうとわかるだろうし、一応非表示文字を書いてるみたいなんだけどなあ
|od だか |hexdump だか |xxd だかして調べてみろよ
失敗例でもscreenはエスケープシーケンスの存在までは理解しているらしい
ただ、bashならtitleを'$|bash:'
シェルの冒頭が
artemis:~/xxx/abc suzukiichiro$
とすると、
window(list)ででてくるのがabcだったんだよ、、、
今は
>>416 で動いてるんだけど
hexdump -Cでどっちも1b 6b 1b 5cだし、なんでこれで挙動に差が出るのかと
defscrollback の値を今は 1024 にしていて、 もしパフォーマンスなどに特に影響無ければもう少し増やそうかなと思ってますが、 どのくらいまでならいけるもんなんでしょうか?
5000でwindowを9つくらい常時開いてるけど、問題になったことはないよ。 というか、そんなの自分で試せばいいじゃない。 それより、copyでさかのぼったり検索するときに、日本語使いたいんだけど なんとかならないものですかねぇ。pasteはできるんだけど。
screen.logを日本語使えるエディタで開いておけば?
間違えてC-a sと押してしまったら、端末停止しちゃったのですが 再開する方法ありませんか?
C-qで直らない?
直りました。感謝してます。
441 :
439 :2007/05/27(日) 06:23:48
>>440 良かった。漏れもはまったことがあるっス。
C-sで停止するので注意ね。ちなみにscreenとは無関係。念のため。
あとレスもらった
>>437 だけど、常にログを取るのはつらい&windowが複数あると、その数
分だけログファイルができるので作業が少し手間がかかる、何より、さっと検索ができない
(1クッションが必要)ので、なかなか難しそうです。
昔は通信速度が遅かったので, 画面に文字がたくさん流れる処理をしている最中に C-sで出力の流れを止めて, しばらくたってから C-qで再開することで通信を圧迫しなかったんだよね 今はほとんど意味がない機能かも
444 :
440 :2007/05/27(日) 13:22:30
そういえば、起動時にメッセージが滝のように流れるとき C-sで止めて確認した記憶があります。
最後のウィンドウを殺しちゃってもscreenはquitしないでほしい これの実現方法、info見ても思いつかなかったよ 間違って最後のシェル抜けちゃって、いちいちscreenと打ち直すのが面倒なんだけどな
>>445 shell を screen にするか、.*shrc で screen を起動すればいいんじゃね?
エイリアス作っとけ。
.*shrcで起動するだけじゃ駄目じゃないか?
やってみたら予想通りのことが起こった こういうループの検知とかしてくれるシェルもあった気がするんだが、zshかな?
環境変数見ればええやん。TERM とか。ループってのは ZSHLVL のことかな?
いや、ずっと前、まさにscreenの初期起動関連の設定でミスしたんだが loop detectedだかなんだかと言われて止めてもらった気がする 詳しい環境は忘れた
$TERMか、、 bashならPROMPT_COMMANDで、screen抜けちゃったときに、自動的に起動し直すように設定できるな なんか汚いし遅そうだが
No other window とか左下に出してる間は、標準入力に書けなくて下のプログラムがブロックしてるっぽいな mplayerで再生中にこれやっちゃうと、再生がプチプチ止まる どっちかっつうとmplayerのせいかな
screen からコマンドを実行したときに、コマンドからのエラーメッセージが 出るときがあります。他のコマンドを実行したときに、古いメッセージが ちらっと見えるのが気になってしょうがないのですが、この領域をクリア する方法はありませんか。
sshで繋げたとたんにscreen起動して欲しいのですが。 CentOS4 + putty + bash + opensshです。
>>455 自分で起動するんじゃだめなん?
ssh -t REMOTE_HOST screen
駄目ならあれだ、ログインシェルを screen にすれ。
その場合、screenにbashを起動するとか指定しないと 無限ループになる気がする
そうさせないための工夫は色々あり得るけど 大したメリットがない割にリスクがある自動化処理は やらないに越したことはない
ssh_screen () { eval server=$1; screen -t "$server[ssh]" ssh "$@" }
>>455 .profile の最後にこんなの書いてみるとか
screen_opt='-x'
if [ $SHLVL -eq 1 -a x$SSH_TTY = x`tty` ] ; then
screen $screen_opt
fi
>>456-460 産休。
色々教えてくれてありがと。
めんどくさそうなのと、どうやら自動的にscreenを起動するのは
一般的でない気がして来たので、毎回screenと打つことにします。
>>461 一般的でなくたって君の好みにあわせていいんだぞ
463 :
459 :2007/06/21(木) 13:29:01
>>461 ごめん勘違い
これでいけるでしょ
[ ${STY} ] || screen -R
前やってたけどぜんぜん難しくないよ。
>>462-464 産休。
明日、環境変数STYを職場で調べてみます。
>>464 「前やってた」ってことは今はやってないってことですよね。
何かしらの不都合があったから、やめてしまったと推測。
そういうのは邪推と言う。
邪神の像を掲げれば道が開かれる
普通に alias sx='screen -x' って書いてるだけだけどなぁ
469 :
ギレン総帥 ◆0QHV7fcZ.2 :2007/07/21(土) 15:31:38
ア・バオア・クーでもwindows使ってたんですか だから負けるんですよ
ジークXeon! blogから来ますた。 て言うか嫁にSPARC Station捨てさせられたんダロ。 そもそもギレン総帥のくせに、Xeonですらなく Geodeのしかもローエンド使わされてるってのが 情け無す。FPUすら無いじゃん。 screenより、3COMのNetBSD用ドライバさっさと 書いてよん。
ウゼェ
なにこれ? スレチ上等の私信?
>377 超遅レスだが社内でこういうterminal自作してた人がいたな... 昔のワープロの画面にこういうのがあったんだよね。
475 :
名無しさん@お腹いっぱい。 :2007/09/03(月) 14:28:08
最近screenを知って、こりゃ便利だと感動していたところですが。 現在通常のシェルで動いているプロセスをデーモン化(端末を閉じても プロセスは生きている)することはできませんか? screen上で動かしているプロセスならデタッチすればいいし $ screen -d -m [コマンド] で、デーモン化した状態でコマンドを実行できるんですけどね・・・ Ctrl+zで一時停止させたあと $ screen -d -m fg としてみましたがfgコマンドが見つからないと言われました (おそらくシェルの内部コマンドだからかと) PIDやttyを指定してそのscreen上で動いていない プロセスをscreenが奪うとかできれば良いんですが。
そのシェルが終了時にシグナルを送らないような設定があれば それを使えばいいんじゃないの。 zsh なら NO_HUP オプションだし、他のシェルにも似たようなのが あるだろう。
端末(tty)自体は移せないんじゃないの?
動かす前ならいいが、動かしちゃってからは俺には方法がわからんな。
disownじゃだめなの? あるいは、csh系なら端末を閉じてもそのまま動き続けたような。
一般的なUNIXシステムのデーモン化ってのは 厳密に言うと端末を切り離す処理も含まれる。 単にバックグランドで動いているプロセスのことをデーモンとは呼ばない バックグランドで動いているプロセスはデーモンではないが nohup指定して呼び出したshellを先に終了させてしまったら 厳密な意味でデーモンとなってしまう。そしたらもうどうしようもない。 端末から切り離されたデーモンを別の端末に割り当てるなんて出来ない。 なにはともあれscreenを起動する習慣をつけとけということだ。
あまり深く考えてなかったけど、端末から「切り離される」「割り当てられる」というのは 具体的にプロセスの何がどうなることなのかな? なんとなくgdbやptraceで止めてしかるべきコールを呼び出すで 切り離せたり、つないだりする方法はないかなと。普通することでは ないにせよ、純粋に技術上の関心として。
>>482 gdbで無理矢理ttyをdupすればできなくもない。
でもemacsとかは無理だ。制御端末あたりの切り替えもがんばればできるのかな。
IyEvdXNyL2xvY2FsL2Jpbi9wZXJsCgpteSAkcGlkID0gc2hpZnQ7Cm15ICRwcGlkID0gZ2V0
cHBpZCgpOwoKY2hvcChteSAkdHR5ID0gYHR0eWApOwp1bmxlc3MgKCR0dHkgPX4gbXwvZGV2
L3wpIHsKCWRpZSAiJHR0eVxuIjsKfQoKbXkgJHByb2NkaXIgPSAiL3Byb2MvJHBpZCI7Cm15
ICRwcm9jZmQwID0gIiRwcm9jZGlyL2ZkLzAiOwpteSAkcHJvY2V4ZSA9ICIkcHJvY2Rpci9l
eGUiOwoKZGllICIkcHJvY2RpcjogJCFcbiIgdW5sZXNzICgtZCAkcHJvY2Rpcik7CmRpZSAi
JHByb2NmZDA6ICQhXG4iIHVubGVzcyAoLWUgJHByb2NmZDApOwpkaWUgIiRwcm9jZXhlOiAk
IVxuIiB1bmxlc3MgKC14ICRwcm9jZXhlKTsKCmNob3AobXkgJHN0dHkgPSBgc3R0eSAtZyAt
ZiAkcHJvY2ZkMGApOwpzeXN0ZW0oInN0dHkgJHN0dHkiKTsKCm15ICR0bXBmaWxlID0gIi90
bXAvdHR5bW92ZS4kPC4kJCI7CgpteSAkc2NyaXB0ID0gPDxfX0VORF9PRl9TQ1JJUFRfXzsK
c2V0IFwkdHR5aW49b3BlbigiJHR0eSIsIDAsIDApCnNldCBcJHR0eW91dD1vcGVuKCIkdHR5
IiwgMSwgMCkKcHJpbnQgZHVwMihcJHR0eWluLDApCnByaW50IGR1cDIoXCR0dHlvdXQsMSkK
cHJpbnQgZHVwMihcJHR0eW91dCwyKQpwcmludCBjbG9zZShcJHR0eWluKQpwcmludCBjbG9z
ZShcJHR0eW91dCkKcHJpbnQgc2lnbmFsKDEsIDEpCmRldGFjaApxdWl0Cl9fRU5EX09GX1ND
UklQVF9fCgpvcGVuKFRNUEZJTEUsIj4kdG1wZmlsZSIpOwpwcmludCBUTVBGSUxFICRzY3Jp
cHQ7CmNsb3NlKFRNUEZJTEUpOwoKc3lzdGVtKCJnZGIgLW4gLWJhdGNoIC14ICR0bXBmaWxl
ICRwcm9jZXhlICRwaWQiKTsKCnVubGluayAkdG1wZmlsZTsKCndoaWxlIChraWxsKDAsJHBp
ZCkpIHsKCXNsZWVwIDE7Cn0K
以下の用語でぐぐれ ・セッション session ・プロセスグループ process-group ・制御端末 controlling-terminal ○あらゆるプロセスグループとプロセスはどれかのセッションに属す ○セッションは制御端末を持たないか、ひとつだけ制御端末をもつ ○セッションは別セッションと同じ制御端末を共有することは出来ない ○あるプロセスを同一セッション下にある別プロセスグループへ移すことは可能 ○あるプロセスを異なるセッションにあるプロセスグループへ移行はできない 新セッションを作る →man setsid セッションに制御端末を割り当てる →man TTY_IOCTL セッションにプロセスを追加する →fork()すると親と同じセッションの下に入る
>>483 emacsとかシェルなどの端末をバリバリ操作するアプリは
標準入出力をdupする程度では誤魔化し効かなそうだな
ちなみにSolaris9以降のnohupは-pオプションでプロセスIDを指定できるので、 動かした後でもnohupをかけられます。
APUE読めってこったな。APUEといえば第2版は翻訳されるのだろうか。
和訳本は妙に高かったり、1冊の本が複数冊に分冊されたりするので 原文で読む方がいいぜ。どうせ和訳といってもカタカナになってるだけだしな。
emacs multi-tty supportは……emacsclientがttyを握ってるから別に普通なのか。
>>488 俺も原文で読むので、487の疑問は自分が読みたいとかいうのとは別よ。
英語に手を出す気にならないという人種もある程度いるわけだから、
そういうのにも読んでもらうには翻訳があった方がいいと思うんさ。
492 :
475 :2007/09/06(木) 22:21:14
いろいろ情報を有り難うございます。 nohup -> 起動時に使わなければならないのでこの場合は不適切 disown -> 端末閉じたらプロセスがkillされました Linuxでお手軽に条件を満たす方法はどうやらなさそうですかね。 この様な状況になりそうな時は素直にscreenで動かすとしますか。
そうではなく常にscreenの上で作業せよ
にしても、UTF-8だとパッチを当てても表示が崩れるなぁ。EUC環境に戻りたくなってくる…
>>494 UTF-8はscreen関係なく崩れるから、未だにEUC環境使ってる
UTF-8のcopy modeで日本語2文字選ぶと6文字copyedってでる
>>495 PuTTYでもUTF-8 TeraTermでもMacのiTermでも崩れる。
>>496 ヲレの環境だとscreen使わなければ崩れない。けど、screenがない環境なんて
考えられないので…
>>498 iTermはEUC-JPでも崩れていた気がする。
$ dialog --yesno 'キタ━━━(ノ゜∀゜)ノ ┫:。・:*:・゜★,。・:*:♪・゜☆━━━!!!!' 10 70
UTF-8環境でこういうのをやると、たいてい崩れるよ。
>>500 ターミナルエミュレータとTERMの値おせーてください。
自分のとこだとカーネルの make menuconfig すら崩れまくりで
ホント悩んでます。Putty(UTF-CJK)+screen+TERM=screen環境では
ダメダメです。
>>500 これdialogの枠がまともに出てないよな
>>501 最近のdialogには罫線にASCII文字を使う--ascii-linesってのがある。
これがデフォでONにするhackをすれば崩れない。
~/.screenrc内で、実行時の環境に応じて実行するコマンドを変えたいのですが、 man pageを見てもそれらしきコマンドがないので困ってます。 何か方法はないでしょうか?
起動時に-cオプションでファイルを指定するか、 起動後にコマンドを放り込むかでどうでしょう。
環境変数 SCREENRC にいろんな.screenrcの名前を設定すればいいんじゃね?
screen 4.00.03でbash 3.1.17を使用しています。 コマンドラインの編集時、 文字数が端末の幅を超えると折り返して表示するように設定しているのですが、 screen使用時は正しく表示されなくなります(同じ行に重なって出力される)。 screenを使わない場合は正しく表示されるので、screenが原因だと思うのですが、 どうすれば正しく表示するようにできるのでしょうか?
Cygwin + screen だとなんか~/.bashrc読み込んでくれねえ .screenに shell -$SHELL の一行を付け加えたら読み込んでくれたのでメモ。
510 :
名無しさん@お腹いっぱい。 :2007/10/10(水) 15:26:19
GNU Screen上でVimのシンッタクスハイライトをオンにしたところ、 白の背景色に対して文字が黄色など、明るい色でハイライトされてしまいます。 set background=light syntax enable Screenなしの状態だとVimがちゃんと背景色を考慮したハイライトを してくれるので、GNU Screenが提供する仮想端末の設定次第でどうにか対処できそう なんですが、どの辺をいじればいいんでしょう?
511 :
510 :2007/10/10(水) 15:28:25
↑ 補足。 WindowsからTeraTermを使ってLinuxにリモートアクセスしてます。
>>510 その2行の順番が逆。
'background'は:syntaxの後に持ってこないと意味ないよ。
513 :
510 :2007/10/10(水) 16:22:03
>>512 > その2行の順番が逆。
あれ? :syntax の前に指定しろってどっかで見たんですけど、、
順番入れ替えてもダメでした。
Screen使ってない状態だとあの2行で問題なかったんで、Screen側の
設定でどうにかなると踏んでるんですが、、、
>>513 screenの内側とそうでない時で$TERMが違う、とか。
おれは.vimrcに colorscheme darkblue と書いている。
漢は黙って systax off
517 :
漢 :2007/10/11(木) 08:18:23
syntax off だった
システム利用税は無料にしてほしい
519 :
510 :2007/10/13(土) 09:47:22
このUbuntuコピペって、素で布教のためにやってんの?
何箇所かに貼られてるからね
524 :
名無しさん@お腹いっぱい。 :2007/10/31(水) 05:27:51
ssh -Xした先のホストでscreen起動して作業してるんですが 最初にscreenを起動した時は問題なくXのアプリケーションが起動できて ローカルのX11サーバにフォワードされてるのに、一度dettachして しばらくしてから(?)reattachしたらCan't open displayのエラーに なってしまいます。DISPLAY環境変数はlocalhost:11.0となってて 起動直後と同じです。sshのXフォワーディングのしくみがよく 分かってないんですが、reattachした後でXのアプリケーションを使うには どうするのが一番いいでしょうか? ちなみにreattachした後、Control-a cで新しく開いたスクリーンでも同じエラーです。 screenコマンドを起動しなおせば再びXが正しく転送されるようになります(つまり起動直後)。
>>524 つながらないとき、DISPLAY環境変数はscreenの外と中で違う値になっている
でしょ
526 :
名無しさん@お腹いっぱい。 :2007/11/01(木) 01:42:36
あーおっしゃる通り、 外はlocalhost:10.0で中はlocalhost:11.0と違う値になってました。 なるほど。。これを手動で設定して合わせないといけないわけですね。
手動じゃなくてもスクリプトで何とかなる。
528 :
524 :2007/11/03(土) 02:31:27
>>527 自動的に親のDISPLAYをとってきてセットすることってできますか?
ちょっと考えてみたけど思いつかなかった。
あらかじめファイルに吐いておいて、必要に応じてそれを読むとか。
複数の端末が存在してる場合を考えると 親の環境を読めない限り自動化は無理なのではないだろうか。
screenでは複数の端末が同時に接続しうるので親の環境とやらの決定もできない。
Xの通信を転送する機能をscreenに持たせればいいんじゃね
X じゃなくて agent の forwading に使ってたんだけど、>529 のようなことをしている。
必要な環境変数をファイル(仮に ~/.sshenv とする)に吐いてから screen を起動するラッパ(仮に screenw)を用意して、
screenrc には以下のようなコマンドを書いておく。
bind s stuff "test -f ~/.sshenv && source ~/.sshenv\015"
で、 ssh example.com screenw でつないだ後、必要に応じて C-a s で環境変数を設定。
シェル起動時に実行されるスクリプトに書いておけばラッパは不要。
ただ、agent に関しては
http://blog.gcd.org/archives/50713097.html の方がスマートそうだけどね。
コピーモードに入るとカーソルが左上にすっ飛んで行くけど これ仕様すか カーソルを移動すると本来あるべき場所にすっ飛んで戻るけど
手元ではそんなことないけどなあとしか言いようがない。
もうちっとkwsk説明すると 1. コピーモードに入るとメッセージの末尾にカーソルが移動する 2. そのまま"Copy mode -..."のメッセージが消えるまで待つ 3. メッセージが消えた瞬間にカーソルが左上にすっ飛ぶ 1が起きない場合はカーソルは飛ばない hardstatus onとhardstatus alwayslastlin...を指定してると起きないかも msgwait 0にしていると1と2は省略される
動作には問題無いし、仕様の範疇だろう。 気になるならすぐ直せるだろ。
一番下の行にカーソルをジャンプさせたきゃ L 一発打てばいいだけの話だし どうでもいいんじゃないすか? HとかMとかも便利よ
どこに書いたらよいか迷ったのですがscreenの問題のようなのでここで質問させてください。 putty+screen+vimという組み合わせで使っています。 vim側で、 set mouse=a set ttymouse=xterm2 という設定を書いて、マウスでドラッグ選択、バー移動、ホイールスクロールなどができています。 また、以下のような設定を書いてターミナルのスクロールバッファを使えるようにしています。 termcapinfo xterm|xterms|xs|rxvt ti@:te@ この状態で、 hardstatus alwayslastline "%w" というような設定で、最下行にステータスを表示するとターミナルのスクロールバッファが効かなくなるようです。 vimではホイールスクロールが効かなくなっていました。ドラッグ選択、バー移動はできているのでマウスそのものが使えていないわけではないようです。 以下のような設定で、タイトルバーにステータスを表示させるとスクロールバッファが効き、vimでホイールスクロールもできました。 termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007 hardstatus lastline "%w" 最下行に表示した方が色分けなどができて便利なのですが、スクロールバッファやホイールスクロールが無効にならない方法はないでしょうか? 長文ですみません。
>>540 レスありがとうございます。
altscreen off 試してみましたが状況変わらずでした。
screenで起動中のscreenに、タイトルで検索して、その端末を前に持ってくる ことはできるんでしょうか? タイトルがemacsという端末を自動的に前に持ってきたいんですけどね。
screen の中の画面の話? or 複数 screen のはなし? 後者なら screen -S emacs で起動しておけば screen -d -r emacs で呼び出せる
>>542 at screen select .
でどうかな。
545 :
542 :2007/11/22(木) 17:48:06
間違えた。screenじゃなくてemacsだ。
546 :
544 :2007/11/22(木) 17:50:02
今度は名前を間違えたよ。545は544ね。
おちけつ
>>543 前者です。
>>544 screen -X select emacs
でいけますね。ありがとうございます。
タコな質問ですみません。
あと一つ質問があります。
screen上でemacsというタイトルがある画面があるかどうかは調べられますか?
無い場合はscreen -X select emacs; echo $?が1を返すとかなら
よかったんですが
どうやらそうでもないようですし。
これはさすがに無理ですかね。
最近使い始めた者です。 screenの中でviなどでファイルを開いた後、そのviを終了させると 元のシェルに戻ったときviで開いていたファイルの一部が 画面上に表示されたまま残ってしまいます。 これを通常のbashのように、シェル側には編集ファイルの内容を 表示しないよう.screenrcに設定することはできないでしょうか? 方法が分かれば教えてくださいorz
Ctrl-l おすすめ
>>550 man読め
altscreen on|off
on にすると仮想端末で「別画面 (alternate screen)」のサポートが有効になる。これは xterm のと同様のものである。初期設定では off になっている。
554 :
550 :2007/11/27(火) 00:49:05
>>552-553 遅レスすみません。
altscreen onで期待した動作になりました。
ありがとうございました。
555 :
名無しさん@お腹いっぱい。 :2008/01/01(火) 20:12:31
あけましておめでとうございます 今年もscreenよろしく
screenが1年何事も動じずに動き続けるといいなあ。去年は3回ぐらい ダメになったかな。
ダメになるってどんな状態よ?
558 :
名無しさん@お腹いっぱい。 :2008/01/07(月) 20:52:07
>>556-557 自分の場合
・screenのあるバッファでいきなりキーボードがきかなくなる。
・そのバッファを殺すと別のバッファも固まる。
・問題の発生したscreenプロセスに-x等でattachできなくなり、
結局プロセスを丸ごと殺さないといけなくなる。
という現象によく遭遇した。
ぐぐり方が下手なのか同様の症状の報告例になかなか行き当たらない…
559 :
558 :2008/01/07(月) 21:27:27
ちなみに当方の環境は OS: Debian 4.0 screen: 4.0.2および4.0.3 です。
560 :
556 :2008/01/07(月) 21:52:38
>>558-559 そうそう、そんな感じ。環境まで一緒(Debian)だなあ。
プロセス名SCREENは生きていて、CPUをほぼ食い尽くしているような感じ。
たぶん変なescape sequenceを受けてどっかで固まっていると思うんだけど。
>>560 固まった時gdbでattachして回復させたことがあるよ
>>560 えぇぇ、CPUをほぼ食い尽くしってのは怖いな
仕事で使うのは自重しといたほうがよいのだろうか
一応RH系しか使わんけど・・・
563 :
556 :2008/01/08(火) 07:38:05
>>561 ども。今度固まったら、gdbかけてみよう。
>>562 365日立ち上げっ放しで死ぬことがある、という程度なので仕事なら
切りのいいところでscreen立ち上げなおしでいいんじゃないですかね。
自分も仕事で使っている分にはあんまり長い時間screen立ち上げっ放し
ということはないなあ。
Devianは大変なんだな。
そういう事、一度だけあった気がする デスクトップ機(Mac OSX)で、立ち上げ数時間〜一日くらいの使い方だけど
Debianの場合、わけのわからんパッチを当てていたりするからなぁ。 OS XはOS自体が多少変態的だし。 Solaris8 (いまだに…) で4.0.3 + このスレに出ていたパッチで運用しているけど、 数ヶ月に一度ホストOSをリブートするとき以外は常にそのterminalで生活していて、 幸い、不具合が起きたことはない。ってことで、頻度はかなり環境依存しそう。
567 :
558 :2008/01/08(火) 16:23:36
うーん、こっちはdebじゃなくソースからコンパイルした場合でも起きたんだよなぁ。 ライブラリとの相性の問題だったらお手上げですが…ほんとにRHとかでの発生例はないのかな? もっかい調べてみたらそれっぽい情報がようやくちらほら…該当するのかどうかは不明。 帰ったらまとめます。
おー、俺以外にもいたのか。
去年1度だけ
>>558 とほぼ同じような状況がfedoraでおきたよ。
大昔からあるバグだろ。
大昔からあるなら誰か直すだろ。
コピペした時とか、かなり大量に先打ちした時に糞詰まりで ウンともスンとも言わなくなり、痺れを切らしてkill/C-akてのが 確かに月に数回くらいあるな。 screen1つならまだ許せるんだけど、SCREENだとダメージが大きくて ちょっとorzとなる。再現条件がわからないし、デバッグビルドを 常時使うほど豆でもないので「また〜っ?」とか思いつつ使い続ける。
Ctrl-a押すつもりがCtrl-s押して停止してしまうってのならあったな。
detach/attach 時にリサイズかかると死にやすい気がする っていうかそういう報告は他にも多々あった気がするけど
emacsでウィンドウを分割している状態でattachすると必ず死ぬ。 on FreeBSD 6.1 with Emacs 21.3.1
>575 使ってます あと screen 中の mutt(メーラ) から エディタで ng 起動しててという 状況がヒット率高い気がするけど死んだあとになってからでは どういう状態だったか確認できないので本当のところはよくわからんです >576 window 分割って C-x 2 みたいな状態? 日常的に navi2ch 開きっ放しなのでかなりの確率でその状態で 使ってるけど問題だと気づいたことはないです いまは FreeBSD 6.2-STABLE #18: Wed Sep 5 10:22:02 JST 2007 で screen-4.0.3 emacs-21.3_10 使ってるけど
screenの下でw3mな端末をたくさん開いてるけど、
attachした時に(SIGWINCHが飛んで?)すげー時間かかることはあるけど、
死にはしないなぁ。
ただなんか別の拍子に
>>558 みたいになって死ぬことはある。
トリガは不明。
579 :
名無しさん@お腹いっぱい。 :2008/01/16(水) 15:20:47
screenの順番(M-n,M-pで移動する順番?)を途中で変更する事は出来ますか?
>>579 numberでウィンドウ番号を替えればおk
screenコマンドをタイプして実行すると、カレントディレクトリでシェルが起動するのに bind ^c screenだとホームディレクトリで起動します。 カレントディレクトリで起動させるにはどうすればいいですか?
>>582 起動中のscreenが、それぞれのウィンドウの実行中プロセスのカレントディレクトリを
取得することができないので、無理。
M-: chdir であらかじめ起動したいディレクトリに移動しとくくらいしかできないな。
584 :
582 :2008/01/18(金) 20:06:39
>>583 説明の仕方が不十分でした
「screenのセッション中でシェルからscreen、もしくはM-: screenとして実行すると、カレントディレクトリで起動する
しかし、bindしてショートカットでscreenコマンドを実行するとホームディレクトリでシェルが起動する」
という意味です。
585 :
582 :2008/01/18(金) 20:23:08
>>583 今意味が分かりました
584は忘れてください。
>>584 M-: screen では実行中シェルのカレントディレクトリからは起動しないだろ?
587 :
名無しさん@お腹いっぱい。 :2008/01/27(日) 23:38:43
ステータスラインに%Dで曜日を表示しようとすると文字化けしませんか? 何かよい解決方法はありませんかね・・・ あと、ステータスライン上に現在のLANG(エンコード) を表示させる方法がお分かりの方がいたら、是非教えていただきたいです。 よろしくおねがいします。
日付けや時刻表示はISO 8601スタイルにしてほしいんだがなあ
Debian で screen 使ってます. TERM=screen LANG=C で使ってますが,aptitude の画面が崩れます. curses とは相性が悪いのでしょうか?
つまり、Unicodeな罫線を半角とみるか全角とみるか、曖昧であるということか。
半角ってなんですか
えっちぃ板
>592 wcwidthが1を返すのが妥当な文字
昔「変換」とか「無変換」をエスケープに割り当てる方法を 紹介してるページがあったような気がするのですがいくら探してみても見つかりません。 どなたか教えていただけませんでしょうか。 bindkey で特定のコマンドを割り当てるのは上手くいくのですが。
xmodmapで適当なキーに割り当てればいいんじゃないの?
EUCだと化けた。
PuTTYのごった煮版ってのをはじめて入れたけど 何も設定変えずに、screen下のbashのパスが タイトルバーに出たりして感動した。
urxvtでマウスを使ってスクロールバックすると、しばらくしてから勝手に最終行に戻ってしまいます ESC+[でコピーモードに移行し、Ctrl+U等を使ってバッファを遡った場合にはこの現象は起きません xtermでは起こらないのでurxvtの問題だと思うんですが、何か対策は無いでしょうか? screen 4.0.3 urxvt 8.3
601 :
599 :2008/03/05(水) 13:57:43
>>600 screen無しだと起きない現象なんで
>>601 > xtermでは起こらないのでurxvtの問題だと思うんですが
urxvtの問題じゃないのか?www
captionの内容が更新されて戻るんだと思う。 urxvt側の設定じゃないかな(ttyに出力があったときにscrollを中断するか)
何もしてないのにcaptionの内容が変わるのか? screen 4.0.3とurxvt 8.9だけど再現しなかった
screen ってどういうところが便利なの? gnome-terminal でタブ使用の俺に分かりやすく説明してクレ。
>>605 一番メリットを感じるのは、リモートからsshとかで使っているときじゃないでしょうかね。
複数のコネクションを張らずにすんだり、コネクションが切れても大丈夫とか。
便利に感じない人間までが無理して使う必要があるものとは思えん。
608 :
名無しさん@お腹いっぱい。 :2008/03/06(木) 01:52:57
>>605 タ ブ を 使 わ な く て い い と こ ろ
突然端末が死んでもなんとかなるところ。
^端末^俺?
俺が死んだらどうにもならん。 それはさておき >604 > 何もしてないのにcaptionの内容が変わるのか? 時刻とか出すと変わるよ。あとcaptionじゃないけど、monitorとか してるとactivityがあった時にttyに出力されるよね。
612 :
名無しさん@お腹いっぱい。 :2008/03/08(土) 18:52:46
複数スクリーンはあんまり恩恵感じない。 やっぱマシン側に端末があるってのがうれしいね。
613 :
名無しさん@お腹いっぱい。 :2008/03/09(日) 16:11:52
スクリーンの起動時に複数ウィンドウを開いてそれぞれをcd する方法を 教えてください。 1: /var/www/root 2: /var/www/app 3: /var/www/action 4: /var/www/view 5: /var/www/template 6: /var/www/log なかんじで、 .screenrcに書いて出来たら最高でーーす。 おながいします。
>>613 chdir /var/www/root
screen foo
chdir /var/www/app
screen bar
てな感じでどうかね。
615 :
613 :2008/03/09(日) 18:47:59
>>614 様 ありがとうございます。
できました。
screen -t root
chdir /var/www/root
screen -t app
chdir /var/www/app
な感じで出来ました。
.screenrcでコマンドが動くんですね。
設定を記述するのかと思っていました。
よくよく考えたら
bindkey とか ^A: bindkey -k F9 〜
とかやるのと同じ記述をscreenrcにも書きますね。
616 :
613 :2008/03/09(日) 19:18:18
と思ったら、最初の chdirしか効いていないみたい。
617 :
613 :2008/03/09(日) 20:01:34
とさらに思ったら、途中から相対パスで書いてたorz すべて絶対パスで書いたらうまく行きますた。
シェルがscreen上で実行されているかどうか知る方法はありますか?
$TERM見るとか?
620 :
618 :2008/03/21(金) 19:56:48
$STY の有無で判断することが多いな
screenの中からxtermのタイトルバーをいじる方法。 ESC P ... ESC \ で囲めばできるけど、俺の環境じゃ日本語が通らない。 printf "\033P\033]2;%s\007\033\134" "title"
Linuxの話で恐縮ですが、putty+screen上でmake menuconfigが 崩れずに表示できてる人っていますか?
TERMとかいじったらなんとかならない?
>>624 screen上なのでTERM=screenになっていました。
TERM=xterm make menuconfig
としてみましたが、表示は変わりませんでした。
>>625 UTF-8です。非screen環境ではUTF-8でも表示は崩れません。
LANG=C make menuconfig
をやってみましたが、変わりませんでした。
>>626 screen -T $TERM
で起動してみる.
>>627 ありがとうございます。
やってみましたが、状況は変わりませんでした。
629 :
627 :2008/03/23(日) 20:28:55
>>628 ていうか PuTTY + Linux で素の screen (TERM は screen になってる) を起動して
make menuconfig してもくずれなかった.
PuTTY: 0.60-jp20070430
Linux: Debian lenny
screen: 4.00.03
630 :
627 :2008/03/23(日) 20:32:39
う,もしかして linux 上で動く putty (or pterm) ?
ありがとうございます。とりあえず、解決しました。 環境は PuTTY 0.60-JP_Y-2007-08-06 on WindowsXP Gentoo Linux(2.6.24のmake menuconfig) Screen version 4.00.03 (FAU) 23-Oct-06 です。で、変換の文字コードが「UTF-8/Auto-Detect Japanese」 になっていたのを「UTF-8」に変えたら崩れなくなりました。 日本語もおkです。 色々教えてくださった方々、ありがとうございました。
screen 実行中に変更した .screenrc 反映する方法わかんね
^a :source ~/.screenrc だったような
~ は使えなかったので $HOME で。
635 :
名無しさん@お腹いっぱい。 :2008/03/30(日) 23:04:44
screenでウィンドウ間のコピーペーストをすると、 途中で途切れるんですけど、コピーする際のサイズとかって どうやって設定するんですか?
>>633-634 トン
screen のコマンドで source ってのがあるわけか
>>635 さかのぼれる行数のことなら defscrollback
> screen のコマンドで source ってのがあるわけか え?
>>637 え?
俺もそうだと思ってるんだけど違うの?
>>637 ,638
へぇ,うちじゃ
$ type source
source is a shell builtin
って出るよ.うちが変わってるのかな.
>>639 > $ type source
> source is a shell builtin
うちもそうでるけど、それが何の関係があるの?
man 見ろよ。アホか。
吹いたwww
screen使っていると一部の文字が突然文字化けするんだが、 これを防ぐにはどうすればよいいのでしょうか?
>>644 文字化けする環境を述べよ
特に文字コードや端末エミュレータについて
screen でも :encoding ほにゃらら ができるというのを知ってからは 文字化けは回避できるようになったよ。
>>645 文字コードは、EUCです。
端末エミュレータはteraterm使っています。
環境変数TERMはvt100-colorです。
501 :名無しさん@お腹いっぱい。:2007/09/24(月) 19:39:31
>>500 ターミナルエミュレータとTERMの値おせーてください。
自分のとこだとカーネルの make menuconfig すら崩れまくりで
ホント悩んでます。Putty(UTF-CJK)+screen+TERM=screen環境では
ダメダメです。
-------
漏れは putty で UTF-8 (non CJK) を指定しています。
いろんな端末から attach してるとき 端末変えるたびに :encoding するのがめんどくさい
ショートカットをアサインしとけば?
xterm を開いたときに screen を実行している状態になっていてほしいと思い、 xterm -e screen としたのだが、xterm がちらっと開いてすぐに終了してしまう どうすればよいのでしょうか
普通にできるよ。 すでに起動してるscreenからやるとそういう風になる。 xterm -e screen -x とかいろいろやりようはあるけど。
shellをscreenにする。
655 :
652 :2008/04/16(水) 10:58:06
>>653 ありがとうございます 確かに screen 上から実行していました
また VNC のスタートアップファイル (~/.vnc/xstartup) から
xterm -e screen を実行しても xterm が開かなかったので気付きませんでした
VNC の場合はなぜ開かないのでしょう?
.xinitrc に書いて startx したときは開くのに。。。
自動screenは>654 みたいなことしそうで怖いので、alias sc=screen してる。 eeの入力がタルい。
Linuxの操作説明でscreenのマルチユーザーモードを使ってみようと思い、 テスト用ユーザーアカウントを作って色々試しています。 私自身のアカウントをhoge、操作を見てもらうユーザーをtest1、test2として 1.私のPCからPuTTYでサーバーにhogeでログイン 2.「screen -S demo」でscreen開始(.screenrcでmultiuser onを指定済み) 3.「C-a : aclchg test1 -wx "#?"」でtest1に見せるだけの権限を設定 4.「C-a : aclgrp test2 test1」でtest2がtest1と同じ権限になるよう設定…したつもり 5.私のPCでPuTTYをもう1つ起動してサーバーにtest1でログイン 6.「screen -S hoge/demo -x」でセッションに接続 7.私のPCでPuTTYをさらに起動してサーバーにtest2でログイン 8.「screen -S hoge/demo -x」でセッションに接続 …という手順をやってみたところ、 test1のPuTTYウィンドウは見るだけの状態になっているものの、 test2のPuTTYウィンドウではls等のコマンド入力ができてしまいます。 ただ、「C-a ?」などとしても「: help: permission denied (user test2)」と出るので -xの制限はかかっているようなのですが…? ユーザー毎の権限確認をする方法もわからないので状況がよくわかりません。 「C-a *」でhoge、test1、test2のリストが表示されますが 右端に表示されるのがすべて「rwx」というのも謎です。 aclgrpを使わずにaclchgで全ユーザーを列挙して設定するしかないのでしょうか…? サーバー側はCentOS 5.0、screen.i386 4.0.3-1.el5で 私のPCはXP Pro(SP2)でPuTTY 0.60 ごった煮版 2007年8月6日版を使っています。
screenをshellにして、そのscreenがscreenを起動して、(ry ってなった人いる?w
659 :
名無しさん@お腹いっぱい。 :2008/04/17(木) 08:09:52
screen でスクロールバックってできるんだっけ?
できるよ。copy mode でカーソル上まで持っててみ。
661 :
名無しさん@お腹いっぱい。 :2008/04/17(木) 09:24:24
.bashrc の最後に screen -ls を入れておくと便利。
俺は下のように書いてるな。 if [ $SHLVL = 1 ]; then screen -dr fi
663 :
名無しさん@お腹いっぱい。 :2008/04/17(木) 09:54:24
>>662 なんかたまにトチ狂って screen のソケットが複数できて
異なる screen がいくつも走ってることがあったので、
念のため screen -ls するようにしてます。
で、手動で screen -dR 。まぁ確かにひと手間多くはなるが。
ところで screen の中から他のホストにつないでその中で
さらに screen って何段にもするとわけわかめ。
こういうことで不具合って出るもん?
>663 不具合っつーほどのものは経験したことがないが、エスケープ何段入れれば いいのかわからなくなるよね... (キーを変えるという手もあるが)
screen上でemacsを使っていますが,TabキーをEmacsが認識してくれません. どうすればemacsがtabキーを拾えるようになりますかね?
666ゲト >665 俺のemacsは認識するよ? control+i とかでもダメ?
>>666 C-i押してもうまくいきません...
ちなみにTabキー自体は取れないんですか?
screenが取っちゃってるとか?
とりあえずemacsでM-x describe-key C-iしてキーコードが渡ってるか調べるべきだな。
> TabキーをEmacsが認識してくれません は具体的にどういうことを言ってるのかが問題な気がする。
670 :
名無しさん@お腹いっぱい。 :2008/04/24(木) 11:10:45
S で上下にスプリットしたのを元に戻したいんだけど、 どうしたらいいんすか?
672 :
名無しさん@お腹いっぱい。 :2008/04/24(木) 13:24:05
only か・・・ そういう記述になってるとわ・・
>>656 ナカーマ。sc() { screen -xRR $@; } してる。
>>658 screenセッション中でリモートサーバに入って、そこでうっかり
また screen して親亀小亀状態になりハマったことならある。
ar as at bc cc ci co cp dc dd df du ed ex hd id ld ln ls lv lz m4 mf mt mv nl nm od pg pr ps sg sq rl rm sh sl su tr uz ul vi wc 手元のマシンの二文字コマンド。
せいぜい /usr/local/bin/sc だろ /usr/binに得体の知れないものをつっこむな
FreeBSDユーザー乙
なんでもかんでも/usr/binにつっこむのは犬糞ぐらいだろ
なんでもかんでも/binに重ねるOSもあるという話が
はじめて/optというのを見たときにはまったく何だかわからなかったものだ
gentoo使ってるけど、おれのイメージだと/optは3rd partyとかベンダー用かな $ cd /opt; ls Adobe/ RealPlayer/ opera/ sun-jdk-1.6.0.05/ screen とは全く関係ないんでもうここら辺で
screen で開いてるウィンドウリストを vim のタブのように 1行削ってでも常に表示しておきたいんですが、どうしたらいいですか?
理解してないけど、どっかからパクってきた設定 caption always '%{= wk} %-w%{=bu dc}%n %t%{-}%+w %= %{=b wb}%y/%m/%d(%D) %{=b wb}%c'
>>684 に便乗で。
caption でウィンドウリストを表示させてるんだけど、
一番下の行にあると、プロンプトのすぐそばで目障りなんで
caption の表示位置を画面上部に変えたいんだけど、そういうのって可能?
俺は一番下に常時表示してるけど プロンプトの最後に改行いれてるので 目障りじゃない
>>685 上下分割して上の画面を1行に設定。
そこに、screenのcaptionを擬して表示するスクリプトを動かしとけばOK.
かな
これってemacsみたいに横分割は出来ないんですか?
>>685 画面最下行の一行を取られるのは頭にくるので、
ウィンドウの枠に表示させてる。
常時表示は不要なので、見るときはprefix wで。
一瞬windowの枠ってなんだ‥‥‥と考えてしまったratpoison歴3年目の春
mutt と screen って相性悪いんだろうか。 メールの一覧をスクロールさせてると表示が崩れる。 $TERM を xterm や vt100 に変更してみても変わらない。
UTF-8で使用してるなら勘だけで答えると、曖昧な文字の幅のせい
少なくとも EUC 環境で使っている分には mutt + screen に問題を感じたことはないなぁ… mutt の表示をマウスでコピペすると 後ろに画面幅分のスペースがダダダとついちゃうのは screen に限った話じゃないし…
>>695 ターミナルエミュレータは? あと、screenになんらかのパッチは当たっている?
ちなみにPuTTYで文字コード UTF-8で、screenにscreen-4.0.2-patch-cjkwidth-cvs-2006052001が
当たっている場合だと無問題。この場合、PuTTYで文字コードUTF-8 (CJK) では問題が出る。
>>695 ~/.screenrcに
defencoding eucJP
とか書いてる?
>>697 ちなみにUTF-8パッチはバージョンナンバーには現れない。
んまぁ九分九厘パッチは当たっていないのかな。それならEUCのほうが
表示は崩れないだろうね。
>>698 んで、
UTF-8の場合は
defutf8 on
utf8 on
defencoding utf-8
encoding utf-8 utf-8
ってな感じ。
cjkwidth off がいるかも。
cjkwidth のパッチもなんか微妙だよな。 Emacs の utf-8 の文字幅と一部違う所あるし。
それはEmacsの方がおかしい
utf8だと何やってもキャプション部分の日本語が化けるよね
>>702 例えば japanese-jisx0208 のギリシャ文字と greek-iso8859-7 のギリシャ文字があるとする。
emacs はそれぞれの文字幅が違うことを認識してくれるんだけど、screen は cjkwidth の
ON/OFF でしか切り替わらないから、多言語環境だとどうしてもずれるんだよね。
まぁemacsの方でどちらも同じ幅だと指定すればあまり綺麗ではないけど解決できるが。
mule-unicode-0100-24ff の範囲の文字幅が screen と違うのは mule-ucs が悪いな。
TERMがscreenにならない環境なのですが、screenを実行中なのを しることはできませんか。
自己解決しました。 $STYを見ればいいのですね。
ファイラーで関連付けしたtext等を起動しているscreenで開きたいのですが、 良い方法ないでしょうか? 新規に開いて、stuffで流しこめばと考えたのですが、 ファイルにスペースやシングルクォートがあると失敗してしまいます。 #!bin/sh screen -X eval "stuff $1" "stuff $2" 'stuff "^M"' stuffコマンドだとクォートの付けかたが判り辛くて、、 他の方法でも結構ですので御教授ください。
ファイル名をクォートした形式で一時ファイルに書き出して screen -X eval 'stuff $1' 'stuff `/bin/cat tmpfilename`' 'stuff "^M"' ってやってみたらどうですか? または実行したいコマンドラインそのものを一時ファイルに書き出す
>>708 あっ、なるほど。
/tmpあたりに実行シェル作ってそのパスを、
stuffで流し込んだ方が手っ取り早いですね。
クォートばかりに目がいって、気づかなかった。ありがとうございます。
710 :
名無しさん@お腹いっぱい。 :2008/08/10(日) 01:42:33
すごくわかりにくい説明かもしれないですが x sever(xmingを使ってます)でlinuxのシステムに接続してscreenを起動します そしてそのscreenからfirefoxやemacs(-nwつけてない)をXで起動します 接続を切断します 再びつないで、さっきのscreenにつなぐとfirefoxとかemacs の プロセスは残ってるんですが、コレってまたXで表示させられます? firefoxとか打ち込んでみたりfg %1とかしても表示されません
間に仮装Xサーバみたいなの挟めばできたと思う。 要はXのscreenみたいなやつ。 いくつかあったが名前は忘れた。
あとxmoveでvncサーバあたり経由させて移動する方法もある。
Xってセッションを移動させる設計になってないからね。 app側で対応するか、全部仮想化するかになるよね。
ありがとうございます なんとかする方法はなくもないが、基本無理ということですね
デタッチした時の状況を ハイバネーションみたいなかんじで、 ファイルに書き出しておいて、 アタッチするときに読み込んで復元、 みたいな機能はないんですよね? 学校みたいな共用マシンだと nohup では困るんですよね。 NFS でどのホストでも同じファイル使えるようになっていたりするから、 上記のような仕組みだと history の上級版みたいなかんじで便利なんですが。
>>715 screenでは無理です
技術的に解説すると、screenはttyの仮想化をしているだけで
仮想機械を実装しているわけではないので望むようなことはできません
つーか、screenのプロセスをいつも同じマシンに置くことに決めて
目の前のマシンからその常駐マシンにsshすれば済む話ではないのですか?
それとも共用マシン間のリモートログインが禁止されているとか?
>>716 やはり無理ですか。結局デタッチが使えないなぁ。
>つーか、screenのプロセスをいつも同じマシンに置くことに決めて
そのホストを誰かが使うかもしれないので、
迷惑行為になってしまうです。
ではでは
そこまでするならOpenVZでも入れてもらって環境ごとマイグレートした方が早そうだ。
>>715 ファイルに書き出すってことは、セッションを維持する必要はないんだよね。
make中にデタッチしたいとかの。
なら、zshのsharehistoryあたりと.screenrcからscreenを呼ぶのでそこそこ
満足できるんじゃねーの。
なにが迷惑行為なのか、わかってないのは俺だけ?
共有マシンで100人が100個screenとemacs立ち上げっぱなしにすること
大学なんかだと情報系でもscreen使ってるような奴は少数派。 人気の低そうなマシンを選んでおけばいい
今は情報系でもほとんどWindowsだからねぇ。
うちの大学はLinuxだったがscreen入ってなかったなぁ。 勝手に~/に入れたけど。
$HOMEにある.screenrc? いいのいいの 気にしないでいいのなんなら消してもいいよ この先も使わないだろうから なんつーか過去の遺産みたいもんだ って5年前に教えられました
そのとき起動した screen の プロセス がまだ生きていて そこから書き込んでいます、とかだったら誉めてやる
大学だと年1回は停電があるからな
もしもし screen 使うとターミナルのスクロールが使えなくなったりするのはふつうなんでしょうか? なにか設定がいるのでしょうか?
>>730 画面の書き換えしているアプリでスクロールバーがまともに効かなくなるというのは
理解できる?
screenはまさに画面の書き換えをしているアプリなわけで。
>>730 termcapinfo * ti@:te@
>>730 ターミナルのスクロールバーは使うな。
C-a[ で後はhjkl/^B^F^N^Pで好きなだけカーソル移動してスクロールできる。
^Vでスクロールモード(コピーモード)解除。/?^S^Rでバッファ内検索もできる。
好きなだけは逆スクロールできない デフォルトだと100行まで 起動時の -h オプションでスクロールバック行数を指定するか .screenrcやC-a :で defscrollback や scrollbackで行数指定すれば 遡れる行数を増やすことは可能
735 :
名無しさん@お腹いっぱい。 :2008/09/08(月) 17:21:56
screen のバッファの行数ってどこで指定するの? たまにだけど激しくさかのぼってビルド過程を みたいことがあって,一億行くらいさかのぼりたい.
がーん,専ブラのリロード忘れてた orz
マウスホイールで上下したいと思うことがある
739 :
名無しさん@お腹いっぱい。 :2008/09/18(木) 21:17:45
ねらーなんじゃね
741 :
名無しさん@お腹いっぱい。 :2008/09/20(土) 00:03:19
screen の中にscreen を開いたとき中のscreenを閉じることってできますか?
はい
>>741 エスケープ文字を2回うてばいいことに気がつけばなんてことはない
例) ^A^A^Dで内側のscreenをデタッチ
744 :
741 :2008/09/20(土) 09:45:04
lastline に、そのスクリーンが今居るhostname を表示するなんぞできますか? 現在は.screenrc で hardstatus alwayslastline "%w" となっており、↓の様にlastline に表示されるだけです。 0 bash 1 bash 2 bash 3* bash
screenを実行しているホストなら%Hを入れるだけだよな? だったらマニュアル嫁といいたいところだが リモートログインしてる状態であればリモートホスト名を表示とか? もしそうだとするとmessageやshell titleを PROMPT_COMMANDなどで指定する方法が使えるよ 設定方法はこのスレを探せば載ってる
>>746 後者です。一つの中央サーバでscreen 立ち上げて、そこからフラットツリー的に何十のホストにssh するので、
下にホストネームが出てくれるとむちゃくちゃ便利です。
このスレ探しましたが載ってませんでした
ヒントを元にスレの情報とマニュアルページを調べたら わかると思ったんだけど考える気がないようだな bashでPROMPT_COMMANDとメッセージを使った回答例あげとくけど 自分でも考えろよ hardstatus alwayslastline " %n: %h" としておいて PROMPT_COMMAND='echo -en "\e]0;$HOSTNAME\a"' でステータス行にウィンドウ番号とホスト名が表示される 自分ではPS1="\e]0;\\u@\\h:$PWD\a\\u@\\h\\$ "とかやってるわ
僕は単純に <~/bin/scssh> #!/bin/sh screen -t $1 ssh $1 ぐらいで済ませてる。これぐらいでも9割は用は足りるんだけどね。
過去に出てたものをパクってるんですが 最下行に loginname@host:dir とかを表示するのはできてるけど xterm/kterm のタイトルに同様に表示させるってのが どうやるのか良くわからないです… # hardstatus をタイトルバー/アイコンに表示 termcapinfo xterm 'hs:ts=\E]0;:fs=\007:ds=\E]0;screen\007' termcapinfo kterm 'hs:ts=\E]0;:fs=\007:ds=\E]0;screen\007' caption always "\033[37;46m%3n %t%? @%u%?%? \033[37;40m%h%?"
俺はアナログで ^AA でタイトル変更してる
753 :
名無しさん@お腹いっぱい。 :2008/10/16(木) 01:34:18
どうも。最近screenを使い始めたのですが、.screenrcを置いてsource .screenrcを実行してもcommand not foundとなります。 .screenrc:1: command not found: escape .screenrc:2: command not found: hardstatus .screenrc:3: command not found: bind .screenrc:4: command not found: defscrollback .screenrc:5: parse error near `}' screenrcの中身はネットで公開されているものをコピペしました。 こんな感じです↓ escape ^t^t hardstatus off bind w windowlist -b defscrollback 10000 caption always ??%{b RK} %y/%m/%d(%D)%c:%s %{bu dr} | %-w%{=bu CK}%n %t%{-}%+w?? bindkey -k k1 select 0 bindkey -k k2 select 1 bindkey -k k3 select 2 bindkey -k k4 select 3 bindkey -k k5 select 4 bindkey -k k6 select 5 bindkey -k k7 select 6 bindkey -k k8 select 7 bindkey -k k9 select 8 bindkey -k k; select 9 bind 2 split bind o focus bind 1 only bind 0 remove 根本的になにか間違っていますでしょうか? よろしくお願いします。
>source .screenrcを実行しても これがおかしい.
755 :
名無しさん@お腹いっぱい。 :2008/10/16(木) 02:01:19
そうなんですか。 設定ファイル系は変更したらsource〜だと思いこんでました。 CUI使い始めたばかりなものですみません。 とりあえずは問題ないということでよいのでしょうか?
756 :
753 :2008/10/16(木) 02:03:47
文字化けしてました…。 解決しました。ありがとうございました。
Windowsで設定を変えたら再起動するものと思いこむのに似てるな。 アプリの設定変えただけでも再起動しなくっちゃみたいな。
はじめは確かによくわかんないよね。 おれもdosからunixに移った時は shellと端末が別という意味が よくわからなかった。
>>757 UNIXでも「ウェブサーバを再起動して・・・」と言ったら
# reboot
とか堂々と打ち込んだ奴がいてびびった(w
>>759 > UNIXでも「ウェブサーバを再起動して・・・」と言ったら
それは言い方が悪いよ。
相手は「ウェブサーバ」というマシンを再起動しろ、ってとらえたんじゃないの?
間違えないように「httpdを再起動して」とか「Apacheを再起動して」とか
言った方がいいよ。
762 :
名無しさん@お腹いっぱい。 :2008/11/01(土) 17:46:45
ageてみます。
Fedoraスレで聞いた方がいいんじゃね?
>>763 そうかもしれません。これはかなり汎用的な話ですし。
>>764 ありがとうございます!
そのパッチを
>>761 のパッチのあとに適用したところ、どうやらmake installで
きたようです。
表示の崩れが完全に直るわけではないようですが、だいぶ改善されました。う
れしいです。
ところでこういうパッチはどうやって探せばよいのでしょうか?今後は独力で
見つけられるようになりたいです。
googleっていう検索サイト(割と有名かも?)があるんだけど、それを使って
screen stroptsというキーワードで検索をすると関連したページが見つかりますよ!
肝心のgoogleというのはここです。よかったらブックマークしてね^^
http://www.google.com/
>>766 ありがとうございます。ブックマークしました。
懼冗談はさておき、本当にそれだけでパッチが見つかりますね懼。いろんなキー
ワードで散々探していたのに、どうして見つからなかったんだろう。申し訳あ
りません。
ちなみに、表示の崩れが完全には直らないと書きましたが、これはscreenでは
なくemacs-w3mのせいだったようです。まだちょっと使っただけですが、
screenが原因だと特定できる崩れには遭遇していません。こちらもすみません。
あれ?文字化けしてしまいました。 「懼」「・・・」(三点リーダ)は使えないみたいです。 何度もすみません。これで失礼します。
copy 時、自動でペーストバッファを x-selection に写したいのですが、 方法をご存じの方、いらっしゃいましたら教えて下さい。 以下でできるかと思ったのですが、これだと copy 開始時に writebuf, exec と 続いてしまうようです。 ちなみに、~/.screen_exchange は画面交換ファイルです。 bind [ eval copy writebuf 'exec sh -c "xsel < ~/.screen_exchange"' 今は妥協してこうしています。 copy 後に ^S 。 bind ^S eval writebuf 'exec sh -c "xsel < ~/.screen_exchange"'
そういえば、今は TERM に screen-256color なんてあるんですね。 前からあったかな。
774 :
名無しさん@お腹いっぱい。 :2008/11/08(土) 18:58:34
現在開いているスクリーンのウィンドウからデタッチされてる ものを再アタッチするにはどうすればいいですか?
screen -rではないんだろうけど 何をしたいのか俺にはよくわからん
…
今開いてるscreenのセッションをデタッチして違うscreenをアタッチするつーことか?
♪おねがい デタッチ アタッチ ここにリアッタッチ
779 :
名無しさん@お腹いっぱい。 :2008/11/11(火) 05:09:35
今開いてるScreenのセッションをデタッチせずに デタッチされてる別のセッションをアタッチして そこに切替えるには? screen -S 1 ^a d screen -S 2 この状態(セッション2)にからセッション1へそのまま切替え
780 :
名無しさん@お腹いっぱい。 :2008/11/11(火) 05:10:29
ちなみに切替えたいのはウィンドウじゃないです 言葉間違えましたセッションです。
まずエセ日本語モジュールをデタッチして 正しい日本語ライブラリをアタッチするんだ 話はそれからだ'
782 :
名無しさん@お腹いっぱい。 :2008/11/11(火) 08:56:29
ふ ざ け ん な !
>779 本音: デタッチすればすぐなのに、なんでそんな変なことするの? 死ぬの? もとい: ターミナル2コ上げて切り替えた方が早くね?
>>783 779じゃないけど、死ぬの。
死ぬほどwindow開く人だとwindowだけじゃ管理しきれなくなって複数sessionを使い出すんだよ。
detach&&attachしてるけど、めんどくさいっちゃめんどくさいんで、sessionをwindowの
groupみたいなイメージで透過的に扱えたら夢がひろがりんぐ。
暇があったらパッチ作ってみる。
そういえば,複数セッション使いたくて multi-gnome-terminalのタブ+screen使ってる人が居るな...
突然のマシンのフリーズ&再起動にそなえて、ウィンドウ情報を保存することはできないのかな。
君のいうウィンドウ情報って何さ
screenのGUI版みたいなもんだろ、とエスパー。
セッションの数、タイトル名、ヒストリとか、再起動してももとの状態に復元したい。
複数のscreenrc作って使い分けれ
screen で backspace キーが効かなくなるんですが解決法教えてください。
あきらめる
>> 791 BSが効かない状況で % stty --all した出力をここに貼れば解決策が出てくるかも
csh バロスw
cshのデフォルトプロンプトは > の筈だが?
は?
すみません、CentOS 5 や Fedora 9で、screenの256色化に失敗してしまうので
すが、どなたか対処法を教えていただけませんか?
screen install memo (UNIX)
http://www.dekaino.net/screen/01install.html このページから tarballと patchを入手し、
このページなどを参考に
■ [softs] 暇だからPuTTYを256色にしてみる
http://mono.kmc.gr.jp/~yhara/d/?date=20061108 ./configure --enable-colors256
make
sudo make install
を実行しました。
PuTTY自体には問題が無いようで、screenが起動していないと
perl 256colors2.pl で、きれいなグラデーションが表示されます。
しかし、screenを起動すると、失敗したほうの色しか表示されません。
.screenrcも記述どおり書き換えたのですが。
以上です。どうかよろしくお願いします。
csh系使ってるやつって生きてて恥ずかしくないの?
シーラカンスやカブトガニが生きてて恥ずかしいと思ってるとでも?
/bin/sh以外恥ずかしいだろ。 なんだよbashとかzshってww /bin/shがbashのlinkとかpgr
男は黙ってcommand.com
>>793 こんなんなってます。
$ stty --all
speed 9600 baud; rows 29; columns 100; line = 0;
intr = ^C; quit = ^¥; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O;
min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc ixany imaxbel
-iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe -echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke
>>797 screen の中だと環境変数 TERM が「screen」になってない??
って俺がハマった事あるんだけど
今は
alias screen="screen -T xterm-256color"
ってやってる
>>804 > screen の中だと環境変数 TERM が「screen」になってない??
確かにこれはそうなっています。しかし、
> screen -T xterm-256color
試してみましたが、これを指定しても、256colors2.pl は美しいグラデーションを表示してくれませんでした。screen内では、
echo $TERM => xterm-256color となっているのですが。残念です。
ちなみにこのモードでは、Emacsは自身を256色で起動します。すると、 M-x list-colors-display で256個の配色の表が表示されます。 しかし実際は16色しかありません。配色の大半は色が重なっています。 そのため、Emacsの表示はかなり見づらいものになってしまいます。
さらに補足ですが、screenなしで、.bashrc で export TERM=xterm-256color と指定した状態だと、Emacsは美しい256色モードで表示されます。
俺はCentOS5だが、screenが比較的新しい奴が入ってたので、 .screenrcに # terminfo and termcap for nice 256 color terminal # allow bold colors - necessary for some reason attrcolor b ".I" # tell screen how to set colors. AB = background, AF=foreground termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' # erase background with current bg color defbce "on" って書くだけで256表示できた
>>808 ありがとうございます。前述の状態で、教えていただいた設定を.screenrc に
加えるだけで、うまく行きました!
意味がよくわからないので、もっと勉強します。
termcap/infoはふだん意識しないからとっつきにくいよな 自分もかなりハマったよ とりあえず、man terminfoとかman infocmpあたりを読んでみるといいかも
811 :
名無しさん@お腹いっぱい。 :2008/11/23(日) 22:51:49
大日本スクリーンが大幅に下がって orz 自社株買いとかやらないんだろうか?
一回株式市場からC-a dします。
Suddenly the Stockmarket Collapses!! - You die...
utf8 な環境でキャプションの日本語が文字化けする件は、未解決だっけ?
はぁ?
utf8 な環境でキャプションの日本語が文字化けするんだよ。 日本語わかる?
817 :
:2008/11/26(水) 07:59:02
ハァ?
だからutf8 な環境でキャプションの日本語が文字化けするんだよ。
819 :
814 :2008/11/28(金) 12:56:50
>>814 screen のBTSでの議論を読んでみた。たぶん
https://savannah.gnu.org/bugs/?18505 と同じバグだと思うが、中の人はこう言ってる。
「これは構造的な問題で、かなりリスキーな変更を加える必要がある。なので 4.1.0 をリリースするまでは
たぶん手をつけるつもりはない。(なので4.1.0が出ても、non-ASCII文字の扱いは今まで通り壊れたまんまだ)」
はあ。
820 :
:2008/11/28(金) 13:06:59
キャプションってどこの事を言ってんの? ていうかすがすがしい自演だな
自演じゃなく自己レスでしょ。
>キャプションってどこの事を言ってんの? man screen ぐらいしてみたら?
自演?
824 :
名無しさん@お腹いっぱい。 :2008/11/28(金) 13:38:34
splitした時にでるバーじゃね?
caption always|splitonly [string] caption string [string] This command controls the display of the window captions. Normally a caption is only used if more than one window is shown on the display (split screen mode). But if the type is set to always screen shows a caption even if only one window is displayed. The default is spli- tonly.
826 :
814 :2008/11/28(金) 13:58:17
自分の環境で本当に化けているのは caption ではなくて hardstatus なんだけど、
>>419 とか
>>703 とかがあるから、このスレではキャプションの方が通りが良いかと
思ったんよ。
他に UTF-8 では EastAsianWidth.txt の Ambiguous 問題があるけど、これは俺は screen
へのパッチではなく locale データの方を修正している。アプリごとにパッチを当てるのは
面倒なんで。
>>826 > locale データの方を修正している。
スレ違いだけど、このやり方を教えていただけませんか?
> アプリごとにパッチを当てるのは 面倒なんで。
つくづく同意です。まあscreen上で動かせばたいていは問題ないのですが。
>>827 http://vdr.jp/d/20070322.html を参考にしました。
(1) 上記URLにある UTF-8-EAW-FULLWIDTH.gz は Unicode 3.2 のものなので、
最近の Unicode 5.0.0 の UTF-8.gz を用いて同様のものを作る。本当なら
最近の EastAsianWidth.txt を見ながら作る必要があるが、メンドウなので
上記URLのUTF-8-EAW-FULLWIDTH.gz にある「決め打ち」部分を単に最近の
UTF-8.gz にブチ込んだだけでゴマ化している。
(2) ウチは fedora系のMomongaなので、localeの修正方法は上記URLとは異なる。
UTF-8-EAW-FULLWIDTH.gz を /usr/share/i18n/charmaps/ 下に置き、
sudo localedef -f UTF-8-EAW-FULLWIDTH -i ja_JP ja_JP.UTF-8
とすれば/usr/lib/locale/locale-archive が書き換えられる。元に戻したければ
sudo localedef -f UTF-8 -i ja_JP ja_JP.UTF-8
とすればよい。
なお、これだとシステムファイルが書き換えられてしまいますが、個人ユーザー用の
やり方があるかも知れません。誰か知ってたらオシエテ。
829 :
名無しさん@お腹いっぱい。 :2008/11/28(金) 15:05:03
俺はてっきりウィンドウマネージャのタイトルバーかと
ハァ?
最近は自己レスのことを自演というようになったの?
>831 もうその話は終わった。
>>828 ありがとうございます。今度、試してみます。
screen大変便利に使わせていただいてます。 Windowを10個開いて作業することもめずらしくないのですが、 私の環境ですと5つほどしかタイトルが表示されません。 Windows XPとUTF-8 TeraTerm Pro with TTSSH2ですが、端末を目一杯広げても状況は変わりません。 これは端末のせいでしょうか。何か設定項目を変更すると解決するのでしょうか。
とりあえず、C-a " すれば?
836 :
名無しさん@お腹いっぱい。 :2008/11/28(金) 17:38:15
タイトルってどこに表示されんの?
>>835 なんと…!
いままでC-a wしか知りませんでした。感謝。
それと最後にひとつ…
>>735-737 の流れと同じことを疑問に思っていたのですが、manしてみたら
C-a H (log) 現在のウィンドウのファイル "screenlog.n" へのログ出力を開始/終了する。
とあります。
737氏がC-aHとすると10億行でもさかのぼれると仰っているのは、ファイルに書き出すからでしょうか?
バッファだとあふれちゃう?ちょっとその辺が興味あるので教えてくださいませんか。
838 :
:2008/11/28(金) 20:28:30
mltermでC-a C-dすると固まる 他の端末エミュでは試してない
>>838 ウチの mlterm は固まりません。
日頃の行ないが悪いのではないでしょうか。
840 :
名無しさん@お腹いっぱい。 :2008/11/28(金) 21:43:26
>>837 defscrollbackを10億に設定したことはないや、試してみてよ
scrollbackに10億指定してみたら0にされた。 scrollback 25165824で既にメモリ使用量2.5GB。32ビット環境だと1億も無理だな USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND user 3537 59.3 61.6 2560128 2557444 ? Ss 21:40 1:25 SCREEN
10億ならメモリーが 100GBくらい必要なのか。ウチのNotePCのSSDの容量の3倍以上だ。
843 :
名無しさん@お腹いっぱい。 :2008/12/16(火) 16:38:47
Unixの「ないと氏ねるソフト」 第一位 SSH 第二位 GNU Screen 三位以下は任せた。
スレ違い。
>>843 1. /sbin/init
2. /bin/sh
1. libc.so
人間の「ないと氏ねる臓器」 第一位 脳 第二位 心臓 三位以下は任せた。
殿堂入り ld.so
static linkならいらんだろ
雑談はよそでやれ。
ないとしぬる言語 1 java 2 ruby 3 tcl
それ、要らない言語ランキング?
uni6xなら sh cc perl5 か?
855 :
名無しさん@お腹いっぱい。 :2008/12/23(火) 14:49:28
TeraTermでScreen使ってる時にCtrl+矢印でウィンドウを 切り替えられるようにするにはどうしたらいいの?
857 :
名無しさん@お腹いっぱい。 :2008/12/23(火) 23:23:47
>>856 ありがとうございます。できるようになりました。
emacs(screen外)やfirefox にペーストバッファの内容をyankしたいとき、 1 コピーモードでキーワードを検索、ペーストバッファに入れる 2 "]"でscreenの標準出力に書き出す 3 マウスでキーワードを選択 -> コピー 4 firefoxに移動 -> C-y という手順を行っています。 現状よりスマートな方法がある気がしてなりません。 マウス使いたくないー
860 :
858 :2008/12/31(水) 02:18:02
>>859 おかげさまでクリップボードの仕組みを勉強できました。
長年の謎だった
Ctrl+yとShift+Insertで貼り付けられる内容が違う
理由がわかってスッキリです。
ありがとうございました。
emacs は独自の kill-ring を持ってて クリップボードとか関係ないんじゃ
>>861 ところがウィンドウ環境だと裏でこっそり相互コピーしたりしてるのか
動作がまた微妙に違って。rdesktop+xrdpとかと組み合わせるとさらに
それらの扱い方も組み合わさって、
いまカットした文字列はどこのバッファに入っているのだろう???
と迷子になれること請け合い。
863 :
名無しさん@お腹いっぱい。 :2008/12/31(水) 21:52:38
>>861 > クリップボードとか関係ないんじゃ
同期できるじゃないか
裏もなにも、ソースコードに書いてある
Altキーの仕様がわからず困っています。 bash - Alt+dでワード削除しようとすると、デタッチになる。 emacs - M-xが打てない。 そういうものなんでしょうか?
>>865 そこらへんは端末エミュレータの仕様に依存する
どんな端末エミュレータを使っているのかな?
867 :
865 :2009/01/01(木) 22:19:47
エスケープキーをCtrl-[ に設定していたのが原因でした。 失礼しました。
868 :
名無しさん@お腹いっぱい。 :2009/01/02(金) 09:54:44
開いているウィンドウ番号のリストを画面下部に常に表示させておくことができると思うんですが、どう設定すればよいのでしょう?? どこかで見たのですが忘れてしまいました。
>>868 hardstatus alwayslastline "%w"
870 :
名無しさん@お腹いっぱい。 :2009/01/02(金) 11:26:58
escape キーを ^a から ファンクションキーにできるのでしょうか? F1をしようと思って、escape ^[11~ としてみましたが、うまくいかないです。 端末はPuTTY 0.60-jp20070603 使ってます。
エスケープキーではなくてエスケープキャラだから複数バイトの指定は無理 PuTTYの設定の方でF1の割当出力文字列を^Aにすればいいんじゃないか? …と思ったら標準のPuttyはファンクションキーに任意の文字列の割当できない みたいだな。Puttyかscreenのどちらか/両方のソースを書き換えるしかなさそうだ。
>>872 おぉ、ソース読める方ですか。質問なのですが、こんな感じで
hardstatus alwayslastline "%0= %=%n %t" (ウインドウ番号とタイトルを常に右下に)
ステータスラインを右寄せにしてるんだけど 、
xtermなどのウインドウの横幅を広くしていくと、
ある点でステータス表示がそれ以上右に寄らなくなるんです (1500pxくらい)。
(フルスクリーンTerminalで使っているので、これが微妙に気持ちが悪くて…)
どうも設定だけでは直しようが無さそうなのですが、ソースで
この挙動について (理由があって制限されてるとか) 何か分かりませんでしょうか?
>873 >872 じゃないけど。 多分単純にバッファサイズの 256 文字で制限されてる。 screen.h の MAXSTR の定義を増やしたらうまくいくかも。何か副作用があるかもしれないが。
>>874 はぁぁぁぁ…( ゜Д゜) なるほど…
早速試して上手く行きました。画面右端になりました。本当にありがとう!!
副作用は…今のところ問題ないようです。
876 :
名無しさん@お腹いっぱい。 :2009/01/06(火) 23:17:53
やっと200回復してきた。
escape Sで画面を分割後、下の領域をescape Xで削除するたびに、 なぜか最下部の画面一覧が1行分上がって表示領域を圧迫してしまいます。 上の領域を削除した場合はこの減少は起きません。 どうしてこのような現象が起きるのか、何かご存知でしょうか?
>>879 手元では再現できないのでなんとも…
escape Zで画面をリセットしたり、デタッチ→再アタッチした後はどうですか?
あれ、今度はescape Sで分割時に画面一覧が動くようになった・・・
>>880 ありがとうございます。
escape Zでは直りませんでしたが、デタッチ→再アタッチを行うと直りました。
ただ画面を分割した状態でデタッチ→再アタッチすると、分割状態が
解除されてしまうので、結局また分割や画面削除の際に同じ現象が起きてしまいます。
screenを起動したら自動的にlogコマンドを実行させたいんですが、 .screenrcに「log」と記述しても動きません。 キーバインドを設定せずに直接コマンドを実行するにはどうしたらいいですか?
>>883 試してみましたが、ダメなようです。
分割したそれぞれの領域でfitを行っても、何も起きませんでした。
885 :
879 :2009/01/20(火) 19:44:47
自己解決しました。 .screenrcを見直し、caption alwaysで設定していたのを hardstatus alwayslastlineにしたところ、再発しなくなりました。 ご回答いただいた皆さん、ありがとうございました。
logだと制御文字が入ってしまうのでhardcopyでログを保存してみたんですが、 日本語がちゃんと表示されず「あいうえお」が「B\377D\377F\377H\377J\377」 のようになってしまいます。\377は制御文字のようです。 出現するアルファベットがB,D,F,H,Jと規則性があるのでのエスケープ?か何か ではないかと思い色々検索してみたのですが、よく分かりませんでした。 これを日本語でちゃんと表示させるにはどうしたら良いでしょうか。。
887 :
名無しさん@お腹いっぱい。 :2009/01/22(木) 08:54:47
画面番号を移動することって出来ますか?
2レス消化失礼。 Navi2chで記号を書き込むと、screen経由だと文字化け。 非経由だと化けないのですが何が考えられますか? screen非経由 「→↑…■○▲」
screen経由 「懼懼懼懿。燧ォ懿。v .screenrcはこんな設定 defencoding utf-8 encoding utf-8 utf-8 cjkwidth on 読みは問題ないいんですが書き込むときだけ化けるんです。
3レス消化失礼。 ちなみにemacsでテキスト打ちする分には化けません。 駄目なのは、Navi2chで記号を書き込むだけなんですよ。
893 :
889 :2009/01/24(土) 11:57:13
大変失礼した。 screeは無罪。 「→↑…■○△」 skkinput経由で書き込むと駄目なのが判明しました…orz
新しい窓を生成するとそちらへ切替わりますが、 これを切り替えずに生成する方法はないでしょうか。 生成後に other を実行するようにすれば似たような ことはできますが、どうも画面の散らつきが気になるので…
ちらつきに合わせてまばたきすればおk
文字が浮き上がってみえるよ!
>896 注) 左右で交互にまばたきしないでください
>>894 スクリプト組んでて「アクティブにならない」副作用で困ってたんだけど
それを必要とする人もいるとはw
↓やってみ。
: | screen
>>898 exec | screen ということですかね?
そういえば私も昔色々やっていたときにそれで悩んだ経験がありました。
もうすっかり忘れてましたね。other で気軽に戻れませんが、それ以外は
問題なさそうです。ありがとう。
> 886 よくわからんが、全角英数はutf16のリトルエンディアンになってた。
>>888 このコロンコマンドをbindkeyにするには、どうすればいいんでしょうか。
デフォルトでは、Nがbindされているようですが、引数が入れられなくて困ってます。
bind N colon 'number ' かな?
904 :
名無しさん@お腹いっぱい。 :2009/02/06(金) 07:53:06
screenで画面をコマンド一発でページアップ、ページダウンさせる方法ってないでしょうか? ^a[ でモードを切り替えて、Ctrl-U, Ctrl-Dでできるのは分かるんですけど、 切り替えが面倒に感じます
>>904 shift-gで、底にはjumpできるみたいですが、topはどうやるんだか。
ところで、画面を10以上いつも開くのですが、画面リストを表示するコマンドはないでしょうか。
^a w だとstatus lineに入り切らないんです。
>>905 topに行くのは 1G だろ vi知らんの?
>905 がviを知らないのは別にいいとして (俺もちゃんとは知らん) >904 の質問は、「Copy Modeに入らずに」scroll backしたい、 という要望だと思う。 すまんが、俺はやり方を知らない。簡単にはできないんじゃないかな? とは思うけど。
>>905 copy モードに入る方法でよければ、これでいいんじゃないか:
bind ^t eval "copy" "stuff '1G'"
# ^t は環境に応じて換えてくれ。
^a^t で top へ移動できるが、便利かどうかは謎。
>>907 >topに行くのは 1G だろ vi知らんの?
gだろ、lessでもscreenでも
だが 真のviではgは未定義 ユーザのマクロが割当てられてることが多いため下手に使うと危険危険
viは:1だろ
:をつかったら、それはviではなくてexコマンドなんだな
915 :
627 :2009/02/07(土) 10:37:01
vi は ex の superset じゃないの?
viスレでやってくれ...
vi で ex コマンドが使えるという意味ではそうだけど、vi で一行目に飛ぶ操作は? と聞かれたら 1 G って答えるのが正解。 : 1 [Enter] だろ?と言うと、ああ、この人は 1 G を知らないんだなと思われる。
画面の一行目に飛ぶなら H screenでも使える
普通のviのgって何も当てられてないんだっけ? そもそもなんで空いてるの?
スレ違い失せろ。、
macports から screen 4.00.03 をインストールしたんだけど、/opt/local/etc/screenrc で 指定されている deflogin on と bind login on, off で unknown command と怒られる。 /opt/local/etc/screenrc の内容は改変しない方がいいと判断しているんだけど、なんで unknown command になるのかな。誰か教えておじいさん。
じじいの勘だが /opt/local/etc/screenrc の改行コードが怪しい
923 :
921 :2009/02/12(木) 14:18:59
なんか Nabble の情報によると macports の 4.0.3_3 ではそんな現象が出るとかなんとか。 ~/.screenrc に deflogin off とか書いても同様に怒られるので /opt/local/etc/screenrc の せいではないっぽい ? FreeBSD の screen (4.0.3_5) ではそんな現象が出ないし、4.0.3_3 だった頃もそんな現象が 出なかったと思うんだがなあ。
924 :
名無しさん@お腹いっぱい。 :2009/02/21(土) 21:10:50
screen が無い状態で ^Z(suspend)して、screen起動後にfgみたいな事がしたいです。 どのようにすれば実現できますでしょうか?
>>925 無理。子(プロセス)は親(tty)を選べない
>>925 わかりました。即レスありがとうございます。
>>926 TeratermからDebian sidにログインしてaptitudeすると、枠がグチャグチャになるのですが、何か設定がいりますか?
FreeBSD 7.1を使っています。 Portsからインストールして起動すると tcsh: /etc/termcap を開く事ができません tcsh: ダム端末の設定を使います。 と出てきてしまいます。どのように設定すればいいのでしょうか? よろしくおねがいします。
emacsを使っていると、utfで特殊な文字を表示させたときに表示がバグります。 一番上のFile Edit Options Buffers Tools Helpといったメニューが表示されなくなり、カーソル位置などがおかしくなります。 保存する文字コードをutfにするとおかしくなり、eucの時には正常です。 例えば"☆"という文字をutfで保存、読み込みするとおかしくなります。 bomがむにゃむにゃとか思っているのですが、このあたりの問題について教えていただけるととても嬉しいです。 GNU Emacs 22.3.1 FreeBSD xxx 7.0-RELEASE FreeBSD 7.0-RELEASE putty build Oct 22 2007 23:08:37
>>931 >term vt100
ありがとう御座います
alias screen env TERM=vt100 screen
で無事CUIでもいけました!!
933 :
名無しさん@お腹いっぱい。 :2009/02/28(土) 14:50:54
>>922 $ nkf -g /opt/local/etc/screenrc
ASCII
$ screen -v
Screen version 4.00.03 (FAU) 23-Oct-06
????
nkf -guess では改行コードが何か表示してくれないと思う 別の方法で確認しろ
935 :
930 :2009/03/04(水) 14:19:16
>>930 あれー!うまく書き込めなかったと思い込んでたらこんなところに誤爆してました。sorry。
コピーモードのとき、検索にマッチした語をハイライトできませんか? attrcolorいじったらいけそうかと思ったんですが俺のお脳じゃ分かりませんでした
バッファの番号が0から始めるのを1から始まるようにできませんか? 一番左端のバッファを選びたいのに^a0とするのは直感に反するので。
PCの世界はそういうもんだからなぁ..... ほとんどの場面でそうだから慣れといた方が良い気がする
いまどきの数学の自然数だって0から始まるんだぜ
多分キーボードの数字の配列は1が一番左だからと言いたいのではないかなあ。
まぁ、結論から言うとソースいじらないと無理。
>942 元質問者じゃないが、これ考えた奴頭イイな。 cをscreen 1にbindしてるところで、しばらく考えてしまったよ。 # コマンドラインから screen w3m とか打つ自分には使えないけど # # 慣れたから今更どっちでもいいけど
>>939 0から始まる場合は非負整数っていうだろ。
ペアノの公理自体は、最初が1でも0でもどっちでも良いんでしょ?
質問者のいいたいことは0インデックスとかそういうんじゃなくて 単なるUIの問題でしょ? 最左の数字が0のキーボードがないってだけのことでしょ?
テンキー使えテンキー
>>950 そんなもん付いてるキーボードの持ち合わせなどない。
953 :
名無しさん@お腹いっぱい。 :2009/03/12(木) 22:03:21
Ctrl+なにか を押した後にテンキーに手を延ばすなんて…
なるほど、
>>952 はきっとテンキーをちんこで打つ技能を身につけてるに違いない
もう~と0入れ替えろよww
>>952 いや、REAL FORCE とかスペースセーバーとか富士通のあれとかかもしれないぞ
>>953 screenを使う奴がテンキーを使うってことは驚きなんだけど。
ま、蓼食う虫もそれぞれ だからな。
>>946 「0から始まる場合は」ってより、
「0を含むことをはっきりさせたい場合は」。
>>948 いい。
` select 0 1 select 1 2 select 2 3 select 3 4 select 4 5 select 5 6 select 6 7 select 7 8 select 8 9 select 9 でいいじゃん。 ` はキーボードレイアウトによって違うかもしれないので1の左のキーね。
>>957 はっきりさせたくない場合ってあるか?
非負整数でなく自然数って書くのは0を含むこと曖昧にしておきたい場合だろ。
曖昧なのを許さないのが数学じゃないのかよ。
960 :
名無しさん@お腹いっぱい。 :2009/03/19(木) 00:38:03
screenでTeraTerm Pro Assistantみたいに複数のホストに対して一斉に同じキー入力を送ることはできる?
962 :
960 :2009/03/19(木) 22:58:14
teraterm使ってるんだけど、screenを起動すると、ウィンドウのサイズが変わってしまう。マウスでウィンドウの大きさを戻せばいいんだけど、勝手にサイズが変わらないように出来るのかな?
>>959 > 曖昧なのを許さないのが数学じゃないのかよ。
何をどういう点で曖昧/明確にするかに依る。
明確な境界を壊すことから生まれる数学もある。
screenがblankerprgを実行しようとすると以下のエラーが出て落ちてしまいます reopen fifo /tmp/screens/S-***/***.pts-0.***: No such file or directory どなたか原因がわかる方教えていただけないでしょうか
10番目以降のバッファを直接選択するにはどうすればいいですか?
バックスペースを押しすぎたりしたときに起きるフラッシュをとめることってできないかな? ちらちらウザイので・・
vbell
おい、screen-usersの=?UTF-8?B?77i244Sj54Sh5ZCN5rCP?= ってお前らか?
俺のログには何もないな
xterm 上でつかっているのですが、xtermのスクロールバー(っていうのかな? 右端にあるやつ)を今まで通り使えるようにするにはどうすればいいでしょうか?
ソースいじればいいんじゃね
>>974 さん
ありがとうございます。早速試してみます。
日本語の屏風が由来のbyoubu?byoubu? 外人さんが作ってるっぽいが誰か使ってみた人は?
自分なりにカスタマイズしたりググったりして他のを参考にさせてもらって普段の作業をしているが、 他に思いもつかないような使い方がきっとあるのだろうなと思う。 うまく思いつく・見つけるよい方法はないだろうか。
help とかを見たんですがよく分からなかったので質問します。 .vimrc とか .zshrc とかを変更した時にコマンド一発で screen の全ての バッファに反映させたりとかはできるのでしょうか? みなさんはどうやってますか?
>>980 おぉ、ありがとうございます。
試してみますっ。