diff --git a/.tmux.conf b/.tmux.conf new file mode 100644 index 0000000..76ff728 --- /dev/null +++ b/.tmux.conf @@ -0,0 +1,72 @@ +#set -g mouse on + +# TrueColors +set-option -sa terminal-overrides ",xterm*:Tc" +set -g status-position top + +unbind % +bind | split-window -h -c "#{pane_current_path}" + +unbind '"' +bind - split-window -v -c "#{pane_current_path}" + +unbind r +bind r source-file ~/.tmux.conf + +bind -r m resize-pane -Z + +unbind C-b +# New Prefix is spacebar +set -g prefix C-Space +bind C-Space send-prefix + +# Vim style pane selection +#bind h select-pane -L +#bind j select-pane -D +#bind k select-pane -U +#bind l select-pane -R + +#tmux copy-mode is a tmux mode that lets you scroll, search, copy, and jump your way through a pane. There are a ton of keybindings for copy-mode, the main ones you will need to know are / for searching down ? for searching up, n for next item, space for starting a selection, and enter to copy the selection. Arrow keys will be used for navigation unless you have specified vi mode, then it will be hjkl. +bind-key [ copy-mode +setw -g mode-keys vi + +# Start windows and panes at 1, not 0 +set -g base-index 1 +set -g pane-base-index 1 +set-window-option -g pane-base-index 1 +set-option -g renumber-windows on + +# Use Alt-arrow keys without prefix key to switch panes +bind -n M-Left select-pane -L +bind -n M-Right select-pane -R +bind -n M-Up select-pane -U +bind -n M-Down select-pane -D + +# Shift arrow to switch windows +bind -n S-Left previous-window +bind -n S-Right next-window + +# Shift Alt vim keys to switch windows +bind -n M-H previous-window +bind -n M-L next-window + +set -g @catppuccin_flavour 'mocha' + +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'tmux-plugins/tmux-sensible' +#set -g @plugin 'christoomey/vim-tmux-navigator' +set -g @plugin 'dreamsofcode-io/catppuccin-tmux' +set -g @plugin 'tmux-plugins/tmux-yank' +set -g @plugin 'tmux-plugins/tmux-resurrect' + +# set vi-mode +set-window-option -g mode-keys vi +# keybindings +bind-key -T copy-mode-vi v send-keys -X begin-selection +bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle +bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel + +#bind-key -r i run-shell "tmux new ~/scripts/helper/cht.sh" + +# INIT TPM (Keep as last LINE!!) +run '~/.tmux/plugins/tpm/tpm' diff --git a/scripts/helper/cht.sh b/scripts/helper/cht.sh new file mode 100755 index 0000000..0ba3537 --- /dev/null +++ b/scripts/helper/cht.sh @@ -0,0 +1,13 @@ +#!/bin/bash +languages=`echo "golang lua cpp c typescript nodejs bash python3" | tr ' ' '\n'` +core_utils=`echo "xargs find mv sed awk git cmake" | tr ' ' '\n'` + +selected=`printf "$languages\n$core_utils" | fzf` +read -p "query: " query + +if printf $languages | grep -qs $selected; then + curl cht.sh/$selected/`echo $query | tr ' ' '+'` +else + curl cht.sh/$selected~$query +fi +read -p "Hit enter to exit" hit