tmux その1

2010/03/17(水) 07:27:12
という訳で
2012/11/16(金) 08:36:40.50
まあ別実装が増えるのはいいことだ。
2012/11/16(金) 21:36:44.12
>>230
よく言われてるの?英語圏のtmuxに関する話題でそういうの読んだ事ない
個人的にはGive&Takeが成立して手を結んでる印象です

まず作者は、OpenBSDに標準で入ってフィードバック増えた事を喜んでる
セオが初っ端でメモリリークが2件(修正済み)あるって指摘してように、あそこうるさい人多いしw
あと開発陣と会えた事

OpenBSD側はセオが気に入ったって事と、MLで
「これがOpenSSHみたいにキラーアプリになるんじゃね+(0゚・∀・) + 」って
かわいい意見読んだ事あるくらい
2012/11/16(金) 21:48:54.03
ところで、皆さんステータスバーに何を表示させてますか?
シャレた奴あったら教えて下さい

自分は以下を参考にこんなで使ってます
ttp://crunchbang.org/forums/viewtopic.php?id=20504
・ウィンドウ名
・時刻 %a %H:%M'
・Loadavg (cut -d " " -f 1-3 /proc/loadavg)
2012/11/16(金) 22:19:33.38
>>233
おぉ、なかなかいいな。
俺はこれを改造して使ってる。
ttps://github.com/erikw/tmux-powerline
2012/11/16(金) 22:35:36.10
>>234
サンクス。超高機能ですね。
天気が特に面白そうだったので読んでみます
2012/11/16(金) 22:37:55.77
普段使いだと微妙にもたつくのが気にならないか?
2012/11/16(金) 22:54:42.82
まぁね
ただ234のはデザインがカッコ良いと思う
238名無しさん@お腹いっぱい。
垢版 |
2012/11/17(土) 00:43:51.95
一時期凝ったけど、最近は、日付とウィンドウ情報以外には
Wi-Fi強度、バッテリー残量、ボリューム、ロードアベレージ
を易経記号を使って棒グラフ状に表示しているだけだな。
2012/11/17(土) 09:54:53.08
suなシェルを常時開いているので、ユーザー名を取得するように改造している。
2012/12/04(火) 00:26:39.90
>>174
ttp://sourceforge.net/tracker/index.php?func=detail&aid=3064904&group_id=200378&atid=973262
にバグ登録されてるね。と思ったら違う内容だった。
2012/12/04(火) 16:54:35.78
ML活発だしそこで聞くのが早そうだね
2012/12/08(土) 04:26:47.33
Mac (10.8) でtmux使っている人、
monitor-activityをonにしてps | lessとかすると、ステータスラインが大変なことにならないか?
2012/12/08(土) 13:04:21.73
Half page down/up (C-d) を vi-copy の別 key に bind したいんだけど、
どうやればいいすかね。
page-down はあるんだけど half-page-down はない…
機能あんなら command になっててもいいのになー。まあしゃーない。
2012/12/08(土) 15:30:07.09
>>242
んー、俺は大丈夫っぽい OS X 10.8.2 / tmux 1.7

>>243
1.7 にはなくて、HEAD には以下のコードが含まれてるから次のリリースではいるかもしらん。
実際、コンパイルして動かしてないからわからんけど
% fgrep -inHr page-down *
mode-key.c:108: { MODEKEYCOPY_HALFPAGEDOWN, "halfpage-down" },
2012/12/08(土) 15:36:50.87
>>243
HEADコンパイルしたらいけた

% tmux -V
tmux 1.8

bind -t vi-copy ^o halfpage-up
bind -t vi-copy ^x halfpage-down
2012/12/09(日) 16:22:23.87
おー、情報 thx. C-d については 1.7 のコードしか見てなかった。
それなら 1.8 を待つことにしよう。release cycle そんなに長くないよね、多分。

^o とかも書けんだねえ。screen から移ったばっかだから知らんことが多い。
247242
垢版 |
2012/12/16(日) 01:32:12.15
clangでビルド、alternative-name on で ps | less した結果。
ttp://i.imgur.com/47P56.png
どんどん増える。
ttp://i.imgur.com/GgT7h.png
248242
垢版 |
2012/12/16(日) 01:35:18.01
>>247
> alternative-name on
訂正、automatic-rename on の間違い...
2012/12/16(日) 01:52:39.86
>>247
ほんまや。なったわ。
なんでこれ一生懸命リネームしようとすんの?
2012/12/16(日) 09:58:34.99
tmuxのmanを読んだら環境変数TERMにscreen をセットするって書いてるけど
これは何のためにやってるかわかるいたら教えて下さい
2012/12/16(日) 14:44:00.08
tmuxが好むエスケープシーケンス(screen互換)を、
terminfo/termcapを使ったプログラムに出力させるため。
2012/12/16(日) 16:05:27.55
>>251
ありがとう!エスケープシーケンスだったのか
ムズムズしてたので聞いてよかった
2012/12/22(土) 14:32:25.55
そういえば tmux -2 ってあるよね。
256 colors のために
set -g default-terminal screen-256color
してるけど、専用のオプション -2 を指定する方がいいんだろうか。
まあ変わらないと思うけど。
というか単にその時だけの場合に指定するものか。
2012/12/22(土) 16:21:02.86
どっちでも効果は同じ。
引数の方は種々の事情でTERMの設定ではうまくいかない時、
オーバーライトするためのものだろう。
2012/12/22(土) 17:16:33.84
あーやっぱそうですか。

関係ないけど monitor-activity って terminal resize でも反応すんだね。
selected window じゃなくても即時 resize してるのか。
おかしかないけど、selected で resize でもいいような気はするな。
tiling wm 内で使ってる人しか気にしないだろうけど。
2012/12/22(土) 20:40:29.11
>>121,189
根本的解決ではないけど、2つセッション(A,B)を作ってBをAに同期させれば描画は分離出来た
でも他のウィンドウも一番小さい画面と同じサイズになってるので以下のオプションをオン
setw -g aggressive-resize on
しかし、セッション管理の手間も増えそうだから自分はやんないだろうな
そもそもScreenを知らないからそんな不満持ったことなかったや

このURLのMultiple Clients Sharing One Sessionってところ
https://mutelight.org/practical-tmux
2012/12/23(日) 02:06:50.84
その page みて気付いたけど screen より resize で文字が
あまり散乱しない点で tiling window manager に向いてるのか。
zsh の RPROMPT とかの文字が。
xterm と同様の挙動みたいだね。
散乱しても表示してほしい場合は screen の方がいいか。
2012/12/23(日) 17:26:14.13
>>257
言われてみれば awesome 使いが気に入って紹介してる事おおいかも
2012/12/30(日) 16:54:19.64
ぱっと見で特に問題なさそうだったから multibyte 対応されてるのかと思ってたけど、
そうでもないんだね。
copy mode での移動とか検索とか command mode での入力とか。
あんまり使わないから問題ないのかね。
個人的には copy mode での移動が多いので難だけど。cursor-right, next-word とかが。
260名無しさん@お腹いっぱい。
垢版 |
2013/01/17(木) 23:24:25.59
tmuxでコピーモードにすると,
表示された内容が遡って表示出来ますが,
途中までしか表示され内容です.
一番上まで戻るにはどうすればよいでしょうか?
261名無しさん@お腹いっぱい。
垢版 |
2013/01/17(木) 23:27:14.65
history-limit を増やせば?
262名無しさん@お腹いっぱい。
垢版 |
2013/01/17(木) 23:41:09.53
>>261
変化ありませんでした.
2013/01/18(金) 16:42:03.95
あのさあ、増やしてから何か出力させてみた?
2013/01/19(土) 10:37:01.51
tmux って tmux なしや screen に比べて
yes 起動数秒後の ^C の反応なんか遅いよね。
yes 4数秒後とか。特に高負荷下だと。
なんでかは分からないけど。
2013/01/19(土) 11:25:06.32
出力の受け取りが優先的だからでしょ。
2013/01/19(土) 14:07:59.73
あーそうなの?なんか option とかあればいいけど。
2013/01/19(土) 18:41:53.02
どうも tmuxなしと screen は描画した分に応じて入力を取るみたいだね。
tmux は描画が追い付かなくてもどんどん入力を取る感じ。
^C で yes は即時終了しているけど溜まった分の描画に時間がかかっている。
c0-change-interval, c0-change-trigger で改善できるようだけど、
なんかこの option 不思議な動きをするな。
c0-change-interval を 0 にして yes した後に元に戻しても 0 のときみたいに yes が重かったり、
なんか色々。
まあでも変なことしなければ問題ないのかな。
とりあえず yes 打たなきゃだいたい問題ないし放置しとくか。
2013/01/21(月) 23:51:12.75
tmux遅い対策としては端末を速くすると効果がある。
2013/01/26(土) 00:54:43.93
端末変えるとか?
全画面 xterm の yes で終了が遅れる。(c0-change-trigger を下げれば特に遅れない。)
半画面だとデフォルトの c0-change-trigger が効いているようだ。

前に c0-change-interval みたいなこと(60fps に描画を抑えるとか)を
xterm がやってくれるといいと思っていたけど、
tmux とかがやってもいいんだな。
2013/01/26(土) 11:46:59.98
どんな情況で必要になるの?
2013/01/26(土) 12:46:42.62
出力が大量のときでしょ
2013/02/19(火) 00:52:40.34
tmux -h についての熱い議論展開中
2013/03/14(木) 03:36:54.15
最近macで使いはじめたんだけど、muttでメルマガによくある「━」とかが連打してあるようなメールを
表示させるとおかしくなる。C-Lで再描画するとキレイになるんだけど、スクロールしたりすると
また乱れる。あと※とかそんな記号があるファイルを vim で縦分割したりするとやっぱ乱れる。
http://ta.ps.st/d/1350718711.html を参考にしてASCII以外は全て倍角扱いにしてみたらちょっと良く
なったような気がした、けどやっぱまだダメ…
しょうがないんでクソみたいなHTMLを編集したりする時はデタッチして生ターミナルでやってます。
同じような悩みの人居ますか?
2013/03/14(木) 21:57:56.33
ambiwidthでしょ
2013/03/14(木) 22:17:22.25
フォント
ターミナル
tmux
mutt

全部対応しないと駄目なんじゃないか
276273
垢版 |
2013/03/15(金) 01:10:52.59
>>274-275
やっぱその辺ですかねぇ…macのiTerm2でambiwidthの設定して、vimもset ambiwidth=doubleだし、
tmuxも対応したはず…
で、よく調べたら vim で崩れる原因が分かりました…C2A0(UTF-8の半角空白)でした…誰だよこれ…

ASCII以外全部ダブルにするのは乱暴だったと反省してこのパッチ当てたら直りました
https://gist.github.com/waltarix/1399751

muttの「━」とかは相変わらずゴミが残ったりするけど、まあまあ快適になった!
2013/03/24(日) 12:07:44.79
macは使ったことがないのでlinuxの場合しか知らないけども
wcwidth()の返す値はcharmapに依存するのでそういうのがあればそれもいじればよかったんじゃないかなあ
場合によっては端末(xterm)にもpatchを当てる必要があったけど、俺はそれで動いたよ
2013/03/27(水) 13:14:43.96
1.8出た
2013/03/28(木) 12:30:59.07
おかしかったマウスイベントがらみの挙動が全部直ってた
これで安心してマウス使えるわ
2013/04/14(日) 21:04:50.84
^[[?1;2cとか表示されるんだけどなにこれ
2013/04/14(日) 22:55:15.13
誰か echo '\e[c' してる?
2013/04/15(月) 00:50:57.19
犯人はuim-fepっぽい
uim-fepを噛ませると挙動がおかしくなる・・・
2013/04/18(木) 09:44:25.33
どっち?
uim-fep & tmux a
してるけど問題ないよ
2013/04/28(日) 23:47:43.84
ついにNicholasキレたか…
285koie
垢版 |
2013/04/29(月) 00:26:20.18
>>284
kwsk
2013/04/29(月) 09:22:41.56
ttp://sourceforge.net/mailarchive/message.php?msg_id=30779705
2013/04/29(月) 09:34:13.20
choose-tree -uの変更が気に入らなかったJasonが
コードも書かずに個人攻撃やら文句ばっかでうっとうしすぎるからNicholasが追い出した
2013/05/17(金) 19:47:21.07
Cygwinパッチきてるから取り込まれるかも。意外と需要あるんかいのう
289名無しさん@お腹いっぱい。
垢版 |
2013/06/10(月) 23:50:06.10
next-windowの「c^b n」を
prefixなしで「c^→(右キー)」にできませんかね。
2013/06/11(火) 00:01:59.08
>>289
bind -n つかえばいけるで
ttps://wiki.archlinux.org/index.php/Tmux#Use_tmux_windows_like_tabs
291289
垢版 |
2013/06/12(水) 23:42:03.41
>>290
ご回答ありがとうございます。
bind-key -n C-n next-window
 だとprefixなしでc^nで次のウィンドウに行けるんですけど
bind-key -n C-Right next-window
 だと機能しなくなります。
→キーを使うにはなにか設定がいるのでしょうか?
292289
垢版 |
2013/06/13(木) 02:29:59.90
set -g terminal-overrides "xterm*:kLFT5=\eOD:kRIT5=\eOC:kUP5=\eOA:kDN5=\eOB:smkx@:rmkx@"
こいつを入れることで解決しました。
ありがとうございました。
2013/06/13(木) 09:27:14.31
>>292
おぉ。そんなに色々入れんとダメやったんか。
環境なに?
294289
垢版 |
2013/06/13(木) 11:35:49.20
>>293
windows + putty -> zsh on FreeBSD 9.1R(x64)
です。
2013/06/15(土) 13:38:46.11
外側 TERM=xterm* ?
そういえば cygwin の termcap に putty の記述があったような…
# 関係ない話かな?まあいいか。
2013/06/15(土) 15:06:30.34
>>292
こういう系よくわからんのやけど、これって putty側の問題?
2013/06/18(火) 11:23:33.93
tmuxのステータスバーに色付き出力を使うことってできないんですか?

set -g status-right #(~/statusbar-output.sh)
と書いて statusbar-output.sh の中身は

#!/bin/sh
echo -ne '\e[31mhogehoge\[m'

こういう風になってるんですが、どうもうまく行きません。
2013/06/18(火) 12:17:24.70
>>297
#!/bin/bash
echo -n '#[fg=colour37, bg=colour34]hogehoge#[default]'

みたいに、tmux的な色指定ならうまくいく。colourのスペル注意
正確なバージョンは調べてないけど、bash version 4以上じゃないと正しく動かないけど
GNU bash, version 4.2.45 と zsh 5.0.2 では上で動いた
エスケープシーケンスのやつはダメっぽい
2013/06/18(火) 15:16:09.85
tmux流の色指定にしたらうまく行きました。
ash(FreeBSDの/bin/sh)でも echo -n '#[fg=colour5]' で動きました。
2013/06/18(火) 19:43:52.98
tmuxはCLIのソフトウェアにしては珍しく英国式スペルやなと思ったら、Nicholasが北アイルランド出身なのか
2013/06/18(火) 21:19:26.81
>>295-296
コンソールではどうやっても「c^→」はできませんでした。
puttyでできたので、いいんですが。。
矢印キーってなんか特殊?なんですかね(\e[Aとか)

>>300
これティーマクスって読むんですね。
ツムックスだと思ってました。
2013/06/19(水) 22:35:23.35
コンソール?の話はしてないような…
いやいいけど
2013/06/19(水) 22:43:23.38
konそーる?
2013/06/19(水) 22:56:39.55
なんだって?
2013/06/19(水) 23:11:02.42
カーソルキーの歴史的な話は全然しらんけど、たぶん特殊なんじゃないかな?
viかemacsでも最初矢印キー使えなかったんじゃないっけ
スレ知やけど
2013/09/26(木) 12:12:46.80
新しいwindowやpaneを作る時にカレントディレクトリで開いてくれるのはいいんだが
パスにsymlinkがあると勝手に展開される
$PWDでいいのに
2013/09/26(木) 12:31:01.92
>>306
あー、たしかに
308koie
垢版 |
2013/09/26(木) 23:31:59.58
>>306
たぶん無理かな。
シェル自体のPWDには反映されてないし、
カーネルはCWDは展開後しか覚えてないし。
シェル自体に手を入れたりcdを細工すればいけるとおもうけど。
2013/09/28(土) 13:16:18.14
それより make 中とかに new-window すると一時的に作成されたディレクトリになることがある方が気になる。
310名無しさん@お腹いっぱい。
垢版 |
2013/10/23(水) 03:25:31.17
tmux を使ってから
chmod 755 directory としようとしてsudoを忘れたから
Ctrl + a で文頭に戻ってsudoってうつと
sudod 755 directory というように文字が重なってしまいます。
コマンド的には問題ないのですが、途中から見えなくて
困っています。何か解決策はありませんか?
2013/10/23(水) 08:48:20.83
これtmuxのせいだったのか
2013/10/23(水) 09:30:39.42
うちはならないよ

Linux 3.11.5-1
tmux 1.8
rxvt-unicode (urxvt) v9.18 - released: 2013-03-24
313310
垢版 |
2013/10/23(水) 12:43:27.58
tmuxを使って特定のサーバにsshでつなぐとなりました
サーバの端末ではなってないですが
2013/10/23(水) 13:09:59.65
このへん?
http://unix.stackexchange.com/questions/67537/
prevent-ssh-client-passing-term-environment-variable-to-server
2013/10/23(水) 13:15:42.13
根本的な解決方法はわからないけど、発生したらCtrl-Lしてる
2013/10/23(水) 19:15:55.87
tmux は、全角文字の扱いが、まだ、不十分なところがあるようで、
copy-mode でカーソル移動すると、日本語の上で、2回とまったりする。


件の表示乱れは、うちでもなってて、多分 unicode の ambiguous char width
関係じゃないかな と、思っているんだけど。

参考 ttp://ja.wikipedia.org/wiki/東アジアの文字幅


私自身の例だと、ripping した CD のアルバム名で、ディレクトリに変な文字が入っていると
prompt の dirctory 表示にその文字が表示されて Ctrl-a で、行頭に戻った時の位置が
ずれる気がする。

あと、時折、 ls とかの表示もおかしい。(けど、これは、端末のせいかも)
2013/10/24(木) 09:27:02.31
tmuxやscreenでその手の問題っていまいち原因追求しにくいよね。
一度これを試そうと思っているのだけどなかなか機会がない。

Run command with CJK-friendly wcwidth(3) to fix ambiguous width chars
https://github.com/fumiyas/wcwidth-cjk
2013/10/24(木) 16:48:05.84
>>316

>>310 は半角文字だけでも起こるよ
2013/10/26(土) 03:12:47.90
半角ってASCII文字のことだよね?

>>317
screen に文字幅絡みの問題ってそんなあったっけ?

>>310 は知らないけど copy-mode の件なら wcwidth が正しい環境でも起こるので
wcwidth ではないような気がする。というか wcwidth を使ってないようす。
command-prompt とか。
search-forward はそもそも日本語入らないけど。
2013/11/10(日) 12:46:06.14
>>316
だいぶ前に俺が書いたpatchで多分想定通りに動くと思うからよければどうぞ
但し、端末はxtermでosはlinuxじゃないとできないと思う

charmapとtmuxとxtermをいじることになる

tmuxのpatch置き場
https://github.com/silenvx/PKGBUILD/tree/master/tmux

xtermのpatch置き場
https://github.com/silenvx/PKGBUILD/tree/master/xterm

charmapに書き込むAmbiguousな文字のリストの生成スクリプト
https://github.com/silenvx/bin/blob/master/gutf8cjk.sh

charmapのいじり方とそれぞれのpatchの役割については
http://d.hatena.ne.jp/silenvx/20120929/1348930210
この記事を順に読んでいってもらえたらわかると思う
ごちゃごちゃしててすまないが。
場合によってはtmuxのborderとterminfoもいじった方がいい。これについても記事に書いてあります
2013/11/19(火) 16:52:28.38
最近 screen で ncurses 周りが崩れるのを治すのに疲れて、
tmux にしようと考えてるのですが分割について教えて下さい。

screen では window を分割表示できるので、2つの作業中の window を
必要に応じて並べて表示できるのですが、
tmux はやはり pane の分割しかできないのでしょうか。

やりたいことは、すでにある window を並べて表示する。
で、もうひとつ条件としてその時に、window ナンバーが崩れないようにしたい。
というものになります。
2013/11/19(火) 19:49:49.63
>>321
> やりたいことは、すでにある window を並べて表示する。
これは join-pane でおk
だけど、これは 「window を並べる」というより、window を2つの pane に分割して、そこに別の window を pane として並べるという感じ (man tmuxより)
おそらくこの時点で window 番号は失われてる

> で、もうひとつ条件としてその時に、window ナンバーが崩れないようにしたい。
なので、join-pane した window を、再びバラバラに (break-pane) すると、window 番号が変わる可能性がある (空いている最小 window 番号が割り振られる)

tmux 内で、任意のシェルコマンドが実行できるので、
join-pane で window 番号を保存
break-pane で 保存してあった window 番号に復元する
みたいな設定をすれば目的は達成できそうな気がする
2013/11/19(火) 20:07:06.54
>>322
ありがとうございます!

join-pane -s number と break-pane -t : で大体同じことができそうです。

間で create window してしまうと番号がずれちゃいますが、
普段使うときは最初に window を 10 個作っちゃうので、
気をつければ問題無さそうです。

root 作業は window 0 or 1 とか テンポラリ作業は window 7 などという感じで
習慣化して、今まで障害出ないようにしてたので乗り換えるのに躊躇してましたが、
多少違うとはいえこれで慣れていけそう。
本当に有難うございます。
2013/11/19(火) 20:25:19.87
>>323
オプションまでみてなかったわ。スマソ
break -t で window number 指定したらいけるね

Vim ユーザーなら set -s escape-time 0 は必須。異論は認めない
2013/11/21(木) 09:34:32.84
特に何も考えずwindow複数開いちゃったんだけど
これをpaneに変えて分割表示にするってできないかな
screenから乗り換えてきたんだけど、時々やらかしちゃう
2013/11/21(木) 12:55:30.69
join-pane
2013/11/21(木) 13:09:11.10
>>325
サンクス
2013/12/10(火) 04:06:58.76
ひとつのペインを複数のウィンドウで共有できる?
ウィンドウを切り替えても常に同じペインを表示させておきたい
2013/12/10(火) 05:41:58.57
>>328
ちょっと違うけどカレントペインを他のウィンドウのペインと交換する方法ならある
これなら切り替えたいペインが1つだけなら似たようなことはできる
ttp://unix.stackexchange.com/questions/53154/how-do-i-cycle-through-panes-inside-a-window-in-tmux-like-in-screen

共有はできなかったような
2013/12/11(水) 14:29:49.82
>>329
うーん、共有だめかー。とりあえずそれでやってみる。ありがとう!
2013/12/18(水) 10:29:49.59
半角かなとかつかってると表示が崩れてしまいます
(行が適切な場所に表示されない,^Lでも綺麗にならない)

FreeBSD-8, mlterm, tmux, emacs24, navi2ch という
組み合わせで,EUC-JP 環境です

mlterm上に直接 emacs 起動+navi2ch なら問題ないです

ということで tmux がなにかしら弱いのは確からしいのですが
なにか良い設定とか工夫とかあったりしますでしょうか?

あと screen + emacs ではEUCでも問題ないです
(半角かなは表示されるようなされないようなという感じですが)

mlterm/tmux 部分を kterm+screen で使う分には
(半角仮名が一部見えない・化けるという以外には
それほどは困ってませんでした; ただ screenの暴走という致命的弱点が…)
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況