tmux를 덜 짜증나게 만들기

6879 단어 tutoriallinuxtooling
tmux. 그러나 기본적으로 기본적으로 사용할 수 없습니다. 사용해 보세요. tmux 구성 파일이 없는 베어 환경에서 시작하세요. 색상이 없습니다. 이상한 키 바인딩 문제가 있습니다. vim 클립보드가 깨집니다. 마우스로 텍스트를 복사하면 제대로 작동하지 않습니다(활성 창뿐만 아니라 모든 창에서 임의의 텍스트를 복사하려는 경우가 아니라면). 요컨대, 끔찍한 사용자 경험을 갖게 될 것입니다.

나는 어리석게도 tmux가 내 기본 터미널 에뮬레이터의 모든 장점을 물려받을 것이라고 생각했습니다. 결과적으로 tmux는 기존 터미널에 대한 추가 기능보다 훨씬 더 독립형 터미널처럼 작동합니다. 사용에 대해 아무 것도 가정하지 않는 도구를 존중할 수 있지만 제대로 작동하려면 일부 구성을 수행해야 함을 의미합니다. 내가 한 일은 다음과 같습니다.

1. 색상 활성화



이것을 .tmux.conf에 추가하십시오.

set -g default-terminal "xterm-256color"


2. 이상한 키 바인딩 문제 수정



나를 위해 이것을 내 구성에 추가하면 해결되었습니다.

set-window-option -g xterm-keys 


오랜 시간이 지나서 어떤 문제가 해결되었는지 완전히 확신할 수 없지만 제 생각에는 it was this

3. 마우스로 텍스트 강조 표시 및 복사



신용 this SO post

.tmux.conf에 다음을 추가하십시오.

set -g mouse on
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'select-pane -t=; copy-mode -e; send-keys -M'"
bind -n WheelDownPane select-pane -t= \; send-keys -M
bind -n C-WheelUpPane select-pane -t= \; copy-mode -e \; send-keys -M
bind -T copy-mode-vi    C-WheelUpPane   send-keys -X halfpage-up
bind -T copy-mode-vi    C-WheelDownPane send-keys -X halfpage-down
bind -T copy-mode-emacs C-WheelUpPane   send-keys -X halfpage-up
bind -T copy-mode-emacs C-WheelDownPane send-keys -X halfpage-down


xclip을 설치하고

sudo apt install xclip


마우스 모드를 켜면 마우스 휠로 각 창을 스크롤하고 마우스로 창을 선택할 수도 있습니다.

4. 접두사를 `로 설정



접두사가 단일 키인 것을 선호합니다. 접두사로 `를 사용하고 키를 빠르게 두 번 누를 때 입력할 수 있도록 하는 것이 우아한 해결책이라고 생각했습니다.

unbind C-b
set -g prefix `
bind-key ` send-prefix


5. 테마 추가



반드시 필요한 것은 아니지만 tmux에 테마를 추가하면 정말 멋져 보입니다. 그러나 기능적인 면에서 일부 테마는 기본적으로 하단 상태 표시줄에 표시되는 정보를 업데이트하여 사용자 경험을 실제로 향상시킬 수 있습니다.

나는 tmux-themepack에서 간단한 전력선 테마로 갔다.

함께 모아서



내 .tmux.conf는 다음과 같습니다.

set-window-option -g xterm-keys on
set -g default-terminal "xterm-256color"
unbind C-b
set -g prefix `
bind-key ` send-prefix

source-file "${HOME}/repos/tmux-themepack/powerline/default/purple.tmuxtheme"

set -g mouse on
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'select-pane -t=; copy-mode -e; send-keys -M'"
bind -n WheelDownPane select-pane -t= \; send-keys -M
bind -n C-WheelUpPane select-pane -t= \; copy-mode -e \; send-keys -M
bind -T copy-mode-vi    C-WheelUpPane   send-keys -X halfpage-up
bind -T copy-mode-vi    C-WheelDownPane send-keys -X halfpage-down
bind -T copy-mode-emacs C-WheelUpPane   send-keys -X halfpage-up
bind -T copy-mode-emacs C-WheelDownPane send-keys -X halfpage-down

# To copy, left click and drag to highlight text in yellow, 
# once you release left click yellow text will disappear and will automatically be available in clibboard
# # Use vim keybindings in copy mode
setw -g mode-keys vi
# Update default binding of `Enter` to also use copy-pipe
unbind -T copy-mode-vi Enter
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -selection c"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -in -selection clipboard"

좋은 웹페이지 즐겨찾기