diff --git a/.tmux.conf b/.tmux.conf index 1780252..c5aa761 100644 --- a/.tmux.conf +++ b/.tmux.conf @@ -6,9 +6,28 @@ bind-key C-a last-window set-window-option -g mode-keys vi set -s escape-time 50 +####################################### +# MOUSE SCROLL WHEEL + # Make mouse useful in copy mode setw -g mouse on +# https://github.com/tmux/tmux/issues/1320#issuecomment-381952082 +# Emulate scrolling by sending up and down keys if these commands are running in the pane +tmux_commands_with_legacy_scroll="nano less more man git" + +bind-key -T root WheelUpPane \ + if-shell -Ft= '#{?mouse_any_flag,1,#{pane_in_mode}}' \ + 'send -Mt=' \ + 'if-shell -t= "#{?alternate_on,true,false} || echo \"#{tmux_commands_with_legacy_scroll}\" | grep -q \"#{pane_current_command}\"" \ + "send -t= Up Up Up" "copy-mode -et="' + +bind-key -T root WheelDownPane \ + if-shell -Ft = '#{?pane_in_mode,1,#{mouse_any_flag}}' \ + 'send -Mt=' \ + 'if-shell -t= "#{?alternate_on,true,false} || echo \"#{tmux_commands_with_legacy_scroll}\" | grep -q \"#{pane_current_command}\"" \ + "send -t= Down Down Down" "send -Mt="' + # copy selection to X windows clipboard #set -g set-clipboard off bind-key -T copy-mode-vi v send -X begin-selection diff --git a/.vimrc b/.vimrc index b87da28..e67edc1 100644 --- a/.vimrc +++ b/.vimrc @@ -88,6 +88,7 @@ nmap :bp\|bd # " AsyncRun " https://github.com/skywind3000/asyncrun.vim +" map :AsyncRun -cwd= -save=2 make map :AsyncRun -cwd= -save=2 make augroup vimrc