tmuxずっと tmux に移行しようかなという気持ちを持っていたので、重い腰を上げて移行してみた。プレフィックスを C-j にすれば大体 GNU screen と同じ感じで使えることがわかったので、すんなり使えている。ただ画面の分割が GNU screen では新しい window が作られるところ、tmux では pane が作れられるのでそこに少し戸惑った。 https://github.com/superbrothers/dotfiles/blob/master/tmux.conftmux プラグインでは tmux-thumbs が気に入っていて、vimperator 的な感じで画面内のそれっぽい文字列をハイライトしてくれて、ハイライトに出ているヒントのキーを押すとバッファにコピーしてくれる。コピーコードやトラックパッドを使うよりも高速に操作できるのでさいこう。 https://g
Implementing working copy-paste in multiple environments is absurdly difficult. Any of the following reasons complicate matters, but taken together the difficulty rises to a level of complexity not seen since macOS stopped shipping reasonably updated versions of bash. 1 X Window Selection Pasting into a terminal is interpreted literally, meaning an attacker can hide ;sudo do $really_evil_thing; in
昔に書いたものなので余り参考になさらずに 僕はターミナルに引きこもっています。たまに外出しても最寄りのブラウザ程度です。そんな僕は Mac を使っています。綺麗な UNIX だからです。ターミナルアプリとしてターミナル.app を使っています。iTerm2 含めいろいろ試しましたがコレがさいつよでした。そして、僕は 2 年半かけてさいつよ環境を築き上げました。 tl;dr 最強のターミナル開発環境の構築する 最強の開発環境を目指して タイトルで豪語しすぎた感はありますが、本気で構築中です。僕がターミナル環境の整備に目覚めたのは学生の時でした。特に何かのプロジェクトに携わるといったこともなく、たまに講義の課題を解いたり趣味のアプリを作成したりといった程度での開発だったので、環境構築や整備に割く時間がありました。 まずは現状 普段のターミナル環境は次のとおりです。 ターミナル.app(全画面)
tmux 1.8で導入された機能に zoom, unzoomがあります(Prefix + z). いくつかの paneに分割した windowを一時的に 1つの paneのみを表示(zoom)し, 再度同コマンドを実行することで元の状態に戻す機能です. Emacsでもそんな機能があったらいいなぁと思ってこの zoom-windowを作りました. elscreenにも対応しており, その場合はタブごとに zoom/unzoomの状態を管理 します(elscreen対応がなければ 10行程度で実現できました). 利用用途 ドキュメントとコードを frame分割して見ているときに, コードに集中したい場合, コードのみを frameに残したいときがあります. 従来であれば, コード以外の windowを削除したりする必要があるわけですが, zoom-windowを使うことで, windowを削除
去る2014年2月22日にtmux 1.9がリリースされたので勇んでアップデートしたところ,1.9からはdefault-pathオプションが削除されており,またそれが原因かどうかは定かではありませんが *1,new-windowやsplit-windowするとcurrent pathの情報を引き継いで *2 くれなくなってめっちゃ不便!!!! ってなって,「これもう1.9にアップデートしなくても良くね??? CHANGES見てもこれといった変更ないし……」という心意気に一時はなったんですが,僕みたいな糞ミーハーはやっぱり新しいものを使いたいのでちょっと調べてみました. 結論 bind '"' split-window -vc "#{pane_current_path}" bind '%' split-window -hc "#{pane_current_path}" bind 'c' ne
irssi 環境を prgmr.com からさくら VPS に移行したついでに irssi のプラグインを見直していて、そのときに nicklist.pl というのをいれたわけですが、これがなかなか hackish な実装になっており(笑)、named pipe なファイルつくってそれを cat しておくと irssi がそこに nicklist を書き込むというような感じになってて、基本的に GNU screen などの縦分割と一緒に使うように設計されている。 で、僕はリモートサーバー上の GNU screen 上で irssi を動かしているので、それをつかうために縦分割をためしてみたわけですが、window 分割したときにでる caption を GNU screen では消すことができず、ローカルで使っている screen の hardstatus の上に、リモート screen
Docker + tmux = dmux ! dmuxを使うと現在起動中のtmuxのwindowにおいて,新しくpaneをつくりそこでDockerコンテナを起動することができる.使い捨て,かつ高速に起動するクリーンな環境でコマンドを試したり,ツールを入れて使ってみたりなどといったことができる.また,プロセスと途中で止めて,後にそれを再開することもできる. デモ 以下は簡単な動作例. 上のデモでは,以下のことが可能であることを示している. dmux initにより新しいpaneでコンテナを起動し,そこにアタッチする dmux stopでプロセスを停止してpaneを削除する dmux startで停止したプロセスを再開して再びコンテナにアタッチする(for文が途中から再開している) dmux deleteでコンテナとpaneを削除する なぜつくったか Dockerのv0.12.0で追加されたp
これは、tmuxとtmux-powerlineを使って実現しています。 以下に、導入方法を書きます。 0. (強く推奨)powerline用のフォントをインストール まず、大なり、小なりのフォントを使うための設定をします。これをインストールした方が、すごい見栄えがかっこよくなります! パッチを当てたフォントをインストールして、ターミナルなどでそのフォントを使って表示するようにします。 この記事で使われているスクリーンショットのフォントは、AdobeのSource code proにパッチを当てたフォントを使っています。 その他のフォントはこちら。 https://gist.github.com/qrush/1595572 自分でパッチを当てる場合はこちら。 https://github.com/fncll/vimstuff/tree/master/powerline-fonts 1.tmu
ターミナルでの作業の内容をファイルに書き出しておきたいことがある。特に SSH で入ったリモートホスト上での作業内容を手間をかけずにローカルホスト上にもってきたいことがよくある。 tmux だと pipe-pane コマンドを使うと各ペインでの作業をパイプでコマンドに送っておけると教えてもらったので設定してみた。 パイプからの送り先のコマンドを用意する cat でもいいのだけれど自分は日付別に保存したいので以下のようなシェルスクリプトを ~/.dotfiles/bin/log-tmux として作る。 #!/bin/sh DATE=`date "+%Y-%m-%d"` LOG_DIR=$HOME/var/tmux/log/$DATE LOG_FILE=$LOG_DIR/tmux-$DATE-$1.log mkdir -p $LOG_DIR tmux display-message "Star
12 Jan 2014 on web and iot Quick start projects Often we have about 3 to 4 active projects. I am using a simple bash script with tmuxinator to fire up all the related elements of a single project so that it is ready to code in less than 10 seconds. Let's say we have 3 to 4 active projects at any one time. These projects might include, a couple of client projects, a side project or even a blog. Ev
インフラ担当の池田(@mikeda)です。 tmuxを使い初めて1年くらいになりました。 今日はtmuxの、普段のオペレーションでよく使ってる機能を紹介します。 複数サーバで同時オペレーション tmuxにはキー入力を全てのpaneで同期する機能があります。 この機能を使って複数paneでそれぞれ別のサーバにsshログインすると、 複数サーバに同じコマンドを打ったり、 内容が同じ設定ファイルであればviで同時編集したりができます。 同期する/しないはコマンドでも切り替えられますが、 set-window-option synchronize-panes on set-window-option synchronize-panes off tmux.confにショートカットを設定しておくと便利です。 bind e setw synchronize-panes on bind E setw sy
こんにちはこんにちは 私は日々大量のサーバーで作業をする必要があるので tmux が欠かせません そんな中最高便利な記事が先日公開されました Tmuxでウィンドウをインタラクティブに移動する - Qiita [キータ] しかしこの記事が全く話題になっていません おそらく理解されていないのだと思います ということで私がもう少し詳しく説明したいと思います 先程の記事と同様に ssh-configにはパターンが使えるので便利 - Qiita [キータ] tmuxで色んなホストにsshする時に便利な.ssh/config - Qiita [キータ] の合計 3 記事を組み合わせて初めて達成できる最高のソリューションを紹介します tmux のウィンドウの名前 tmux で大量のウィンドウを立ち上げて ssh しているとどのウィンドウがどこのホストにいるのか分からなくなります そこで先程紹介した 2
# ステータスラインの設定 {{{ set-option -g status on set-option -g status-interval 2 set-option -g status-utf8 on set-option -g status-justify "centre" set-option -g status-left-length 60 set-option -g status-right-length 90 set-option -g status-left "#(~/dotfiles/.tmux/tmux-powerline/powerline.sh left)" set-option -g status-right "#(~/dotfiles/.tmux/tmux-powerline/powerline.sh right)" # }}}
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く