consolodate with develop

This commit is contained in:
psox 2021-11-04 15:12:19 +00:00
parent b6adf06830
commit 85ec09df86
2 changed files with 104 additions and 0 deletions

View File

@ -0,0 +1,70 @@
# Default plugins list. By default this file is symlinked into ~/.config/tmux/plugins.conf.
#
# If you wish to change your plugin list, remove the symlink and add your own plugins.
# You can copy this file in as a starting point via:
#
# cp -vf "$PSOXIZSH/tmux/fragment/plugins.conf" ~/.config/tmux/plugins.conf
#
# If you'd like to check out the available plugins the following git repo keeps a list
#
# github.com/tmux-plugins/list
# ===== PLUGINS =====
# This must always come first in the plugin list
set -g @plugin 'tmux-plugins/tpm'
# === Prefix highlight
# Flashes a small indicator when {prefix} is hit, or when in certain tmux modes
set -g @plugin 'tmux-plugins/tmux-prefix-highlight'
# Options
set -g @prefix_highlight_prefix_prompt 'Pre' # default is 'Wait'
set -g @prefix_highlight_fg 'yellow' # default is 'colour231'
set -g @prefix_highlight_bg 'default' # default is 'colour04'
# set -g @prefix_highlight_show_copy_mode 'on' # display prefix in copy mode
# set -g @prefix_highlight_copy_prompt 'Copy' # copy display text
# set -g @prefix_highlight_copy_mode_attr 'fg=default,bg=yellow' # copy colors
# set -g @prefix_highlight_show_sync_mode 'on' # display prefix in window sync mode
# set -g @prefix_highlight_sync_prompt 'Sync' # sync display text
# set -g @prefix_highlight_sync_mode_attr 'fg=default,bg=yellow' # sync colors
# set -g @prefix_highlight_output_prefix '< ' # static prefix to add to prompt
# set -g @prefix_highlight_output_suffix ' >' # static suffix to add to prompt
# set -g @prefix_highlight_empty_has_affixes 'off' # switch to 'on' to allow affixes on empty prompts
# set -g @prefix_highlight_empty_prompt 'Tmux' # placeholder text when prompt isn't in use
# set -g @prefix_highlight_empty_attr 'fg=default,bg=default' # empty colors
# ===
# === Copycat
# Provides quick and easy keyboard text search and copying to
# tmux buffers
set -g @plugin 'tmux-plugins/tmux-copycat'
# Options
# set -g @copycat_search '/' # basic
# set -g @copycat_git_special 'C-g' # git (SHA)
# set -g @copycat_file_search 'C-f' # file path
# set -g @copycat_url_search 'C-u' # URL
# set -g @copycat_digit_search 'C-d' # number
# set -g @copycat_hash_search 'C-h' # hash
# set -g @copycat_ip_search 'C-i' # IP
# ===
# === Yank
# Expands on Copycat adding keybinds for yanking into the system
# clipboard. Requires OS specific clipboard managers.
set -g @plugin 'tmux-plugins/tmux-yank'
# Options
# set -g @override_copy_command 'my-clipboard-copy --some-arg' # overide the default copy command, must accept input to stdin
# set -g @yank_selection 'clipboard' # or 'primary' or 'secondary'
# set -g @yank_selection_mouse 'clipboard' # or 'primary' or 'secondary'
# set -g @yank_action 'copy-pipe-and-cancel' # or 'copy-pipe' to remain in copy mode after yanking
# set -g @yank_with_mouse 'on' # or 'off' by default yank will copy mouse selected text
# ===
# vim: filetype=tmux

View File

@ -0,0 +1,34 @@
# This fragmenet is meant to be used with a Vim plugin and provides unified movement
# between Vim window/panes and tmux panes. It requires you install the following in
# Vim to function correctly:
#
# github.com/christoomey/vim-tmux-navigator
#
# Include it by adding the following snippet to your early (or late) tmux.conf:
#
# source-file "$PSOXIZSH/tmux/fragment/vim-movement.conf"
# Checks for if we're inside a Vim/FZF window
is_vim="ps -o state= -o comm= -t '#{pane_tty}' \
| grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'"
is_fzf="ps -o state= -o comm= -t '#{pane_tty}' \
| grep -iqE '^[^TXZ ]+ +(\\S+\\/)?fzf$'"
# Binds Ctrl-<h,j,k,l> to left,down,up,right movements
bind -n C-h run "($is_vim && tmux send-keys C-h) \
|| tmux select-pane -L"
bind -n C-j run "($is_vim && tmux send-keys C-j) \
|| ($is_fzf && tmux send-keys C-j) \
|| tmux select-pane -D"
bind -n C-k run "($is_vim && tmux send-keys C-k) \
|| ($is_fzf && tmux send-keys C-k) \
|| tmux select-pane -U"
bind -n C-l run "($is_vim && tmux send-keys C-l) \
|| tmux select-pane -R"
bind-key -T copy-mode-vi 'C-h' select-pane -L
bind-key -T copy-mode-vi 'C-j' select-pane -D
bind-key -T copy-mode-vi 'C-k' select-pane -U
bind-key -T copy-mode-vi 'C-l' select-pane -R
# Rebinds pane clear which overwritten by the above to {prefix} Ctrl-l
bind C-l send-keys 'C-l'