diff --git a/lazyvim/README.md b/lazyvim/README.md index 20b1003..a016972 100644 --- a/lazyvim/README.md +++ b/lazyvim/README.md @@ -101,6 +101,12 @@ sudo apt install fd-find ### Mason (Language Servers) Enter Mason UI view from nvim: `:Mason`. Enter `g?` to toggle help page if you've forgotten the hotkeys. +Language servers include common hotkeys, including: +- `gd` → go to definition +- `K` → hover info +- `rn` → rename +- and use `:close` to close any LSP hover window. + #### Java I installed this via :LazyExtras. Search for `lang.java`, which installs required plugins. diff --git a/tmux/README.md b/tmux/README.md index e36e82d..fcca1cd 100644 --- a/tmux/README.md +++ b/tmux/README.md @@ -28,5 +28,22 @@ Tmux Package Manager is de facto package manager for tmux. - When updating `tmux.conf`, styling stays after the directives that set them are removed. This means you might have to `tmux kill-server` in addition to `tmux source ~/.tmux.conf`. ## Shortcut Reference -`` key combo is `C-a` by default (Ctrl + a), changed from standard `C-b`. +My `` key combo is `C-Space`, changed from standard `C-b`. + +### General + +` + ` + +### Windows +- ` + c`: Create a new window. +- ` + w`: Choose a window from a list (visual selector). +- ` + n`: Move to the next window. +- ` + p`: Move to the previous window. +- ` + l`: Move to the last (previously selected) window. +- ` + 0-9`: Select window 0 through 9. +- ` + ,`: Rename the current window. ``` + + +## References +- https://hamvocke.com/blog/a-guide-to-customizing-your-tmux-conf/ diff --git a/tmux/tmux.conf b/tmux/tmux.conf index 61b5c15..4951fcc 100644 --- a/tmux/tmux.conf +++ b/tmux/tmux.conf @@ -2,37 +2,19 @@ # @jrunyan # https://github.com/runyanjake/tmux -### Theme -# Window -set -g set-titles on -set -g set-titles-string '#W - tmux' -set-option -g base-index 1 -set-option -g window-status-style "bg=#1b1f32,fg=#9094a7" -set-option -g window-status-current-style "bg=#1b1f32,fg=#67c9e4,bold" -set -g automatic-rename on -set -g automatic-rename-format "#{pane_current_command}" - -# Pane -set -g pane-base-index 1 -set -g pane-border-style "bg=#1b1f32,fg=#99e9ff" -set -g pane-active-border-style "bg=#1b1f32,fg=#8b9efd" - -# Status Bar -set-option -g status-style "bg=#51587b" -set -g status-position bottom -set -g status-left-length 40 -set -g status-right-length 100 -set -g status-left "#[fg=#75d5f0]#S #[bg=#252a41] " -set -g status-right "#[fg=#444b6f]#(date +'%H:%M') #[bg=#5e6587]" - -### Functionality +#------------------------------------------------ +### Function ------------------------------------ +#------------------------------------------------ # Set custom prefix key unbind C-b set -g prefix C-Space bind C-Space send-prefix +# Reload the tmux configuration with + r +bind r source-file ~/.tmux.conf \; display-message "Reloaded tmux.conf!" + # Split panes using | and - bind | split-window -h bind - split-window -v @@ -45,9 +27,72 @@ set -g mouse on # Allow the terminal to scrollback set -g history-limit 10000 -### Plugins +# Automatically set window titles +set -g automatic-rename on +set-window-option -g automatic-rename on +#set -g automatic-rename-format "#{pane_current_command}" -# List of plugins +# Start window numbers from 1 instead of 0 +set -g base-index 1 +set-window-option -g pane-base-index 1 + +# switch panes using Alt-arrow without prefix +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 + + +#------------------------------------------------ +### Style --------------------------------------- +#------------------------------------------------ + +# don't do anything when a 'bell' rings +set -g visual-activity off +set -g visual-bell off +set -g visual-silence off +setw -g monitor-activity off +set -g bell-action none + +# clock mode +setw -g clock-mode-colour yellow + +# copy mode +setw -g mode-style 'fg=black bg=red bold' + +# panes +set -g pane-border-style 'fg=red' +set -g pane-active-border-style 'fg=yellow' + +# statusbar +set -g status-position bottom +set -g status-justify left +set -g status-style 'fg=red' + +set -g status-left '' +set -g status-left-length 10 + +set -g status-right-style 'fg=black bg=yellow' +set -g status-right '%Y-%m-%d %H:%M ' +set -g status-right-length 50 + +setw -g window-status-current-style 'fg=black bg=red' +setw -g window-status-current-format ' #I #W #F ' + +setw -g window-status-style 'fg=red bg=black' +setw -g window-status-format ' #I #[fg=white]#W #[fg=yellow]#F ' + +setw -g window-status-bell-style 'fg=yellow bg=red bold' + +# messages +set -g message-style 'fg=yellow bg=red bold' + + +#------------------------------------------------ +### Plugins ------------------------------------- +#------------------------------------------------ + +# Plugins List set -g @plugin 'tmux-plugins/tpm' set -g @plugin 'tmux-plugins/tmux-sensible'