トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

tmux

2.9

 インストール

OSのクリップボードとの共有にxlicpを使う

$ sudo yum install libevent-devel xclip
$ git clone https://github.com/tmux/tmux.git
$ cd tmux
$ sh autogen.sh
$ ./configure && make

 ~/.tmux.conf

# tmux list-keys

# 設定ファイルをリロードする
bind r source-file ~/.tmux.conf \; display "Reloaded!"

# pane, window    
bind -n M-p select-pane -t :.-
bind -n M-@ select-pane -t :.+
bind -n M-P select-window -t :-
bind -n M-` select-window -t :+

#ウインドウ作成
bind c new-window -c '#{pane_current_path}'

# Keybind ウィンド分割
bind 3 split-window -h -c '#{pane_current_path}'
bind | split-window -h -c '#{pane_current_path}'
bind 2 split-window -v -c '#{pane_current_path}'
bind - split-window -v -c '#{pane_current_path}'

# バッファ数(デフォルト2000行)
# set-option -g history-limit 5000

# メッセージ表示時間
set-option -g display-time 10000
set-option -g display-panes-time 10000

# マウス操作
set-option -g mouse on

#Wondow名の自動設定off
set-option -g allow-rename off

# ステータスバーをトップに配置する
# set-option -g status-position top

## ウィンドウのインデックスを1から始める
set -g base-index 1
## ペインのインデックスを1から始める
setw -g pane-base-index 1
## アクティブなペインのみ白っぽく変更(真っ黒は232)
set -g window-style 'bg=#212121'
set -g window-active-style 'bg=#000000'

# ステータスバー
set-option -g status-left '[#S]'
set-option -g status-right '[%Y-%m-%d %H:%M]'

# コピペ
bind v choose-buffer
set-window-option -g mode-keys vi
unbind -T copy-mode-vi MouseDragEnd1Pane
# bind-key -T copy-mode-vi Enter send-keys -X copy-pipe "tmux copy-buffer"
bind-key -T copy-mode-vi v send-keys -X begin-selection
# for Linux
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -i -sel clip > /dev/null"
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -i -sel clip > /dev/null"
bind-key -T copy-mode-vi c send-keys -X copy-pipe "xclip -i -sel clip > /dev/null" \; display "Copy"
# for Mac
# bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "pbcopy"
# bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy"
# bind-key -T copy-mode-vi c send-keys -X copy-pipe "pbcopy"

bind-key -T copy-mode-vi C-v send -X rectangle-toggle

# List of plugins
#set -g @plugin 'tmux-plugins/tpm'
#set -g @plugin 'tmux-plugins/tmux-sensible'
#set -g @plugin 'tmux-plugins/tmux-copycat'

# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
#run -b '~/.tmux/plugins/tpm/tpm'

 使い方

検索

選択モードで/(前方検索)または?(後方検索)

 プラグイン

プラグインマネージャ

git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

~/.tmux.conf

# List of plugins
 set -g @plugin 'tmux-plugins/tpm'
 set -g @plugin 'tmux-plugins/tmux-sensible'

# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run -b '~/.tmux/plugins/tpm/tpm'

copycat

検索で正規表現を使えるようになる。
~/.tmux.conf

set -g @plugin 'tmux-plugins/tmux-copycat'

prefix + I

 自動起動

方法1

色々あるけどとりあえず、これでいい。
~/.bashrc

if [[ ! -n $TMUX ]]; then
  tmux new-session && exit
fi

方法2

こんな感じのシェルでもいいかも。
実行するとメニューが表示される。
キー 実行されるもの
enter 何もしない
数字 他にセッションがあるときは、セッション番号を選択してアタッチ。
n tmux を new session で起動。
t tmux を new session で起動。ただし、prefixをC+tにする。

NEW_SESSION=n
OTHER_PREFIX=t
ids="`tmux list-sessions 2> /dev/null`"

echo enter: Do Nothing
echo ${NEW_SESSION}: create new session
echo ${OTHER_PREFIX}: create new session \(prefix C+${OTHER_PREFIX}\)
if [ -n "${ids}" ]; then
  echo "${ids}"
fi
read SEL

if [ -z ${SEL} ]; then
  : # do nothing
  exit 1
elif [ ${SEL} == "${OTHER_PREFIX}" ]; then
  tmux new-session\; set-option prefix C-${OTHER_PREFIX} 
elif [ ${SEL} == "${NEW_SESSION}" ]; then
  tmux new-session
else
  tmux attach-session -t "${SEL}" 
fi


1.8

 # tmux list-keys
 
 # 設定ファイルをリロードする
 bind r source-file ~/.tmux.conf \; display "Reloaded!"
 
 # pane, window    
 bind -n M-p select-pane -t :.-
 bind -n M-@ select-pane -t :.+
 bind -n M-P select-window -t :-
 bind -n M-` select-window -t :+
 
 # Keybind ウィンド分割
 bind 3 split-window -h
 bind | split-window -h
 bind 2 split-window -v
 bind - split-window -v
 
 # メッセージ表示時間
 set-option -g display-time 10000
 set-option -g display-panes-time 10000
 
 # マウス操作
 # set-window-option -g mode-mouse on
 set -g mode-mouse on
 set -g mouse-resize-pane on
 set -g mouse-select-pane on
 set -g mouse-select-window on
 
 #Wondow名の自動設定off
 # set-window-option -g automatic-rename off
 set-option -g allow-rename off
 
 # ステータスバーをトップに配置する
 set-option -g status-position top
 
 # ステータスバー
 set-option -g status-left '[#S]'
 set-option -g status-right '[%Y-%m-%d %H:%M]'
 
 # コピペ
 bind v choose-buffer
 set-window-option -g mode-keys vi


[カテゴリ: OS > Linux]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2019年07月18日 22時35分02秒