many more tweaks

This commit is contained in:
Travis Burtrum 2023-10-04 00:55:20 -04:00
parent 50c4291ce6
commit 69f87fdc8e
5 changed files with 285 additions and 91 deletions

View File

@ -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 }

174
bashrc Executable file
View File

@ -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

4
bin/run-from-helix Executable file
View File

@ -0,0 +1,4 @@
#/bin/bash
exec cargo test

View File

@ -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"

View File

@ -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