From 69f87fdc8ea2ba802f95465a46d7b4dd23cf1373 Mon Sep 17 00:00:00 2001 From: moparisthebest Date: Wed, 4 Oct 2023 00:55:20 -0400 Subject: [PATCH] many more tweaks --- alacritty/alacritty.yml | 10 ++- bashrc | 174 ++++++++++++++++++++++++++++++++++++++++ bin/run-from-helix | 4 + helix/config.toml | 29 ++++--- zellij/config.kdl | 159 ++++++++++++++++++------------------ 5 files changed, 285 insertions(+), 91 deletions(-) create mode 100755 bashrc create mode 100755 bin/run-from-helix diff --git a/alacritty/alacritty.yml b/alacritty/alacritty.yml index 62433cd..a497964 100644 --- a/alacritty/alacritty.yml +++ b/alacritty/alacritty.yml @@ -68,7 +68,7 @@ window: # # Window opacity as a floating point number from `0.0` to `1.0`. # The value `0.0` is completely transparent and `1.0` is opaque. - #opacity: 1.0 + opacity: 0.8 # Startup Mode (changes require restart) # @@ -392,7 +392,7 @@ selection: #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t" # When set to `true`, selected text will be copied to the primary clipboard. - save_to_clipboard: false + save_to_clipboard: true #cursor: # Cursor style @@ -768,7 +768,7 @@ selection: # # If the same trigger is assigned to multiple actions, all of them are executed # in the order they were defined in. -#key_bindings: +key_bindings: #- { key: Paste, action: Paste } #- { key: Copy, action: Copy } #- { key: L, mods: Control, action: ClearLogNotice } @@ -854,6 +854,10 @@ selection: #- { key: NumpadAdd, mods: Control, action: IncreaseFontSize } #- { key: Minus, mods: Control, action: DecreaseFontSize } #- { key: NumpadSubtract, mods: Control, action: DecreaseFontSize } + + - { key: F5, action: DecreaseFontSize } + - { key: F6, action: IncreaseFontSize } + - { key: F7, action: ResetFontSize } # (Windows only) #- { key: Return, mods: Alt, action: ToggleFullscreen } diff --git a/bashrc b/bashrc new file mode 100755 index 0000000..916adfd --- /dev/null +++ b/bashrc @@ -0,0 +1,174 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +# set PATH so it includes user's private bin if it exists +if [ -d "$HOME/bin" ] ; then + PATH="$HOME/bin:$PATH" +fi + +# don't put duplicate lines in the history. See bash(1) for more options +# ... or force ignoredups and ignorespace +HISTCONTROL=ignoredups:ignorespace + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# make less more friendly for non-text input files, see lesspipe(1) +[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color | alacritty) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +#force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# some more ls aliases +alias ll='ls -alF' +alias la='ls -A' +alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if [ -f /etc/bash_completion ] && ! shopt -oq posix; then + . /etc/bash_completion +fi + +function pdfcat () { + gs -q -sPAPERSIZE=letter -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=out.pdf "$@" +} + +# https://incenp.org/notes/2015/gnupg-for-ssh-authentication.html +gpg-connect-agent /bye +export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)" + +function mkcd() { + [ -n "$1" ] && mkdir -p "$@" && cd "$1"; +} + +# https://unix.stackexchange.com/questions/5366/command-line-completion-from-command-history +# Key bindings, up/down arrow searches through history +bind '"\e[A": history-search-backward' +bind '"\e[B": history-search-forward' +bind '"\eOA": history-search-backward' +bind '"\eOB": history-search-forward' + +#if [ -d "$HOME/bin/lib" ] ; then +# export LD_LIBRARY_PATH="$HOME/bin/lib:$LD_LIBRARY_PATH" +#fi + +export EDITOR=nano + +which hx &>/dev/null && export EDITOR=hx + +export VISUAL=$EDITOR + +export PATH="$PATH:$HOME/.cargo/bin" + +export PATH="$PATH:/mnt/winegames/bin" + +#alias cfmt='cargo fmt -- --config imports_granularity=crate' +function cfmt() { +if [ -f rustfmt.toml]; then + cargo fmt -- --config-path rustfmt.toml + exit $? +fi +if [ -f .rustfmt.toml]; then + cargo fmt -- --config-path .rustfmt.toml + exit $? +fi +if [ -f rustfmt.nightly.toml]; then + cargo +nightly fmt -- --config-path rustfmt.nightly.toml + exit $? +fi +if [ -f .rustfmt.nightly.toml]; then + cargo +nightly fmt -- --config-path .rustfm.nightly.toml + exit $? +fi +# ok then just run my preferred format +cargo fmt -- --config imports_granularity=crate +} + +function spurdo() { +sed "s/kek/geg/gI;s/epic/ebin/gI;s/america/clapistan/gI;s/right/rite/gI;s/your/ur/gI;s/\./ :DD/gI;s/'//gI;s/,/XDD/gI;s/wh/w/gI;s/th/d/gI;s/af/ab/gI;s/ap/ab/gI;s/ca/ga/gI;s/ck/gg/gI;s/co/go/gI;s/ev/eb/gI;s/ex/egz/gI;s/et/ed/gI;s/iv/ib/gI;s/it/id/gI;s/ke/ge/gI;s/nt/nd/gI;s/op/ob/gI;s/ot/od/gI;s/po/bo/gI;s/pe/be/gI;s/pi/bi/gI;s/up/ub/gI;s/va/ba/gI;s/ck/gg/gI;s/cr/gr/gI;s/kn/gn/gI;s/lt/ld/gI;s/mm/m/gI;s/nt/dn/gI;s/pr/br/gI;s/ts/dz/gI;s/tr/dr/gI;s/bs/bz/gI;s/ds/dz/gI;s/es/es/gI;s/fs/fz/gI;s/gs/gz/gI;s/ is/iz/gI;s/as/az/gI;s/ls/lz/gI;s/ms/mz/gI;s/ns/nz/gI;s/rs/rz/gI;s/ss/sz/gI;s/ts/tz/gI;s/us/uz/gI;s/ws/wz/gI;s/ys/yz/gI;s/alk/olk/gI;s/ing/ign/gI;s/ic/ig/gI;s/ng/nk/gI" \ +<<< "${@:-$(cat /dev/stdin)}" +} + +function randomcase() { +while IFS='' read -r -d '' -n 1 char +do + printf %s "$char" | ( [ $(( $RANDOM % 2 )) -eq 0 ] && tr '[[:lower:]]' '[[:upper:]]' || tr '[[:upper:]]' '[[:lower:]]' ) +done <<< "${@:-$(cat /dev/stdin)}" +} + +#export RUSTC_WRAPPER=sccache +export CARGO_TARGET_DIR=/tmp/cargo-target diff --git a/bin/run-from-helix b/bin/run-from-helix new file mode 100755 index 0000000..b14be35 --- /dev/null +++ b/bin/run-from-helix @@ -0,0 +1,4 @@ +#/bin/bash + +exec cargo test + diff --git a/helix/config.toml b/helix/config.toml index 935a8d6..49c67f7 100644 --- a/helix/config.toml +++ b/helix/config.toml @@ -5,6 +5,11 @@ true-color = true # these are additions I like "C-l" = "page_up" # ctrl+move_visual_line_up is page up "C-k" = "page_down" # ctrl+move_visual_line_down is page down +"N" = "page_up" # shift+move_visual_line_up is page up +"T" = "page_down" # shift+move_visual_line_down is page down + +"F8" = ":open ~/.config/bin/run-from-helix" +"F9" = ":sh zellij r -f -- ~/.config/bin/run-from-helix" # these are non-standard changes, original dvorak commented with #x @@ -62,7 +67,7 @@ true-color = true "A-C" = "copy_selection_on_prev_line" # "A-C" "o" = "select_regex" # "s" "A-s" = "split_selection_on_newline" # "A-s" -# error? "A-minus" = "merge_selections" # "A-minus" +"A-minus" = "merge_selections" # "A-minus" "A-_" = "merge_consecutive_selections" # "A-_" "O" = "split_selection" # "S" #x "s" = "collapse_selection" # ";" @@ -75,8 +80,8 @@ true-color = true "A-left" = "select_prev_sibling" # "A-p" | "A-left" "A-n" = "select_next_sibling" # "A-n" | "A-right" "A-right" = "select_next_sibling" # "A-n" | "A-right" -# error? "A-e" = "move_parent_node_end" # "A-e" -# error? "A-b" = "move_parent_node_start" # "A-b" +"A-e" = "move_parent_node_end" # "A-e" +"A-b" = "move_parent_node_start" # "A-b" "%" = "select_all" # "%" "q" = "extend_line_below" # "x" "Q" = "extend_to_line_bounds" # "X" @@ -101,7 +106,7 @@ true-color = true "]" = "format_selections" # "=" "H" = "join_selections" # "J" "A-J" = "join_selections_space" # "A-J" -"T" = "keep_selections" # "K" +# disable for now because made page down "T" = "keep_selections" # "K" "A-K" = "remove_selections" # "A-K" "w" = "keep_primary_selection" # "," "A-," = "remove_primary_selection" # "A-," @@ -390,8 +395,8 @@ true-color = true "<" = "extend_next_long_word_start" # "W" "X" = "extend_prev_long_word_start" # "B" ">" = "extend_next_long_word_end" # "E" -# error? "A-e" = "extend_parent_node_end" # "A-e" -# error? "A-b" = "extend_parent_node_start" # "A-b" +"A-e" = "extend_parent_node_end" # "A-e" +"A-b" = "extend_parent_node_start" # "A-b" "b" = "extend_search_next" # "n" "B" = "extend_search_prev" # "N" "y" = "extend_till_char" # "t" @@ -410,6 +415,8 @@ true-color = true # these are additions I like "C-l" = "page_up" # ctrl+move_visual_line_up is page up "C-k" = "page_down" # ctrl+move_visual_line_down is page down +"N" = "page_up" # shift+move_visual_line_up is page up +"T" = "page_down" # shift+move_visual_line_down is page down # these are non-standard changes, original dvorak commented with #x @@ -461,7 +468,7 @@ true-color = true "A-C" = "copy_selection_on_prev_line" # "A-C" "o" = "select_regex" # "s" "A-s" = "split_selection_on_newline" # "A-s" -# error? "A-minus" = "merge_selections" # "A-minus" +"A-minus" = "merge_selections" # "A-minus" "A-_" = "merge_consecutive_selections" # "A-_" "O" = "split_selection" # "S" #x "s" = "collapse_selection" # ";" @@ -474,8 +481,8 @@ true-color = true "A-left" = "select_prev_sibling" # "A-p" | "A-left" "A-n" = "select_next_sibling" # "A-n" | "A-right" "A-right" = "select_next_sibling" # "A-n" | "A-right" -# error? "A-e" = "move_parent_node_end" # "A-e" -# error? "A-b" = "move_parent_node_start" # "A-b" +#s "A-e" = "move_parent_node_end" # "A-e" +#s "A-b" = "move_parent_node_start" # "A-b" "%" = "select_all" # "%" "q" = "extend_line_below" # "x" "Q" = "extend_to_line_bounds" # "X" @@ -500,7 +507,7 @@ true-color = true "]" = "format_selections" # "=" "H" = "join_selections" # "J" "A-J" = "join_selections_space" # "A-J" -"T" = "keep_selections" # "K" +# disable for now because made page down "T" = "keep_selections" # "K" "A-K" = "remove_selections" # "A-K" "w" = "keep_primary_selection" # "," "A-," = "remove_primary_selection" # "A-," @@ -793,7 +800,7 @@ true-color = true "del" = "delete_char_forward" # "C-d" | "del" "C-j" = "insert_newline" # "C-j" | "ret" "ret" = "insert_newline" # "C-j" | "ret" -# error? "tab" = "smart_tab" # "tab" +"tab" = "smart_tab" # "tab" "S-tab" = "insert_tab" # "S-tab" "up" = "move_visual_line_up" # "up" "down" = "move_visual_line_down" # "down" diff --git a/zellij/config.kdl b/zellij/config.kdl index 3004bcd..195c4dd 100644 --- a/zellij/config.kdl +++ b/zellij/config.kdl @@ -1,6 +1,7 @@ // If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true" keybinds { normal { + // for now alacritty is in charge of copying // uncomment this and adjust key if using copy_on_select=false // bind "Alt c" { Copy; } } @@ -10,85 +11,86 @@ keybinds { resize { bind "Ctrl n" { SwitchToMode "Normal"; } bind "h" "Left" { Resize "Increase Left"; } - bind "j" "Down" { Resize "Increase Down"; } - bind "k" "Up" { Resize "Increase Up"; } - bind "l" "Right" { Resize "Increase Right"; } + bind "s" "Down" { Resize "Increase Down"; } + bind "t" "Up" { Resize "Increase Up"; } + bind "n" "Right" { Resize "Increase Right"; } bind "H" { Resize "Decrease Left"; } - bind "J" { Resize "Decrease Down"; } - bind "K" { Resize "Decrease Up"; } - bind "L" { Resize "Decrease Right"; } - bind "=" "+" { Resize "Increase"; } - bind "-" { Resize "Decrease"; } + bind "S" { Resize "Decrease Down"; } + bind "T" { Resize "Decrease Up"; } + bind "N" { Resize "Decrease Right"; } + bind "#" "+" { Resize "Increase"; } + bind "!" { Resize "Decrease"; } } pane { bind "Ctrl p" { SwitchToMode "Normal"; } bind "h" "Left" { MoveFocus "Left"; } - bind "l" "Right" { MoveFocus "Right"; } - bind "j" "Down" { MoveFocus "Down"; } - bind "k" "Up" { MoveFocus "Up"; } - bind "p" { SwitchFocus; } - bind "n" { NewPane; SwitchToMode "Normal"; } - bind "d" { NewPane "Down"; SwitchToMode "Normal"; } - bind "r" { NewPane "Right"; SwitchToMode "Normal"; } - bind "x" { CloseFocus; SwitchToMode "Normal"; } - bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; } - bind "z" { TogglePaneFrames; SwitchToMode "Normal"; } - bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; } - bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; } - bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0;} + bind "s" "Right" { MoveFocus "Right"; } + bind "t" "Down" { MoveFocus "Down"; } + bind "n" "Up" { MoveFocus "Up"; } + bind "l" { SwitchFocus; } + bind "b" { NewPane; SwitchToMode "Normal"; } + bind "e" { NewPane "Down"; SwitchToMode "Normal"; } + bind "p" { NewPane "Right"; SwitchToMode "Normal"; } + bind "q" { CloseFocus; SwitchToMode "Normal"; } + bind "u" { ToggleFocusFullscreen; SwitchToMode "Normal"; } + bind ";" { TogglePaneFrames; SwitchToMode "Normal"; } + bind "," { ToggleFloatingPanes; SwitchToMode "Normal"; } + bind "." { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; } + bind "j" { SwitchToMode "RenamePane"; PaneNameInput 0;} } move { bind "Ctrl h" { SwitchToMode "Normal"; } - bind "n" "Tab" { MovePane; } - bind "p" { MovePaneBackwards; } + bind "b" "Tab" { MovePane; } + bind "l" { MovePaneBackwards; } bind "h" "Left" { MovePane "Left"; } - bind "j" "Down" { MovePane "Down"; } - bind "k" "Up" { MovePane "Up"; } - bind "l" "Right" { MovePane "Right"; } + bind "s" "Down" { MovePane "Down"; } + bind "t" "Up" { MovePane "Up"; } + bind "n" "Right" { MovePane "Right"; } } tab { bind "Ctrl t" { SwitchToMode "Normal"; } - bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; } - bind "h" "Left" "Up" "k" { GoToPreviousTab; } - bind "l" "Right" "Down" "j" { GoToNextTab; } - bind "n" { NewTab; SwitchToMode "Normal"; } - bind "x" { CloseTab; SwitchToMode "Normal"; } - bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; } - bind "b" { BreakPane; SwitchToMode "Normal"; } - bind "]" { BreakPaneRight; SwitchToMode "Normal"; } - bind "[" { BreakPaneLeft; SwitchToMode "Normal"; } - bind "1" { GoToTab 1; SwitchToMode "Normal"; } - bind "2" { GoToTab 2; SwitchToMode "Normal"; } - bind "3" { GoToTab 3; SwitchToMode "Normal"; } - bind "4" { GoToTab 4; SwitchToMode "Normal"; } - bind "5" { GoToTab 5; SwitchToMode "Normal"; } - bind "6" { GoToTab 6; SwitchToMode "Normal"; } - bind "7" { GoToTab 7; SwitchToMode "Normal"; } - bind "8" { GoToTab 8; SwitchToMode "Normal"; } - bind "9" { GoToTab 9; SwitchToMode "Normal"; } + bind "p" { SwitchToMode "RenameTab"; TabNameInput 0; } + bind "h" "Left" "Up" "t" { GoToPreviousTab; } + bind "s" "Right" "Down" { GoToNextTab; } + bind "b" "n" { NewTab; SwitchToMode "Normal"; } + bind "q" { CloseTab; SwitchToMode "Normal"; } + bind "o" { ToggleActiveSyncTab; SwitchToMode "Normal"; } + bind "x" { BreakPane; SwitchToMode "Normal"; } + bind "=" { BreakPaneRight; SwitchToMode "Normal"; } + bind "/" { BreakPaneLeft; SwitchToMode "Normal"; } + bind "1" "&" { GoToTab 1; SwitchToMode "Normal"; } + bind "2" "[" { GoToTab 2; SwitchToMode "Normal"; } + bind "3" "{" { GoToTab 3; SwitchToMode "Normal"; } + bind "4" "}" { GoToTab 4; SwitchToMode "Normal"; } + bind "5" "(" { GoToTab 5; SwitchToMode "Normal"; } + bind "6" "@" { GoToTab 6; SwitchToMode "Normal"; } + bind "7" "*" { GoToTab 7; SwitchToMode "Normal"; } + bind "8" ")" { GoToTab 8; SwitchToMode "Normal"; } + bind "9" "+" { GoToTab 9; SwitchToMode "Normal"; } bind "Tab" { ToggleTab; } } scroll { bind "Ctrl s" { SwitchToMode "Normal"; } - bind "e" { EditScrollback; SwitchToMode "Normal"; } - bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; } + bind "." { EditScrollback; SwitchToMode "Normal"; } + bind "o" { SwitchToMode "EnterSearch"; SearchInput 0; } bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; } - bind "j" "Down" { ScrollDown; } - bind "k" "Up" { ScrollUp; } - bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; } - bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; } - bind "d" { HalfPageScrollDown; } - bind "u" { HalfPageScrollUp; } + bind "t" "Down" { ScrollDown; } + bind "n" "Up" { ScrollUp; } + bind "Ctrl k" "PageDown" "Right" "T" { PageScrollDown; } + bind "Ctrl l" "PageUp" "Left" "N" { PageScrollUp; } + bind "e" { HalfPageScrollDown; } + bind "g" { HalfPageScrollUp; } + // for now alacritty is in charge of copying // uncomment this and adjust key if using copy_on_select=false // bind "Alt c" { Copy; } } search { bind "Ctrl s" { SwitchToMode "Normal"; } bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; } - bind "j" "Down" { ScrollDown; } - bind "k" "Up" { ScrollUp; } - bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; } - bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; } + bind "t" "Down" { ScrollDown; } + bind "n" "Up" { ScrollUp; } + bind "Ctrl k" "PageDown" "Right" "T" { PageScrollDown; } + bind "Ctrl l" "PageUp" "Left" "N" { PageScrollUp; } bind "d" { HalfPageScrollDown; } bind "u" { HalfPageScrollUp; } bind "n" { Search "down"; } @@ -112,8 +114,8 @@ keybinds { session { bind "Ctrl o" { SwitchToMode "Normal"; } bind "Ctrl s" { SwitchToMode "Scroll"; } - bind "d" { Detach; } - bind "w" { + bind "e" { Detach; } + bind "," { LaunchOrFocusPlugin "zellij:session-manager" { floating true move_to_focused_tab true @@ -122,36 +124,36 @@ keybinds { } } tmux { - bind "[" { SwitchToMode "Scroll"; } + bind "/" { SwitchToMode "Scroll"; } bind "Ctrl b" { Write 2; SwitchToMode "Normal"; } - bind "\"" { NewPane "Down"; SwitchToMode "Normal"; } - bind "%" { NewPane "Right"; SwitchToMode "Normal"; } - bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; } - bind "c" { NewTab; SwitchToMode "Normal"; } - bind "," { SwitchToMode "RenameTab"; } - bind "p" { GoToPreviousTab; SwitchToMode "Normal"; } - bind "n" { GoToNextTab; SwitchToMode "Normal"; } + bind "_" { NewPane "Down"; SwitchToMode "Normal"; } + bind "(" { NewPane "Right"; SwitchToMode "Normal"; } + bind ";" { ToggleFocusFullscreen; SwitchToMode "Normal"; } + bind "j" { NewTab; SwitchToMode "Normal"; } + bind "w" { SwitchToMode "RenameTab"; } + bind "l" { GoToPreviousTab; SwitchToMode "Normal"; } + bind "b" { GoToNextTab; SwitchToMode "Normal"; } bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; } bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; } bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; } bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; } bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; } - bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; } - bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; } - bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; } - bind "o" { FocusNextPane; } - bind "d" { Detach; } + bind "s" { MoveFocus "Right"; SwitchToMode "Normal"; } + bind "t" { MoveFocus "Down"; SwitchToMode "Normal"; } + bind "n" { MoveFocus "Up"; SwitchToMode "Normal"; } + bind "r" { FocusNextPane; } + bind "e" { Detach; } bind "Space" { NextSwapLayout; } - bind "x" { CloseFocus; SwitchToMode "Normal"; } + bind "q" { CloseFocus; SwitchToMode "Normal"; } } shared_except "locked" { bind "Ctrl g" { SwitchToMode "Locked"; } bind "Ctrl q" { Quit; } bind "Alt n" { NewPane; } - bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; } - bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; } - bind "Alt j" "Alt Down" { MoveFocus "Down"; } - bind "Alt k" "Alt Up" { MoveFocus "Up"; } + bind "Alt j" "Alt Left" { MoveFocusOrTab "Left"; } + bind "Alt ;" "Alt Right" { MoveFocusOrTab "Right"; } + bind "Alt k" "Alt Down" { MoveFocus "Down"; } + bind "Alt l" "Alt Up" { MoveFocus "Up"; } bind "Alt =" "Alt +" { Resize "Increase"; } bind "Alt -" { Resize "Decrease"; } bind "Alt [" { PreviousSwapLayout; } @@ -271,7 +273,10 @@ plugins { // - true (default) // - false // -// mouse_mode false + +// if this is true, regular select to copy won't work in alacritty, have to hold shift +// but if false, scroll doesn't work, leave it true for now +//mouse_mode false // Configure the scroll back buffer size // This is the number of lines zellij stores for each pane in the scroll back