Added config files
This commit is contained in:
parent
9e338ddc0f
commit
9092719385
26 changed files with 9882 additions and 0 deletions
50
usercfg/.bash_profile
Normal file
50
usercfg/.bash_profile
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
#!/bin/bash
|
||||||
|
## ____ __
|
||||||
|
## / __ \_________ _/ /_____
|
||||||
|
## / / / / ___/ __ `/ //_/ _ \
|
||||||
|
## / /_/ / / / /_/ / ,< / __/ Clay Gomera (Drake)
|
||||||
|
## /_____/_/ \__,_/_/|_|\___/ My custom bash_profile config
|
||||||
|
##
|
||||||
|
#
|
||||||
|
|
||||||
|
# Home folders
|
||||||
|
export XDG_DATA_HOME="$HOME/.local/share"
|
||||||
|
export XDG_CACHE_HOME="$HOME/.cache"
|
||||||
|
export XDG_CONFIG_HOME="$HOME/.config"
|
||||||
|
|
||||||
|
export X11CFGDIR="$XDG_CONFIG_HOME/X11"
|
||||||
|
export XINITRC="$X11CFGDIR/xinitrc"
|
||||||
|
|
||||||
|
# Sanely export XDG Base dir variables
|
||||||
|
eval "$(sed 's/^[^#].*/export &/g;t;d' ~/.config/user-dirs.dirs)"
|
||||||
|
|
||||||
|
# Clean home
|
||||||
|
export W3M_DIR="$XDG_DATA_HOME/w3m"
|
||||||
|
export GTK2_RC_FILES="$HOME/.config/gtk-2.0/gtkrc-2.0"
|
||||||
|
export WGETDIR="$XDG_CONFIG_HOME/wget"
|
||||||
|
export WGETRC="$WGETDIR/wgetrc"
|
||||||
|
export INPUTRC="$HOME/.config/X11/inputrc"
|
||||||
|
export GNUPGHOME="$HOME/.local/share/gnupg"
|
||||||
|
export LESSHISTFILE="-"
|
||||||
|
export BASHRC="$HOME/.bashrc"
|
||||||
|
|
||||||
|
# Default apps
|
||||||
|
export TERMINAL="st"
|
||||||
|
export EDITOR="$HOME/.local/bin/lvim"
|
||||||
|
export VISUAL="st -e $EDITOR"
|
||||||
|
export BROWSER="flatpak run org.mozilla.firefox"
|
||||||
|
export VIEWER="zathura"
|
||||||
|
|
||||||
|
# Bashrc
|
||||||
|
source "$BASHRC"
|
||||||
|
|
||||||
|
# Create config directories if they don't exist
|
||||||
|
if [ ! -d "$WGETDIR" ] || [ ! -d "$GNUPGHOME" ]; then
|
||||||
|
mkdir -p "$WGETDIR" "$GNUPGHOME"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Starting xsession
|
||||||
|
if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
|
||||||
|
startx "$XINITRC" -- vt1 -keeptty &>/dev/null
|
||||||
|
logout
|
||||||
|
fi
|
297
usercfg/.bashrc
Normal file
297
usercfg/.bashrc
Normal file
|
@ -0,0 +1,297 @@
|
||||||
|
### EXPORT ###
|
||||||
|
export TERM="xterm-256color" # getting proper colors
|
||||||
|
export HISTCONTROL=ignoredups:erasedups # no duplicate entries
|
||||||
|
export GOPATH="$HOME/go"
|
||||||
|
|
||||||
|
### "bat" as manpager
|
||||||
|
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
|
||||||
|
|
||||||
|
# use bash-completion, if available
|
||||||
|
[[ $PS1 && -f /usr/share/bash-completion/bash_completion ]] && \
|
||||||
|
. /usr/share/bash-completion/bash_completion
|
||||||
|
|
||||||
|
# if not running interactively, don't do anything
|
||||||
|
[[ $- != *i* ]] && return
|
||||||
|
|
||||||
|
### SET VI MODE ###
|
||||||
|
# Comment this line out to enable default emacs-like bindings
|
||||||
|
set -o vi
|
||||||
|
bind -m vi-command 'Control-l: clear-screen'
|
||||||
|
bind -m vi-insert 'Control-l: clear-screen'
|
||||||
|
|
||||||
|
### PATH ###
|
||||||
|
if [ -d "$HOME/.bin" ] ;
|
||||||
|
then PATH="$HOME/.bin:$PATH"
|
||||||
|
fi
|
||||||
|
if [ -d "$HOME/.local/bin" ] ;
|
||||||
|
then PATH="$HOME/.local/bin:$PATH"
|
||||||
|
fi
|
||||||
|
if [ -d "$HOME/.cargo/bin" ] ;
|
||||||
|
then PATH="$HOME/.cargo/bin:$PATH"
|
||||||
|
fi
|
||||||
|
if [ -d "$HOME/Applications" ] ;
|
||||||
|
then PATH="$HOME/Applications:$PATH"
|
||||||
|
fi
|
||||||
|
if [ -d "$HOME/go/bin" ] ;
|
||||||
|
then PATH="$HOME/go/bin:$PATH"
|
||||||
|
fi
|
||||||
|
|
||||||
|
### CHANGE TITLE OF TERMINALS ###
|
||||||
|
case ${TERM} in
|
||||||
|
xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|alacritty|st|konsole*)
|
||||||
|
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\007"'
|
||||||
|
;;
|
||||||
|
screen*)
|
||||||
|
PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\033\\"'
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
### SHOPT ###
|
||||||
|
shopt -s autocd # change to named directory
|
||||||
|
shopt -s cdspell # autocorrects cd misspellings
|
||||||
|
shopt -s cmdhist # save multi-line commands in history as single line
|
||||||
|
shopt -s dotglob
|
||||||
|
shopt -s histappend # do not overwrite history
|
||||||
|
shopt -s expand_aliases # expand aliases
|
||||||
|
shopt -s checkwinsize # checks term size when bash regains control
|
||||||
|
|
||||||
|
# ignore upper and lowercase when TAB completion
|
||||||
|
bind "set completion-ignore-case on"
|
||||||
|
|
||||||
|
# sudo not required for some system commands
|
||||||
|
for command in cryptsetup mount umount poweroff reboot ; do
|
||||||
|
alias $command="sudo $command"
|
||||||
|
done; unset command
|
||||||
|
|
||||||
|
### ARCHIVE EXTRACTION ###
|
||||||
|
# usage: ex <file>
|
||||||
|
function ex() {
|
||||||
|
if [ -f "$1" ] ; then
|
||||||
|
case $1 in
|
||||||
|
*.tar.bz2) tar xjf "$1" ;;
|
||||||
|
*.tar.gz) tar xzf "$1" ;;
|
||||||
|
*.bz2) bunzip2 "$1" ;;
|
||||||
|
*.rar) unrar x "$1" ;;
|
||||||
|
*.gz) gunzip "$1" ;;
|
||||||
|
*.tar) tar xf "$1" ;;
|
||||||
|
*.tbz2) tar xjf "$1" ;;
|
||||||
|
*.tgz) tar xzf "$1" ;;
|
||||||
|
*.zip) unzip "$1" ;;
|
||||||
|
*.Z) uncompress "$1";;
|
||||||
|
*.7z) 7zz x "$1" ;;
|
||||||
|
*.deb) ar x "$1" ;;
|
||||||
|
*.tar.xz) tar xf "$1" ;;
|
||||||
|
*.tar.zst) unzstd "$1" ;;
|
||||||
|
*) echo "'$1' cannot be extracted via ex()" ;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
echo "'$1' is not a valid file"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
### ALIASES ###
|
||||||
|
# navigation
|
||||||
|
function up () {
|
||||||
|
local d=""
|
||||||
|
local limit="$1"
|
||||||
|
|
||||||
|
# Default to limit of 1
|
||||||
|
if [ -z "$limit" ] || [ "$limit" -le 0 ]; then
|
||||||
|
limit=1
|
||||||
|
fi
|
||||||
|
|
||||||
|
for ((i=1;i<=limit;i++)); do
|
||||||
|
d="../$d"
|
||||||
|
done
|
||||||
|
|
||||||
|
# perform cd. Show error if cd fails
|
||||||
|
if ! cd "$d"; then
|
||||||
|
echo "Couldn't go up $limit dirs.";
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# cd
|
||||||
|
alias \
|
||||||
|
..="cd .." \
|
||||||
|
.2="cd ../.." \
|
||||||
|
.3="cd ../../.." \
|
||||||
|
.4="cd ../../../.." \
|
||||||
|
.5="cd ../../../../.."
|
||||||
|
|
||||||
|
# bat as cat
|
||||||
|
[ -x "$(command -v bat)" ] && alias cat="bat"
|
||||||
|
|
||||||
|
# use lunarvim or neovim for vim if present.
|
||||||
|
if [ -x "$(command -v $HOME/.local/bin/lvim)" ]; then
|
||||||
|
alias vim="$HOME/.local/bin/lvim"
|
||||||
|
elif [ -x "$(command -v nvim)" ]; then
|
||||||
|
alias vim="nvim"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Changing "ls" to "eza"
|
||||||
|
[ -x "$(command -v eza)" ] && alias \
|
||||||
|
ls="eza --icons -al --color=always --group-directories-first" \
|
||||||
|
la="eza --icons -a --color=always --group-directories-first" \
|
||||||
|
ll="eza --icons -l --color=always --group-directories-first" \
|
||||||
|
lt="eza --icons -aT --color=always --group-directories-first" \
|
||||||
|
l.='eza --icons -a | grep -E "^\."'
|
||||||
|
|
||||||
|
# function to detect os and assign aliases to package managers
|
||||||
|
alias \
|
||||||
|
pkg-update="sudo dnf update" \
|
||||||
|
pkg-install="sudo dnf install" \
|
||||||
|
pkg-remove="sudo dnf remove" \
|
||||||
|
pkg-search="sudo dnf search" \
|
||||||
|
|
||||||
|
# colorize grep output (good for log files)
|
||||||
|
alias \
|
||||||
|
grep="grep --color=auto" \
|
||||||
|
egrep="egrep --color=auto" \
|
||||||
|
fgrep="fgrep --color=auto"
|
||||||
|
|
||||||
|
# git
|
||||||
|
alias \
|
||||||
|
git-adu="git add -u" \
|
||||||
|
git-adl="git add ." \
|
||||||
|
git-brn="git branch" \
|
||||||
|
git-chk="git checkout" \
|
||||||
|
git-cln="git clone" \
|
||||||
|
git-cmt="git commit -m" \
|
||||||
|
git-fth="git fetch" \
|
||||||
|
git-pll="git pull origin" \
|
||||||
|
git-psh="git push origin" \
|
||||||
|
git-sts="git status" \
|
||||||
|
git-tag="git tag" \
|
||||||
|
git-ntg="git tag -a"
|
||||||
|
|
||||||
|
# adding flags
|
||||||
|
alias \
|
||||||
|
df="df -h" \
|
||||||
|
free="free -m"
|
||||||
|
|
||||||
|
# multimedia scripts
|
||||||
|
alias \
|
||||||
|
fli="flix-cli" \
|
||||||
|
ani="ani-cli" \
|
||||||
|
aniq="ani-cli -q"
|
||||||
|
|
||||||
|
# audio
|
||||||
|
alias \
|
||||||
|
mx="pulsemixer" \
|
||||||
|
mk="cmus" \
|
||||||
|
ms="cmus" \
|
||||||
|
music="cmus"
|
||||||
|
|
||||||
|
# power management
|
||||||
|
alias \
|
||||||
|
po="systemctl poweroff" \
|
||||||
|
sp="systemctl suspend" \
|
||||||
|
rb="systemctl reboot"
|
||||||
|
|
||||||
|
# file management
|
||||||
|
alias \
|
||||||
|
fm="$HOME/.config/vifm/scripts/vifmrun" \
|
||||||
|
flm="$HOME/.config/vifm/scripts/vifmrun" \
|
||||||
|
vifm="$HOME/.config/vifm/scripts/vifmrun" \
|
||||||
|
rm="rm -vI" \
|
||||||
|
mv="mv -iv" \
|
||||||
|
cp="cp -iv" \
|
||||||
|
mkd="mkdir -pv"
|
||||||
|
|
||||||
|
# ps
|
||||||
|
alias \
|
||||||
|
psa="ps auxf" \
|
||||||
|
psgrep="ps aux | grep -v grep | grep -i -e VSZ -e" \
|
||||||
|
psmem="ps auxf | sort -nr -k 4" \
|
||||||
|
pscpu="ps auxf | sort -nr -k 3"
|
||||||
|
|
||||||
|
# youtube
|
||||||
|
alias \
|
||||||
|
yta-aac="yt-dlp --extract-audio --audio-format aac" \
|
||||||
|
yta-best="yt-dlp --extract-audio --audio-format best" \
|
||||||
|
yta-flac="yt-dlp --extract-audio --audio-format flac" \
|
||||||
|
yta-m4a="yt-dlp --extract-audio --audio-format m4a" \
|
||||||
|
yta-mp3="yt-dlp --extract-audio --audio-format mp3" \
|
||||||
|
yta-opus="yt-dlp --extract-audio --audio-format opus" \
|
||||||
|
yta-vorbis="yt-dlp --extract-audio --audio-format vorbis" \
|
||||||
|
yta-wav="yt-dlp --extract-audio --audio-format wav" \
|
||||||
|
ytv-best="yt-dlp -f bestvideo+bestaudio" \
|
||||||
|
yt="ytfzf -ftsl" \
|
||||||
|
ytm="ytfzf -mtsl"
|
||||||
|
|
||||||
|
# network and bluetooth
|
||||||
|
alias \
|
||||||
|
netstats="nmcli dev" \
|
||||||
|
wfi="nmtui-connect" \
|
||||||
|
wfi-scan="nmcli dev wifi rescan && nmcli dev wifi list" \
|
||||||
|
wfi-edit="nmtui-edit" \
|
||||||
|
wfi-on="nmcli radio wifi on" \
|
||||||
|
wfi-off="nmcli radio wifi off" \
|
||||||
|
blt="bluetoothctl"
|
||||||
|
|
||||||
|
# get current branch in git repo
|
||||||
|
function parse_git_branch() {
|
||||||
|
BRANCH=$(git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/')
|
||||||
|
if [ ! "${BRANCH}" == "" ]; then
|
||||||
|
STAT=$(parse_git_dirty)
|
||||||
|
echo "[${BRANCH}${STAT}]"
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# get current branch in git repo
|
||||||
|
function parse_git_branch() {
|
||||||
|
BRANCH=$(git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/')
|
||||||
|
if [ ! "${BRANCH}" == "" ]; then
|
||||||
|
STAT=$(parse_git_dirty)
|
||||||
|
echo "[${BRANCH}${STAT}]"
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# get current status of git repo
|
||||||
|
function parse_git_dirty {
|
||||||
|
status=$(git status 2>&1 | tee)
|
||||||
|
dirty=$(echo -n "${status}" 2> /dev/null | grep "modified:" &> /dev/null; echo "$?")
|
||||||
|
untracked=$(echo -n "${status}" 2> /dev/null | grep "Untracked files" &> /dev/null; echo "$?")
|
||||||
|
ahead=$(echo -n "${status}" 2> /dev/null | grep "Your branch is ahead of" &> /dev/null; echo "$?")
|
||||||
|
newfile=$(echo -n "${status}" 2> /dev/null | grep "new file:" &> /dev/null; echo "$?")
|
||||||
|
renamed=$(echo -n "${status}" 2> /dev/null | grep "renamed:" &> /dev/null; echo "$?")
|
||||||
|
deleted=$(echo -n "${status}" 2> /dev/null | grep "deleted:" &> /dev/null; echo "$?")
|
||||||
|
bits=''
|
||||||
|
if [ "${renamed}" == "0" ]; then
|
||||||
|
bits=">${bits}"
|
||||||
|
fi
|
||||||
|
if [ "${ahead}" == "0" ]; then
|
||||||
|
bits="*${bits}"
|
||||||
|
fi
|
||||||
|
if [ "${newfile}" == "0" ]; then
|
||||||
|
bits="+${bits}"
|
||||||
|
fi
|
||||||
|
if [ "${untracked}" == "0" ]; then
|
||||||
|
bits="?${bits}"
|
||||||
|
fi
|
||||||
|
if [ "${deleted}" == "0" ]; then
|
||||||
|
bits="x${bits}"
|
||||||
|
fi
|
||||||
|
if [ "${dirty}" == "0" ]; then
|
||||||
|
bits="!${bits}"
|
||||||
|
fi
|
||||||
|
if [ ! "${bits}" == "" ]; then
|
||||||
|
echo " ${bits}"
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
export PS1="[\[\e[31m\]\u\[\e[m\]\[\e[35m\]@\[\e[m\]\[\e[32m\]\h\[\e[m\]] [\[\e[33m\]\W\[\e[m\]\[\e[34m\]\`parse_git_branch\`\[\e[m\]] "
|
||||||
|
|
||||||
|
# initialize ssh-agent
|
||||||
|
if ! pgrep -u "$USER" ssh-agent > /dev/null; then
|
||||||
|
ssh-agent -t 1h > "$XDG_RUNTIME_DIR/ssh-agent.env"
|
||||||
|
fi
|
||||||
|
if [[ ! -f "$SSH_AUTH_SOCK" ]]; then
|
||||||
|
source "$XDG_RUNTIME_DIR/ssh-agent.env" >/dev/null
|
||||||
|
fi
|
|
@ -0,0 +1,527 @@
|
||||||
|
[%General]
|
||||||
|
author=sachnr, based on KvAdapta
|
||||||
|
comment=Gruvbox Dark theme with brown highlights
|
||||||
|
x11drag=menubar_and_primary_toolbar
|
||||||
|
alt_mnemonic=true
|
||||||
|
left_tabs=true
|
||||||
|
attach_active_tab=false
|
||||||
|
mirror_doc_tabs=true
|
||||||
|
group_toolbar_buttons=false
|
||||||
|
toolbar_item_spacing=0
|
||||||
|
toolbar_interior_spacing=2
|
||||||
|
spread_progressbar=true
|
||||||
|
composite=true
|
||||||
|
menu_shadow_depth=5
|
||||||
|
tooltip_shadow_depth=2
|
||||||
|
splitter_width=4
|
||||||
|
scroll_width=9
|
||||||
|
scroll_arrows=false
|
||||||
|
scroll_min_extent=60
|
||||||
|
slider_width=2
|
||||||
|
slider_handle_width=22
|
||||||
|
slider_handle_length=22
|
||||||
|
center_toolbar_handle=true
|
||||||
|
check_size=14
|
||||||
|
textless_progressbar=false
|
||||||
|
progressbar_thickness=2
|
||||||
|
menubar_mouse_tracking=true
|
||||||
|
toolbutton_style=1
|
||||||
|
double_click=false
|
||||||
|
translucent_windows=false
|
||||||
|
blurring=false
|
||||||
|
popup_blurring=false
|
||||||
|
vertical_spin_indicators=false
|
||||||
|
spin_button_width=24
|
||||||
|
fill_rubberband=false
|
||||||
|
merge_menubar_with_toolbar=true
|
||||||
|
small_icon_size=16
|
||||||
|
large_icon_size=32
|
||||||
|
button_icon_size=16
|
||||||
|
toolbar_icon_size=22
|
||||||
|
combo_as_lineedit=true
|
||||||
|
animate_states=true
|
||||||
|
button_contents_shift=false
|
||||||
|
combo_menu=true
|
||||||
|
hide_combo_checkboxes=true
|
||||||
|
combo_focus_rect=false
|
||||||
|
groupbox_top_label=true
|
||||||
|
inline_spin_indicators=true
|
||||||
|
joined_inactive_tabs=true
|
||||||
|
layout_spacing=6
|
||||||
|
layout_margin=9
|
||||||
|
scrollbar_in_view=true
|
||||||
|
transient_scrollbar=true
|
||||||
|
transient_groove=false
|
||||||
|
submenu_overlap=0
|
||||||
|
tooltip_delay=-1
|
||||||
|
tree_branch_line=true
|
||||||
|
no_window_pattern=false
|
||||||
|
opaque=kaffeine,kmplayer,subtitlecomposer,kdenlive,vlc,smplayer,smplayer2,avidemux,avidemux2_qt4,avidemux3_qt4,avidemux3_qt5,kamoso,QtCreator,VirtualBox,trojita,dragon,digikam
|
||||||
|
reduce_window_opacity=0
|
||||||
|
respect_DE=true
|
||||||
|
scrollable_menu=false
|
||||||
|
submenu_delay=250
|
||||||
|
|
||||||
|
[GeneralColors]
|
||||||
|
window.color=#232323
|
||||||
|
base.color=#282828
|
||||||
|
alt.base.color=#282828
|
||||||
|
button.color=#2e2e2e
|
||||||
|
light.color=#504945
|
||||||
|
mid.light.color=#3f3f3f
|
||||||
|
dark.color=#1d2021
|
||||||
|
mid.color=##202324
|
||||||
|
highlight.color=#665c54cc
|
||||||
|
inactive.highlight.color=#665c54bb
|
||||||
|
text.color=#ebdbb2
|
||||||
|
window.text.color=#ebdbb2
|
||||||
|
button.text.color=#ebdbb2
|
||||||
|
disabled.text.color=#a89984
|
||||||
|
tooltip.text.color=#fbf1c7
|
||||||
|
highlight.text.color=#3c3836
|
||||||
|
link.color=#b8bb26
|
||||||
|
link.visited.color=#98971a
|
||||||
|
progress.indicator.text.color=#fbf1c7
|
||||||
|
|
||||||
|
[Hacks]
|
||||||
|
transparent_ktitle_label=true
|
||||||
|
transparent_dolphin_view=false
|
||||||
|
transparent_pcmanfm_sidepane=true
|
||||||
|
blur_translucent=false
|
||||||
|
transparent_menutitle=true
|
||||||
|
respect_darkness=false
|
||||||
|
kcapacitybar_as_progressbar=true
|
||||||
|
force_size_grip=true
|
||||||
|
iconless_pushbutton=true
|
||||||
|
iconless_menu=false
|
||||||
|
disabled_icon_opacity=70
|
||||||
|
lxqtmainmenu_iconsize=22
|
||||||
|
normal_default_pushbutton=true
|
||||||
|
single_top_toolbar=true
|
||||||
|
tint_on_mouseover=0
|
||||||
|
transparent_pcmanfm_view=false
|
||||||
|
no_selection_tint=true
|
||||||
|
transparent_arrow_button=true
|
||||||
|
|
||||||
|
[PanelButtonCommand]
|
||||||
|
frame=true
|
||||||
|
frame.element=button
|
||||||
|
frame.top=4
|
||||||
|
frame.bottom=4
|
||||||
|
frame.left=4
|
||||||
|
frame.right=4
|
||||||
|
interior=true
|
||||||
|
interior.element=button
|
||||||
|
indicator.size=8
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#3c3836
|
||||||
|
text.press.color=#ebdbb2
|
||||||
|
text.toggle.color=#fbf1c7
|
||||||
|
text.shadow=0
|
||||||
|
text.margin=1
|
||||||
|
text.iconspacing=4
|
||||||
|
indicator.element=arrow
|
||||||
|
text.margin.top=2
|
||||||
|
text.margin.bottom=4
|
||||||
|
text.margin.left=2
|
||||||
|
text.margin.right=2
|
||||||
|
min_width=+0.3font
|
||||||
|
min_height=+0.3font
|
||||||
|
frame.expansion=14
|
||||||
|
|
||||||
|
[PanelButtonTool]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.bold=false
|
||||||
|
indicator.element=arrow
|
||||||
|
indicator.size=0
|
||||||
|
|
||||||
|
[ToolbarButton]
|
||||||
|
frame.element=tbutton
|
||||||
|
interior.element=tbutton
|
||||||
|
indicator.element=tarrow
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.press.color=#fbf1c7
|
||||||
|
text.toggle.color=#fbf1c7
|
||||||
|
text.bold=false
|
||||||
|
|
||||||
|
[Dock]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
interior.element=dock
|
||||||
|
frame.element=dock
|
||||||
|
frame.top=1
|
||||||
|
frame.bottom=1
|
||||||
|
frame.left=1
|
||||||
|
frame.right=1
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
|
||||||
|
[DockTitle]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=false
|
||||||
|
interior=false
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.bold=false
|
||||||
|
|
||||||
|
[IndicatorSpinBox]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=true
|
||||||
|
interior=true
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
indicator.element=spin
|
||||||
|
indicator.size=8
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.margin.top=2
|
||||||
|
text.margin.bottom=2
|
||||||
|
text.margin.left=2
|
||||||
|
text.margin.right=2
|
||||||
|
|
||||||
|
[RadioButton]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=false
|
||||||
|
interior.element=radio
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
min_width=+0.3font
|
||||||
|
min_height=+0.3font
|
||||||
|
|
||||||
|
[CheckBox]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=false
|
||||||
|
interior.element=checkbox
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
min_width=+0.3font
|
||||||
|
min_height=+0.3font
|
||||||
|
|
||||||
|
[Focus]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=true
|
||||||
|
frame.element=focus
|
||||||
|
frame.top=1
|
||||||
|
frame.bottom=1
|
||||||
|
frame.left=1
|
||||||
|
frame.right=1
|
||||||
|
frame.patternsize=20
|
||||||
|
|
||||||
|
[GenericFrame]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=true
|
||||||
|
interior=false
|
||||||
|
frame.element=common
|
||||||
|
interior.element=common
|
||||||
|
frame.top=3
|
||||||
|
frame.bottom=3
|
||||||
|
frame.left=3
|
||||||
|
frame.right=3
|
||||||
|
|
||||||
|
[LineEdit]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame.element=lineedit
|
||||||
|
interior.element=lineedit
|
||||||
|
interior=false
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
text.margin.top=2
|
||||||
|
text.margin.bottom=2
|
||||||
|
text.margin.left=2
|
||||||
|
text.margin.right=2
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[DropDownButton]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
indicator.element=arrow-down
|
||||||
|
|
||||||
|
[IndicatorArrow]
|
||||||
|
indicator.element=arrow
|
||||||
|
indicator.size=8
|
||||||
|
|
||||||
|
[ToolboxTab]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.press.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
|
||||||
|
[Tab]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
interior.element=tab
|
||||||
|
text.margin.left=8
|
||||||
|
text.margin.right=8
|
||||||
|
text.margin.top=2
|
||||||
|
text.margin.bottom=2
|
||||||
|
frame.element=tab
|
||||||
|
indicator.element=tab
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#ebdbb2
|
||||||
|
text.toggle.color=#ebdbb2
|
||||||
|
frame.expansion=0
|
||||||
|
text.bold=false
|
||||||
|
|
||||||
|
[TabFrame]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame.element=tabframe
|
||||||
|
interior.element=tabframe
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
|
||||||
|
[TreeExpander]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
indicator.size=8
|
||||||
|
indicator.element=tree
|
||||||
|
|
||||||
|
[HeaderSection]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
interior.element=header
|
||||||
|
frame.element=header
|
||||||
|
frame.top=1
|
||||||
|
frame.bottom=1
|
||||||
|
frame.left=1
|
||||||
|
frame.right=1
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.press.color=#fbf1c7
|
||||||
|
text.toggle.color=#fbf1c7
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[SizeGrip]
|
||||||
|
indicator.element=resize-grip
|
||||||
|
|
||||||
|
[Toolbar]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
indicator.element=toolbar
|
||||||
|
indicator.size=5
|
||||||
|
text.margin=0
|
||||||
|
interior.element=menubar
|
||||||
|
frame.element=menubar
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
frame.left=0
|
||||||
|
frame.right=0
|
||||||
|
frame.top=0
|
||||||
|
frame.bottom=4
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[Slider]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame.element=slider
|
||||||
|
interior.element=slider
|
||||||
|
frame.top=3
|
||||||
|
frame.bottom=3
|
||||||
|
frame.left=3
|
||||||
|
frame.right=3
|
||||||
|
|
||||||
|
[SliderCursor]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=false
|
||||||
|
interior.element=slidercursor
|
||||||
|
|
||||||
|
[Progressbar]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame.element=progress
|
||||||
|
interior.element=progress
|
||||||
|
text.margin=0
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#ebdbb2
|
||||||
|
text.press.color=#ebdbb2
|
||||||
|
text.toggle.color=#cfd8dc
|
||||||
|
text.bold=false
|
||||||
|
frame.expansion=8
|
||||||
|
|
||||||
|
[ProgressbarContents]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=true
|
||||||
|
frame.element=progress-pattern
|
||||||
|
interior.element=progress-pattern
|
||||||
|
|
||||||
|
[ItemView]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
text.margin=0
|
||||||
|
frame.element=itemview
|
||||||
|
interior.element=itemview
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
text.margin.top=2
|
||||||
|
text.margin.bottom=2
|
||||||
|
text.margin.left=4
|
||||||
|
text.margin.right=4
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.press.color=#fbf1c7
|
||||||
|
text.toggle.color=#fbf1c7
|
||||||
|
min_width=+0.3font
|
||||||
|
min_height=+0.3font
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[Splitter]
|
||||||
|
indicator.size=48
|
||||||
|
|
||||||
|
[Scrollbar]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
indicator.element=arrow
|
||||||
|
indicator.size=8
|
||||||
|
|
||||||
|
[ScrollbarSlider]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
interior.element=scrollbarslider
|
||||||
|
interior=true
|
||||||
|
frame=false
|
||||||
|
indicator.element=grip
|
||||||
|
indicator.size=13
|
||||||
|
frame.expansion=48
|
||||||
|
|
||||||
|
[ScrollbarGroove]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
interior=false
|
||||||
|
frame=false
|
||||||
|
|
||||||
|
[MenuItem]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=true
|
||||||
|
frame.element=menuitem
|
||||||
|
interior.element=menuitem
|
||||||
|
indicator.element=menuitem
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.margin.top=1
|
||||||
|
text.margin.bottom=1
|
||||||
|
text.margin.left=4
|
||||||
|
text.margin.right=4
|
||||||
|
frame.top=0
|
||||||
|
frame.bottom=0
|
||||||
|
frame.left=0
|
||||||
|
frame.right=0
|
||||||
|
text.bold=false
|
||||||
|
min_width=+0.3font
|
||||||
|
min_height=+0.3font
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[MenuBar]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame.element=menubar
|
||||||
|
interior.element=menubar
|
||||||
|
frame.bottom=0
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
frame.expansion=0
|
||||||
|
text.bold=false
|
||||||
|
|
||||||
|
[MenuBarItem]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
interior=true
|
||||||
|
interior.element=menubaritem
|
||||||
|
frame.element=menubaritem
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
text.margin.left=4
|
||||||
|
text.margin.right=4
|
||||||
|
text.margin.top=0
|
||||||
|
text.margin.bottom=0
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.bold=false
|
||||||
|
min_width=+0.3font
|
||||||
|
min_height=+0.3font
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[TitleBar]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame=false
|
||||||
|
text.margin.top=2
|
||||||
|
text.margin.bottom=2
|
||||||
|
text.margin.left=2
|
||||||
|
text.margin.right=2
|
||||||
|
interior.element=titlebar
|
||||||
|
indicator.size=16
|
||||||
|
indicator.element=mdi
|
||||||
|
text.normal.color=#d5c4a1
|
||||||
|
text.focus.color=#ebdbb2
|
||||||
|
text.bold=false
|
||||||
|
text.italic=true
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[ComboBox]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame.element=combo
|
||||||
|
interior.element=combo
|
||||||
|
interior=false
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
text.margin.top=2
|
||||||
|
text.margin.bottom=2
|
||||||
|
text.margin.left=2
|
||||||
|
text.margin.right=2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.press.color=#ebdbb2
|
||||||
|
text.toggle.color=#fbf1c7
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[Menu]
|
||||||
|
inherits=PanelButtonCommand
|
||||||
|
frame.top=1
|
||||||
|
frame.bottom=1
|
||||||
|
frame.left=1
|
||||||
|
frame.right=1
|
||||||
|
frame.element=menu
|
||||||
|
interior.element=menu
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.shadow=false
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[GroupBox]
|
||||||
|
inherits=GenericFrame
|
||||||
|
frame=false
|
||||||
|
text.shadow=0
|
||||||
|
text.margin=0
|
||||||
|
text.normal.color=#ebdbb2
|
||||||
|
text.focus.color=#fbf1c7
|
||||||
|
text.bold=false
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[TabBarFrame]
|
||||||
|
inherits=GenericFrame
|
||||||
|
frame=true
|
||||||
|
frame.element=tabBarFrame
|
||||||
|
interior=false
|
||||||
|
frame.top=2
|
||||||
|
frame.bottom=2
|
||||||
|
frame.left=2
|
||||||
|
frame.right=2
|
||||||
|
|
||||||
|
[ToolTip]
|
||||||
|
inherits=GenericFrame
|
||||||
|
frame.top=3
|
||||||
|
frame.bottom=3
|
||||||
|
frame.left=3
|
||||||
|
frame.right=3
|
||||||
|
interior=true
|
||||||
|
text.shadow=0
|
||||||
|
text.margin=0
|
||||||
|
interior.element=tooltip
|
||||||
|
frame.element=tooltip
|
||||||
|
frame.expansion=0
|
||||||
|
|
||||||
|
[StatusBar]
|
||||||
|
inherits=GenericFrame
|
||||||
|
frame=false
|
||||||
|
interior=false
|
||||||
|
|
||||||
|
[Window]
|
||||||
|
interior=true
|
||||||
|
interior.element=window
|
5597
usercfg/config/Kvantum/Gruvbox-Dark-Brown/Gruvbox-Dark-Brown.svg
Normal file
5597
usercfg/config/Kvantum/Gruvbox-Dark-Brown/Gruvbox-Dark-Brown.svg
Normal file
File diff suppressed because it is too large
Load diff
After Width: | Height: | Size: 207 KiB |
2
usercfg/config/Kvantum/kvantum.kvconfig
Normal file
2
usercfg/config/Kvantum/kvantum.kvconfig
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[General]
|
||||||
|
theme=Gruvbox-Dark-Brown
|
48
usercfg/config/X11/xinitrc
Executable file
48
usercfg/config/X11/xinitrc
Executable file
|
@ -0,0 +1,48 @@
|
||||||
|
#!/bin/sh
|
||||||
|
## ____ __
|
||||||
|
## / __ \_________ _/ /_____
|
||||||
|
## / / / / ___/ __ `/ //_/ _ \
|
||||||
|
## / /_/ / / / /_/ / ,< / __/ Clay Gomera (Drake)
|
||||||
|
## /_____/_/ \__,_/_/|_|\___/ My custom xinitrc
|
||||||
|
##
|
||||||
|
|
||||||
|
userresources=$HOME/.Xresources
|
||||||
|
usermodmap=$HOME/.Xmodmap
|
||||||
|
sysresources=/etc/X11/xinit/.Xresources
|
||||||
|
sysmodmap=/etc/X11/xinit/.Xmodmap
|
||||||
|
|
||||||
|
# merge in defaults and keymaps
|
||||||
|
if [ -f $sysresources ]; then
|
||||||
|
xrdb -merge $sysresources
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f $sysmodmap ]; then
|
||||||
|
xmodmap $sysmodmap
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "$userresources" ]; then
|
||||||
|
xrdb -merge "$userresources"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "$usermodmap" ]; then
|
||||||
|
xmodmap "$usermodmap"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# X11 Stuff
|
||||||
|
export MOZ_USE_XINPUT2=1
|
||||||
|
export QT_STYLE_OVERRIDE=kvantum
|
||||||
|
export XDG_SESSION_TYPE=X11
|
||||||
|
|
||||||
|
# GTK & cursor stuff
|
||||||
|
export XCURSOR_PATH="$XDG_DATA_HOME/icons/"
|
||||||
|
export XCURSOR_THEME="Simp1e-Gruvbox-Dark"
|
||||||
|
export GTK_THEME="Gruvbox-Dark-BL"
|
||||||
|
export GTK_ICON_THEME="Papirus-Dark"
|
||||||
|
|
||||||
|
# initialize dbus
|
||||||
|
dbus-update-activation-environment --systemd DISPLAY XDG_CURRENT_DESKTOP
|
||||||
|
dbus-update-activation-environment --systemd --all
|
||||||
|
systemctl --user import-environment DISPLAY XDG_CURRENT_DESKTOP
|
||||||
|
|
||||||
|
# initialize dwm
|
||||||
|
dwm
|
248
usercfg/config/btop/btop.conf
Normal file
248
usercfg/config/btop/btop.conf
Normal file
|
@ -0,0 +1,248 @@
|
||||||
|
#? Config file for btop v. 1.3.2
|
||||||
|
|
||||||
|
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||||
|
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||||
|
color_theme = "/usr/share/btop/themes/gruvbox_dark_v2.theme"
|
||||||
|
|
||||||
|
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||||
|
theme_background = False
|
||||||
|
|
||||||
|
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||||
|
truecolor = True
|
||||||
|
|
||||||
|
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||||
|
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||||
|
force_tty = False
|
||||||
|
|
||||||
|
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||||
|
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||||
|
#* Use whitespace " " as separator between different presets.
|
||||||
|
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||||
|
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||||
|
|
||||||
|
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
||||||
|
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
||||||
|
vim_keys = True
|
||||||
|
|
||||||
|
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||||
|
rounded_corners = True
|
||||||
|
|
||||||
|
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||||
|
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||||
|
#* "block" has half the resolution of braille but uses more common characters.
|
||||||
|
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||||
|
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||||
|
graph_symbol = "braille"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_cpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_gpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_mem = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_net = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_proc = "default"
|
||||||
|
|
||||||
|
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
|
||||||
|
shown_boxes = "cpu mem net proc"
|
||||||
|
|
||||||
|
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||||
|
update_ms = 500
|
||||||
|
|
||||||
|
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||||
|
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||||
|
proc_sorting = "pid"
|
||||||
|
|
||||||
|
#* Reverse sorting order, True or False.
|
||||||
|
proc_reversed = False
|
||||||
|
|
||||||
|
#* Show processes as a tree.
|
||||||
|
proc_tree = False
|
||||||
|
|
||||||
|
#* Use the cpu graph colors in the process list.
|
||||||
|
proc_colors = True
|
||||||
|
|
||||||
|
#* Use a darkening gradient in the process list.
|
||||||
|
proc_gradient = True
|
||||||
|
|
||||||
|
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||||
|
proc_per_core = True
|
||||||
|
|
||||||
|
#* Show process memory as bytes instead of percent.
|
||||||
|
proc_mem_bytes = True
|
||||||
|
|
||||||
|
#* Show cpu graph for each process.
|
||||||
|
proc_cpu_graphs = True
|
||||||
|
|
||||||
|
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||||
|
proc_info_smaps = False
|
||||||
|
|
||||||
|
#* Show proc box on left side of screen instead of right.
|
||||||
|
proc_left = False
|
||||||
|
|
||||||
|
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||||
|
proc_filter_kernel = False
|
||||||
|
|
||||||
|
#* In tree-view, always accumulate child process resources in the parent process.
|
||||||
|
proc_aggregate = False
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_upper = "total"
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_lower = "total"
|
||||||
|
|
||||||
|
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
|
||||||
|
show_gpu_info = "Auto"
|
||||||
|
|
||||||
|
#* Toggles if the lower CPU graph should be inverted.
|
||||||
|
cpu_invert_lower = True
|
||||||
|
|
||||||
|
#* Set to True to completely disable the lower CPU graph.
|
||||||
|
cpu_single_graph = False
|
||||||
|
|
||||||
|
#* Show cpu box at bottom of screen instead of top.
|
||||||
|
cpu_bottom = False
|
||||||
|
|
||||||
|
#* Shows the system uptime in the CPU box.
|
||||||
|
show_uptime = True
|
||||||
|
|
||||||
|
#* Show cpu temperature.
|
||||||
|
check_temp = True
|
||||||
|
|
||||||
|
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||||
|
cpu_sensor = "Auto"
|
||||||
|
|
||||||
|
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||||
|
show_coretemp = True
|
||||||
|
|
||||||
|
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||||
|
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||||
|
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||||
|
#* Example: "4:0 5:1 6:3"
|
||||||
|
cpu_core_map = ""
|
||||||
|
|
||||||
|
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||||
|
temp_scale = "celsius"
|
||||||
|
|
||||||
|
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||||
|
base_10_sizes = False
|
||||||
|
|
||||||
|
#* Show CPU frequency.
|
||||||
|
show_cpu_freq = True
|
||||||
|
|
||||||
|
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||||
|
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||||
|
clock_format = "%X"
|
||||||
|
|
||||||
|
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||||
|
background_update = True
|
||||||
|
|
||||||
|
#* Custom cpu model name, empty string to disable.
|
||||||
|
custom_cpu_name = ""
|
||||||
|
|
||||||
|
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||||
|
#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user".
|
||||||
|
disks_filter = ""
|
||||||
|
|
||||||
|
#* Show graphs instead of meters for memory values.
|
||||||
|
mem_graphs = True
|
||||||
|
|
||||||
|
#* Show mem box below net box instead of above.
|
||||||
|
mem_below_net = False
|
||||||
|
|
||||||
|
#* Count ZFS ARC in cached and available memory.
|
||||||
|
zfs_arc_cached = True
|
||||||
|
|
||||||
|
#* If swap memory should be shown in memory box.
|
||||||
|
show_swap = True
|
||||||
|
|
||||||
|
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||||
|
swap_disk = True
|
||||||
|
|
||||||
|
#* If mem box should be split to also show disks info.
|
||||||
|
show_disks = True
|
||||||
|
|
||||||
|
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||||
|
only_physical = True
|
||||||
|
|
||||||
|
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||||
|
use_fstab = True
|
||||||
|
|
||||||
|
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||||
|
zfs_hide_datasets = False
|
||||||
|
|
||||||
|
#* Set to true to show available disk space for privileged users.
|
||||||
|
disk_free_priv = False
|
||||||
|
|
||||||
|
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||||
|
show_io_stat = True
|
||||||
|
|
||||||
|
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||||
|
io_mode = False
|
||||||
|
|
||||||
|
#* Set to True to show combined read/write io graphs in io mode.
|
||||||
|
io_graph_combined = False
|
||||||
|
|
||||||
|
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||||
|
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||||
|
io_graph_speeds = ""
|
||||||
|
|
||||||
|
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||||
|
net_download = 100
|
||||||
|
|
||||||
|
net_upload = 100
|
||||||
|
|
||||||
|
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||||
|
net_auto = True
|
||||||
|
|
||||||
|
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||||
|
net_sync = True
|
||||||
|
|
||||||
|
#* Starts with the Network Interface specified here.
|
||||||
|
net_iface = ""
|
||||||
|
|
||||||
|
#* Show battery stats in top right if battery is present.
|
||||||
|
show_battery = True
|
||||||
|
|
||||||
|
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||||
|
selected_battery = "Auto"
|
||||||
|
|
||||||
|
#* Show power stats of battery next to charge indicator.
|
||||||
|
show_battery_watts = True
|
||||||
|
|
||||||
|
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||||
|
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||||
|
log_level = "WARNING"
|
||||||
|
|
||||||
|
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
|
||||||
|
nvml_measure_pcie_speeds = True
|
||||||
|
|
||||||
|
#* Horizontally mirror the GPU graph.
|
||||||
|
gpu_mirror_graph = True
|
||||||
|
|
||||||
|
#* Custom gpu0 model name, empty string to disable.
|
||||||
|
custom_gpu_name0 = ""
|
||||||
|
|
||||||
|
#* Custom gpu1 model name, empty string to disable.
|
||||||
|
custom_gpu_name1 = ""
|
||||||
|
|
||||||
|
#* Custom gpu2 model name, empty string to disable.
|
||||||
|
custom_gpu_name2 = ""
|
||||||
|
|
||||||
|
#* Custom gpu3 model name, empty string to disable.
|
||||||
|
custom_gpu_name3 = ""
|
||||||
|
|
||||||
|
#* Custom gpu4 model name, empty string to disable.
|
||||||
|
custom_gpu_name4 = ""
|
||||||
|
|
||||||
|
#* Custom gpu5 model name, empty string to disable.
|
||||||
|
custom_gpu_name5 = ""
|
11
usercfg/config/gtk-2.0/gtkfilechooser.ini
Normal file
11
usercfg/config/gtk-2.0/gtkfilechooser.ini
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
[Filechooser Settings]
|
||||||
|
LocationMode=path-bar
|
||||||
|
ShowHidden=false
|
||||||
|
ShowSizeColumn=true
|
||||||
|
GeometryX=0
|
||||||
|
GeometryY=0
|
||||||
|
GeometryWidth=780
|
||||||
|
GeometryHeight=585
|
||||||
|
SortColumn=name
|
||||||
|
SortOrder=ascending
|
||||||
|
StartupMode=recent
|
14
usercfg/config/gtk-2.0/gtkrc-2.0
Normal file
14
usercfg/config/gtk-2.0/gtkrc-2.0
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
gtk-theme-name="Gruvbox-Dark-BL"
|
||||||
|
gtk-icon-theme-name="Papirus-Dark"
|
||||||
|
gtk-font-name="Cantarell 10"
|
||||||
|
gtk-cursor-theme-name="Simp1e-Gruvbox-Dark"
|
||||||
|
gtk-cursor-theme-size=0
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=1
|
||||||
|
gtk-menu-images=1
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=1
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle="hintfull"
|
0
usercfg/config/gtk-3.0/bookmarks
Normal file
0
usercfg/config/gtk-3.0/bookmarks
Normal file
15
usercfg/config/gtk-3.0/settings.ini
Normal file
15
usercfg/config/gtk-3.0/settings.ini
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
[Settings]
|
||||||
|
gtk-theme-name=Gruvbox-Dark-BL
|
||||||
|
gtk-icon-theme-name=Papirus-Dark
|
||||||
|
gtk-font-name=Cantarell 10
|
||||||
|
gtk-cursor-theme-name=Simp1e-Gruvbox-Dark
|
||||||
|
gtk-cursor-theme-size=0
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=1
|
||||||
|
gtk-menu-images=1
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=1
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle=hintfull
|
108
usercfg/config/lvim/config.lua
Normal file
108
usercfg/config/lvim/config.lua
Normal file
|
@ -0,0 +1,108 @@
|
||||||
|
-- neovide options
|
||||||
|
vim.o.guifont = "mononoki Nerd Font:h14"
|
||||||
|
vim.g.neovide_hide_mouse_when_typing = true
|
||||||
|
vim.g.neovide_no_idle = true
|
||||||
|
vim.g.neovide_confirm_quit = true
|
||||||
|
vim.g.neovide_input_use_logo = true
|
||||||
|
|
||||||
|
vim.g.neovide_cursor_antialiasing = true
|
||||||
|
vim.g.neovide_cursor_animate_in_insert_mode = true
|
||||||
|
vim.g.neovide_cursor_vfx_mode = "pixiedust"
|
||||||
|
vim.g.neovide_cursor_vfx_particle_speed = 20.0
|
||||||
|
|
||||||
|
vim.g.neovide_padding_top = 0
|
||||||
|
vim.g.neovide_padding_bottom = 0
|
||||||
|
vim.g.neovide_padding_right = 0
|
||||||
|
vim.g.neovide_padding_left = 0
|
||||||
|
|
||||||
|
-- Helper function for transparency formatting
|
||||||
|
local alpha = function()
|
||||||
|
return string.format("%x", math.floor(255 * (vim.g.transparency or 0.98)))
|
||||||
|
end
|
||||||
|
vim.g.neovide_transparency = 0.95
|
||||||
|
vim.g.transparency = 0.95
|
||||||
|
vim.g.neovide_background_color = "#1d2021" .. alpha()
|
||||||
|
|
||||||
|
-- nvim options
|
||||||
|
vim.opt.shiftwidth = 4
|
||||||
|
vim.opt.tabstop = 4
|
||||||
|
vim.opt.relativenumber = true
|
||||||
|
vim.cmd('autocmd FileType markdown setlocal nospell')
|
||||||
|
vim.opt.wrap = true -- wrap lines
|
||||||
|
vim.opt.spell = false
|
||||||
|
vim.o.shell = '/usr/bin/bash'
|
||||||
|
vim.o.autochdir = true
|
||||||
|
vim.cmd('autocmd BufEnter * lcd %:p:h')
|
||||||
|
|
||||||
|
-- general
|
||||||
|
lvim.use_icons = true
|
||||||
|
lvim.log.level = "info"
|
||||||
|
|
||||||
|
-- change theme settings
|
||||||
|
lvim.colorscheme = "gruvbox"
|
||||||
|
lvim.transparent_window = false
|
||||||
|
lvim.builtin.alpha.active = true
|
||||||
|
lvim.builtin.alpha.mode = "dashboard"
|
||||||
|
lvim.builtin.terminal.active = true
|
||||||
|
lvim.builtin.nvimtree.setup.view.side = "left"
|
||||||
|
lvim.builtin.nvimtree.setup.renderer.icons.show.git = false
|
||||||
|
|
||||||
|
lvim.builtin.treesitter.ensure_installed = {
|
||||||
|
"bash",
|
||||||
|
"c",
|
||||||
|
"javascript",
|
||||||
|
"json",
|
||||||
|
"lua",
|
||||||
|
"python",
|
||||||
|
"typescript",
|
||||||
|
"tsx",
|
||||||
|
"css",
|
||||||
|
"rust",
|
||||||
|
"java",
|
||||||
|
"yaml",
|
||||||
|
"toml",
|
||||||
|
"sql",
|
||||||
|
}
|
||||||
|
|
||||||
|
-- additional Plugins
|
||||||
|
lvim.plugins = {
|
||||||
|
{ "lunarvim/colorschemes" },
|
||||||
|
{ "ellisonleao/gruvbox.nvim" },
|
||||||
|
{ "tpope/vim-dadbod" },
|
||||||
|
{ "kristijanhusak/vim-dadbod-ui" },
|
||||||
|
{ "kristijanhusak/vim-dadbod-completion", after = "nvim-cmp" },
|
||||||
|
{ "SirVer/ultisnips" },
|
||||||
|
}
|
||||||
|
|
||||||
|
-- configuring colorscheme
|
||||||
|
require("gruvbox").setup({
|
||||||
|
undercurl = true,
|
||||||
|
underline = true,
|
||||||
|
bold = false,
|
||||||
|
italic = {
|
||||||
|
strings = true,
|
||||||
|
comments = true,
|
||||||
|
operators = false,
|
||||||
|
folds = true,
|
||||||
|
},
|
||||||
|
strikethrough = true,
|
||||||
|
invert_selection = false,
|
||||||
|
invert_signs = false,
|
||||||
|
invert_tabline = false,
|
||||||
|
invert_intend_guides = false,
|
||||||
|
inverse = true, -- invert background for search, diffs, statuslines and errors
|
||||||
|
contrast = "hard", -- can be "hard", "soft" or empty string
|
||||||
|
palette_overrides = {},
|
||||||
|
overrides = {},
|
||||||
|
dim_inactive = false,
|
||||||
|
transparent_mode = false,
|
||||||
|
})
|
||||||
|
|
||||||
|
lvim.keys.normal_mode["<leader>D"] = ":DBUIToggle<CR>"
|
||||||
|
|
||||||
|
vim.api.nvim_create_autocmd("FileType", {
|
||||||
|
pattern = { "sql", "mysql", "plsql" },
|
||||||
|
command = ":lua require('cmp').setup.buffer({ sources = {{ name = 'vim-dadbod-completion' }} })",
|
||||||
|
})
|
||||||
|
|
||||||
|
local cmp = require("cmp")
|
24
usercfg/config/mimeapps.list
Normal file
24
usercfg/config/mimeapps.list
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
[Default Applications]
|
||||||
|
image/=imv.desktop
|
||||||
|
video/=mpv.desktop
|
||||||
|
audio/=mpv.desktop
|
||||||
|
text/=emacsclient.desktop
|
||||||
|
image/jpeg=imv.desktop
|
||||||
|
image/png=imv.desktop
|
||||||
|
image/gif=imv.desktop
|
||||||
|
application/vnd.comicbook+zip=org.pwmt.zathura-cb.desktop
|
||||||
|
application/pdf=org.pwmt.zathura-pdf-poppler.desktop
|
||||||
|
image/svg+xml=org.inkscape.Inkscape.desktop
|
||||||
|
video/x-matroska=mpv.desktop
|
||||||
|
video/mp4=mpv.desktop
|
||||||
|
image/webp=imv.desktop
|
||||||
|
|
||||||
|
[Added Associations]
|
||||||
|
image/jpeg=imv.desktop;
|
||||||
|
image/png=imv.desktop;
|
||||||
|
image/gif=imv.desktop;
|
||||||
|
application/vnd.comicbook+zip=org.pwmt.zathura-cb.desktop;
|
||||||
|
application/pdf=org.pwmt.zathura-pdf-poppler.desktop;
|
||||||
|
image/svg+xml=org.inkscape.Inkscape.desktop;
|
||||||
|
video/x-matroska=mpv.desktop;
|
||||||
|
image/webp=imv.desktop;
|
12
usercfg/config/mpv/input.conf
Normal file
12
usercfg/config/mpv/input.conf
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
## ____ __
|
||||||
|
## / __ \_________ _/ /_____
|
||||||
|
## / / / / ___/ __ `/ //_/ _ \
|
||||||
|
## / /_/ / / / /_/ / ,< / __/ Clay Gomera (Drake)
|
||||||
|
## /_____/_/ \__,_/_/|_|\___/ My custom mpv config
|
||||||
|
##
|
||||||
|
|
||||||
|
l seek 5
|
||||||
|
h seek -5
|
||||||
|
j seek -60
|
||||||
|
k seek 60
|
||||||
|
S cycle sub
|
68
usercfg/config/musikcube/hotkeys.json
Normal file
68
usercfg/config/musikcube/hotkeys.json
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
{
|
||||||
|
"browse_category_filter": "^F",
|
||||||
|
"browse_playlists_delete": "KEY_DC",
|
||||||
|
"browse_playlists_new": "M-n",
|
||||||
|
"browse_playlists_rename": "M-r",
|
||||||
|
"browse_playlists_save": "M-s",
|
||||||
|
"context_menu": "M-enter",
|
||||||
|
"hotkeys_backup": "M-b",
|
||||||
|
"hotkeys_reset_to_default": "M-r",
|
||||||
|
"key_down": "j",
|
||||||
|
"key_end": "KEY_END",
|
||||||
|
"key_home": "KEY_HOME",
|
||||||
|
"key_left": "h",
|
||||||
|
"key_page_down": "KEY_NPAGE",
|
||||||
|
"key_page_up": "KEY_PPAGE",
|
||||||
|
"key_right": "l",
|
||||||
|
"key_up": "k",
|
||||||
|
"lyrics_retry": "r",
|
||||||
|
"metadata_rescan": "^R",
|
||||||
|
"navigate_console": "`",
|
||||||
|
"navigate_hotkeys": "?",
|
||||||
|
"navigate_jump_to_playing": "x",
|
||||||
|
"navigate_library": "a",
|
||||||
|
"navigate_library_album_artists": "4",
|
||||||
|
"navigate_library_browse": "b",
|
||||||
|
"navigate_library_browse_albums": "2",
|
||||||
|
"navigate_library_browse_artists": "1",
|
||||||
|
"navigate_library_browse_directories": "d",
|
||||||
|
"navigate_library_browse_genres": "3",
|
||||||
|
"navigate_library_choose_category": "6",
|
||||||
|
"navigate_library_filter": "f",
|
||||||
|
"navigate_library_play_queue": "n",
|
||||||
|
"navigate_library_playlists": "5",
|
||||||
|
"navigate_library_tracks": "t",
|
||||||
|
"navigate_lyrics": "^L",
|
||||||
|
"navigate_settings": "s",
|
||||||
|
"play_queue_clear": "X",
|
||||||
|
"play_queue_delete": "KEY_DC",
|
||||||
|
"play_queue_hot_swap": "M-a",
|
||||||
|
"play_queue_move_down": "M-down",
|
||||||
|
"play_queue_move_up": "M-up",
|
||||||
|
"play_queue_playlist_delete": "M-x",
|
||||||
|
"play_queue_playlist_load": "M-l",
|
||||||
|
"play_queue_playlist_rename": "M-r",
|
||||||
|
"play_queue_playlist_save": "M-s",
|
||||||
|
"playback_next": "M-l",
|
||||||
|
"playback_previous": "M-j",
|
||||||
|
"playback_seek_back": "u",
|
||||||
|
"playback_seek_back_proportional": "y",
|
||||||
|
"playback_seek_forward": "o",
|
||||||
|
"playback_seek_forward_proportional": "p",
|
||||||
|
"playback_stop": "^X",
|
||||||
|
"playback_toggle_mute": "m",
|
||||||
|
"playback_toggle_pause": "^P",
|
||||||
|
"playback_toggle_repeat": ".",
|
||||||
|
"playback_toggle_shuffle": ",",
|
||||||
|
"playback_volume_down": "M-k",
|
||||||
|
"playback_volume_up": "M-i",
|
||||||
|
"search_input_toggle_match_type": "M-m",
|
||||||
|
"show_equalizer": "^E",
|
||||||
|
"toggle_visualizer": "v",
|
||||||
|
"track_list_change_sort_order": "M-s",
|
||||||
|
"track_list_next_group": "]",
|
||||||
|
"track_list_play_from_top": "M-P",
|
||||||
|
"track_list_previous_group": "[",
|
||||||
|
"track_list_rate_track": "r",
|
||||||
|
"view_refresh": "KEY_F(5)"
|
||||||
|
}
|
113
usercfg/config/neofetch/config.conf
Normal file
113
usercfg/config/neofetch/config.conf
Normal file
|
@ -0,0 +1,113 @@
|
||||||
|
print_info() {
|
||||||
|
prin " "
|
||||||
|
prin "┌─────────\n Hardware Information \n─────────┐"
|
||||||
|
info " " model
|
||||||
|
info " " cpu
|
||||||
|
info " " gpu
|
||||||
|
info " " memory
|
||||||
|
info " " uptime
|
||||||
|
prin "├─────────\n Software Information \n─────────┤"
|
||||||
|
info " " distro
|
||||||
|
info " " kernel
|
||||||
|
info " " packages
|
||||||
|
info " " de
|
||||||
|
info " " shell
|
||||||
|
info " " theme
|
||||||
|
info " " icons
|
||||||
|
info " " song
|
||||||
|
# [[ "$player" ]] && prin "Music Player" "$player"
|
||||||
|
# info " " local_ip
|
||||||
|
# info " " public_ip
|
||||||
|
# info " " locale # This only works on glibc systems.
|
||||||
|
prin "└───────────────────────────────────────┘"
|
||||||
|
info cols
|
||||||
|
prin "\n \n \n \n \n ${cl3} \n \n ${cl5} \n \n ${cl2} \n \n ${cl6} \n \n ${cl4} \n \n ${cl1} \n \n ${cl7} \n \n ${cl0}"
|
||||||
|
}
|
||||||
|
|
||||||
|
kernel_shorthand="on"
|
||||||
|
distro_shorthand="off"
|
||||||
|
os_arch="off"
|
||||||
|
uptime_shorthand="on"
|
||||||
|
memory_percent="on"
|
||||||
|
package_managers="on"
|
||||||
|
shell_path="off"
|
||||||
|
shell_version="on"
|
||||||
|
speed_type="bios_limit"
|
||||||
|
speed_shorthand="on"
|
||||||
|
cpu_brand="off"
|
||||||
|
cpu_speed="off"
|
||||||
|
cpu_cores="logical"
|
||||||
|
cpu_temp="off"
|
||||||
|
gpu_brand="off"
|
||||||
|
gpu_type="all"
|
||||||
|
refresh_rate="on"
|
||||||
|
gtk_shorthand="on"
|
||||||
|
gtk2="on"
|
||||||
|
gtk3="on"
|
||||||
|
public_ip_host="http://ident.me"
|
||||||
|
public_ip_timeout=2
|
||||||
|
disk_show=('/')
|
||||||
|
music_player="cmus"
|
||||||
|
song_format="%artist% - %title%"
|
||||||
|
song_shorthand="off"
|
||||||
|
colors=(distro)
|
||||||
|
bold="on"
|
||||||
|
underline_enabled="on"
|
||||||
|
underline_char="-"
|
||||||
|
separator=" "
|
||||||
|
color_blocks="off"
|
||||||
|
block_range=(0 15) # Colorblocks
|
||||||
|
|
||||||
|
# Colors for custom colorblocks
|
||||||
|
magenta="\033[1;35m"
|
||||||
|
green="\033[1;32m"
|
||||||
|
white="\033[1;37m"
|
||||||
|
blue="\033[1;34m"
|
||||||
|
red="\033[1;31m"
|
||||||
|
black="\033[1;40;30m"
|
||||||
|
yellow="\033[1;33m"
|
||||||
|
cyan="\033[1;36m"
|
||||||
|
reset="\033[0m"
|
||||||
|
bgyellow="\033[1;43;33m"
|
||||||
|
bgwhite="\033[1;47;37m"
|
||||||
|
cl0="${reset}"
|
||||||
|
cl1="${magenta}"
|
||||||
|
cl2="${green}"
|
||||||
|
cl3="${white}"
|
||||||
|
cl4="${blue}"
|
||||||
|
cl5="${red}"
|
||||||
|
cl6="${yellow}"
|
||||||
|
cl7="${cyan}"
|
||||||
|
cl8="${black}"
|
||||||
|
cl9="${bgyellow}"
|
||||||
|
cl10="${bgwhite}"
|
||||||
|
|
||||||
|
block_width=4
|
||||||
|
block_height=1
|
||||||
|
|
||||||
|
bar_char_elapsed="-"
|
||||||
|
bar_char_total="="
|
||||||
|
bar_border="on"
|
||||||
|
bar_length=15
|
||||||
|
bar_color_elapsed="distro"
|
||||||
|
bar_color_total="distro"
|
||||||
|
|
||||||
|
cpu_display="on"
|
||||||
|
memory_display="on"
|
||||||
|
battery_display="on"
|
||||||
|
disk_display="on"
|
||||||
|
|
||||||
|
aascii_distro="void-small"
|
||||||
|
ascii_colors=(distro)
|
||||||
|
ascii_bold="on"
|
||||||
|
|
||||||
|
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
|
||||||
|
crop_mode="normal"
|
||||||
|
crop_offset="center"
|
||||||
|
|
||||||
|
gap=2
|
||||||
|
|
||||||
|
yoffset=0
|
||||||
|
xoffset=0
|
||||||
|
|
||||||
|
stdout="off"
|
51
usercfg/config/newsboat/config
Normal file
51
usercfg/config/newsboat/config
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
## ____ __
|
||||||
|
## / __ \_________ _/ /_____
|
||||||
|
## / / / / ___/ __ `/ //_/ _ \
|
||||||
|
## / /_/ / / / /_/ / ,< / __/ Clay Gomera (Drake)
|
||||||
|
## /_____/_/ \__,_/_/|_|\___/ My custom newsboat config
|
||||||
|
##
|
||||||
|
show-read-feeds yes
|
||||||
|
auto-reload yes
|
||||||
|
reload-threads 10
|
||||||
|
|
||||||
|
bind-key j down
|
||||||
|
bind-key k up
|
||||||
|
bind-key j next articlelist
|
||||||
|
bind-key k prev articlelist
|
||||||
|
bind-key J next-feed articlelist
|
||||||
|
bind-key K prev-feed articlelist
|
||||||
|
bind-key G end
|
||||||
|
bind-key g home
|
||||||
|
bind-key d pagedown
|
||||||
|
bind-key u pageup
|
||||||
|
bind-key l open
|
||||||
|
bind-key h quit
|
||||||
|
bind-key a toggle-article-read
|
||||||
|
bind-key n next-unread
|
||||||
|
bind-key N prev-unread
|
||||||
|
bind-key D pb-download
|
||||||
|
bind-key U show-urls
|
||||||
|
bind-key x pb-delete
|
||||||
|
|
||||||
|
color listnormal cyan default
|
||||||
|
color listfocus black yellow standout bold
|
||||||
|
color listnormal_unread blue default
|
||||||
|
color listfocus_unread yellow default bold
|
||||||
|
color info red black bold
|
||||||
|
color article white default bold
|
||||||
|
|
||||||
|
highlight all "---.*---" yellow
|
||||||
|
highlight feedlist ".*(0/0))" black
|
||||||
|
highlight article "(^Feed:.*|^Title:.*|^Author:.*)" cyan default bold
|
||||||
|
highlight article "(^Link:.*|^Date:.*)" default default
|
||||||
|
highlight article "https?://[^ ]+" green default
|
||||||
|
highlight article "^(Title):.*$" blue default
|
||||||
|
highlight article "\\[[0-9][0-9]*\\]" magenta default bold
|
||||||
|
highlight article "\\[image\\ [0-9]+\\]" green default bold
|
||||||
|
highlight article "\\[embedded flash: [0-9][0-9]*\\]" green default bold
|
||||||
|
highlight article ":.*\\(link\\)$" cyan default
|
||||||
|
highlight article ":.*\\(image\\)$" blue default
|
||||||
|
highlight article ":.*\\(embedded flash\\)$" magenta default
|
||||||
|
|
||||||
|
browser w3m
|
||||||
|
macro v set browser "mpv %u" ; open-in-browser ; set browser "w3m %u"
|
157
usercfg/config/newsboat/urls
Normal file
157
usercfg/config/newsboat/urls
Normal file
|
@ -0,0 +1,157 @@
|
||||||
|
http://static.fsf.org/fsforg/rss/news.xml "~FSF News"
|
||||||
|
http://static.fsf.org/fsforg/rss/blogs.xml "~FSF Blogs"
|
||||||
|
https://fsfe.org/news/news.en.rss "~FSFE News"
|
||||||
|
https://dot.kde.org/rss.xml "~KDE Dot News"
|
||||||
|
https://planet.kde.org/global/atom.xml "~Planet KDE"
|
||||||
|
https://pointieststick.com/feed/ "~This Week on KDE"
|
||||||
|
https://www.kdeblog.com/rss "~KDE Blog"
|
||||||
|
https://thisweek.gnome.org/index.xml "~This Week on GNOME"
|
||||||
|
https://www.omgubuntu.co.uk/feed "~OMG!Ubuntu"
|
||||||
|
https://www.omglinux.com/feed "~OMG!Linux"
|
||||||
|
https://blog.thunderbird.net/feed/ "~The Thunderbird Blog"
|
||||||
|
https://thelinuxexp.com/feed.xml "~The Linux Experiment"
|
||||||
|
https://techhut.tv/feed/ "~TechHut Media"
|
||||||
|
https://itsfoss.com/rss/ "~Its FOSS!"
|
||||||
|
https://thelinuxcast.org/feed/feed.xml "~The Linux Cast"
|
||||||
|
https://9to5linux.com/feed/atom "~9to5Linux"
|
||||||
|
https://blog.elementary.io/feed.xml "~elementary OS Blog"
|
||||||
|
https://blog.zorin.com/index.xml "~Zorin OS Blog"
|
||||||
|
http://blog.linuxmint.com/?feed=rss2 "~Linux Mint Blog"
|
||||||
|
https://www.gamingonlinux.com/article_rss.php "~Gaming on linux"
|
||||||
|
https://hackaday.com/blog/feed/ "~Hackaday"
|
||||||
|
https://linux.softpedia.com/backend.xml "~Softpedia Linux"
|
||||||
|
https://www.phoronix.com/rss.php "~Phoronix"
|
||||||
|
https://www.computerworld.com/index.rss "~Computerworld"
|
||||||
|
https://betanews.com/feed "~Betanews Linux"
|
||||||
|
http://lxer.com/module/newswire/headlines.rss "~Lxer"
|
||||||
|
https://theevilskeleton.gitlab.io/feed.xml "~TheEvilSkeleton"
|
||||||
|
https://tutanota.com/blog/feed.xml "~Tutanota Blogs"
|
||||||
|
https://techcrunch.com/feed/ "~TechCrunch"
|
||||||
|
http://www.techradar.com/rss "~TechRadar"
|
||||||
|
https://www.zdnet.com/news/rss.xml "~ZDNET - News"
|
||||||
|
https://c3po.website/rss/ "~Blog de C3PO"
|
||||||
|
https://thecheis.com/feed/ "~THE_CHEI$"
|
||||||
|
http://yro.slashdot.org/yro.rss "~Slashdot: Your Rights Online"
|
||||||
|
https://freedom-to-tinker.com/feed/rss/ "~Freedom to Tinker"
|
||||||
|
https://act.eff.org/action.atom "~EFF - Action Center"
|
||||||
|
https://www.eff.org/rss/updates.xml "~EFF - Updates"
|
||||||
|
https://victorhckinthefreeworld.com/feed/ "~Victorhck in the free world"
|
||||||
|
https://theprivacydad.com/feed/ "~Welcome to The Privacy Dad's Blog!"
|
||||||
|
https://proton.me/blog/feed "~Proton Blog"
|
||||||
|
|
||||||
|
https://inv.vern.cc/feed/channel/UC-ErgHYY0_Yjhjz2MN1E1lg "~YT - RETRO Hardware"
|
||||||
|
https://inv.vern.cc/feed/channel/UC0W_BIuwk8D0Bv4THbVZZOQ "~YT - Surveillance Report"
|
||||||
|
https://inv.vern.cc/feed/channel/UC1D3yD4wlPMico0dss264XA "~YT - NileBlue"
|
||||||
|
https://inv.vern.cc/feed/channel/UC1JTQBa5QxZCpXrFSkMxmPw "~YT - Raycevick"
|
||||||
|
https://inv.vern.cc/feed/channel/UC1_uAIS3r8Vu6JjXWvastJg "~YT - Mathologer"
|
||||||
|
https://inv.vern.cc/feed/channel/UC1s1OsWNYDFgbROPV-q5arg "~YT - Michael Horn"
|
||||||
|
https://inv.vern.cc/feed/channel/UC2WHjPDvbE6O328n17ZGcfg "~YT - ForrestKnight"
|
||||||
|
https://inv.vern.cc/feed/channel/UC2eYFnH61tmytImy1mTYvhA "~YT - Luke Smith"
|
||||||
|
https://inv.vern.cc/feed/channel/UC3Wn3dABlgESm8Bzn8Vamgg "~YT - Sideprojects"
|
||||||
|
https://inv.vern.cc/feed/channel/UC3jSNmKWYA04R47fDcc1ImA "~YT - InfinitelyGalactic"
|
||||||
|
https://inv.vern.cc/feed/channel/UC3yaWWA9FF9OBog5U9ml68A "~YT - SavvyNik"
|
||||||
|
https://inv.vern.cc/feed/channel/UC52hytXteCKmuOzMViTK8_w "~YT - CdeCiencia"
|
||||||
|
https://inv.vern.cc/feed/channel/UC5I2hjZYiW9gZPVkvzM8_Cw "~YT - Techmoan"
|
||||||
|
https://inv.vern.cc/feed/channel/UC5KDiSAFxrDWhmysBcNqtMA "~YT - Eric Murphy"
|
||||||
|
https://inv.vern.cc/feed/channel/UC5UAwBUum7CPN5buc-_N1Fw "~YT - The Linux Experiment"
|
||||||
|
https://inv.vern.cc/feed/channel/UC5nlKFUNoskvV5XdW6PbgYw "~YT - A Well-Rested Dog"
|
||||||
|
https://inv.vern.cc/feed/channel/UC6WOxrSKLW8VagrNkfvi6EQ "~YT - THE SQUIDD"
|
||||||
|
https://inv.vern.cc/feed/channel/UC6biysICWOJ-C3P4Tyeggzg "~YT - Low Level Learning"
|
||||||
|
https://inv.vern.cc/feed/channel/UC7YOGHUfC1Tb6E4pudI9STA "~YT - Mental Outlaw"
|
||||||
|
https://inv.vern.cc/feed/channel/UC7qPftDWPw9XuExpSgfkmJQ "~YT - Nostalgia Nerd"
|
||||||
|
https://inv.vern.cc/feed/channel/UC8bCGC81i_jYlL041-iAFSA "~YT - JWulen"
|
||||||
|
https://inv.vern.cc/feed/channel/UC8uT9cgJorJPWu7ITLGo9Ww "~YT - The 8-Bit Guy"
|
||||||
|
https://inv.vern.cc/feed/channel/UC9-y-6csu5WGm29I7JiwpnA "~YT - Computerphile"
|
||||||
|
https://inv.vern.cc/feed/channel/UC910yxBmXzGDH_2cx0XE0Xw "~YT - Plano de Juego"
|
||||||
|
https://inv.vern.cc/feed/channel/UC9bORzxOWiewqMXxkmhAwAg "~YT - Gingy"
|
||||||
|
https://inv.vern.cc/feed/channel/UCAMu6Dso0ENoNm3sKpQsy0g "~YT - Nir Lichtman"
|
||||||
|
https://inv.vern.cc/feed/channel/UCAiEWppTvoNSHU939xhMb2g "~YT - hoser"
|
||||||
|
https://inv.vern.cc/feed/channel/UCAiiOTio8Yu69c3XnR7nQBQ "~YT - System Crafters"
|
||||||
|
https://inv.vern.cc/feed/channel/UCBq5p-xOla8xhnrbhu8AIAg "~YT - Tech Over Tea"
|
||||||
|
https://inv.vern.cc/feed/channel/UCE0H52NoucHL2JkhPdZ1ykA "~YT - Jwlar"
|
||||||
|
https://inv.vern.cc/feed/channel/UCEFymXY4eFCo_AchSpxwyrg "~YT - MetalJesusRocks"
|
||||||
|
https://inv.vern.cc/feed/channel/UCEp20NgOZHmgWdbQdHSxgjw "~YT - This Does Not Compute"
|
||||||
|
https://inv.vern.cc/feed/channel/UCFhXFikryT4aFcLkLw2LBLA "~YT - NileRed"
|
||||||
|
https://inv.vern.cc/feed/channel/UCGE-JpLbibXJg3W_N2hbo8g "~YT - Sethorven"
|
||||||
|
https://inv.vern.cc/feed/channel/UCH5DsMZAgdx5Fkk9wwMNwCA "~YT - The New Oil"
|
||||||
|
https://inv.vern.cc/feed/channel/UCHnyfMqiRRG1u-2MsSQLbXA "~YT - Veritasium"
|
||||||
|
https://inv.vern.cc/feed/channel/UCHvDhwNuq-h2hZQRR6BwbLQ "~YT - Tech With Nikola"
|
||||||
|
https://inv.vern.cc/feed/channel/UCJ0-OtVpF0wOKEqT2Z1HEtA "~YT - ElectroBOOM"
|
||||||
|
https://inv.vern.cc/feed/channel/UCJYJgj7rzsn0vdR7fkgjuIA "~YT - styropyro"
|
||||||
|
https://inv.vern.cc/feed/channel/UCLEoyoOKZK0idGqSc6Pi23w "~YT - RMC - The Cave"
|
||||||
|
https://inv.vern.cc/feed/channel/UCLx053rWZxCiYWsBETgdKrQ "~YT - LGR"
|
||||||
|
https://inv.vern.cc/feed/channel/UCMbQbVilo-nezMvwf1BZfAA "~YT - CienciaDeSofa"
|
||||||
|
https://inv.vern.cc/feed/channel/UCMiyV_Ib77XLpzHPQH_q0qQ "~YT - Veronica Explains"
|
||||||
|
https://inv.vern.cc/feed/channel/UCMnZ3qm76jc3SUi9Z-5OdcA "~YT - Leyendas & Videojuegos"
|
||||||
|
https://inv.vern.cc/feed/channel/UCNorHyg3UZYJq5jJY9ZSt-w "~YT - Ryan-Thomas"
|
||||||
|
https://inv.vern.cc/feed/channel/UCNzszbnvQeFzObW0ghk0Ckw "~YT - Dave's Garage"
|
||||||
|
https://inv.vern.cc/feed/channel/UCONH73CdRXUjlh3-DdLGCPw "~YT - Nicco Loves Linux"
|
||||||
|
https://inv.vern.cc/feed/channel/UCOxmlaJURX3nq8eLuJPbl3A "~YT - Psivewri"
|
||||||
|
https://inv.vern.cc/feed/channel/UCP5tjEmvPItGyLhmjdwP7Ww "~YT - RealLifeLore"
|
||||||
|
https://inv.vern.cc/feed/channel/UCQ-W1KE9EYfdxhL6S4twUNw "~YT - The Cherno"
|
||||||
|
https://inv.vern.cc/feed/channel/UCQX_MZRCaluNKxkywkLEgfA "~YT - Date un Vlog"
|
||||||
|
https://inv.vern.cc/feed/channel/UCR1IuLEqb6UEA_zQ81kwXfg "~YT - Real Engineering"
|
||||||
|
https://inv.vern.cc/feed/channel/UCRYeRa2iUMd8An1WTPIP2bw "~YT - aChair Leg"
|
||||||
|
https://inv.vern.cc/feed/channel/UCS-WzPVpAAli-1IfEG2lN8A "~YT - Michael MJD"
|
||||||
|
https://inv.vern.cc/feed/channel/UCS0N5baNlQWJCUrhCEo8WlA "~YT - Ben Eater"
|
||||||
|
https://inv.vern.cc/feed/channel/UCSju5G2aFaWMqn-_0YBtq5A "~YT - Stand-up Maths"
|
||||||
|
https://inv.vern.cc/feed/channel/UCSp-OaMpsO8K0KkOqyBl7_w "~YT - Let's Get Rusty"
|
||||||
|
https://inv.vern.cc/feed/channel/UCSuHzQ3GrHSzoBbwrIq3LLA "~YT - NBTV (Naomi Brockwell TV)"
|
||||||
|
https://inv.vern.cc/feed/channel/UCUMwY9iS8oMyWDYIe6_RmoA "~YT - No Boilerplate"
|
||||||
|
https://inv.vern.cc/feed/channel/UCUyeluBRhGPCW4rPe_UvBZQ "~YT - ThePrimeTime"
|
||||||
|
https://inv.vern.cc/feed/channel/UCVk4b-svNJoeytrrlOixebQ "~YT - TheVimeagen"
|
||||||
|
https://inv.vern.cc/feed/channel/UCVls1GmFKf6WlTraIb_IaJg "~YT - DistroTube"
|
||||||
|
https://inv.vern.cc/feed/channel/UCW-HHEyt67RhZ6q21n4p2zQ "~YT - Mac84"
|
||||||
|
https://inv.vern.cc/feed/channel/UCW0gH2G-cMKAEjEkI4YhnPA "~YT - Nerd of the Rings"
|
||||||
|
https://inv.vern.cc/feed/channel/UCWDGyt5hy6UA6Br-hAar03A "~YT - El Robot de Colón"
|
||||||
|
https://inv.vern.cc/feed/channel/UCWQaM7SpSECp9FELz-cHzuQ "~YT - Dreams of Code"
|
||||||
|
https://inv.vern.cc/feed/channel/UCWcp1Mwm7_bJ-mVoZb8TdkQ "~YT - TuberViejuner"
|
||||||
|
https://inv.vern.cc/feed/channel/UCWyrVfwRL-2DOkzsqrbjo5Q "~YT - NCommander"
|
||||||
|
https://inv.vern.cc/feed/channel/UCYO_jab_esuFRV4b17AJtAw "~YT - 3Blue1Brown"
|
||||||
|
https://inv.vern.cc/feed/channel/UCYVU6rModlGxvJbszCclGGw "~YT - Rob Braxman Tech"
|
||||||
|
https://inv.vern.cc/feed/channel/UCZ4AMrDcNrfy3X6nsU8-rPg "~YT - Economics Explained"
|
||||||
|
https://inv.vern.cc/feed/channel/UCa6V1UVOXN4wDm7RDQDoa6g "~YT - El Traductor de Ingeniería"
|
||||||
|
https://inv.vern.cc/feed/channel/UCaSCt8s_4nfkRglWCvNSDrg "~YT - CodeAesthetic"
|
||||||
|
https://inv.vern.cc/feed/channel/UCaVPhFg-Ax873wvhbNitsrQ "~YT - El Robot de Platón"
|
||||||
|
https://inv.vern.cc/feed/channel/UCbdSYaPD-lr1kW27UJuk8Pw "~YT - QuantumFracture"
|
||||||
|
https://inv.vern.cc/feed/channel/UCbiGcwDWZjz05njNPrJU7jA "~YT - ExplainingComputers"
|
||||||
|
https://inv.vern.cc/feed/channel/UCcAy1o8VUCkdowxRYbc0XRw "~YT - Sebi's Random Tech"
|
||||||
|
https://inv.vern.cc/feed/channel/UCd4XwUn2Lure2NHHjukoCwA "~YT - Linux For Everyone"
|
||||||
|
https://inv.vern.cc/feed/channel/UCdp4_l1vPmpN-gDbUwhaRUQ "~YT - Branch Education"
|
||||||
|
https://inv.vern.cc/feed/channel/UCeHOkFGW-7uAZFvq3BXb8YA "~YT - :3ildcat"
|
||||||
|
https://inv.vern.cc/feed/channel/UCerEIdrEW-IqwvlH8lTQUJQ "~YT - Tech Tangents"
|
||||||
|
https://inv.vern.cc/feed/channel/UCf-U0uPVQZtcqXUWa_Hl4Mw "~YT - Into the Shadows"
|
||||||
|
https://inv.vern.cc/feed/channel/UCg6gPGh8HU2U01vaFCAsvmQ "~YT - Chris Titus Tech"
|
||||||
|
https://inv.vern.cc/feed/channel/UCgNg3vwj3xt7QOrcIDaHdFg "~YT - PolyMatter"
|
||||||
|
https://inv.vern.cc/feed/channel/UChI0q9a-ZcbZh7dAu_-J-hg "~YT - Upper Echelon"
|
||||||
|
https://inv.vern.cc/feed/channel/UCj8orMezFWVcoN-4S545Wtw "~YT - Max Derrat"
|
||||||
|
https://inv.vern.cc/feed/channel/UCjFaPUcJU1vwk193mnW_w1w "~YT - Modern Vintage Gamer"
|
||||||
|
https://inv.vern.cc/feed/channel/UCjSEJkpGbcZhvo0lr-44X_w "~YT - TechHut"
|
||||||
|
https://inv.vern.cc/feed/channel/UCjgS6Uyg8ok4Jd_lH_MUKgg "~YT - Claus Kellerman"
|
||||||
|
https://inv.vern.cc/feed/channel/UCl2mFZoRqjw_ELax4Yisf6w "~YT - Louis Rossmann"
|
||||||
|
https://inv.vern.cc/feed/channel/UCl_dlV_7ofr4qeP1drJQ-qg "~YT - Tantacrul"
|
||||||
|
https://inv.vern.cc/feed/channel/UCld68syR8Wi-GY_n4CaoJGA "~YT - Brodie Robertson"
|
||||||
|
https://inv.vern.cc/feed/channel/UClnDI2sdehVm1zm_LmUHsjQ "~YT - Biographics"
|
||||||
|
https://inv.vern.cc/feed/channel/UCmw-QGOHbHA5cDAvwwqUTKQ "~YT - Zaney"
|
||||||
|
https://inv.vern.cc/feed/channel/UCmyGZ0689ODyReHw3rsKLtQ "~YT - Michael Tunnell"
|
||||||
|
https://inv.vern.cc/feed/channel/UCnw3aIEiz60S6O3XcztCVkQ "~YT - PatricianTV"
|
||||||
|
https://inv.vern.cc/feed/channel/UCoL8olX-259lS1N6QPyP4IQ "~YT - Action Retro"
|
||||||
|
https://inv.vern.cc/feed/channel/UCoxcjq-8xIDTYp3uz647V5A "~YT - Numberphile"
|
||||||
|
https://inv.vern.cc/feed/channel/UCpuKDBw8IVIdKWPhiB2VDNQ "~YT - Cinematix"
|
||||||
|
https://inv.vern.cc/feed/channel/UCpuLiczP2Aqq11Gtf4k_fkw "~YT - Futurasound Productions"
|
||||||
|
https://inv.vern.cc/feed/channel/UCqxM9T6ksiOVKIkb88S2r7Q "~YT - Zac Builds"
|
||||||
|
https://inv.vern.cc/feed/channel/UCrkPsvLGln62OMZRO6K-llg "~YT - Nick Chapsas"
|
||||||
|
https://inv.vern.cc/feed/channel/UCs6KfncB4OV6Vug4o_bzijg "~YT - Techlore"
|
||||||
|
https://inv.vern.cc/feed/channel/UCs7nPQIEba0T3tGOWWsZpJQ "~YT - Like Stories of Old"
|
||||||
|
https://inv.vern.cc/feed/channel/UCsnGwSIHyoYN0kiINAGUKxg "~YT - Wolfgang's Channel"
|
||||||
|
https://inv.vern.cc/feed/channel/UCtMVHI3AJD4Qk4hcbZnI9ZQ "~YT - SomeOrdinaryGamers"
|
||||||
|
https://inv.vern.cc/feed/channel/UCtYKe7-XbaDjpUwcU5x0bLg "~YT - neo"
|
||||||
|
https://inv.vern.cc/feed/channel/UCtYg149E_wUGVmjGz-TgyNA "~YT - Titus Tech Talk"
|
||||||
|
https://inv.vern.cc/feed/channel/UCvjgXvBlbQiydffZU7m1_aw "~YT - The Coding Train"
|
||||||
|
https://inv.vern.cc/feed/channel/UCxQKHvKbmSzGMvUrVtJYnUA "~YT - Learn Linux TV"
|
||||||
|
https://inv.vern.cc/feed/channel/UCxdZ7XCQVMRMipj3gGemQfw "~YT - GNULectures"
|
||||||
|
https://inv.vern.cc/feed/channel/UCy0tKL1T7wFoYcxCe0xjN6Q "~YT - Technology Connections"
|
||||||
|
https://inv.vern.cc/feed/channel/UCybBViio_TH_uiFFDJuz5tg "~YT - Einzelgänger"
|
||||||
|
https://inv.vern.cc/feed/channel/UCylGUf9BvQooEFjgdNudoQg "~YT - The Linux Cast"
|
||||||
|
https://inv.vern.cc/feed/channel/UCzGMBzt6UOMoQe_dqOfShZw "~YT - Cultura VJ"
|
||||||
|
https://inv.vern.cc/feed/channel/UCzXsTSZDoAPSjfHr8IZM9Ew "~YT - FloatyMonkey"
|
71
usercfg/config/picom/picom.conf
Normal file
71
usercfg/config/picom/picom.conf
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
## ____ __
|
||||||
|
## / __ \_________ _/ /_____
|
||||||
|
## / / / / ___/ __ `/ //_/ _ \
|
||||||
|
## / /_/ / / / /_/ / ,< / __/ Clay Gomera (Drake)
|
||||||
|
## /_____/_/ \__,_/_/|_|\___/ My custom picom config
|
||||||
|
|
||||||
|
## Shadows
|
||||||
|
shadow = false;
|
||||||
|
#shadow-radius = 8;
|
||||||
|
#shadow-opacity = .90
|
||||||
|
#shadow-offset-x = -10;
|
||||||
|
#shadow-offset-y = -10;
|
||||||
|
# shadow-red = 0
|
||||||
|
# shadow-green = 0
|
||||||
|
# shadow-blue = 0
|
||||||
|
# shadow-color = "#000000"
|
||||||
|
#shadow-exclude = [
|
||||||
|
# "name = 'Notification'",
|
||||||
|
# "class_g = 'Conky'",
|
||||||
|
# "class_g ?= 'Notify-osd'",
|
||||||
|
# "class_g = 'Cairo-clock'",
|
||||||
|
# "_GTK_FRAME_EXTENTS@:c"
|
||||||
|
#];
|
||||||
|
|
||||||
|
## Fading
|
||||||
|
fading = false;
|
||||||
|
#fade-in-step = 0.05;
|
||||||
|
#fade-out-step = 0.05;
|
||||||
|
#fade-delta = 8
|
||||||
|
#fade-exclude = []
|
||||||
|
no-fading-openclose = true
|
||||||
|
#no-fading-destroyed-argb = false
|
||||||
|
|
||||||
|
## Transparency and opacity
|
||||||
|
inactive-opacity = 1.00;
|
||||||
|
frame-opacity = 1.0;
|
||||||
|
inactive-opacity-override = false;
|
||||||
|
focus-exclude = [ "class_g = 'Cairo-clock'" ];
|
||||||
|
# opaity-rule = []
|
||||||
|
|
||||||
|
## General Settings
|
||||||
|
backend = "glx";
|
||||||
|
vsync = true;
|
||||||
|
dbe = false;
|
||||||
|
detect-client-opacity = true;
|
||||||
|
refresh-rate = 60;
|
||||||
|
detect-transient = true;
|
||||||
|
glx-no-stencil = true;
|
||||||
|
use-damage = true;
|
||||||
|
unredir-if-possible = true;
|
||||||
|
no-frame-pacing = true;
|
||||||
|
#unredir-if-possible-exclude = [
|
||||||
|
# "class_g = 'looking-glass-client' && !focused"
|
||||||
|
#];
|
||||||
|
glx-use-copysubbuffer-mesa = true;
|
||||||
|
|
||||||
|
wintypes:
|
||||||
|
{
|
||||||
|
normal = { fade = true; full-shadow = true; };
|
||||||
|
tooltip = { fade = true; };
|
||||||
|
menu = { fade = true; };
|
||||||
|
popup_menu = { fade = true; };
|
||||||
|
dropdown_menu = { fade = true; };
|
||||||
|
utility = { fade = true; };
|
||||||
|
dialog = { fade = true; };
|
||||||
|
notify = { fade = true; };
|
||||||
|
unknown = { fade = true; };
|
||||||
|
# notification = { shadow = true; };
|
||||||
|
# dock = { shadow = false; };
|
||||||
|
};
|
||||||
|
|
169
usercfg/config/pipewire/pipewire-pulse.conf
Normal file
169
usercfg/config/pipewire/pipewire-pulse.conf
Normal file
|
@ -0,0 +1,169 @@
|
||||||
|
# PulseAudio config file for PipeWire version "1.0.4" #
|
||||||
|
#
|
||||||
|
# Copy and edit this file in /etc/pipewire for system-wide changes
|
||||||
|
# or in ~/.config/pipewire for local changes.
|
||||||
|
#
|
||||||
|
# It is also possible to place a file with an updated section in
|
||||||
|
# /etc/pipewire/pipewire-pulse.conf.d/ for system-wide changes or in
|
||||||
|
# ~/.config/pipewire/pipewire-pulse.conf.d/ for local changes.
|
||||||
|
#
|
||||||
|
|
||||||
|
context.properties = {
|
||||||
|
## Configure properties in the system.
|
||||||
|
#mem.warn-mlock = false
|
||||||
|
#mem.allow-mlock = true
|
||||||
|
#mem.mlock-all = false
|
||||||
|
#log.level = 2
|
||||||
|
|
||||||
|
#default.clock.quantum-limit = 8192
|
||||||
|
}
|
||||||
|
|
||||||
|
context.spa-libs = {
|
||||||
|
audio.convert.* = audioconvert/libspa-audioconvert
|
||||||
|
support.* = support/libspa-support
|
||||||
|
}
|
||||||
|
|
||||||
|
context.modules = [
|
||||||
|
{ name = libpipewire-module-rt
|
||||||
|
args = {
|
||||||
|
nice.level = -11
|
||||||
|
#rt.prio = 55
|
||||||
|
#rt.time.soft = -1
|
||||||
|
#rt.time.hard = -1
|
||||||
|
#uclamp.min = 0
|
||||||
|
#uclamp.max = 1024
|
||||||
|
}
|
||||||
|
flags = [ ifexists nofail ]
|
||||||
|
}
|
||||||
|
{ name = libpipewire-module-protocol-native }
|
||||||
|
{ name = libpipewire-module-client-node }
|
||||||
|
{ name = libpipewire-module-adapter }
|
||||||
|
{ name = libpipewire-module-metadata }
|
||||||
|
|
||||||
|
{ name = libpipewire-module-protocol-pulse
|
||||||
|
args = {
|
||||||
|
# contents of pulse.properties can also be placed here
|
||||||
|
# to have config per server.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
# Extra scripts can be started here. Setup in default.pa can be moved in
|
||||||
|
# a script or in pulse.cmd below
|
||||||
|
context.exec = [
|
||||||
|
#{ path = "pactl" args = "load-module module-always-sink" }
|
||||||
|
#{ path = "pactl" args = "upload-sample my-sample.wav my-sample" }
|
||||||
|
#{ path = "/usr/bin/sh" args = "~/.config/pipewire/default.pw" }
|
||||||
|
]
|
||||||
|
|
||||||
|
# Extra commands can be executed here.
|
||||||
|
# load-module : loads a module with args and flags
|
||||||
|
# args = "<module-name> <module-args>"
|
||||||
|
# ( flags = [ nofail ] )
|
||||||
|
pulse.cmd = [
|
||||||
|
{ cmd = "load-module" args = "module-always-sink" flags = [ ] }
|
||||||
|
#{ cmd = "load-module" args = "module-switch-on-connect" }
|
||||||
|
#{ cmd = "load-module" args = "module-gsettings" flags = [ nofail ] }
|
||||||
|
]
|
||||||
|
|
||||||
|
stream.properties = {
|
||||||
|
#node.latency = 1024/48000
|
||||||
|
#node.autoconnect = true
|
||||||
|
#resample.quality = 4
|
||||||
|
#channelmix.normalize = false
|
||||||
|
#channelmix.mix-lfe = true
|
||||||
|
#channelmix.upmix = true
|
||||||
|
#channelmix.upmix-method = psd # none, simple
|
||||||
|
#channelmix.lfe-cutoff = 150
|
||||||
|
#channelmix.fc-cutoff = 12000
|
||||||
|
#channelmix.rear-delay = 12.0
|
||||||
|
#channelmix.stereo-widen = 0.0
|
||||||
|
#channelmix.hilbert-taps = 0
|
||||||
|
#dither.noise = 0
|
||||||
|
}
|
||||||
|
|
||||||
|
pulse.properties = {
|
||||||
|
# the addresses this server listens on
|
||||||
|
server.address = [
|
||||||
|
"unix:native"
|
||||||
|
#"unix:/tmp/something" # absolute paths may be used
|
||||||
|
#"tcp:4713" # IPv4 and IPv6 on all addresses
|
||||||
|
#"tcp:[::]:9999" # IPv6 on all addresses
|
||||||
|
#"tcp:127.0.0.1:8888" # IPv4 on a single address
|
||||||
|
#
|
||||||
|
#{ address = "tcp:4713" # address
|
||||||
|
# max-clients = 64 # maximum number of clients
|
||||||
|
# listen-backlog = 32 # backlog in the server listen queue
|
||||||
|
# client.access = "restricted" # permissions for clients
|
||||||
|
#}
|
||||||
|
]
|
||||||
|
#server.dbus-name = "org.pulseaudio.Server"
|
||||||
|
#pulse.min.req = 128/48000 # 2.7ms
|
||||||
|
#pulse.default.req = 960/48000 # 20 milliseconds
|
||||||
|
#pulse.min.frag = 128/48000 # 2.7ms
|
||||||
|
#pulse.default.frag = 96000/48000 # 2 seconds
|
||||||
|
#pulse.default.tlength = 96000/48000 # 2 seconds
|
||||||
|
#pulse.min.quantum = 128/48000 # 2.7ms
|
||||||
|
#pulse.idle.timeout = 0 # don't pause after underruns
|
||||||
|
#pulse.default.format = F32
|
||||||
|
#pulse.default.position = [ FL FR ]
|
||||||
|
# These overrides are only applied when running in a vm.
|
||||||
|
vm.overrides = {
|
||||||
|
pulse.min.quantum = 1024/48000 # 22ms
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# client/stream specific properties
|
||||||
|
pulse.rules = [
|
||||||
|
{
|
||||||
|
matches = [
|
||||||
|
{
|
||||||
|
# all keys must match the value. ! negates. ~ starts regex.
|
||||||
|
#client.name = "Firefox"
|
||||||
|
#application.process.binary = "teams"
|
||||||
|
#application.name = "~speech-dispatcher.*"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
actions = {
|
||||||
|
update-props = {
|
||||||
|
#node.latency = 512/48000
|
||||||
|
}
|
||||||
|
# Possible quirks:"
|
||||||
|
# force-s16-info forces sink and source info as S16 format
|
||||||
|
# remove-capture-dont-move removes the capture DONT_MOVE flag
|
||||||
|
# block-source-volume blocks updates to source volume
|
||||||
|
# block-sink-volume blocks updates to sink volume
|
||||||
|
#quirks = [ ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# skype does not want to use devices that don't have an S16 sample format.
|
||||||
|
matches = [
|
||||||
|
{ application.process.binary = "teams" }
|
||||||
|
{ application.process.binary = "teams-insiders" }
|
||||||
|
{ application.process.binary = "skypeforlinux" }
|
||||||
|
]
|
||||||
|
actions = { quirks = [ force-s16-info ] }
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# firefox marks the capture streams as don't move and then they
|
||||||
|
# can't be moved with pavucontrol or other tools.
|
||||||
|
matches = [ { application.process.binary = "firefox" } ]
|
||||||
|
actions = { quirks = [ remove-capture-dont-move ] }
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# speech dispatcher asks for too small latency and then underruns.
|
||||||
|
matches = [ { application.name = "~speech-dispatcher.*" } ]
|
||||||
|
actions = {
|
||||||
|
update-props = {
|
||||||
|
pulse.min.req = 512/48000 # 10.6ms
|
||||||
|
pulse.min.quantum = 512/48000 # 10.6ms
|
||||||
|
pulse.idle.timeout = 5 # pause after 5 seconds of underrun
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#{
|
||||||
|
# matches = [ { application.process.binary = "Discord" } ]
|
||||||
|
# actions = { quirks = [ block-source-volume ] }
|
||||||
|
#}
|
||||||
|
]
|
320
usercfg/config/pipewire/pipewire.conf
Normal file
320
usercfg/config/pipewire/pipewire.conf
Normal file
|
@ -0,0 +1,320 @@
|
||||||
|
# Daemon config file for PipeWire version "1.0.4" #
|
||||||
|
#
|
||||||
|
# Copy and edit this file in /etc/pipewire for system-wide changes
|
||||||
|
# or in ~/.config/pipewire for local changes.
|
||||||
|
#
|
||||||
|
# It is also possible to place a file with an updated section in
|
||||||
|
# /etc/pipewire/pipewire.conf.d/ for system-wide changes or in
|
||||||
|
# ~/.config/pipewire/pipewire.conf.d/ for local changes.
|
||||||
|
#
|
||||||
|
|
||||||
|
context.properties = {
|
||||||
|
## Configure properties in the system.
|
||||||
|
#library.name.system = support/libspa-support
|
||||||
|
#context.data-loop.library.name.system = support/libspa-support
|
||||||
|
#support.dbus = true
|
||||||
|
#link.max-buffers = 64
|
||||||
|
link.max-buffers = 16 # version < 3 clients can't handle more
|
||||||
|
#mem.warn-mlock = false
|
||||||
|
#mem.allow-mlock = true
|
||||||
|
#mem.mlock-all = false
|
||||||
|
#clock.power-of-two-quantum = true
|
||||||
|
#log.level = 2
|
||||||
|
#cpu.zero.denormals = false
|
||||||
|
|
||||||
|
core.daemon = true # listening for socket connections
|
||||||
|
core.name = pipewire-0 # core name and socket name
|
||||||
|
|
||||||
|
## Properties for the DSP configuration.
|
||||||
|
default.clock.rate = 48000
|
||||||
|
default.clock.allowed-rates = [ 44100, 48000, 88200, 96000 ]
|
||||||
|
#default.clock.quantum = 1024
|
||||||
|
#default.clock.min-quantum = 32
|
||||||
|
#default.clock.max-quantum = 2048
|
||||||
|
#default.clock.quantum-limit = 8192
|
||||||
|
#default.clock.quantum-floor = 4
|
||||||
|
#default.video.width = 640
|
||||||
|
#default.video.height = 480
|
||||||
|
#default.video.rate.num = 25
|
||||||
|
#default.video.rate.denom = 1
|
||||||
|
#
|
||||||
|
#settings.check-quantum = false
|
||||||
|
#settings.check-rate = false
|
||||||
|
#
|
||||||
|
# These overrides are only applied when running in a vm.
|
||||||
|
vm.overrides = {
|
||||||
|
default.clock.min-quantum = 1024
|
||||||
|
}
|
||||||
|
|
||||||
|
# keys checked below to disable module loading
|
||||||
|
module.x11.bell = true
|
||||||
|
# enables autoloading of access module, when disabled an alternative
|
||||||
|
# access module needs to be loaded.
|
||||||
|
module.access = true
|
||||||
|
# enables autoloading of module-jackdbus-detect
|
||||||
|
module.jackdbus-detect = true
|
||||||
|
}
|
||||||
|
|
||||||
|
context.spa-libs = {
|
||||||
|
#<factory-name regex> = <library-name>
|
||||||
|
#
|
||||||
|
# Used to find spa factory names. It maps an spa factory name
|
||||||
|
# regular expression to a library name that should contain
|
||||||
|
# that factory.
|
||||||
|
#
|
||||||
|
audio.convert.* = audioconvert/libspa-audioconvert
|
||||||
|
avb.* = avb/libspa-avb
|
||||||
|
api.alsa.* = alsa/libspa-alsa
|
||||||
|
api.v4l2.* = v4l2/libspa-v4l2
|
||||||
|
api.libcamera.* = libcamera/libspa-libcamera
|
||||||
|
api.bluez5.* = bluez5/libspa-bluez5
|
||||||
|
api.vulkan.* = vulkan/libspa-vulkan
|
||||||
|
api.jack.* = jack/libspa-jack
|
||||||
|
support.* = support/libspa-support
|
||||||
|
#videotestsrc = videotestsrc/libspa-videotestsrc
|
||||||
|
#audiotestsrc = audiotestsrc/libspa-audiotestsrc
|
||||||
|
}
|
||||||
|
|
||||||
|
context.modules = [
|
||||||
|
#{ name = <module-name>
|
||||||
|
# ( args = { <key> = <value> ... } )
|
||||||
|
# ( flags = [ ( ifexists ) ( nofail ) ] )
|
||||||
|
# ( condition = [ { <key> = <value> ... } ... ] )
|
||||||
|
#}
|
||||||
|
#
|
||||||
|
# Loads a module with the given parameters.
|
||||||
|
# If ifexists is given, the module is ignored when it is not found.
|
||||||
|
# If nofail is given, module initialization failures are ignored.
|
||||||
|
# If condition is given, the module is loaded only when the context
|
||||||
|
# properties all match the match rules.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Uses realtime scheduling to boost the audio thread priorities. This uses
|
||||||
|
# RTKit if the user doesn't have permission to use regular realtime
|
||||||
|
# scheduling. You can also clamp utilisation values to improve scheduling
|
||||||
|
# on embedded and heterogeneous systems, e.g. Arm big.LITTLE devices.
|
||||||
|
{ name = libpipewire-module-rt
|
||||||
|
args = {
|
||||||
|
nice.level = -11
|
||||||
|
rt.prio = 60
|
||||||
|
#rt.time.soft = -1
|
||||||
|
#rt.time.hard = -1
|
||||||
|
#uclamp.min = 0
|
||||||
|
#uclamp.max = 1024
|
||||||
|
}
|
||||||
|
flags = [ ifexists nofail ]
|
||||||
|
}
|
||||||
|
|
||||||
|
# The native communication protocol.
|
||||||
|
{ name = libpipewire-module-protocol-native
|
||||||
|
args = {
|
||||||
|
# List of server Unix sockets, and optionally permissions
|
||||||
|
#sockets = [ { name = "pipewire-0" }, { name = "pipewire-0-manager" } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# The profile module. Allows application to access profiler
|
||||||
|
# and performance data. It provides an interface that is used
|
||||||
|
# by pw-top and pw-profiler.
|
||||||
|
{ name = libpipewire-module-profiler }
|
||||||
|
|
||||||
|
# Allows applications to create metadata objects. It creates
|
||||||
|
# a factory for Metadata objects.
|
||||||
|
{ name = libpipewire-module-metadata }
|
||||||
|
|
||||||
|
# Creates a factory for making devices that run in the
|
||||||
|
# context of the PipeWire server.
|
||||||
|
{ name = libpipewire-module-spa-device-factory }
|
||||||
|
|
||||||
|
# Creates a factory for making nodes that run in the
|
||||||
|
# context of the PipeWire server.
|
||||||
|
{ name = libpipewire-module-spa-node-factory }
|
||||||
|
|
||||||
|
# Allows creating nodes that run in the context of the
|
||||||
|
# client. Is used by all clients that want to provide
|
||||||
|
# data to PipeWire.
|
||||||
|
{ name = libpipewire-module-client-node }
|
||||||
|
|
||||||
|
# Allows creating devices that run in the context of the
|
||||||
|
# client. Is used by the session manager.
|
||||||
|
{ name = libpipewire-module-client-device }
|
||||||
|
|
||||||
|
# The portal module monitors the PID of the portal process
|
||||||
|
# and tags connections with the same PID as portal
|
||||||
|
# connections.
|
||||||
|
{ name = libpipewire-module-portal
|
||||||
|
flags = [ ifexists nofail ]
|
||||||
|
}
|
||||||
|
|
||||||
|
# The access module can perform access checks and block
|
||||||
|
# new clients.
|
||||||
|
{ name = libpipewire-module-access
|
||||||
|
args = {
|
||||||
|
# Socket-specific access permissions
|
||||||
|
#access.socket = { pipewire-0 = "default", pipewire-0-manager = "unrestricted" }
|
||||||
|
|
||||||
|
# Deprecated legacy mode (not socket-based),
|
||||||
|
# for now enabled by default if access.socket is not specified
|
||||||
|
#access.legacy = true
|
||||||
|
}
|
||||||
|
condition = [ { module.access = true } ]
|
||||||
|
}
|
||||||
|
|
||||||
|
# Makes a factory for wrapping nodes in an adapter with a
|
||||||
|
# converter and resampler.
|
||||||
|
{ name = libpipewire-module-adapter }
|
||||||
|
|
||||||
|
# Makes a factory for creating links between ports.
|
||||||
|
{ name = libpipewire-module-link-factory }
|
||||||
|
|
||||||
|
# Provides factories to make session manager objects.
|
||||||
|
{ name = libpipewire-module-session-manager }
|
||||||
|
|
||||||
|
# Use libcanberra to play X11 Bell
|
||||||
|
{ name = libpipewire-module-x11-bell
|
||||||
|
args = {
|
||||||
|
#sink.name = "@DEFAULT_SINK@"
|
||||||
|
#sample.name = "bell-window-system"
|
||||||
|
#x11.display = null
|
||||||
|
#x11.xauthority = null
|
||||||
|
}
|
||||||
|
flags = [ ifexists nofail ]
|
||||||
|
condition = [ { module.x11.bell = true } ]
|
||||||
|
}
|
||||||
|
{ name = libpipewire-module-jackdbus-detect
|
||||||
|
args = {
|
||||||
|
#jack.library = libjack.so.0
|
||||||
|
#jack.server = null
|
||||||
|
#jack.client-name = PipeWire
|
||||||
|
#jack.connect = true
|
||||||
|
#tunnel.mode = duplex # source|sink|duplex
|
||||||
|
source.props = {
|
||||||
|
#audio.channels = 2
|
||||||
|
#midi.ports = 1
|
||||||
|
#audio.position = [ FL FR ]
|
||||||
|
# extra sink properties
|
||||||
|
}
|
||||||
|
sink.props = {
|
||||||
|
#audio.channels = 2
|
||||||
|
#midi.ports = 1
|
||||||
|
#audio.position = [ FL FR ]
|
||||||
|
# extra sink properties
|
||||||
|
}
|
||||||
|
}
|
||||||
|
flags = [ ifexists nofail ]
|
||||||
|
condition = [ { module.jackdbus-detect = true } ]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
context.objects = [
|
||||||
|
#{ factory = <factory-name>
|
||||||
|
# ( args = { <key> = <value> ... } )
|
||||||
|
# ( flags = [ ( nofail ) ] )
|
||||||
|
# ( condition = [ { <key> = <value> ... } ... ] )
|
||||||
|
#}
|
||||||
|
#
|
||||||
|
# Creates an object from a PipeWire factory with the given parameters.
|
||||||
|
# If nofail is given, errors are ignored (and no object is created).
|
||||||
|
# If condition is given, the object is created only when the context properties
|
||||||
|
# all match the match rules.
|
||||||
|
#
|
||||||
|
#{ factory = spa-node-factory args = { factory.name = videotestsrc node.name = videotestsrc node.description = videotestsrc "Spa:Pod:Object:Param:Props:patternType" = 1 } }
|
||||||
|
#{ factory = spa-device-factory args = { factory.name = api.jack.device foo=bar } flags = [ nofail ] }
|
||||||
|
#{ factory = spa-device-factory args = { factory.name = api.alsa.enum.udev } }
|
||||||
|
#{ factory = spa-node-factory args = { factory.name = api.alsa.seq.bridge node.name = Internal-MIDI-Bridge } }
|
||||||
|
#{ factory = adapter args = { factory.name = audiotestsrc node.name = my-test node.description = audiotestsrc } }
|
||||||
|
#{ factory = spa-node-factory args = { factory.name = api.vulkan.compute.source node.name = my-compute-source } }
|
||||||
|
|
||||||
|
# A default dummy driver. This handles nodes marked with the "node.always-process"
|
||||||
|
# property when no other driver is currently active. JACK clients need this.
|
||||||
|
{ factory = spa-node-factory
|
||||||
|
args = {
|
||||||
|
factory.name = support.node.driver
|
||||||
|
node.name = Dummy-Driver
|
||||||
|
node.group = pipewire.dummy
|
||||||
|
priority.driver = 20000
|
||||||
|
#clock.id = monotonic # realtime | tai | monotonic-raw | boottime
|
||||||
|
#clock.name = "clock.system.monotonic"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{ factory = spa-node-factory
|
||||||
|
args = {
|
||||||
|
factory.name = support.node.driver
|
||||||
|
node.name = Freewheel-Driver
|
||||||
|
priority.driver = 19000
|
||||||
|
node.group = pipewire.freewheel
|
||||||
|
node.freewheel = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# This creates a new Source node. It will have input ports
|
||||||
|
# that you can link, to provide audio for this source.
|
||||||
|
#{ factory = adapter
|
||||||
|
# args = {
|
||||||
|
# factory.name = support.null-audio-sink
|
||||||
|
# node.name = "my-mic"
|
||||||
|
# node.description = "Microphone"
|
||||||
|
# media.class = "Audio/Source/Virtual"
|
||||||
|
# audio.position = "FL,FR"
|
||||||
|
# monitor.passthrough = true
|
||||||
|
# }
|
||||||
|
#}
|
||||||
|
|
||||||
|
# This creates a single PCM source device for the given
|
||||||
|
# alsa device path hw:0. You can change source to sink
|
||||||
|
# to make a sink in the same way.
|
||||||
|
#{ factory = adapter
|
||||||
|
# args = {
|
||||||
|
# factory.name = api.alsa.pcm.source
|
||||||
|
# node.name = "alsa-source"
|
||||||
|
# node.description = "PCM Source"
|
||||||
|
# media.class = "Audio/Source"
|
||||||
|
# api.alsa.path = "hw:0"
|
||||||
|
# api.alsa.period-size = 1024
|
||||||
|
# api.alsa.headroom = 0
|
||||||
|
# api.alsa.disable-mmap = false
|
||||||
|
# api.alsa.disable-batch = false
|
||||||
|
# audio.format = "S16LE"
|
||||||
|
# audio.rate = 48000
|
||||||
|
# audio.channels = 2
|
||||||
|
# audio.position = "FL,FR"
|
||||||
|
# }
|
||||||
|
#}
|
||||||
|
|
||||||
|
# Use the metadata factory to create metadata and some default values.
|
||||||
|
#{ factory = metadata
|
||||||
|
# args = {
|
||||||
|
# metadata.name = my-metadata
|
||||||
|
# metadata.values = [
|
||||||
|
# { key = default.audio.sink value = { name = somesink } }
|
||||||
|
# { key = default.audio.source value = { name = somesource } }
|
||||||
|
# ]
|
||||||
|
# }
|
||||||
|
#}
|
||||||
|
]
|
||||||
|
|
||||||
|
context.exec = [
|
||||||
|
#{ path = <program-name>
|
||||||
|
# ( args = "<arguments>" )
|
||||||
|
# ( condition = [ { <key> = <value> ... } ... ] )
|
||||||
|
#}
|
||||||
|
#
|
||||||
|
# Execute the given program with arguments.
|
||||||
|
# If condition is given, the program is executed only when the context
|
||||||
|
# properties all match the match rules.
|
||||||
|
#
|
||||||
|
# You can optionally start the session manager here,
|
||||||
|
# but it is better to start it as a systemd service.
|
||||||
|
# Run the session manager with -h for options.
|
||||||
|
#
|
||||||
|
#{ path = "/usr/bin/pipewire-media-session" args = ""
|
||||||
|
# condition = [ { exec.session-manager = null } { exec.session-manager = true } ] }
|
||||||
|
#
|
||||||
|
# You can optionally start the pulseaudio-server here as well
|
||||||
|
# but it is better to start it as a systemd service.
|
||||||
|
# It can be interesting to start another daemon here that listens
|
||||||
|
# on another address with the -a option (eg. -a tcp:4713).
|
||||||
|
#
|
||||||
|
#{ path = "/usr/bin/pipewire" args = "-c pipewire-pulse.conf"
|
||||||
|
# condition = [ { exec.pipewire-pulse = null } { exec.pipewire-pulse = true } ] }
|
||||||
|
]
|
1283
usercfg/config/tut/config.toml
Normal file
1283
usercfg/config/tut/config.toml
Normal file
File diff suppressed because it is too large
Load diff
309
usercfg/config/yazi/keymap.toml
Normal file
309
usercfg/config/yazi/keymap.toml
Normal file
|
@ -0,0 +1,309 @@
|
||||||
|
# A TOML linter such as https://taplo.tamasfe.dev/ can use this schema to validate your config.
|
||||||
|
# If you encounter any issues, please make an issue at https://github.com/yazi-rs/schemas.
|
||||||
|
"$schema" = "https://yazi-rs.github.io/schemas/keymap.json"
|
||||||
|
|
||||||
|
[manager]
|
||||||
|
|
||||||
|
keymap = [
|
||||||
|
{ on = [ "<Esc>" ], run = "escape", desc = "Exit visual mode, clear selected, or cancel search" },
|
||||||
|
{ on = [ "<C-[>" ], run = "escape", desc = "Exit visual mode, clear selected, or cancel search" },
|
||||||
|
{ on = [ "q" ], run = "quit", desc = "Exit the process" },
|
||||||
|
{ on = [ "Q" ], run = "quit --no-cwd-file", desc = "Exit the process without writing cwd-file" },
|
||||||
|
{ on = [ "<C-q>" ], run = "close", desc = "Close the current tab, or quit if it is last tab" },
|
||||||
|
{ on = [ "<C-z>" ], run = "suspend", desc = "Suspend the process" },
|
||||||
|
|
||||||
|
# Navigation
|
||||||
|
{ on = [ "k" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "j" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "K" ], run = "arrow -5", desc = "Move cursor up 5 lines" },
|
||||||
|
{ on = [ "J" ], run = "arrow 5", desc = "Move cursor down 5 lines" },
|
||||||
|
|
||||||
|
{ on = [ "<S-Up>" ], run = "arrow -5", desc = "Move cursor up 5 lines" },
|
||||||
|
{ on = [ "<S-Down>" ], run = "arrow 5", desc = "Move cursor down 5 lines" },
|
||||||
|
|
||||||
|
{ on = [ "<C-u>" ], run = "arrow -50%", desc = "Move cursor up half page" },
|
||||||
|
{ on = [ "<C-d>" ], run = "arrow 50%", desc = "Move cursor down half page" },
|
||||||
|
{ on = [ "<C-b>" ], run = "arrow -100%", desc = "Move cursor up one page" },
|
||||||
|
{ on = [ "<C-f>" ], run = "arrow 100%", desc = "Move cursor down one page" },
|
||||||
|
|
||||||
|
{ on = [ "<C-PageUp>" ], run = "arrow -50%", desc = "Move cursor up half page" },
|
||||||
|
{ on = [ "<C-PageDown>" ], run = "arrow 50%", desc = "Move cursor down half page" },
|
||||||
|
{ on = [ "<PageUp>" ], run = "arrow -100%", desc = "Move cursor up one page" },
|
||||||
|
{ on = [ "<PageDown>" ], run = "arrow 100%", desc = "Move cursor down one page" },
|
||||||
|
|
||||||
|
{ on = [ "h" ], run = "leave", desc = "Go back to the parent directory" },
|
||||||
|
{ on = [ "l" ], run = "enter", desc = "Enter the child directory" },
|
||||||
|
|
||||||
|
{ on = [ "H" ], run = "back", desc = "Go back to the previous directory" },
|
||||||
|
{ on = [ "L" ], run = "forward", desc = "Go forward to the next directory" },
|
||||||
|
|
||||||
|
{ on = [ "<A-k>" ], run = "seek -5", desc = "Seek up 5 units in the preview" },
|
||||||
|
{ on = [ "<A-j>" ], run = "seek 5", desc = "Seek down 5 units in the preview" },
|
||||||
|
{ on = [ "<A-PageUp>" ], run = "seek -5", desc = "Seek up 5 units in the preview" },
|
||||||
|
{ on = [ "<A-PageDown>" ], run = "seek 5", desc = "Seek down 5 units in the preview" },
|
||||||
|
|
||||||
|
{ on = [ "<Up>" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "<Down>" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
{ on = [ "<Left>" ], run = "leave", desc = "Go back to the parent directory" },
|
||||||
|
{ on = [ "<Right>" ], run = "enter", desc = "Enter the child directory" },
|
||||||
|
|
||||||
|
{ on = [ "g", "g" ], run = "arrow -99999999", desc = "Move cursor to the top" },
|
||||||
|
{ on = [ "G" ], run = "arrow 99999999", desc = "Move cursor to the bottom" },
|
||||||
|
|
||||||
|
# Selection
|
||||||
|
{ on = [ "<Space>" ], run = [ "select --state=none", "arrow 1" ], desc = "Toggle the current selection state" },
|
||||||
|
{ on = [ "v" ], run = "visual_mode", desc = "Enter visual mode (selection mode)" },
|
||||||
|
{ on = [ "V" ], run = "visual_mode --unset", desc = "Enter visual mode (unset mode)" },
|
||||||
|
{ on = [ "<C-a>" ], run = "select_all --state=true", desc = "Select all files" },
|
||||||
|
{ on = [ "<C-r>" ], run = "select_all --state=none", desc = "Inverse selection of all files" },
|
||||||
|
|
||||||
|
# Operation
|
||||||
|
{ on = [ "o" ], run = "open", desc = "Open the selected files" },
|
||||||
|
{ on = [ "O" ], run = "open --interactive", desc = "Open the selected files interactively" },
|
||||||
|
{ on = [ "<Enter>" ], run = "open", desc = "Open the selected files" },
|
||||||
|
{ on = [ "<C-Enter>" ], run = "open --interactive", desc = "Open the selected files interactively" },
|
||||||
|
{ on = [ "y" ], run = "yank", desc = "Copy the selected files" },
|
||||||
|
{ on = [ "Y" ], run = "unyank", desc = "Cancel the yank status of files" },
|
||||||
|
{ on = [ "x" ], run = "yank --cut", desc = "Cut the selected files" },
|
||||||
|
{ on = [ "X" ], run = "unyank", desc = "Cancel the yank status of files" },
|
||||||
|
{ on = [ "p" ], run = "paste", desc = "Paste the files" },
|
||||||
|
{ on = [ "P" ], run = "paste --force", desc = "Paste the files (overwrite if the destination exists)" },
|
||||||
|
{ on = [ "-" ], run = "link", desc = "Symlink the absolute path of files" },
|
||||||
|
{ on = [ "_" ], run = "link --relative", desc = "Symlink the relative path of files" },
|
||||||
|
{ on = [ "d" ], run = "remove", desc = "Move the files to the trash" },
|
||||||
|
{ on = [ "D" ], run = "remove --permanently", desc = "Permanently delete the files" },
|
||||||
|
{ on = [ "a" ], run = "create", desc = "Create a file or directory (ends with / for directories)" },
|
||||||
|
{ on = [ "r" ], run = "rename --cursor=before_ext", desc = "Rename a file or directory" },
|
||||||
|
{ on = [ ";" ], run = "shell", desc = "Run a shell command" },
|
||||||
|
{ on = [ ":" ], run = "shell --block", desc = "Run a shell command (block the UI until the command finishes)" },
|
||||||
|
{ on = [ "." ], run = "hidden toggle", desc = "Toggle the visibility of hidden files" },
|
||||||
|
{ on = [ "s" ], run = "search fd", desc = "Search files by name using fd" },
|
||||||
|
{ on = [ "S" ], run = "search rg", desc = "Search files by content using ripgrep" },
|
||||||
|
{ on = [ "<C-s>" ], run = "search none", desc = "Cancel the ongoing search" },
|
||||||
|
{ on = [ "z" ], run = "jump zoxide", desc = "Jump to a directory using zoxide" },
|
||||||
|
{ on = [ "Z" ], run = "jump fzf", desc = "Jump to a directory, or reveal a file using fzf" },
|
||||||
|
|
||||||
|
# Linemode
|
||||||
|
{ on = [ "m", "s" ], run = "linemode size", desc = "Set linemode to size" },
|
||||||
|
{ on = [ "m", "p" ], run = "linemode permissions", desc = "Set linemode to permissions" },
|
||||||
|
{ on = [ "m", "m" ], run = "linemode mtime", desc = "Set linemode to mtime" },
|
||||||
|
{ on = [ "m", "n" ], run = "linemode none", desc = "Set linemode to none" },
|
||||||
|
|
||||||
|
# Copy
|
||||||
|
{ on = [ "c", "c" ], run = "copy path", desc = "Copy the absolute path" },
|
||||||
|
{ on = [ "c", "d" ], run = "copy dirname", desc = "Copy the path of the parent directory" },
|
||||||
|
{ on = [ "c", "f" ], run = "copy filename", desc = "Copy the name of the file" },
|
||||||
|
{ on = [ "c", "n" ], run = "copy name_without_ext", desc = "Copy the name of the file without the extension" },
|
||||||
|
|
||||||
|
# Filter
|
||||||
|
{ on = [ "f" ], run = "filter --smart", desc = "Filter the files" },
|
||||||
|
|
||||||
|
# Find
|
||||||
|
{ on = [ "/" ], run = "find --smart", desc = "Find next file" },
|
||||||
|
{ on = [ "?" ], run = "find --previous --smart", desc = "Find previous file" },
|
||||||
|
{ on = [ "n" ], run = "find_arrow", desc = "Go to next found file" },
|
||||||
|
{ on = [ "N" ], run = "find_arrow --previous", desc = "Go to previous found file" },
|
||||||
|
|
||||||
|
# Sorting
|
||||||
|
{ on = [ ",", "m" ], run = "sort modified --dir-first", desc = "Sort by modified time" },
|
||||||
|
{ on = [ ",", "M" ], run = "sort modified --reverse --dir-first", desc = "Sort by modified time (reverse)" },
|
||||||
|
{ on = [ ",", "c" ], run = "sort created --dir-first", desc = "Sort by created time" },
|
||||||
|
{ on = [ ",", "C" ], run = "sort created --reverse --dir-first", desc = "Sort by created time (reverse)" },
|
||||||
|
{ on = [ ",", "e" ], run = "sort extension --dir-first", desc = "Sort by extension" },
|
||||||
|
{ on = [ ",", "E" ], run = "sort extension --reverse --dir-first", desc = "Sort by extension (reverse)" },
|
||||||
|
{ on = [ ",", "a" ], run = "sort alphabetical --dir-first", desc = "Sort alphabetically" },
|
||||||
|
{ on = [ ",", "A" ], run = "sort alphabetical --reverse --dir-first", desc = "Sort alphabetically (reverse)" },
|
||||||
|
{ on = [ ",", "n" ], run = "sort natural --dir-first", desc = "Sort naturally" },
|
||||||
|
{ on = [ ",", "N" ], run = "sort natural --reverse --dir-first", desc = "Sort naturally (reverse)" },
|
||||||
|
{ on = [ ",", "s" ], run = "sort size --dir-first", desc = "Sort by size" },
|
||||||
|
{ on = [ ",", "S" ], run = "sort size --reverse --dir-first", desc = "Sort by size (reverse)" },
|
||||||
|
|
||||||
|
# Tabs
|
||||||
|
{ on = [ "t" ], run = "tab_create --current", desc = "Create a new tab using the current path" },
|
||||||
|
|
||||||
|
{ on = [ "1" ], run = "tab_switch 0", desc = "Switch to the first tab" },
|
||||||
|
{ on = [ "2" ], run = "tab_switch 1", desc = "Switch to the second tab" },
|
||||||
|
{ on = [ "3" ], run = "tab_switch 2", desc = "Switch to the third tab" },
|
||||||
|
{ on = [ "4" ], run = "tab_switch 3", desc = "Switch to the fourth tab" },
|
||||||
|
{ on = [ "5" ], run = "tab_switch 4", desc = "Switch to the fifth tab" },
|
||||||
|
{ on = [ "6" ], run = "tab_switch 5", desc = "Switch to the sixth tab" },
|
||||||
|
{ on = [ "7" ], run = "tab_switch 6", desc = "Switch to the seventh tab" },
|
||||||
|
{ on = [ "8" ], run = "tab_switch 7", desc = "Switch to the eighth tab" },
|
||||||
|
{ on = [ "9" ], run = "tab_switch 8", desc = "Switch to the ninth tab" },
|
||||||
|
|
||||||
|
{ on = [ "[" ], run = "tab_switch -1 --relative", desc = "Switch to the previous tab" },
|
||||||
|
{ on = [ "]" ], run = "tab_switch 1 --relative", desc = "Switch to the next tab" },
|
||||||
|
|
||||||
|
{ on = [ "{" ], run = "tab_swap -1", desc = "Swap the current tab with the previous tab" },
|
||||||
|
{ on = [ "}" ], run = "tab_swap 1", desc = "Swap the current tab with the next tab" },
|
||||||
|
|
||||||
|
# Tasks
|
||||||
|
{ on = [ "w" ], run = "tasks_show", desc = "Show the tasks manager" },
|
||||||
|
|
||||||
|
# Goto
|
||||||
|
{ on = [ "g", "h" ], run = "cd ~", desc = "Go to the home directory" },
|
||||||
|
{ on = [ "g", "c" ], run = "cd ~/.config", desc = "Go to the config directory" },
|
||||||
|
{ on = [ "g", "d" ], run = "cd ~/Downloads", desc = "Go to the downloads directory" },
|
||||||
|
{ on = [ "g", "t" ], run = "cd /tmp", desc = "Go to the temporary directory" },
|
||||||
|
{ on = [ "g", "<Space>" ], run = "cd --interactive", desc = "Go to a directory interactively" },
|
||||||
|
|
||||||
|
# Help
|
||||||
|
{ on = [ "~" ], run = "help", desc = "Open help" },
|
||||||
|
]
|
||||||
|
|
||||||
|
[tasks]
|
||||||
|
|
||||||
|
keymap = [
|
||||||
|
{ on = [ "<Esc>" ], run = "close", desc = "Hide the task manager" },
|
||||||
|
{ on = [ "<C-[>" ], run = "close", desc = "Hide the task manager" },
|
||||||
|
{ on = [ "<C-q>" ], run = "close", desc = "Hide the task manager" },
|
||||||
|
{ on = [ "w" ], run = "close", desc = "Hide the task manager" },
|
||||||
|
|
||||||
|
{ on = [ "k" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "j" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "<Up>" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "<Down>" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "<Enter>" ], run = "inspect", desc = "Inspect the task" },
|
||||||
|
{ on = [ "x" ], run = "cancel", desc = "Cancel the task" },
|
||||||
|
|
||||||
|
{ on = [ "~" ], run = "help", desc = "Open help" }
|
||||||
|
]
|
||||||
|
|
||||||
|
[select]
|
||||||
|
|
||||||
|
keymap = [
|
||||||
|
{ on = [ "<Esc>" ], run = "close", desc = "Cancel selection" },
|
||||||
|
{ on = [ "<C-[>" ], run = "close", desc = "Cancel selection" },
|
||||||
|
{ on = [ "<C-q>" ], run = "close", desc = "Cancel selection" },
|
||||||
|
{ on = [ "<Enter>" ], run = "close --submit", desc = "Submit the selection" },
|
||||||
|
|
||||||
|
{ on = [ "k" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "j" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "K" ], run = "arrow -5", desc = "Move cursor up 5 lines" },
|
||||||
|
{ on = [ "J" ], run = "arrow 5", desc = "Move cursor down 5 lines" },
|
||||||
|
|
||||||
|
{ on = [ "<Up>" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "<Down>" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "<S-Up>" ], run = "arrow -5", desc = "Move cursor up 5 lines" },
|
||||||
|
{ on = [ "<S-Down>" ], run = "arrow 5", desc = "Move cursor down 5 lines" },
|
||||||
|
|
||||||
|
{ on = [ "~" ], run = "help", desc = "Open help" }
|
||||||
|
]
|
||||||
|
|
||||||
|
[input]
|
||||||
|
|
||||||
|
keymap = [
|
||||||
|
{ on = [ "<C-q>" ], run = "close", desc = "Cancel input" },
|
||||||
|
{ on = [ "<Enter>" ], run = "close --submit", desc = "Submit the input" },
|
||||||
|
{ on = [ "<Esc>" ], run = "escape", desc = "Go back the normal mode, or cancel input" },
|
||||||
|
{ on = [ "<C-[>" ], run = "escape", desc = "Go back the normal mode, or cancel input" },
|
||||||
|
|
||||||
|
# Mode
|
||||||
|
{ on = [ "i" ], run = "insert", desc = "Enter insert mode" },
|
||||||
|
{ on = [ "a" ], run = "insert --append", desc = "Enter append mode" },
|
||||||
|
{ on = [ "I" ], run = [ "move -999", "insert" ], desc = "Move to the BOL, and enter insert mode" },
|
||||||
|
{ on = [ "A" ], run = [ "move 999", "insert --append" ], desc = "Move to the EOL, and enter append mode" },
|
||||||
|
{ on = [ "v" ], run = "visual", desc = "Enter visual mode" },
|
||||||
|
{ on = [ "V" ], run = [ "move -999", "visual", "move 999" ], desc = "Enter visual mode and select all" },
|
||||||
|
|
||||||
|
# Character-wise movement
|
||||||
|
{ on = [ "h" ], run = "move -1", desc = "Move back a character" },
|
||||||
|
{ on = [ "l" ], run = "move 1", desc = "Move forward a character" },
|
||||||
|
{ on = [ "<Left>" ], run = "move -1", desc = "Move back a character" },
|
||||||
|
{ on = [ "<Right>" ], run = "move 1", desc = "Move forward a character" },
|
||||||
|
{ on = [ "<C-b>" ], run = "move -1", desc = "Move back a character" },
|
||||||
|
{ on = [ "<C-f>" ], run = "move 1", desc = "Move forward a character" },
|
||||||
|
|
||||||
|
# Word-wise movement
|
||||||
|
{ on = [ "b" ], run = "backward", desc = "Move back to the start of the current or previous word" },
|
||||||
|
{ on = [ "w" ], run = "forward", desc = "Move forward to the start of the next word" },
|
||||||
|
{ on = [ "e" ], run = "forward --end-of-word", desc = "Move forward to the end of the current or next word" },
|
||||||
|
{ on = [ "<A-b>" ], run = "backward", desc = "Move back to the start of the current or previous word" },
|
||||||
|
{ on = [ "<A-f>" ], run = "forward --end-of-word", desc = "Move forward to the end of the current or next word" },
|
||||||
|
|
||||||
|
# Line-wise movement
|
||||||
|
{ on = [ "0" ], run = "move -999", desc = "Move to the BOL" },
|
||||||
|
{ on = [ "$" ], run = "move 999", desc = "Move to the EOL" },
|
||||||
|
{ on = [ "<C-a>" ], run = "move -999", desc = "Move to the BOL" },
|
||||||
|
{ on = [ "<C-e>" ], run = "move 999", desc = "Move to the EOL" },
|
||||||
|
{ on = [ "<Home>" ], run = "move -999", desc = "Move to the BOL" },
|
||||||
|
{ on = [ "<End>" ], run = "move 999", desc = "Move to the EOL" },
|
||||||
|
|
||||||
|
# Delete
|
||||||
|
{ on = [ "<Backspace>" ], run = "backspace", desc = "Delete the character before the cursor" },
|
||||||
|
{ on = [ "<Delete>" ], run = "backspace --under", desc = "Delete the character under the cursor" },
|
||||||
|
{ on = [ "<C-h>" ], run = "backspace", desc = "Delete the character before the cursor" },
|
||||||
|
{ on = [ "<C-d>" ], run = "backspace --under", desc = "Delete the character under the cursor" },
|
||||||
|
|
||||||
|
# Kill
|
||||||
|
{ on = [ "<C-u>" ], run = "kill bol", desc = "Kill backwards to the BOL" },
|
||||||
|
{ on = [ "<C-k>" ], run = "kill eol", desc = "Kill forwards to the EOL" },
|
||||||
|
{ on = [ "<C-w>" ], run = "kill backward", desc = "Kill backwards to the start of the current word" },
|
||||||
|
{ on = [ "<A-d>" ], run = "kill forward", desc = "Kill forwards to the end of the current word" },
|
||||||
|
|
||||||
|
# Cut/Yank/Paste
|
||||||
|
{ on = [ "d" ], run = "delete --cut", desc = "Cut the selected characters" },
|
||||||
|
{ on = [ "D" ], run = [ "delete --cut", "move 999" ], desc = "Cut until the EOL" },
|
||||||
|
{ on = [ "c" ], run = "delete --cut --insert", desc = "Cut the selected characters, and enter insert mode" },
|
||||||
|
{ on = [ "C" ], run = [ "delete --cut --insert", "move 999" ], desc = "Cut until the EOL, and enter insert mode" },
|
||||||
|
{ on = [ "x" ], run = [ "delete --cut", "move 1 --in-operating" ], desc = "Cut the current character" },
|
||||||
|
{ on = [ "y" ], run = "yank", desc = "Copy the selected characters" },
|
||||||
|
{ on = [ "p" ], run = "paste", desc = "Paste the copied characters after the cursor" },
|
||||||
|
{ on = [ "P" ], run = "paste --before", desc = "Paste the copied characters before the cursor" },
|
||||||
|
|
||||||
|
# Undo/Redo
|
||||||
|
{ on = [ "u" ], run = "undo", desc = "Undo the last operation" },
|
||||||
|
{ on = [ "<C-r>" ], run = "redo", desc = "Redo the last operation" },
|
||||||
|
|
||||||
|
# Help
|
||||||
|
{ on = [ "~" ], run = "help", desc = "Open help" }
|
||||||
|
]
|
||||||
|
|
||||||
|
[completion]
|
||||||
|
|
||||||
|
keymap = [
|
||||||
|
{ on = [ "<C-q>" ], run = "close", desc = "Cancel completion" },
|
||||||
|
{ on = [ "<Tab>" ], run = "close --submit", desc = "Submit the completion" },
|
||||||
|
{ on = [ "<Enter>" ], run = [ "close --submit", "close_input --submit" ], desc = "Submit the completion and input" },
|
||||||
|
|
||||||
|
{ on = [ "<A-k>" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "<A-j>" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "<Up>" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "<Down>" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "<C-p>" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "<C-n>" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "~" ], run = "help", desc = "Open help" }
|
||||||
|
]
|
||||||
|
|
||||||
|
[help]
|
||||||
|
|
||||||
|
keymap = [
|
||||||
|
{ on = [ "<Esc>" ], run = "escape", desc = "Clear the filter, or hide the help" },
|
||||||
|
{ on = [ "<C-[>" ], run = "escape", desc = "Clear the filter, or hide the help" },
|
||||||
|
{ on = [ "q" ], run = "close", desc = "Exit the process" },
|
||||||
|
{ on = [ "<C-q>" ], run = "close", desc = "Hide the help" },
|
||||||
|
|
||||||
|
# Navigation
|
||||||
|
{ on = [ "k" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "j" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "K" ], run = "arrow -5", desc = "Move cursor up 5 lines" },
|
||||||
|
{ on = [ "J" ], run = "arrow 5", desc = "Move cursor down 5 lines" },
|
||||||
|
|
||||||
|
{ on = [ "<Up>" ], run = "arrow -1", desc = "Move cursor up" },
|
||||||
|
{ on = [ "<Down>" ], run = "arrow 1", desc = "Move cursor down" },
|
||||||
|
|
||||||
|
{ on = [ "<S-Up>" ], run = "arrow -5", desc = "Move cursor up 5 lines" },
|
||||||
|
{ on = [ "<S-Down>" ], run = "arrow 5", desc = "Move cursor down 5 lines" },
|
||||||
|
|
||||||
|
# Filtering
|
||||||
|
{ on = [ "/" ], run = "filter", desc = "Apply a filter for the help items" },
|
||||||
|
]
|
146
usercfg/config/yazi/theme.toml
Normal file
146
usercfg/config/yazi/theme.toml
Normal file
|
@ -0,0 +1,146 @@
|
||||||
|
# vim:fileencoding=utf-8:foldmethod=marker
|
||||||
|
|
||||||
|
# : Manager {{{
|
||||||
|
|
||||||
|
[manager]
|
||||||
|
cwd = { fg = "#83a598" }
|
||||||
|
|
||||||
|
# Hovered
|
||||||
|
hovered = { fg = "#282828", bg = "#83a598" }
|
||||||
|
preview_hovered = { underline = true }
|
||||||
|
|
||||||
|
# Find
|
||||||
|
find_keyword = { fg = "#b8bb26", italic = true }
|
||||||
|
find_position = { fg = "#fe8019", bg = "reset", italic = true }
|
||||||
|
|
||||||
|
# Marker
|
||||||
|
marker_selected = { fg = "#b8bb26", bg = "#b8bb26" }
|
||||||
|
marker_copied = { fg = "#b8bb26", bg = "#b8bb26" }
|
||||||
|
marker_cut = { fg = "#fb4934", bg = "#fb4934" }
|
||||||
|
|
||||||
|
# Tab
|
||||||
|
tab_active = { fg = "#282828", bg = "#504945" }
|
||||||
|
tab_inactive = { fg = "#a89984", bg = "#3c3836" }
|
||||||
|
tab_width = 1
|
||||||
|
|
||||||
|
# Border
|
||||||
|
border_symbol = "│"
|
||||||
|
border_style = { fg = "#665c54" }
|
||||||
|
|
||||||
|
# Highlighting
|
||||||
|
# syntect_theme = "~/.config/yazi/Gruvbox-Dark.tmTheme"
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
||||||
|
|
||||||
|
# : Status {{{
|
||||||
|
|
||||||
|
[status]
|
||||||
|
separator_open = ""
|
||||||
|
separator_close = ""
|
||||||
|
separator_style = { fg = "#3c3836", bg = "#3c3836" }
|
||||||
|
|
||||||
|
# Mode
|
||||||
|
mode_normal = { fg = "#282828", bg = "#A89984", bold = true }
|
||||||
|
mode_select = { fg = "#282828", bg = "#b8bb26", bold = true }
|
||||||
|
mode_unset = { fg = "#282828", bg = "#d3869b", bold = true }
|
||||||
|
|
||||||
|
# Progress
|
||||||
|
progress_label = { fg = "#ebdbb2", bold = true }
|
||||||
|
progress_normal = { fg = "#504945", bg = "#3c3836" }
|
||||||
|
progress_error = { fg = "#fb4934", bg = "#3c3836" }
|
||||||
|
|
||||||
|
# Permissions
|
||||||
|
permissions_t = { fg = "#504945" }
|
||||||
|
permissions_r = { fg = "#b8bb26" }
|
||||||
|
permissions_w = { fg = "#fb4934" }
|
||||||
|
permissions_x = { fg = "#b8bb26" }
|
||||||
|
permissions_s = { fg = "#665c54" }
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
||||||
|
|
||||||
|
# : Input {{{
|
||||||
|
|
||||||
|
[input]
|
||||||
|
border = { fg = "#504945" }
|
||||||
|
title = {}
|
||||||
|
value = {}
|
||||||
|
selected = { reversed = true }
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
||||||
|
|
||||||
|
# : Select {{{
|
||||||
|
|
||||||
|
[select]
|
||||||
|
border = { fg = "#504945" }
|
||||||
|
active = { fg = "#fe8019" }
|
||||||
|
inactive = {}
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
||||||
|
|
||||||
|
# : Tasks {{{
|
||||||
|
|
||||||
|
[tasks]
|
||||||
|
border = { fg = "#504945" }
|
||||||
|
title = {}
|
||||||
|
hovered = { underline = true }
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
||||||
|
|
||||||
|
# : Which {{{
|
||||||
|
|
||||||
|
[which]
|
||||||
|
mask = { bg = "#3c3836" }
|
||||||
|
cand = { fg = "#83a598" }
|
||||||
|
rest = { fg = "#928374" }
|
||||||
|
desc = { fg = "#fe8019" }
|
||||||
|
separator = " "
|
||||||
|
separator_style = { fg = "#504945" }
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
||||||
|
|
||||||
|
# : Help {{{
|
||||||
|
|
||||||
|
[help]
|
||||||
|
on = { fg = "#fe8019" }
|
||||||
|
exec = { fg = "#83a598" }
|
||||||
|
desc = { fg = "#928374" }
|
||||||
|
hovered = { bg = "#504945", bold = true }
|
||||||
|
footer = { fg = "#3c3836", bg = "#a89984" }
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
||||||
|
|
||||||
|
# : File-specific styles {{{
|
||||||
|
|
||||||
|
[filetype]
|
||||||
|
|
||||||
|
rules = [
|
||||||
|
# Images
|
||||||
|
{ mime = "image/*", fg = "#83a598" },
|
||||||
|
|
||||||
|
# Videos
|
||||||
|
{ mime = "video/*", fg = "#b8bb26" },
|
||||||
|
{ mime = "audio/*", fg = "#b8bb26" },
|
||||||
|
|
||||||
|
# Archives
|
||||||
|
{ mime = "application/zip", fg = "#fe8019" },
|
||||||
|
{ mime = "application/gzip", fg = "#fe8019" },
|
||||||
|
{ mime = "application/x-tar", fg = "#fe8019" },
|
||||||
|
{ mime = "application/x-bzip", fg = "#fe8019" },
|
||||||
|
{ mime = "application/x-bzip2", fg = "#fe8019" },
|
||||||
|
{ mime = "application/x-7z-compressed", fg = "#fe8019" },
|
||||||
|
{ mime = "application/x-rar", fg = "#fe8019" },
|
||||||
|
|
||||||
|
# Fallback
|
||||||
|
{ name = "*", fg = "#a89984" },
|
||||||
|
{ name = "*/", fg = "#83a598" }
|
||||||
|
]
|
||||||
|
|
||||||
|
# : }}}
|
||||||
|
|
188
usercfg/config/yazi/yazi.toml
Normal file
188
usercfg/config/yazi/yazi.toml
Normal file
|
@ -0,0 +1,188 @@
|
||||||
|
# A TOML linter such as https://taplo.tamasfe.dev/ can use this schema to validate your config.
|
||||||
|
# If you encounter any issues, please make an issue at https://github.com/yazi-rs/schemas.
|
||||||
|
"$schema" = "https://yazi-rs.github.io/schemas/yazi.json"
|
||||||
|
|
||||||
|
[manager]
|
||||||
|
ratio = [ 1, 4, 3 ]
|
||||||
|
sort_by = "alphabetical"
|
||||||
|
sort_sensitive = false
|
||||||
|
sort_reverse = false
|
||||||
|
sort_dir_first = false
|
||||||
|
linemode = "none"
|
||||||
|
show_hidden = false
|
||||||
|
show_symlink = true
|
||||||
|
scrolloff = 5
|
||||||
|
|
||||||
|
[preview]
|
||||||
|
tab_size = 2
|
||||||
|
max_width = 600
|
||||||
|
max_height = 900
|
||||||
|
cache_dir = ""
|
||||||
|
image_filter = "triangle"
|
||||||
|
image_quality = 75
|
||||||
|
sixel_fraction = 15
|
||||||
|
ueberzug_scale = 1
|
||||||
|
ueberzug_offset = [ 0, 0, 0, 0 ]
|
||||||
|
|
||||||
|
[opener]
|
||||||
|
edit = [
|
||||||
|
{ run = '${EDITOR} "$@"', desc = "$EDITOR", block = true, for = "unix" },
|
||||||
|
]
|
||||||
|
open = [
|
||||||
|
{ run = 'xdg-open "$@"', desc = "Open", for = "linux" },
|
||||||
|
]
|
||||||
|
reveal = [
|
||||||
|
{ run = '''exiftool "$1"; echo "Press enter to exit"; read _''', block = true, desc = "Show EXIF", for = "unix" },
|
||||||
|
]
|
||||||
|
extract = [
|
||||||
|
{ run = 'unar "$1"', desc = "Extract here", for = "unix" },
|
||||||
|
]
|
||||||
|
play = [
|
||||||
|
{ run = 'mpv "$@"', orphan = true, for = "unix" },
|
||||||
|
{ run = '''mediainfo "$1"; echo "Press enter to exit"; read _''', block = true, desc = "Show media info", for = "unix" },
|
||||||
|
]
|
||||||
|
|
||||||
|
[open]
|
||||||
|
rules = [
|
||||||
|
{ name = "*/", use = [ "edit", "open", "reveal" ] },
|
||||||
|
|
||||||
|
{ mime = "text/*", use = [ "edit", "reveal" ] },
|
||||||
|
{ mime = "image/*", use = [ "open", "reveal" ] },
|
||||||
|
{ mime = "video/*", use = [ "play", "reveal" ] },
|
||||||
|
{ mime = "audio/*", use = [ "play", "reveal" ] },
|
||||||
|
{ mime = "inode/x-empty", use = [ "edit", "reveal" ] },
|
||||||
|
|
||||||
|
{ mime = "application/json", use = [ "edit", "reveal" ] },
|
||||||
|
{ mime = "*/javascript", use = [ "edit", "reveal" ] },
|
||||||
|
|
||||||
|
{ mime = "application/zip", use = [ "extract", "reveal" ] },
|
||||||
|
{ mime = "application/gzip", use = [ "extract", "reveal" ] },
|
||||||
|
{ mime = "application/x-tar", use = [ "extract", "reveal" ] },
|
||||||
|
{ mime = "application/x-bzip", use = [ "extract", "reveal" ] },
|
||||||
|
{ mime = "application/x-bzip2", use = [ "extract", "reveal" ] },
|
||||||
|
{ mime = "application/x-7z-compressed", use = [ "extract", "reveal" ] },
|
||||||
|
{ mime = "application/x-rar", use = [ "extract", "reveal" ] },
|
||||||
|
{ mime = "application/xz", use = [ "extract", "reveal" ] },
|
||||||
|
|
||||||
|
{ mime = "*", use = [ "open", "reveal" ] },
|
||||||
|
]
|
||||||
|
|
||||||
|
[tasks]
|
||||||
|
micro_workers = 10
|
||||||
|
macro_workers = 25
|
||||||
|
bizarre_retry = 5
|
||||||
|
image_alloc = 536870912 # 512MB
|
||||||
|
image_bound = [ 0, 0 ]
|
||||||
|
suppress_preload = false
|
||||||
|
|
||||||
|
[plugin]
|
||||||
|
|
||||||
|
preloaders = [
|
||||||
|
{ name = "*", cond = "!mime", run = "mime", multi = true, prio = "high" },
|
||||||
|
# Image
|
||||||
|
{ mime = "image/vnd.djvu", run = "noop" },
|
||||||
|
{ mime = "image/*", run = "image" },
|
||||||
|
# Video
|
||||||
|
{ mime = "video/*", run = "video" },
|
||||||
|
# PDF
|
||||||
|
{ mime = "application/pdf", run = "pdf" },
|
||||||
|
]
|
||||||
|
previewers = [
|
||||||
|
{ name = "*/", run = "folder", sync = true },
|
||||||
|
# Code
|
||||||
|
{ mime = "text/*", run = "code" },
|
||||||
|
{ mime = "*/xml", run = "code" },
|
||||||
|
{ mime = "*/javascript", run = "code" },
|
||||||
|
{ mime = "*/x-wine-extension-ini", run = "code" },
|
||||||
|
# JSON
|
||||||
|
{ mime = "application/json", run = "json" },
|
||||||
|
# Image
|
||||||
|
{ mime = "image/vnd.djvu", run = "noop" },
|
||||||
|
{ mime = "image/*", run = "image" },
|
||||||
|
# Video
|
||||||
|
{ mime = "video/*", run = "video" },
|
||||||
|
# PDF
|
||||||
|
{ mime = "application/pdf", run = "pdf" },
|
||||||
|
# Archive
|
||||||
|
{ mime = "application/zip", run = "archive" },
|
||||||
|
{ mime = "application/gzip", run = "archive" },
|
||||||
|
{ mime = "application/x-tar", run = "archive" },
|
||||||
|
{ mime = "application/x-bzip", run = "archive" },
|
||||||
|
{ mime = "application/x-bzip2", run = "archive" },
|
||||||
|
{ mime = "application/x-7z-compressed", run = "archive" },
|
||||||
|
{ mime = "application/x-rar", run = "archive" },
|
||||||
|
{ mime = "application/xz", run = "archive" },
|
||||||
|
# Fallback
|
||||||
|
{ name = "*", run = "file" },
|
||||||
|
]
|
||||||
|
|
||||||
|
[input]
|
||||||
|
# cd
|
||||||
|
cd_title = "Change directory:"
|
||||||
|
cd_origin = "top-center"
|
||||||
|
cd_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# create
|
||||||
|
create_title = "Create:"
|
||||||
|
create_origin = "top-center"
|
||||||
|
create_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# rename
|
||||||
|
rename_title = "Rename:"
|
||||||
|
rename_origin = "hovered"
|
||||||
|
rename_offset = [ 0, 1, 50, 3 ]
|
||||||
|
|
||||||
|
# trash
|
||||||
|
trash_title = "Move {n} selected file{s} to trash? (y/N)"
|
||||||
|
trash_origin = "top-center"
|
||||||
|
trash_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# delete
|
||||||
|
delete_title = "Delete {n} selected file{s} permanently? (y/N)"
|
||||||
|
delete_origin = "top-center"
|
||||||
|
delete_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# filter
|
||||||
|
filter_title = "Filter:"
|
||||||
|
filter_origin = "top-center"
|
||||||
|
filter_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# find
|
||||||
|
find_title = [ "Find next:", "Find previous:" ]
|
||||||
|
find_origin = "top-center"
|
||||||
|
find_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# search
|
||||||
|
search_title = "Search via {n}:"
|
||||||
|
search_origin = "top-center"
|
||||||
|
search_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# shell
|
||||||
|
shell_title = [ "Shell:", "Shell (block):" ]
|
||||||
|
shell_origin = "top-center"
|
||||||
|
shell_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# overwrite
|
||||||
|
overwrite_title = "Overwrite an existing file? (y/N)"
|
||||||
|
overwrite_origin = "top-center"
|
||||||
|
overwrite_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
# quit
|
||||||
|
quit_title = "{n} task{s} running, sure to quit? (y/N)"
|
||||||
|
quit_origin = "top-center"
|
||||||
|
quit_offset = [ 0, 2, 50, 3 ]
|
||||||
|
|
||||||
|
[select]
|
||||||
|
open_title = "Open with:"
|
||||||
|
open_origin = "hovered"
|
||||||
|
open_offset = [ 0, 1, 50, 7 ]
|
||||||
|
|
||||||
|
[which]
|
||||||
|
sort_by = "none"
|
||||||
|
sort_sensitive = false
|
||||||
|
sort_reverse = false
|
||||||
|
|
||||||
|
[log]
|
||||||
|
enabled = false
|
||||||
|
|
||||||
|
[headsup]
|
54
usercfg/config/zathura/zathurarc
Normal file
54
usercfg/config/zathura/zathurarc
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
## ____ __
|
||||||
|
## / __ \_________ _/ /_____
|
||||||
|
## / / / / ___/ __ `/ //_/ _ \
|
||||||
|
## / /_/ / / / /_/ / ,< / __/ Clay Gomera (Drake)
|
||||||
|
## /_____/_/ \__,_/_/|_|\___/ My custom zathura config
|
||||||
|
##
|
||||||
|
|
||||||
|
set font "mononoki Nerd Font 9"
|
||||||
|
set default-bg "#262626" #00
|
||||||
|
set default-fg "#ebdbb2" #01
|
||||||
|
|
||||||
|
set statusbar-fg "#ebdbb2" #04
|
||||||
|
set statusbar-bg "#262626" #01
|
||||||
|
|
||||||
|
set inputbar-bg "#262626" #00 currently not used
|
||||||
|
set inputbar-fg "#ebdbb2" #02
|
||||||
|
|
||||||
|
set notification-error-bg "#262626" #08
|
||||||
|
set notification-error-fg "#cc241d" #00
|
||||||
|
|
||||||
|
set notification-warning-bg "#262626" #08
|
||||||
|
set notification-warning-fg "#d79921" #00
|
||||||
|
|
||||||
|
set highlight-color "#262626" #0A
|
||||||
|
set highlight-active-color "#ebdbb2" #0D
|
||||||
|
|
||||||
|
set completion-highlight-fg "#4e4e4e" #02
|
||||||
|
set completion-highlight-bg "#87afaf" #0C
|
||||||
|
|
||||||
|
set completion-bg "#4e4e4e" #02
|
||||||
|
set completion-fg "#ebdbb2" #0C
|
||||||
|
|
||||||
|
set notification-bg "#262626" #0B
|
||||||
|
set notification-fg "#458588" #00
|
||||||
|
|
||||||
|
set recolor-lightcolor "#262626" #00
|
||||||
|
set recolor-darkcolor "#ebdbb2" #06
|
||||||
|
set recolor "false"
|
||||||
|
|
||||||
|
# setting recolor-keep true will keep any color your pdf has.
|
||||||
|
# if it is false, it'll just be black and white
|
||||||
|
set recolor-keephue "false"
|
||||||
|
|
||||||
|
set selection-clipboard "clipboard"
|
||||||
|
|
||||||
|
# keybindings
|
||||||
|
map [fullscreen] a adjust_window best-fit
|
||||||
|
map [fullscreen] s adjust_window width
|
||||||
|
map [fullscreen] f follow
|
||||||
|
map [fullscreen] <Tab> toggle_index
|
||||||
|
map [fullscreen] j scroll down
|
||||||
|
map [fullscreen] k scroll up
|
||||||
|
map [fullscreen] h navigate previous
|
||||||
|
map [fullscreen] l navigate next
|
Loading…
Reference in a new issue